diff --git a/apps/cli/src/commands/botMessage.test.ts b/apps/cli/src/commands/botMessage.test.ts new file mode 100644 index 0000000000..0d2b84d814 --- /dev/null +++ b/apps/cli/src/commands/botMessage.test.ts @@ -0,0 +1,162 @@ +import { mkdtemp, writeFile } from 'node:fs/promises'; +import { tmpdir } from 'node:os'; +import { join } from 'node:path'; + +import { Command } from 'commander'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; + +import { registerBotMessageCommands } from './botMessage'; + +const { mockTrpcClient } = vi.hoisted(() => ({ + mockTrpcClient: { + botMessage: { + sendMessage: { mutate: vi.fn() }, + }, + }, +})); + +const { getTrpcClient: mockGetTrpcClient } = vi.hoisted(() => ({ + getTrpcClient: vi.fn(), +})); + +vi.mock('../api/client', () => ({ getTrpcClient: mockGetTrpcClient })); +vi.mock('../utils/logger', () => ({ + log: { debug: vi.fn(), error: vi.fn(), info: vi.fn(), warn: vi.fn() }, + setVerbose: vi.fn(), +})); + +describe('bot message send --attachment', () => { + let exitSpy: ReturnType; + let consoleSpy: ReturnType; + + beforeEach(() => { + exitSpy = vi.spyOn(process, 'exit').mockImplementation((() => {}) as any); + consoleSpy = vi.spyOn(console, 'log').mockImplementation(() => {}); + mockGetTrpcClient.mockResolvedValue(mockTrpcClient); + mockTrpcClient.botMessage.sendMessage.mutate.mockReset(); + mockTrpcClient.botMessage.sendMessage.mutate.mockResolvedValue({ messageId: 'm-1' }); + }); + + afterEach(() => { + exitSpy.mockRestore(); + consoleSpy.mockRestore(); + }); + + function createProgram() { + const program = new Command(); + program.exitOverride(); + const bot = program.command('bot'); + registerBotMessageCommands(bot); + return program; + } + + it('passes a remote URL through as fetchUrl', async () => { + const program = createProgram(); + await program.parseAsync([ + 'node', + 'test', + 'bot', + 'message', + 'send', + 'bot-1', + '--target', + 'ch-1', + '--message', + 'hi', + '--attachment', + 'https://cdn.example.com/foo.png', + ]); + + expect(mockTrpcClient.botMessage.sendMessage.mutate).toHaveBeenCalledWith( + expect.objectContaining({ + attachments: [ + expect.objectContaining({ + fetchUrl: 'https://cdn.example.com/foo.png', + mimeType: 'image/png', + name: 'foo.png', + type: 'image', + }), + ], + botId: 'bot-1', + channelId: 'ch-1', + content: 'hi', + }), + ); + }); + + it('base64-encodes a local file path', async () => { + const dir = await mkdtemp(join(tmpdir(), 'lh-cli-attach-')); + const path = join(dir, 'tiny.txt'); + await writeFile(path, 'hello'); + + const program = createProgram(); + await program.parseAsync([ + 'node', + 'test', + 'bot', + 'message', + 'send', + 'bot-1', + '--target', + 'ch-1', + '--message', + 'm', + '--attachment', + path, + ]); + + const call = mockTrpcClient.botMessage.sendMessage.mutate.mock.calls[0][0]; + expect(call.attachments).toHaveLength(1); + expect(call.attachments[0]).toMatchObject({ + mimeType: 'text/plain', + name: 'tiny.txt', + type: 'file', + }); + expect(call.attachments[0].data).toBe(Buffer.from('hello').toString('base64')); + expect(call.attachments[0].fetchUrl).toBeUndefined(); + }); + + it('accepts multiple --attachment flags', async () => { + const program = createProgram(); + await program.parseAsync([ + 'node', + 'test', + 'bot', + 'message', + 'send', + 'bot-1', + '--target', + 'ch-1', + '--message', + 'm', + '--attachment', + 'https://cdn.example.com/a.png', + '--attachment', + 'https://cdn.example.com/b.pdf', + ]); + + const call = mockTrpcClient.botMessage.sendMessage.mutate.mock.calls[0][0]; + expect(call.attachments).toHaveLength(2); + expect(call.attachments[0]).toMatchObject({ type: 'image', name: 'a.png' }); + expect(call.attachments[1]).toMatchObject({ type: 'file', name: 'b.pdf' }); + }); + + it('omits attachments field when no flag is given', async () => { + const program = createProgram(); + await program.parseAsync([ + 'node', + 'test', + 'bot', + 'message', + 'send', + 'bot-1', + '--target', + 'ch-1', + '--message', + 'm', + ]); + + const call = mockTrpcClient.botMessage.sendMessage.mutate.mock.calls[0][0]; + expect(call.attachments).toBeUndefined(); + }); +}); diff --git a/apps/cli/src/commands/botMessage.ts b/apps/cli/src/commands/botMessage.ts index d4285803ff..cee9cda82e 100644 --- a/apps/cli/src/commands/botMessage.ts +++ b/apps/cli/src/commands/botMessage.ts @@ -1,3 +1,6 @@ +import { readFile } from 'node:fs/promises'; +import { basename, extname } from 'node:path'; + import { DEFAULT_BOT_HISTORY_LIMIT } from '@lobechat/const'; import type { Command } from 'commander'; import pc from 'picocolors'; @@ -6,6 +9,69 @@ import { getTrpcClient } from '../api/client'; import { confirm, outputJson, printTable, truncate } from '../utils/format'; import { log } from '../utils/logger'; +type AttachmentInput = { + data?: string; + fetchUrl?: string; + mimeType?: string; + name?: string; + type: 'image' | 'file' | 'video' | 'audio'; +}; + +const MIME_EXT_MAP: Record = { + '.bmp': 'image/bmp', + '.gif': 'image/gif', + '.jpeg': 'image/jpeg', + '.jpg': 'image/jpeg', + '.m4a': 'audio/mp4', + '.mp3': 'audio/mpeg', + '.mp4': 'video/mp4', + '.ogg': 'audio/ogg', + '.pdf': 'application/pdf', + '.png': 'image/png', + '.svg': 'image/svg+xml', + '.txt': 'text/plain', + '.wav': 'audio/wav', + '.webm': 'video/webm', + '.webp': 'image/webp', +}; + +const inferMime = (path: string): string | undefined => MIME_EXT_MAP[extname(path).toLowerCase()]; + +const inferAttachmentType = (mimeType?: string): AttachmentInput['type'] => { + if (!mimeType) return 'file'; + if (mimeType.startsWith('image/')) return 'image'; + if (mimeType.startsWith('video/')) return 'video'; + if (mimeType.startsWith('audio/')) return 'audio'; + return 'file'; +}; + +/** + * Parse a single `--attachment ` argument. Accepted forms: + * - `https://…` / `http://…` → fetchUrl, type inferred from extension + * - any other string → treated as a local file path; + * bytes are read + base64-encoded + */ +const parseAttachmentArg = async (raw: string): Promise => { + if (/^https?:\/\//.test(raw)) { + const pathname = new URL(raw).pathname; + const mimeType = inferMime(pathname); + return { + fetchUrl: raw, + mimeType, + name: basename(pathname) || undefined, + type: inferAttachmentType(mimeType), + }; + } + const bytes = await readFile(raw); + const mimeType = inferMime(raw); + return { + data: bytes.toString('base64'), + mimeType, + name: basename(raw), + type: inferAttachmentType(mimeType), + }; +}; + export function registerBotMessageCommands(bot: Command) { const message = bot .command('message') @@ -18,15 +84,42 @@ export function registerBotMessageCommands(bot: Command) { .description('Send a message to a channel') .requiredOption('--target ', 'Target channel / conversation ID') .requiredOption('--message ', 'Message content') + .option( + '--attachment ', + 'Attach a file by local path or remote URL (repeatable). ' + + 'Local paths are base64-encoded; http(s) URLs are passed as fetchUrl.', + collectOptions, + [], + ) .option('--reply-to ', 'Reply to a specific message') .option('--json', 'Output JSON') .action( async ( botId: string, - options: { json?: boolean; message: string; replyTo?: string; target: string }, + options: { + attachment: string[]; + json?: boolean; + message: string; + replyTo?: string; + target: string; + }, ) => { + let attachments: AttachmentInput[] | undefined; + if (options.attachment.length > 0) { + attachments = []; + for (const raw of options.attachment) { + try { + attachments.push(await parseAttachmentArg(raw)); + } catch (error) { + log.error(`Failed to load attachment "${raw}": ${(error as Error).message}`); + process.exit(1); + } + } + } + const client = await getTrpcClient(); const result = await client.botMessage.sendMessage.mutate({ + attachments, botId, channelId: options.target, content: options.message, @@ -39,8 +132,9 @@ export function registerBotMessageCommands(bot: Command) { } const r = result as any; + const suffix = attachments?.length ? ` with ${attachments.length} attachment(s)` : ''; console.log( - `${pc.green('✓')} Message sent${r.messageId ? ` (${pc.dim(r.messageId)})` : ''}`, + `${pc.green('✓')} Message sent${r.messageId ? ` (${pc.dim(r.messageId)})` : ''}${suffix}`, ); }, ); diff --git a/docs/usage/channels/telegram.mdx b/docs/usage/channels/telegram.mdx index 0b346afce0..9e84da7d5a 100644 --- a/docs/usage/channels/telegram.mdx +++ b/docs/usage/channels/telegram.mdx @@ -27,8 +27,6 @@ By connecting a Telegram channel to your LobeHub agent, users can interact with Open Telegram and search for **@BotFather** — the official Telegram bot for managing bots. Start a conversation and send the `/newbot` command. - ![](/blog/assets1be39423d2bca3a6ee3f247e02a638be.webp) - ### Set Bot Name and Username BotFather will ask you to: @@ -36,14 +34,10 @@ By connecting a Telegram channel to your LobeHub agent, users can interact with 1. Choose a **display name** for your bot (e.g., "LobeHub Assistant") 2. Choose a **username** — it must end with `bot` (e.g., `lobehub_assistant_bot`) - ![](/blog/assetsa95ea7fad4727559d3f8d84a96947d5e.webp) - ### Copy the Bot Token After creating the bot, BotFather will send you an **API token** (format: `123456789:ABCdefGhIjKlmNoPQRsTuVwXyZ`). Copy and save this token. - ![](/blog/assets95dc1ff1901807b3f860b70294667682.webp) - > **Important:** Your bot token is a secret credential. Never share it publicly. @@ -60,8 +54,6 @@ By connecting a Telegram channel to your LobeHub agent, users can interact with The **Bot User ID** will be automatically derived from your token — no need to enter it manually. - ![](/blog/assets939b659e955daf90e2e9e7caba8aa9bd.webp) - ### Optional: Set a Webhook Secret You can optionally enter a **Webhook Secret Token** for additional security. This is used to verify that incoming webhook requests originate from Telegram. @@ -77,8 +69,6 @@ By connecting a Telegram channel to your LobeHub agent, users can interact with Click **Test Connection** in LobeHub's channel settings to verify the integration. Then open Telegram, find your bot by searching its username, and send a message. The bot should respond through your LobeHub agent. -![](/blog/assets5dd8b54083201bff2494404b66e37df0.webp) - ## Set Your Platform Identity (Recommended) One optional field under **Advanced Settings** carries a lot of weight in day-to-day use — fill it in once and most surprises go away. @@ -103,8 +93,6 @@ To use the bot in Telegram groups: 2. By default, the bot responds when mentioned with `@your_bot_username` 3. Send a message mentioning the bot to start interacting -![](/blog/assetsfa30300bd730d56097bfbce49c5f3d06.webp) - **About Group Privacy Mode:** Telegram bots have privacy mode enabled by default, which means they only receive messages that @mention the bot, reply to the bot, or contain /commands. If you change the privacy mode setting after creating the bot, you **must remove and re-add the bot to the group** for the new setting to take effect in that group. diff --git a/docs/usage/channels/telegram.zh-CN.mdx b/docs/usage/channels/telegram.zh-CN.mdx index 809858dc50..df3ba8b390 100644 --- a/docs/usage/channels/telegram.zh-CN.mdx +++ b/docs/usage/channels/telegram.zh-CN.mdx @@ -26,8 +26,6 @@ tags: 打开 Telegram 并搜索 **@BotFather** —— 这是用于管理机器人的官方 Telegram 机器人。开始对话并发送 `/newbot` 命令。 - ![](/blog/assets1be39423d2bca3a6ee3f247e02a638be.webp) - ### 设置机器人名称和用户名 BotFather 会要求您: @@ -35,14 +33,10 @@ tags: 1. 为您的机器人选择一个 **显示名称**(例如,“LobeHub 助手”) 2. 选择一个 **用户名** —— 必须以 `bot` 结尾(例如,`lobehub_assistant_bot`) - ![](/blog/assetsa95ea7fad4727559d3f8d84a96947d5e.webp) - ### 复制机器人令牌 创建机器人后,BotFather 会发送给您一个 **API 令牌**(格式:`123456789:ABCdefGhIjKlmNoPQRsTuVwXyZ`)。复制并保存此令牌。 - ![](/blog/assets95dc1ff1901807b3f860b70294667682.webp) - > **重要提示:** 您的机器人令牌是一个机密凭证,请勿公开分享。 @@ -59,8 +53,6 @@ tags: **机器人用户 ID** 将根据您的令牌自动生成,无需手动输入。 - ![](/blog/assets939b659e955daf90e2e9e7caba8aa9bd.webp) - ### 可选:设置 Webhook 密钥 您可以选择输入一个 **Webhook 密钥令牌** 以增加安全性。此密钥用于验证来自 Telegram 的入站 Webhook 请求。 @@ -76,8 +68,6 @@ tags: 在 LobeHub 的渠道设置中点击 **测试连接** 以验证集成。然后打开 Telegram,搜索您的机器人用户名并发送消息。机器人应通过您的 LobeHub 代理进行响应。 -![](/blog/assets5dd8b54083201bff2494404b66e37df0.webp) - ## 填写你的平台身份(推荐) **高级设置**里有一个可选字段影响日常使用体验,建议一开始就填好。 @@ -102,8 +92,6 @@ tags: 2. 默认情况下,机器人在被 `@your_bot_username` 提及时会响应 3. 发送一条提及机器人的消息以开始互动 -![](/blog/assetsfa30300bd730d56097bfbce49c5f3d06.webp) - **关于隐私模式(Group Privacy):** Telegram 机器人默认启用隐私模式,仅接收群组中 @提及、回复机器人的消息以及 / 命令。如果您在创建机器人后更改了隐私模式设置,**必须将机器人从群组中移除后重新加入**,新的设置才会对该群组生效。 diff --git a/locales/ar/chat.json b/locales/ar/chat.json index eb7d063717..bf8b31edf7 100644 --- a/locales/ar/chat.json +++ b/locales/ar/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "إضافة رسالة من الذكاء الاصطناعي", "input.addUser": "إضافة رسالة من المستخدم", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} ائتمان/مليون رموز", + "input.costEstimate.hint": "التكلفة المقدرة: ~{{credits}} ائتمان", + "input.costEstimate.inputLabel": "الإدخال", + "input.costEstimate.outputLabel": "الإخراج", + "input.costEstimate.settingsLink": "ضبط حد التحذير", + "input.costEstimate.tokenCount": "~{{tokens}} رموز", + "input.costEstimate.tooltip": "تم التقدير بناءً على السياق الحالي، الأدوات، وتسعير النموذج. قد تختلف التكلفة الفعلية.", "input.disclaimer": "قد يخطئ الوكلاء. استخدم حكمك الخاص للمعلومات الحساسة.", "input.errorMsg": "فشل الإرسال: {{errorMsg}}. أعد المحاولة أو أرسل لاحقًا.", "input.more": "المزيد", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "جارٍ تجهيز الأجزاء...", "upload.preview.status.pending": "جارٍ التحضير للرفع...", "upload.preview.status.processing": "جارٍ معالجة الملف...", + "upload.validation.unsupportedFileType": "نوع الملف غير مدعوم: {{files}}. الصور المدعومة: JPG، PNG، GIF، WebP. المستندات المدعومة تشمل PDF، Word، Excel، PowerPoint، Markdown، النص، CSV، JSON، وملفات التعليمات البرمجية.", "upload.validation.videoSizeExceeded": "يجب ألا يتجاوز حجم ملف الفيديو 20 ميغابايت. الحجم الحالي هو {{actualSize}}.", "viewMode.fullWidth": "العرض الكامل", "viewMode.normal": "قياسي", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "إغلاق الآخرين", "workingPanel.localFile.closeRight": "إغلاق إلى اليمين", "workingPanel.localFile.error": "تعذر تحميل هذا الملف", + "workingPanel.localFile.preview.raw": "خام", + "workingPanel.localFile.preview.render": "معاينة", "workingPanel.localFile.truncated": "تم تقليص معاينة الملف إلى {{limit}} حرفًا", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "التبديل إلى العرض الموحد", "workingPanel.review.wordWrap.disable": "تعطيل التفاف النص", "workingPanel.review.wordWrap.enable": "تمكين التفاف النص", + "workingPanel.skills.empty": "لم يتم العثور على مهارات في هذا المشروع", + "workingPanel.skills.title": "المهارات", "workingPanel.space": "مسافة", "workingPanel.title": "Working Panel", "you": "أنت", diff --git a/locales/ar/components.json b/locales/ar/components.json index 6a2e21d8cb..6290000080 100644 --- a/locales/ar/components.json +++ b/locales/ar/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "طول السياق", "ModelSwitchPanel.detail.pricing": "الأسعار", "ModelSwitchPanel.detail.pricing.cachedInput": "المدخلات المخزنة ${{amount}}/مليون", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "مدخل مخزن {{amount}} أرصدة/مليون رموز", + "ModelSwitchPanel.detail.pricing.credits.image": "أرصدة/صورة", + "ModelSwitchPanel.detail.pricing.credits.input": "مدخل {{amount}} أرصدة/مليون رموز", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "أرصدة/ميجا بكسل", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "أرصدة/مليون أحرف", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "أرصدة/مليون رموز", + "ModelSwitchPanel.detail.pricing.credits.output": "مخرج {{amount}} أرصدة/مليون رموز", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} أرصدة / صورة", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} أرصدة / فيديو", + "ModelSwitchPanel.detail.pricing.credits.second": "أرصدة/ثانية", "ModelSwitchPanel.detail.pricing.group.audio": "الصوت", "ModelSwitchPanel.detail.pricing.group.image": "الصورة", "ModelSwitchPanel.detail.pricing.group.text": "النص", diff --git a/locales/ar/editor.json b/locales/ar/editor.json index 6c1d0f44f7..7d45dfe154 100644 --- a/locales/ar/editor.json +++ b/locales/ar/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "أمر", + "actionTag.category.projectSkill": "مهارة المشروع", "actionTag.category.skill": "مهارة", "actionTag.category.tool": "أداة", "actionTag.tooltip.command": "يشغّل أمر الشرطة المائلة على جانب العميل قبل الإرسال.", + "actionTag.tooltip.projectSkill": "يتم إرسالها كاستدعاء شرطة مائلة بحيث يقوم CLI الخاص بالوكيل بتشغيل مهارة المشروع المطابقة.", "actionTag.tooltip.skill": "يحمّل حزمة مهارات قابلة لإعادة الاستخدام لهذا الطلب.", "actionTag.tooltip.tool": "يشير إلى أداة اختارها المستخدم صراحةً لهذا الطلب.", "actions.expand.off": "طي", diff --git a/locales/ar/home.json b/locales/ar/home.json index 71e2ddd546..e13f3fe03a 100644 --- a/locales/ar/home.json +++ b/locales/ar/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "تجاهل", "brief.action.retry": "إعادة المحاولة", "brief.addFeedback": "مشاركة الملاحظات", + "brief.agentSignal.selfReview.applied.heading": "محدث", + "brief.agentSignal.selfReview.applied.summary": "تم تطبيق تحديث حلم واحد.", + "brief.agentSignal.selfReview.applied.summary_plural": "تم تطبيق {{count}} تحديثات حلم.", + "brief.agentSignal.selfReview.applied.title": "تم تحديث موارد الحلم", + "brief.agentSignal.selfReview.error.heading": "مشكلة", + "brief.agentSignal.selfReview.error.summary": "تعذر إكمال بعض الأعمال أثناء هذا الحلم.", + "brief.agentSignal.selfReview.error.title": "واجه الحلم مشكلة", + "brief.agentSignal.selfReview.ideas.summary": "تم حفظ ملاحظات الحلم للمراجعة المستقبلية.", + "brief.agentSignal.selfReview.ideas.title": "ملاحظات الحلم", + "brief.agentSignal.selfReview.proposal.heading": "اقتراح", + "brief.agentSignal.selfReview.proposal.summary": "هناك اقتراح حلم واحد يحتاج إلى مراجعتك.", + "brief.agentSignal.selfReview.proposal.summary_plural": "هناك {{count}} اقتراحات حلم تحتاج إلى مراجعتك.", + "brief.agentSignal.selfReview.proposal.title": "اقتراح الحلم يحتاج إلى مراجعة", "brief.collapse": "عرض أقل", "brief.commentPlaceholder": "شارك ملاحظاتك...", "brief.commentSubmit": "إرسال الملاحظات", diff --git a/locales/ar/hotkey.json b/locales/ar/hotkey.json index cadb81edf6..6d5a181c50 100644 --- a/locales/ar/hotkey.json +++ b/locales/ar/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "أضف الإدخال الحالي كرسالة مستخدم دون بدء التوليد", "addUserMessage.title": "إضافة رسالة مستخدم", - "clearCurrentMessages.desc": "مسح الرسائل والملفات المرفوعة من المحادثة الحالية", - "clearCurrentMessages.title": "مسح رسائل المحادثة", "commandPalette.desc": "افتح لوحة الأوامر العامة للوصول السريع إلى الميزات", "commandPalette.title": "لوحة الأوامر", "deleteAndRegenerateMessage.desc": "حذف الرسالة الأخيرة وإعادة توليدها", diff --git a/locales/ar/models.json b/locales/ar/models.json index 6069c3eff4..1294b9aee8 100644 --- a/locales/ar/models.json +++ b/locales/ar/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "نموذج جديد لإنشاء الفيديو مع تحسينات شاملة في حركة الجسم، والواقعية الفيزيائية، واتباع التعليمات.", "MiniMax-M1.description": "نموذج استدلال داخلي جديد بسلسلة تفكير تصل إلى 80K ومدخلات حتى 1M، يقدم أداءً مماثلاً لأفضل النماذج العالمية.", "MiniMax-M2-Stable.description": "مصمم لتدفقات العمل البرمجية والوكلاء بكفاءة عالية، مع قدرة تزامن أعلى للاستخدام التجاري.", - "MiniMax-M2.1-Lightning.description": "قدرات برمجة متعددة اللغات قوية مع استنتاج أسرع وأكثر كفاءة.", "MiniMax-M2.1-highspeed.description": "قدرات برمجة متعددة اللغات قوية، تجربة برمجة مطورة بشكل شامل. أسرع وأكثر كفاءة.", "MiniMax-M2.1.description": "MiniMax-M2.1 هو نموذج مفتوح المصدر رائد من MiniMax، يركز على حل المهام الواقعية المعقدة. يتميز بقدرات برمجة متعددة اللغات والقدرة على أداء المهام المعقدة كوكلاء ذكي.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: نفس أداء M2.5 مع استدلال أسرع.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku هو أسرع وأصغر نموذج من Anthropic، مصمم لتقديم استجابات شبه فورية بأداء سريع ودقيق.", "claude-3-opus-20240229.description": "Claude 3 Opus هو أقوى نموذج من Anthropic للمهام المعقدة، يتميز بالأداء العالي، الذكاء، الطلاقة، والفهم.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet يوازن بين الذكاء والسرعة لتلبية احتياجات المؤسسات، ويوفر فائدة عالية بتكلفة أقل ونشر موثوق على نطاق واسع.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 هو أسرع وأذكى نموذج هايكو من Anthropic، يتميز بسرعة البرق وتفكير ممتد.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 هو النموذج الأكثر سرعة وذكاءً من Anthropic، يتميز بسرعة البرق وقدرات استدلال موسعة.", "claude-haiku-4-5.description": "Claude Haiku 4.5 من Anthropic — نموذج Haiku من الجيل التالي مع تحسينات في التفكير والرؤية.", "claude-haiku-4.5.description": "Claude Haiku 4.5 هو نموذج Haiku الأسرع والأذكى من Anthropic، يتميز بسرعة البرق وقدرات استدلال موسعة.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking هو إصدار متقدم يمكنه عرض عملية تفكيره.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 هو أحدث وأقوى نموذج من Anthropic للمهام المعقدة للغاية، يتميز بالأداء والذكاء والطلاقة والفهم.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 هو أحدث وأقوى نموذج من Anthropic للمهام المعقدة للغاية، يتميز بالأداء العالي، الذكاء، الطلاقة، والفهم.", "claude-opus-4-1.description": "Claude Opus 4.1 من Anthropic — نموذج تفكير متميز مع قدرات تحليل عميقة.", - "claude-opus-4-20250514.description": "Claude Opus 4 هو أقوى نموذج من Anthropic للمهام المعقدة للغاية، يتميز بالأداء والذكاء والطلاقة والفهم.", + "claude-opus-4-20250514.description": "Claude Opus 4 هو النموذج الأكثر قوة من Anthropic للمهام المعقدة للغاية، يتميز بالأداء العالي، الذكاء، الطلاقة، والاستيعاب.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 هو النموذج الرائد من Anthropic، يجمع بين الذكاء الاستثنائي والأداء القابل للتوسع، مثالي للمهام المعقدة التي تتطلب استجابات عالية الجودة وتفكير متقدم.", "claude-opus-4-5.description": "Claude Opus 4.5 من Anthropic — نموذج رئيسي مع تفكير وبرمجة من الدرجة الأولى.", "claude-opus-4-6.description": "Claude Opus 4.6 من Anthropic — نافذة سياق 1M نموذج رئيسي مع تفكير متقدم.", @@ -330,7 +329,7 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 هو النموذج الأكثر ذكاءً من Anthropic لبناء الوكلاء والبرمجة.", "claude-opus-4.6.description": "Claude Opus 4.6 هو النموذج الأكثر ذكاءً من Anthropic لبناء الوكلاء والبرمجة.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking يمكنه تقديم استجابات شبه فورية أو تفكير متسلسل مرئي.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 هو النموذج الأكثر ذكاءً من Anthropic حتى الآن، يقدم استجابات شبه فورية أو تفكير ممتد خطوة بخطوة مع تحكم دقيق لمستخدمي API.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 يمكنه تقديم استجابات شبه فورية أو تفكير ممتد خطوة بخطوة مع عملية مرئية.", "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 هو النموذج الأكثر ذكاءً من Anthropic حتى الآن.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 من Anthropic — نموذج Sonnet محسّن مع أداء برمجي معزز.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 من Anthropic — أحدث نموذج Sonnet مع برمجة واستخدام أدوات متفوقة.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) هو نموذج مبتكر يوفر فهمًا عميقًا للغة وتفاعلًا ذكيًا.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 هو نموذج تفكير من الجيل التالي يتمتع بقدرات أقوى في التفكير المعقد وسلسلة التفكير لمهام التحليل العميق.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 هو نموذج استدلال من الجيل التالي يتميز بقدرات استدلال معقدة وسلسلة التفكير.", - "deepseek-chat.description": "اسم مستعار متوافق لوضع عدم التفكير في DeepSeek V4 Flash. مقرر إيقافه — استخدم DeepSeek V4 Flash بدلاً منه.", + "deepseek-chat.description": "نموذج مفتوح المصدر جديد يجمع بين القدرات العامة وقدرات البرمجة. يحافظ على الحوار العام لنموذج الدردشة وقوة البرمجة لنموذج المبرمج، مع تحسين توافق التفضيلات. كما يحسن DeepSeek-V2.5 الكتابة واتباع التعليمات.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B هو نموذج لغة برمجية تم تدريبه على 2 تريليون رمز (87٪ كود، 13٪ نص صيني/إنجليزي). يقدم نافذة سياق 16K ومهام الإكمال في المنتصف، ويوفر إكمال كود على مستوى المشاريع وملء مقاطع الكود.", "deepseek-coder-v2.description": "DeepSeek Coder V2 هو نموذج كود MoE مفتوح المصدر يتميز بأداء قوي في مهام البرمجة، ويضاهي GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 هو نموذج كود MoE مفتوح المصدر يتميز بأداء قوي في مهام البرمجة، ويضاهي GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "الإصدار الكامل السريع من DeepSeek R1 مع بحث ويب في الوقت الحقيقي، يجمع بين قدرات بحجم 671B واستجابة أسرع.", "deepseek-r1-online.description": "الإصدار الكامل من DeepSeek R1 مع 671 مليار معلمة وبحث ويب في الوقت الحقيقي، يوفر فهمًا وتوليدًا أقوى.", "deepseek-r1.description": "يستخدم DeepSeek-R1 بيانات البداية الباردة قبل التعلم المعزز ويؤدي أداءً مماثلًا لـ OpenAI-o1 في الرياضيات، والبرمجة، والتفكير.", - "deepseek-reasoner.description": "اسم مستعار متوافق لوضع التفكير في DeepSeek V4 Flash. مقرر إيقافه — استخدم DeepSeek V4 Flash بدلاً منه.", + "deepseek-reasoner.description": "نموذج استدلال DeepSeek يركز على مهام الاستدلال المنطقي المعقدة.", "deepseek-v2.description": "DeepSeek V2 هو نموذج MoE فعال لمعالجة منخفضة التكلفة.", "deepseek-v2:236b.description": "DeepSeek V2 236B هو نموذج DeepSeek الموجه للبرمجة مع قدرات قوية في توليد الكود.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 هو نموذج MoE يحتوي على 671 مليار معلمة يتميز بقوة في البرمجة، والقدرات التقنية، وفهم السياق، والتعامل مع النصوص الطويلة.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 هو نموذج توليد صور من ByteDance Seed، يدعم إدخال النصوص والصور مع توليد صور عالية الجودة وقابلة للتحكم بدرجة كبيرة. يُولّد الصور من التعليمات النصية.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 هو أحدث نموذج متعدد الوسائط من ByteDance، يدمج قدرات تحويل النص إلى صورة، والصورة إلى صورة، وتوليد الصور بالجملة، مع دمج الفهم العام وقدرات الاستدلال. مقارنة بالإصدار السابق 4.0، يقدم جودة توليد محسّنة بشكل كبير، مع تحسين تناسق التحرير ودمج الصور المتعددة. يوفر تحكمًا أكثر دقة في التفاصيل البصرية، مما يجعل النصوص الصغيرة والوجوه الصغيرة أكثر طبيعية، ويحقق تخطيطًا وألوانًا أكثر انسجامًا، مما يعزز الجماليات العامة.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite هو أحدث نموذج لتوليد الصور من ByteDance. لأول مرة، يدمج قدرات الاسترجاع عبر الإنترنت، مما يسمح له بتضمين معلومات الويب في الوقت الفعلي وتعزيز حداثة الصور المولدة. كما تم ترقية ذكاء النموذج، مما يمكنه من تفسير التعليمات المعقدة والمحتوى البصري بدقة. بالإضافة إلى ذلك، يقدم تغطية محسّنة للمعرفة العالمية، وتناسقًا مرجعيًا، وجودة توليد في السيناريوهات المهنية، مما يلبي بشكل أفضل احتياجات الإبداع البصري على مستوى المؤسسات.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 من ByteDance هو أقوى نموذج لتوليد الفيديو، يدعم إنشاء الفيديو المرجعي متعدد الوسائط، تحرير الفيديو، تمديد الفيديو، تحويل النص إلى فيديو، وتحويل الصورة إلى فيديو مع صوت متزامن.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast من ByteDance يقدم نفس القدرات مثل Seedance 2.0 مع سرعات توليد أسرع وسعر أكثر تنافسية.", "emohaa.description": "Emohaa هو نموذج للصحة النفسية يتمتع بقدرات استشارية احترافية لمساعدة المستخدمين على فهم المشكلات العاطفية.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B هو نموذج مفتوح المصدر وخفيف الوزن، مصمم للنشر المحلي والمخصص.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview هو نموذج معاينة بسياق 8K لتقييم أداء ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking هو نموذج رائد متعدد الوسائط أصلي يدعم النصوص، الصور، الصوت، والفيديو بشكل موحد. يوفر ترقيات شاملة للقدرات في الأسئلة المعقدة، الإبداع، وسيناريوهات الوكلاء.", "ernie-5.0-thinking-preview.description": "معاينة Wenxin 5.0 Thinking هو نموذج رائد متعدد الوسائط أصلي يدعم النصوص، الصور، الصوت، والفيديو بشكل موحد. يوفر ترقيات شاملة للقدرات في الأسئلة المعقدة، الإبداع، وسيناريوهات الوكلاء.", "ernie-5.0.description": "ERNIE 5.0، النموذج الجديد في سلسلة ERNIE، هو نموذج كبير متعدد الوسائط أصلي. يعتمد نهج نمذجة متعدد الوسائط موحد، حيث يقوم بنمذجة النصوص، الصور، الصوت، والفيديو بشكل مشترك لتقديم قدرات متعددة الوسائط شاملة. تم تحسين قدراته الأساسية بشكل كبير، محققًا أداءً قويًا في تقييمات المعايير. يتفوق بشكل خاص في الفهم متعدد الوسائط، اتباع التعليمات، الكتابة الإبداعية، الدقة الواقعية، تخطيط الوكلاء، واستخدام الأدوات.", + "ernie-5.1.description": "ERNIE 5.1 هو أحدث نموذج في سلسلة ERNIE، يتميز بترقيات شاملة لقدراته الأساسية. يظهر تحسينات كبيرة في مجالات مثل الوكلاء، معالجة المعرفة، الاستدلال، والبحث العميق. يعتمد هذا الإصدار على بنية تعلم معزز غير متزامن بالكامل ومفككة، مصممة خصيصًا لمعالجة التحديات الرئيسية في تطور النماذج الكبيرة نحو اتخاذ القرارات الذاتية للوكلاء، بما في ذلك التناقضات العددية بين التدريب والاستدلال، انخفاض استخدام موارد الحوسبة غير المتجانسة، والقضايا العالمية الناتجة عن تأثيرات الذيل الطويل. بالإضافة إلى ذلك، يتم استخدام تقنيات تدريب ما بعد واسعة النطاق للوكلاء لتعزيز قدرات النموذج وأداء التعميم. من خلال إطار عمل تعاوني من ثلاث مراحل يشمل البيئة، الخبراء، وعمليات الدمج، لا يضمن النهج كفاءة التدريب فحسب، بل يحسن بشكل كبير من استقرار النموذج وأدائه في المهام المعقدة.", "ernie-char-fiction-8k-preview.description": "معاينة ERNIE Character Fiction 8K هو نموذج لإنشاء الشخصيات والحبكات القصصية، مخصص لتقييم الميزات والاختبار.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K هو نموذج شخصيات للروايات وإنشاء الحبكات، مناسب لتوليد القصص الطويلة.", "ernie-image-turbo.description": "ERNIE-Image هو نموذج نص إلى صورة بـ 8 مليارات معلمة تم تطويره بواسطة Baidu. يحتل المرتبة الأولى في العديد من المعايير، محققًا المركز الأول في SuperCLUE في الصين ويتصدر المسار مفتوح المصدر.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K هو نموذج تفكير سريع بسياق 32K للاستدلال المعقد والدردشة متعددة الأدوار.", "ernie-x1.1-preview.description": "معاينة ERNIE X1.1 هو نموذج تفكير مخصص للتقييم والاختبار.", "ernie-x1.1.description": "ERNIE X1.1 هو نموذج تفكير تجريبي للتقييم والاختبار.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5، تم تطويره بواسطة فريق ByteDance Seed، يدعم تحرير الصور المتعددة والتكوين. يتميز بتناسق الموضوع المحسن، اتباع التعليمات بدقة، فهم المنطق المكاني، التعبير الجمالي، تصميم الملصقات وتصميم الشعارات مع توليد النصوص والصور بدقة عالية.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0، تم تطويره بواسطة ByteDance Seed، يدعم إدخال النصوص والصور لتوليد صور عالية الجودة وقابلة للتحكم بناءً على التعليمات.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 هو نموذج توليد الصور من ByteDance Seed، يدعم المدخلات النصية والصورية مع توليد صور عالي الجودة وقابل للتحكم بدرجة كبيرة. يقوم بتوليد الصور من التعليمات النصية.", "fal-ai/flux-kontext/dev.description": "نموذج FLUX.1 يركز على تحرير الصور، ويدعم إدخال النصوص والصور.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] يقبل النصوص وصور مرجعية كمدخلات، مما يتيح تعديلات محلية مستهدفة وتحولات معقدة في المشهد العام.", "fal-ai/flux/krea.description": "Flux Krea [dev] هو نموذج لتوليد الصور يتميز بميول جمالية نحو صور أكثر واقعية وطبيعية.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "نموذج قوي لتوليد الصور متعدد الوسائط أصلي.", "fal-ai/imagen4/preview.description": "نموذج عالي الجودة لتوليد الصور من Google.", "fal-ai/nano-banana.description": "Nano Banana هو أحدث وأسرع وأكثر نماذج Google كفاءةً لتوليد وتحرير الصور من خلال المحادثة.", - "fal-ai/qwen-image-edit.description": "نموذج تحرير الصور الاحترافي من فريق Qwen، يدعم التعديلات الدلالية والمظهرية، تحرير النصوص الدقيقة باللغتين الصينية والإنجليزية، نقل الأنماط، التدوير، والمزيد.", - "fal-ai/qwen-image.description": "نموذج قوي لتوليد الصور من فريق Qwen يتميز بتقديم نصوص صينية قوية وأنماط بصرية متنوعة.", + "fal-ai/qwen-image-edit.description": "نموذج تحرير الصور الاحترافي من فريق Qwen يدعم التعديلات الدلالية والمظهرية، ويحرر النصوص الصينية والإنجليزية بدقة، ويمكّن من تعديلات عالية الجودة مثل نقل الأنماط وتدوير الكائنات.", + "fal-ai/qwen-image.description": "نموذج توليد الصور القوي من فريق Qwen يتميز بعرض نصوص صينية مبهرة وأنماط بصرية متنوعة.", "flux-1-schnell.description": "نموذج تحويل النص إلى صورة يحتوي على 12 مليار معلمة من Black Forest Labs يستخدم تقنيات تقطير الانتشار العدائي الكامن لتوليد صور عالية الجودة في 1-4 خطوات. ينافس البدائل المغلقة ومتاح بموجب ترخيص Apache-2.0 للاستخدام الشخصي والبحثي والتجاري.", "flux-dev.description": "نموذج مفتوح المصدر مخصص لتوليد الصور لأغراض البحث والابتكار غير التجاري، مع تحسينات فعالة.", "flux-kontext-max.description": "توليد وتحرير صور سياقية متقدمة، تجمع بين النصوص والصور لتحقيق نتائج دقيقة ومتسقة.", @@ -569,7 +566,7 @@ "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) هو نموذج توليد الصور من Google ويدعم أيضًا الدردشة متعددة الوسائط.", "gemini-3-pro-preview.description": "Gemini 3 Pro هو أقوى نموذج من Google للوكيل الذكي والبرمجة الإبداعية، يقدم تفاعلاً أعمق وصورًا أغنى مع استدلال متقدم.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) يقدم جودة صور احترافية بسرعة فائقة مع دعم الدردشة متعددة الوسائط.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) يقدم جودة صور بمستوى احترافي بسرعة Flash مع دعم الدردشة متعددة الوسائط.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) هو أسرع نموذج توليد صور أصلي من Google مع دعم التفكير، وتوليد الصور الحواري، وتحرير الصور.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview هو النموذج الأكثر كفاءة من حيث التكلفة من Google، مُحسّن للمهام الوكيلة ذات الحجم الكبير، الترجمة، ومعالجة البيانات.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite هو النموذج متعدد الوسائط الأكثر كفاءة من Google، مُحسّن للمهام الوكيلية ذات الحجم الكبير، الترجمة، ومعالجة البيانات.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview يحسن من Gemini 3 Pro مع قدرات استدلال محسّنة ويضيف دعم مستوى التفكير المتوسط.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "يسعدنا إطلاق Grok 4 Fast، أحدث تقدم في نماذج الاستدلال منخفضة التكلفة.", "grok-4.20-0309-non-reasoning.description": "نموذج غير تفكير للاستخدامات البسيطة.", "grok-4.20-0309-reasoning.description": "نموذج ذكي وسريع للغاية يفكر قبل الرد.", - "grok-4.20-beta-0309-non-reasoning.description": "نسخة غير تفكيرية للاستخدامات البسيطة.", - "grok-4.20-beta-0309-reasoning.description": "نموذج ذكي وسريع للغاية يفكر قبل الرد.", "grok-4.20-multi-agent-0309.description": "فريق من 4 أو 16 وكيلًا، يتفوق في حالات الاستخدام البحثية، لا يدعم حاليًا الأدوات على جانب العميل. يدعم فقط أدوات xAI على جانب الخادم (مثل X Search، أدوات البحث على الويب) وأدوات MCP البعيدة.", "grok-4.3.description": "أكثر نموذج لغة كبير يسعى للحقيقة في العالم.", "grok-4.description": "أحدث نموذج Grok الرائد بأداء لا مثيل له في اللغة، الرياضيات، والاستدلال — نموذج شامل حقيقي. يشير حاليًا إلى grok-4-0709؛ نظرًا للموارد المحدودة، فإن سعره مؤقتًا أعلى بنسبة 10% من السعر الرسمي ومن المتوقع أن يعود إلى السعر الرسمي لاحقًا.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ هو نموذج استدلال من عائلة Qwen. مقارنة بالنماذج المضبوطة على التعليمات، يقدم قدرات تفكير واستدلال تعزز الأداء بشكل كبير، خاصة في المشكلات الصعبة. QwQ-32B هو نموذج متوسط الحجم ينافس أفضل نماذج الاستدلال مثل DeepSeek-R1 و o1-mini.", "qwq_32b.description": "نموذج استدلال متوسط الحجم من عائلة Qwen. مقارنة بالنماذج المضبوطة على التعليمات، تعزز قدرات التفكير والاستدلال في QwQ الأداء بشكل كبير، خاصة في المشكلات الصعبة.", "r1-1776.description": "R1-1776 هو إصدار ما بعد التدريب من DeepSeek R1 مصمم لتقديم معلومات واقعية غير خاضعة للرقابة أو التحيز.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro من ByteDance يدعم تحويل النص إلى فيديو، تحويل الصورة إلى فيديو (الإطار الأول، الإطار الأول + الأخير)، وتوليد الصوت المتزامن مع المرئيات.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite من BytePlus يتميز بتوليد معزز بالاسترجاع عبر الويب للحصول على معلومات في الوقت الحقيقي، تفسير محسّن للتعليمات المعقدة، وتحسين تناسق المرجع لإنشاء بصري احترافي.", "solar-mini-ja.description": "Solar Mini (Ja) يوسع Solar Mini مع تركيز على اللغة اليابانية مع الحفاظ على الأداء القوي والكفاءة في الإنجليزية والكورية.", "solar-mini.description": "Solar Mini هو نموذج لغة مدمج يتفوق على GPT-3.5، يتميز بقدرات متعددة اللغات قوية تدعم الإنجليزية والكورية، ويقدم حلاً فعالاً بصمة صغيرة.", "solar-pro.description": "Solar Pro هو نموذج لغة عالي الذكاء من Upstage، يركز على اتباع التعليمات باستخدام وحدة معالجة رسومات واحدة، مع درجات IFEval تتجاوز 80. حالياً يدعم اللغة الإنجليزية؛ وكان من المقرر إصدار النسخة الكاملة في نوفمبر 2024 مع دعم لغات موسع وسياق أطول.", diff --git a/locales/ar/onboarding.json b/locales/ar/onboarding.json index 22c774a76a..c85b88a26a 100644 --- a/locales/ar/onboarding.json +++ b/locales/ar/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "تخطي الآن", "agent.layout.skipConfirm.title": "تخطي الإعداد الآن؟", "agent.layout.switchMessage": "لست في مزاج لذلك اليوم؟ يمكنك التبديل إلى {{mode}} أو {{skip}}.", + "agent.layout.switchMessageClassic": "لست في المزاج اليوم؟ يمكنك التبديل إلى {{mode}}.", + "agent.messenger.cta.discord": "أضف إلى Discord", + "agent.messenger.cta.slack": "أضف إلى Slack", + "agent.messenger.cta.telegram": "افتح في Telegram", + "agent.messenger.subtitle": "تحدث مع وكيلك على Telegram أو Slack أو Discord", + "agent.messenger.telegramQrCaption": "امسح باستخدام كاميرا هاتفك", + "agent.messenger.title": "ابق معي أينما كنت تراسل", "agent.modeSwitch.agent": "تفاعلي", "agent.modeSwitch.classic": "كلاسيكي", "agent.modeSwitch.collapse": "طي", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "سأحفظ ما ناقشناه حتى الآن. يمكنك دائمًا العودة ومتابعة الحديث لاحقًا.", "agent.wrapUp.confirm.ok": "إنهاء الآن", "agent.wrapUp.confirm.title": "إنهاء الإعداد الآن؟", + "agentPicker.allCategories": "الكل", + "agentPicker.continue": "متابعة", + "agentPicker.skip": "تخطي الآن", + "agentPicker.subtitle": "أضف بعضًا إلى مكتبتك الآن — اكتشف المزيد في أي وقت لاحقًا.", + "agentPicker.title": "لنضف بعض الوكلاء إلى مكتبتك", + "agentPicker.title2": "اختر ما يناسب طريقة عملك", + "agentPicker.title3": "يمكنك دائمًا إضافة المزيد لاحقًا — ابدأ ببعض الخيارات", "back": "رجوع", "finish": "ابدأ الآن", "interests.area.business": "الأعمال والاستراتيجية", diff --git a/locales/ar/plugin.json b/locales/ar/plugin.json index 7962c61b62..f2be6c72cc 100644 --- a/locales/ar/plugin.json +++ b/locales/ar/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} مستندات", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} عمليات", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} عمليات", - "builtins.lobe-agent-documents.inspector.target.agent": "في الوكيل", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "في الموضوع", + "builtins.lobe-agent-documents.inspector.scope.agent": "في الوكيل", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "في الموضوع", "builtins.lobe-agent-documents.title": "مستندات الوكيل", "builtins.lobe-agent-management.apiName.callAgent": "وكيل الاتصال", "builtins.lobe-agent-management.apiName.createAgent": "إنشاء وكيل", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "وكيل لوب", "builtins.lobe-claude-code.agent.instruction": "تعليمات", "builtins.lobe-claude-code.agent.result": "النتيجة", + "builtins.lobe-claude-code.task.createLabel": "إنشاء المهمة: ", + "builtins.lobe-claude-code.task.getLabel": "تفحص المهمة #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "عرض المهام", + "builtins.lobe-claude-code.task.updateCompleted": "مكتملة", + "builtins.lobe-claude-code.task.updateDeleted": "محذوفة", + "builtins.lobe-claude-code.task.updateInProgress": "بدأت", + "builtins.lobe-claude-code.task.updateLabel": "تحديث المهمة #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "إعادة تعيين", "builtins.lobe-claude-code.todoWrite.allDone": "جميع المهام مكتملة", "builtins.lobe-claude-code.todoWrite.currentStep": "الخطوة الحالية", "builtins.lobe-claude-code.todoWrite.todos": "المهام", diff --git a/locales/ar/providers.json b/locales/ar/providers.json index e7614ea9fd..313b2aecb3 100644 --- a/locales/ar/providers.json +++ b/locales/ar/providers.json @@ -33,7 +33,6 @@ "jina.description": "تأسست Jina AI في عام 2020، وهي شركة رائدة في مجال البحث الذكي. تشمل تقنياتها نماذج المتجهات، ومعيدو الترتيب، ونماذج لغوية صغيرة لبناء تطبيقات بحث توليدية ومتعددة الوسائط عالية الجودة.", "kimicodingplan.description": "كود Kimi من Moonshot AI يوفر الوصول إلى نماذج Kimi بما في ذلك K2.5 لأداء مهام الترميز.", "lmstudio.description": "LM Studio هو تطبيق سطح مكتب لتطوير وتجربة النماذج اللغوية الكبيرة على جهازك.", - "lobehub.description": "يستخدم LobeHub Cloud واجهات برمجة التطبيقات الرسمية للوصول إلى نماذج الذكاء الاصطناعي ويقيس الاستخدام باستخدام أرصدة مرتبطة برموز النماذج.", "longcat.description": "LongCat هو سلسلة من نماذج الذكاء الاصطناعي التوليدية الكبيرة التي تم تطويرها بشكل مستقل بواسطة Meituan. تم تصميمه لتعزيز إنتاجية المؤسسة الداخلية وتمكين التطبيقات المبتكرة من خلال بنية حسابية فعالة وقدرات متعددة الوسائط قوية.", "minimax.description": "تأسست MiniMax في عام 2021، وتبني نماذج ذكاء اصطناعي متعددة الوسائط للأغراض العامة، بما في ذلك نماذج نصية بمليارات المعلمات، ونماذج صوتية وبصرية، بالإضافة إلى تطبيقات مثل Hailuo AI.", "minimaxcodingplan.description": "خطة الرموز MiniMax توفر الوصول إلى نماذج MiniMax بما في ذلك M2.7 لأداء مهام الترميز عبر اشتراك ثابت الرسوم.", diff --git a/locales/ar/subscription.json b/locales/ar/subscription.json index c46b2cc6fd..abcd3f0ce4 100644 --- a/locales/ar/subscription.json +++ b/locales/ar/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "تفعيل الشحن التلقائي", "credits.autoTopUp.upgradeHint": "اشترك في خطة مدفوعة لتفعيل الشحن التلقائي", "credits.autoTopUp.validation.targetMustExceedThreshold": "يجب أن يكون الرصيد المستهدف أكبر من الحد الأدنى", + "credits.costEstimateHint.desc": "عرض تحذير خفيف قبل الإرسال عندما تصل التكلفة التقديرية للنموذج إلى الحد الخاص بك", + "credits.costEstimateHint.saveError": "فشل في حفظ إعدادات تنبيه تقدير التكلفة", + "credits.costEstimateHint.saveSuccess": "تم حفظ إعدادات تنبيه تقدير التكلفة", + "credits.costEstimateHint.threshold": "حد التحذير", + "credits.costEstimateHint.title": "تنبيه تقدير التكلفة", + "credits.costEstimateHint.validation.threshold": "يجب أن يكون الحد أكبر من أو يساوي 0", "credits.packages.auto": "تلقائي", "credits.packages.charged": "تم خصم ${{amount}}", "credits.packages.expired": "منتهية", diff --git a/locales/ar/tool.json b/locales/ar/tool.json index b921fad756..e872b05852 100644 --- a/locales/ar/tool.json +++ b/locales/ar/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "موجود بالفعل في المكتبة", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} موجود بالفعل في المكتبة", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} موجود بالفعل في المكتبة", + "claudeCode.askUserQuestion.escape.back": "العودة إلى الخيارات", + "claudeCode.askUserQuestion.escape.enter": "أو اكتب مباشرة", + "claudeCode.askUserQuestion.escape.placeholder": "اكتب إجابتك هنا…", + "claudeCode.askUserQuestion.multiSelectTag": "(اختيار متعدد)", + "claudeCode.askUserQuestion.skip": "تخطي", + "claudeCode.askUserQuestion.submit": "إرسال", + "claudeCode.askUserQuestion.timeExpired": "انتهى الوقت — سيتم استخدام الخيار 1 لكل سؤال.", + "claudeCode.askUserQuestion.timeRemaining": "الوقت المتبقي: {{time}} · الأسئلة غير المجابة ستُعتمد على الخيار 1 عند انتهاء الوقت.", "codeInterpreter-legacy.error": "خطأ في التنفيذ", "codeInterpreter-legacy.executing": "جارٍ التنفيذ...", "codeInterpreter-legacy.files": "الملفات:", diff --git a/locales/ar/topic.json b/locales/ar/topic.json index 146b5987ae..7c08342e61 100644 --- a/locales/ar/topic.json +++ b/locales/ar/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "إعادة تسمية الموضوع", "searchPlaceholder": "ابحث في المواضيع...", "searchResultEmpty": "لم يتم العثور على نتائج.", + "sidebar.title": "المواضيع", "taskManager.agent": "وكيل المهام", "taskManager.welcome": "اسألني عن مهامك", "temp": "مؤقت", diff --git a/locales/bg-BG/chat.json b/locales/bg-BG/chat.json index 3cfc15d008..42410ec2d8 100644 --- a/locales/bg-BG/chat.json +++ b/locales/bg-BG/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "Добави AI съобщение", "input.addUser": "Добави потребителско съобщение", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} кредита/М токена", + "input.costEstimate.hint": "Оценена цена: ~{{credits}} кредита", + "input.costEstimate.inputLabel": "Вход", + "input.costEstimate.outputLabel": "Изход", + "input.costEstimate.settingsLink": "Настройка на прага за предупреждение", + "input.costEstimate.tokenCount": "~{{tokens}} токена", + "input.costEstimate.tooltip": "Оценено въз основа на текущия контекст, инструменти и ценообразуване на модела. Реалната цена може да варира.", "input.disclaimer": "Агентите могат да допускат грешки. Използвайте собствена преценка за важна информация.", "input.errorMsg": "Изпращането не бе успешно: {{errorMsg}}. Опитайте отново или по-късно.", "input.more": "Още", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Подготовка на части...", "upload.preview.status.pending": "Подготовка за качване...", "upload.preview.status.processing": "Обработка на файла...", + "upload.validation.unsupportedFileType": "Неподдържан тип файл: {{files}}. Поддържани изображения: JPG, PNG, GIF, WebP. Поддържани документи включват PDF, Word, Excel, PowerPoint, Markdown, текст, CSV, JSON и файлове с код.", "upload.validation.videoSizeExceeded": "Размерът на видеофайла не трябва да надвишава 20MB. Текущият размер е {{actualSize}}.", "viewMode.fullWidth": "Пълна ширина", "viewMode.normal": "Стандартен", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Затвори другите", "workingPanel.localFile.closeRight": "Затвори надясно", "workingPanel.localFile.error": "Не може да се зареди този файл", + "workingPanel.localFile.preview.raw": "Суров", + "workingPanel.localFile.preview.render": "Преглед", "workingPanel.localFile.truncated": "Прегледът на файла е съкратен до {{limit}} символа", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Превключете към обединен изглед", "workingPanel.review.wordWrap.disable": "Деактивирай пренасяне на думи", "workingPanel.review.wordWrap.enable": "Активирай пренасяне на думи", + "workingPanel.skills.empty": "Няма намерени умения в този проект", + "workingPanel.skills.title": "Умения", "workingPanel.space": "Пространство", "workingPanel.title": "Working Panel", "you": "Вие", diff --git a/locales/bg-BG/components.json b/locales/bg-BG/components.json index ac5dd5d247..7362e60f66 100644 --- a/locales/bg-BG/components.json +++ b/locales/bg-BG/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Дължина на контекста", "ModelSwitchPanel.detail.pricing": "Ценообразуване", "ModelSwitchPanel.detail.pricing.cachedInput": "Кеширан вход ${{amount}}/М", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Кеширан вход {{amount}} кредита/М токени", + "ModelSwitchPanel.detail.pricing.credits.image": "кредити/изображение", + "ModelSwitchPanel.detail.pricing.credits.input": "Вход {{amount}} кредита/М токени", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "кредити/МП", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "кредити/М символа", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "кредити/М токени", + "ModelSwitchPanel.detail.pricing.credits.output": "Изход {{amount}} кредита/М токени", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} кредита / изображение", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} кредита / видео", + "ModelSwitchPanel.detail.pricing.credits.second": "кредити/сек", "ModelSwitchPanel.detail.pricing.group.audio": "Аудио", "ModelSwitchPanel.detail.pricing.group.image": "Изображение", "ModelSwitchPanel.detail.pricing.group.text": "Текст", diff --git a/locales/bg-BG/editor.json b/locales/bg-BG/editor.json index 6dd75bec8e..38e621e859 100644 --- a/locales/bg-BG/editor.json +++ b/locales/bg-BG/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Команда", + "actionTag.category.projectSkill": "Умение за проект", "actionTag.category.skill": "Умение", "actionTag.category.tool": "Инструмент", "actionTag.tooltip.command": "Изпълнява локална slash команда преди изпращане.", + "actionTag.tooltip.projectSkill": "Изпраща се като команда със знак наклонена черта, така че CLI на агента да изпълни съответното умение за проект.", "actionTag.tooltip.skill": "Зарежда многократно използваем пакет с умения за тази заявка.", "actionTag.tooltip.tool": "Маркира инструмент, който потребителят е избрал изрично за тази заявка.", "actions.expand.off": "Свий", diff --git a/locales/bg-BG/home.json b/locales/bg-BG/home.json index c6613d693a..7b2959f51f 100644 --- a/locales/bg-BG/home.json +++ b/locales/bg-BG/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Игнорирай", "brief.action.retry": "Опит отново", "brief.addFeedback": "Споделяне на обратна връзка", + "brief.agentSignal.selfReview.applied.heading": "Актуализирано", + "brief.agentSignal.selfReview.applied.summary": "{{count}} актуализация на мечтата беше приложена.", + "brief.agentSignal.selfReview.applied.summary_plural": "{{count}} актуализации на мечтата бяха приложени.", + "brief.agentSignal.selfReview.applied.title": "Актуализирани ресурси на мечтата", + "brief.agentSignal.selfReview.error.heading": "Проблем", + "brief.agentSignal.selfReview.error.summary": "Някои задачи не можаха да бъдат завършени по време на тази мечта.", + "brief.agentSignal.selfReview.error.title": "Мечтата срещна проблем", + "brief.agentSignal.selfReview.ideas.summary": "Запазени бележки за мечтата за бъдещ преглед.", + "brief.agentSignal.selfReview.ideas.title": "Бележки за мечтата", + "brief.agentSignal.selfReview.proposal.heading": "Предложение", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} предложение за мечтата изисква вашия преглед.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} предложения за мечтата изискват вашия преглед.", + "brief.agentSignal.selfReview.proposal.title": "Предложение за мечтата изисква преглед", "brief.collapse": "Покажи по-малко", "brief.commentPlaceholder": "Споделете вашата обратна връзка...", "brief.commentSubmit": "Изпращане на обратна връзка", diff --git a/locales/bg-BG/hotkey.json b/locales/bg-BG/hotkey.json index 05f9bce5d4..de1412ae9d 100644 --- a/locales/bg-BG/hotkey.json +++ b/locales/bg-BG/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Добавете текущия вход като потребителско съобщение без да се задейства генериране", "addUserMessage.title": "Добавяне на потребителско съобщение", - "clearCurrentMessages.desc": "Изчистете съобщенията и качените файлове от текущия разговор", - "clearCurrentMessages.title": "Изчистване на съобщенията от разговора", "commandPalette.desc": "Отворете глобалната палитра с команди за бърз достъп до функциите", "commandPalette.title": "Палитра с команди", "deleteAndRegenerateMessage.desc": "Изтрийте последното съобщение и го генерирайте отново", diff --git a/locales/bg-BG/models.json b/locales/bg-BG/models.json index 6289b8babe..7324bae455 100644 --- a/locales/bg-BG/models.json +++ b/locales/bg-BG/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Чисто нов модел за видео генериране с цялостни подобрения в движенията на тялото, физическата реалистичност и следването на инструкции.", "MiniMax-M1.description": "Нов вътрешен модел за разсъждение с 80K верига на мисълта и 1M вход, предлагащ производителност, сравнима с водещите глобални модели.", "MiniMax-M2-Stable.description": "Създаден за ефективно програмиране и агентски работни потоци, с по-висока едновременност за търговска употреба.", - "MiniMax-M2.1-Lightning.description": "Мощни многоезични програмни възможности с по-бързо и ефективно извеждане.", "MiniMax-M2.1-highspeed.description": "Мощни многоезични програмни възможности, цялостно подобрено програмиране. По-бързо и по-ефективно.", "MiniMax-M2.1.description": "MiniMax-M2.1 е водеща отворена голяма езикова система от MiniMax, фокусирана върху решаването на сложни реални задачи. Основните ѝ предимства са възможностите за програмиране на множество езици и способността да действа като агент за решаване на сложни задачи.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: Същата производителност като M2.5, но с по-бързо извеждане.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku е най-бързият и най-компактен модел на Anthropic, проектиран за почти мигновени отговори с бърза и точна производителност.", "claude-3-opus-20240229.description": "Claude 3 Opus е най-мощният модел на Anthropic за силно сложни задачи, отличаващ се с производителност, интелигентност, плавност и разбиране.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet балансира интелигентност и скорост за корпоративни натоварвания, осигурявайки висока полезност на по-ниска цена и надеждно мащабно внедряване.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 е най-бързият и интелигентен модел Haiku на Anthropic, с мълниеносна скорост и разширено мислене.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 е най-бързият и най-умният Haiku модел на Anthropic, с мълниеносна скорост и разширени възможности за разсъждение.", "claude-haiku-4-5.description": "Claude Haiku 4.5 от Anthropic — ново поколение Haiku с подобрено разсъждение и визия.", "claude-haiku-4.5.description": "Claude Haiku 4.5 е най-бързият и най-умен Haiku модел на Anthropic, с мълниеносна скорост и разширено разсъждение.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking е усъвършенстван вариант, който може да разкрие процеса си на разсъждение.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 е най-новият и най-способен модел на Anthropic за силно сложни задачи, превъзхождащ в производителност, интелигентност, плавност и разбиране.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 е най-новият и най-способен модел на Anthropic за силно сложни задачи, отличаващ се с висока производителност, интелигентност, плавност и разбиране.", "claude-opus-4-1.description": "Claude Opus 4.1 от Anthropic — премиум модел за дълбок анализ и разсъждение.", - "claude-opus-4-20250514.description": "Claude Opus 4 е най-мощният модел на Anthropic за силно сложни задачи, превъзхождащ в производителност, интелигентност, плавност и разбиране.", + "claude-opus-4-20250514.description": "Claude Opus 4 е най-мощният модел на Anthropic за силно сложни задачи, отличаващ се с висока производителност, интелигентност, плавност и разбиране.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 е флагманският модел на Anthropic, комбиниращ изключителна интелигентност с мащабируема производителност, идеален за сложни задачи, изискващи най-висококачествени отговори и разсъждение.", "claude-opus-4-5.description": "Claude Opus 4.5 от Anthropic — флагмански модел с върхово разсъждение и кодови умения.", "claude-opus-4-6.description": "Claude Opus 4.6 от Anthropic — флагман с 1M контекст и усъвършенствано разсъждение.", @@ -330,7 +329,7 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 е най-интелигентният модел на Anthropic за създаване на агенти и програмиране.", "claude-opus-4.6.description": "Claude Opus 4.6 е най-интелигентният модел на Anthropic за създаване на агенти и програмиране.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking може да генерира почти мигновени отговори или разширено стъпково мислене с видим процес.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 е най-интелигентният модел на Anthropic досега, предлагащ почти мигновени отговори или разширено стъпка по стъпка мислене с фино управление за API потребители.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 може да генерира почти мигновени отговори или разширено поетапно мислене с видим процес.", "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 е най-интелигентният модел на Anthropic досега.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 от Anthropic — подобрен Sonnet с по‑силни кодови способности.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 от Anthropic — последният Sonnet с превъзходно кодиране и работа с инструменти.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) е иновативен модел, предлагащ дълбоко езиково разбиране и интеракция.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 е модел за разсъждение от ново поколение с по-силни способности за сложни разсъждения и верига от мисли за задълбочени аналитични задачи.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 е модел за разсъждение от следващо поколение с по-силни способности за сложни разсъждения и верига на мисълта.", - "deepseek-chat.description": "Съвместимостен псевдоним за DeepSeek V4 Flash в режим без мислене. Предстои да бъде прекратен — използвайте DeepSeek V4 Flash вместо това.", + "deepseek-chat.description": "Нов модел с отворен код, комбиниращ общи и кодови способности. Той запазва общия диалогов характер на чат модела и силните кодови възможности на кодиращия модел, с по-добро съответствие на предпочитанията. DeepSeek-V2.5 също така подобрява писането и следването на инструкции.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B е езиков модел за програмиране, обучен върху 2 трилиона токени (87% код, 13% китайски/английски текст). Въвежда 16K контекстен прозорец и задачи за попълване в средата, осигурявайки допълване на код на ниво проект и попълване на фрагменти.", "deepseek-coder-v2.description": "DeepSeek Coder V2 е отворен MoE модел за програмиране, който се представя на ниво GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 е отворен MoE модел за програмиране, който се представя на ниво GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "Пълна бърза версия на DeepSeek R1 с търсене в реално време в уеб, комбинираща възможности от мащаб 671B и по-бърз отговор.", "deepseek-r1-online.description": "Пълна версия на DeepSeek R1 с 671 милиарда параметъра и търсене в реално време в уеб, предлагаща по-силно разбиране и генериране.", "deepseek-r1.description": "DeepSeek-R1 използва данни от студен старт преди подсиленото обучение и се представя наравно с OpenAI-o1 в математика, програмиране и разсъждение.", - "deepseek-reasoner.description": "Съвместимостен псевдоним за DeepSeek V4 Flash в режим на мислене. Предстои да бъде прекратен — използвайте DeepSeek V4 Flash вместо това.", + "deepseek-reasoner.description": "DeepSeek модел за разсъждение, фокусиран върху сложни логически задачи.", "deepseek-v2.description": "DeepSeek V2 е ефективен MoE модел за икономична обработка.", "deepseek-v2:236b.description": "DeepSeek V2 236B е модел на DeepSeek, фокусиран върху програмиране, с висока производителност при генериране на код.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 е MoE модел с 671 милиарда параметъра, с изключителни способности в програмиране, технически задачи, разбиране на контекст и обработка на дълги текстове.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 е модел за генериране на изображения от ByteDance Seed, поддържащ вход от текст и изображения с високо контролируемо, висококачествено генериране на изображения. Генерира изображения от текстови подсказки.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 е най-новият мултимодален модел за изображения на ByteDance, интегриращ текст-към-изображение, изображение-към-изображение и групово генериране на изображения, като включва обща логика и способности за разсъждение. В сравнение с предишната версия 4.0, той предлага значително подобрено качество на генериране, с по-добра консистентност при редактиране и мулти-изображение сливане. Осигурява по-прецизен контрол върху визуалните детайли, като произвежда малък текст и малки лица по-естествено, и постига по-хармонично оформление и цветове, подобрявайки цялостната естетика.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite е най-новият модел за генериране на изображения на ByteDance. За първи път интегрира възможности за онлайн извличане, позволявайки му да включва информация в реално време от уеб и да подобрява актуалността на генерираните изображения. Интелигентността на модела също е подобрена, позволявайки прецизно интерпретиране на сложни инструкции и визуално съдържание. Освен това предлага подобрено глобално покритие на знания, консистентност на референциите и качество на генериране в професионални сценарии, по-добре отговаряйки на нуждите за визуално създаване на корпоративно ниво.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 от ByteDance е най-мощният модел за генериране на видео, поддържащ многомодално генериране на референтни видеа, редактиране на видео, разширение на видео, текст към видео и изображение към видео със синхронизиран звук.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast от ByteDance предлага същите възможности като Seedance 2.0 с по-бързи скорости на генериране на по-конкурентна цена.", "emohaa.description": "Emohaa е модел за психично здраве с професионални консултантски способности, който помага на потребителите да разберат емоционални проблеми.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B е лек модел с отворен код за локално и персонализирано внедряване.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview е модел за предварителен преглед с 8K контекст за оценка на ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking е флагмански модел с пълна модалност, обединяващ текст, изображение, аудио и видео. Осигурява значителни подобрения за сложни QA, творчество и агентски сценарии.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview е флагмански модел с пълна модалност, обединяващ текст, изображение, аудио и видео. Осигурява значителни подобрения за сложни QA, творчество и агентски сценарии.", "ernie-5.0.description": "ERNIE 5.0 е ново поколение мултимодален модел, който обединява текст, изображения, аудио и видео. Основните му способности са значително подобрени — силен в разбиране, следване на инструкции, творчество, фактическа точност, планиране и работа с инструменти.", + "ernie-5.1.description": "ERNIE 5.1 е най-новият модел от серията ERNIE, с цялостни подобрения на основните си способности. Той демонстрира значителни подобрения в области като агенти, обработка на знания, разсъждение и дълбоко търсене. Това издание използва разделена напълно асинхронна архитектура за подсилено обучение, специално проектирана за справяне с ключови предизвикателства в еволюцията на големите модели към автономно вземане на решения от агенти, включително числови несъответствия между обучение и извеждане, ниско използване на хетерогенни изчислителни ресурси и глобални проблеми, причинени от ефекти на дългата опашка. Освен това се прилагат техники за постобучение на агенти в голям мащаб, за да се подобрят допълнително способностите и общата производителност на модела. Чрез тристепенна съвместна рамка, включваща процеси на среда, експерт и сливане, подходът не само гарантира ефективност на обучението, но и значително подобрява стабилността и производителността на модела при сложни задачи.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview е предварителен модел за създаване на персонажи и сюжет, предназначен за оценка и тестване на функции.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K е модел за персонажи, предназначен за романи и създаване на сюжет, подходящ за генериране на дълги истории.", "ernie-image-turbo.description": "ERNIE‑Image е 8B параметъра текст‑към‑изображение модел от Baidu. Води в множество класации, включително първо място в SuperCLUE в Китай.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K е бърз мислещ модел с 32K контекст за сложни разсъждения и многозавойни разговори.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview е предварителен модел за мислене, предназначен за оценка и тестване.", "ernie-x1.1.description": "ERNIE X1.1 е мисловен модел за предварителен преглед за оценка и тестване.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, създаден от екипа Seed на ByteDance, поддържа редактиране и композиция на множество изображения. Характеризира се с подобрена консистентност на обектите, прецизно следване на инструкции, разбиране на пространствена логика, естетично изразяване, оформление на плакати и дизайн на лого с високопрецизно рендиране на текст и изображения.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, създаден от ByteDance Seed, поддържа текстови и визуални входове за силно контролируемо, висококачествено генериране на изображения от подсказки.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 е модел за генериране на изображения от ByteDance Seed, поддържащ текстови и визуални входове с високо контролируемо и висококачествено генериране на изображения. Той генерира изображения от текстови подсказки.", "fal-ai/flux-kontext/dev.description": "FLUX.1 модел, фокусиран върху редактиране на изображения, поддържащ вход от текст и изображения.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] приема текст и референтни изображения като вход, позволявайки целенасочени локални редакции и сложни глобални трансформации на сцени.", "fal-ai/flux/krea.description": "Flux Krea [dev] е модел за генериране на изображения с естетично предпочитание към по-реалистични и естествени изображения.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Мощен роден мултимодален модел за генериране на изображения.", "fal-ai/imagen4/preview.description": "Модел за висококачествено генериране на изображения от Google.", "fal-ai/nano-banana.description": "Nano Banana е най-новият, най-бърз и най-ефективен роден мултимодален модел на Google, позволяващ генериране и редактиране на изображения чрез разговор.", - "fal-ai/qwen-image-edit.description": "Професионален модел за редактиране на изображения от екипа Qwen, поддържащ семантични и визуални редакции, прецизно редактиране на текст на китайски/английски, трансфер на стил, ротация и други.", - "fal-ai/qwen-image.description": "Мощен модел за генериране на изображения от екипа Qwen с силно рендиране на китайски текст и разнообразни визуални стилове.", + "fal-ai/qwen-image-edit.description": "Професионален модел за редактиране на изображения от екипа на Qwen, който поддържа семантични и визуални редакции, прецизно редактира китайски и английски текст и позволява висококачествени редакции като трансфер на стил и ротация на обекти.", + "fal-ai/qwen-image.description": "Мощен модел за генериране на изображения от екипа на Qwen с впечатляващо рендиране на китайски текст и разнообразни визуални стилове.", "flux-1-schnell.description": "Модел за преобразуване на текст в изображение с 12 милиарда параметъра от Black Forest Labs, използващ латентна дифузионна дестилация за генериране на висококачествени изображения в 1–4 стъпки. Съперничи на затворени алтернативи и е пуснат под лиценз Apache-2.0 за лична, изследователска и търговска употреба.", "flux-dev.description": "Модел за генериране на изображения с отворен код, оптимизиран за неконкурентни изследвания и иновации.", "flux-kontext-max.description": "Съвременно генериране и редактиране на изображения с контекст, комбиниращо текст и изображения за прецизни и последователни резултати.", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash е най-интелигентният модел, създаден за скорост, съчетаващ авангардна интелигентност с отлично търсене и обоснованост.", "gemini-3-flash.description": "Gemini 3 Flash от Google — ултрабърз модел с мултимодална поддръжка.", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image (Nano Banana Pro) е модел за генериране на изображения на Google, който също поддържа мултимодален диалог.", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) е моделът на Google за генериране на изображения и също така поддържа многомодален чат.", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) е моделът на Google за генериране на изображения, който също поддържа мултимодален чат.", "gemini-3-pro-preview.description": "Gemini 3 Pro е най-мощният агентен и „vibe-coding“ модел на Google, който предлага по-богати визуализации и по-дълбоко взаимодействие, базирано на съвременно логическо мислене.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) е най-бързият модел на Google за генериране на изображения с поддръжка на мислене, разговорно генериране и редактиране на изображения.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) предоставя качество на изображения от професионално ниво с Flash скорост и поддръжка на многомодален чат.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) е най-бързият модел на Google за генериране на изображения с поддръжка на мислене, разговорно генериране и редактиране на изображения.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview е най-икономичният мултимодален модел на Google, оптимизиран за задачи с голям обем, превод и обработка на данни.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite е най-икономичният мултимодален модел на Google, оптимизиран за задачи с голям обем, превод и обработка на данни.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview подобрява Gemini 3 Pro с усъвършенствани способности за разсъждение и добавя поддръжка за средно ниво на мислене.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "С гордост представяме Grok 4 Fast – нашият най-нов напредък в икономичните логически модели.", "grok-4.20-0309-non-reasoning.description": "Неразсъждаващ вариант за прости случаи.", "grok-4.20-0309-reasoning.description": "Интелигентен, изключително бърз модел с разсъждение.", - "grok-4.20-beta-0309-non-reasoning.description": "Вариант без мислене за прости случаи на употреба.", - "grok-4.20-beta-0309-reasoning.description": "Интелигентен, изключително бърз модел, който разсъждава преди да отговори.", "grok-4.20-multi-agent-0309.description": "Екип от 4 или 16 агента — отличен за проучвания; поддържа само xAI сървърни инструменти.", "grok-4.3.description": "Най-истинно търсещият голям езиков модел в света", "grok-4.description": "Най-новият флагман Grok с ненадмината производителност в езика, математиката и разсъжденията — истински универсален модел. В момента сочи към grok-4-0709; поради ограничени ресурси временно е с 10% по-висока цена от официалната и се очаква да се върне към официалната цена по-късно.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ е модел за аргументация от семейството на Qwen. В сравнение със стандартните модели, обучени с инструкции, предлага мисловни и логически способности, които значително подобряват ефективността при трудни задачи. QwQ-32B е среден по размер модел, който се конкурира с водещи модели като DeepSeek-R1 и o1-mini.", "qwq_32b.description": "Среден по размер модел за аргументация от семейството на Qwen. В сравнение със стандартните модели, обучени с инструкции, мисловните и логическите способности на QwQ значително подобряват ефективността при трудни задачи.", "r1-1776.description": "R1-1776 е дообучен вариант на DeepSeek R1, създаден да предоставя неконфронтирана, обективна и фактическа информация.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro от ByteDance поддържа текст към видео, изображение към видео (първи кадър, първи+последен кадър) и генериране на звук, синхронизиран с визуализации.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite от BytePlus предлага генериране, обогатено с уеб извличане за информация в реално време, подобрена интерпретация на сложни подсказки и подобрена консистентност на референциите за професионално визуално създаване.", "solar-mini-ja.description": "Solar Mini (Ja) разширява Solar Mini с фокус върху японски език, като запазва ефективността и силната производителност на английски и корейски.", "solar-mini.description": "Solar Mini е компактен LLM, който превъзхожда GPT-3.5, с мощни многоезични възможности, поддържащ английски и корейски, и предлага ефективно решение с малък отпечатък.", "solar-pro.description": "Solar Pro е интелигентен LLM от Upstage, фокусиран върху следване на инструкции на един GPU, с IFEval резултати над 80. Понастоящем поддържа английски; пълното издание е планирано за ноември 2024 с разширена езикова поддръжка и по-дълъг контекст.", diff --git a/locales/bg-BG/onboarding.json b/locales/bg-BG/onboarding.json index a9d9911c5b..9f7bba3818 100644 --- a/locales/bg-BG/onboarding.json +++ b/locales/bg-BG/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Пропуснете засега", "agent.layout.skipConfirm.title": "Да пропуснете въвеждането засега?", "agent.layout.switchMessage": "Не сте в настроение днес? Можете да преминете в {{mode}} или да {{skip}}.", + "agent.layout.switchMessageClassic": "Не ви допада днес? Можете да превключите на {{mode}}.", + "agent.messenger.cta.discord": "Добави към Discord", + "agent.messenger.cta.slack": "Добави към Slack", + "agent.messenger.cta.telegram": "Отвори в Telegram", + "agent.messenger.subtitle": "Чатете с вашия агент в Telegram, Slack или Discord", + "agent.messenger.telegramQrCaption": "Сканирайте с камерата на телефона си", + "agent.messenger.title": "Дръжте ме с вас, където и да съобщавате", "agent.modeSwitch.agent": "Разговорен", "agent.modeSwitch.classic": "Класически", "agent.modeSwitch.collapse": "Свий", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "Ще запазя това, което обсъдихме до момента. Винаги можете да се върнете и да продължим разговора.", "agent.wrapUp.confirm.ok": "Приключи сега", "agent.wrapUp.confirm.title": "Да приключим ли онбординга?", + "agentPicker.allCategories": "Всички", + "agentPicker.continue": "Продължи", + "agentPicker.skip": "Пропусни за сега", + "agentPicker.subtitle": "Добавете няколко към вашата библиотека сега — открийте още по-късно.", + "agentPicker.title": "Нека добавим няколко агента към вашата библиотека", + "agentPicker.title2": "Изберете тези, които съответстват на начина ви на работа", + "agentPicker.title3": "Винаги можете да добавите още по-късно — започнете с няколко", "back": "Назад", "finish": "Да започнем", "interests.area.business": "Бизнес и стратегия", diff --git a/locales/bg-BG/plugin.json b/locales/bg-BG/plugin.json index c8234c62eb..9466bdb969 100644 --- a/locales/bg-BG/plugin.json +++ b/locales/bg-BG/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} документа", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} операции", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} операции", - "builtins.lobe-agent-documents.inspector.target.agent": "в агент", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "в тема", + "builtins.lobe-agent-documents.inspector.scope.agent": "в агент", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "в тема", "builtins.lobe-agent-documents.title": "Документи на агент", "builtins.lobe-agent-management.apiName.callAgent": "Обаждане на агент", "builtins.lobe-agent-management.apiName.createAgent": "Създаване на агент", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Lobe Агент", "builtins.lobe-claude-code.agent.instruction": "Инструкция", "builtins.lobe-claude-code.agent.result": "Резултат", + "builtins.lobe-claude-code.task.createLabel": "Създаване на задача: ", + "builtins.lobe-claude-code.task.getLabel": "Преглеждане на задача #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "Списък със задачи", + "builtins.lobe-claude-code.task.updateCompleted": "Завършено", + "builtins.lobe-claude-code.task.updateDeleted": "Изтрито", + "builtins.lobe-claude-code.task.updateInProgress": "Започнато", + "builtins.lobe-claude-code.task.updateLabel": "Актуализиране на задача #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "Нулиране", "builtins.lobe-claude-code.todoWrite.allDone": "Всички задачи са изпълнени", "builtins.lobe-claude-code.todoWrite.currentStep": "Текуща стъпка", "builtins.lobe-claude-code.todoWrite.todos": "Задачи", diff --git a/locales/bg-BG/providers.json b/locales/bg-BG/providers.json index f4d1d7b7d6..43b17d4992 100644 --- a/locales/bg-BG/providers.json +++ b/locales/bg-BG/providers.json @@ -33,7 +33,6 @@ "jina.description": "Основана през 2020 г., Jina AI е водеща компания в областта на търсещия AI. Технологичният ѝ стек включва векторни модели, преоценители и малки езикови модели за създаване на надеждни генеративни и мултимодални търсещи приложения.", "kimicodingplan.description": "Kimi Code от Moonshot AI предоставя достъп до модели Kimi, включително K2.5, за задачи, свързани с програмиране.", "lmstudio.description": "LM Studio е десктоп приложение за разработка и експериментиране с LLM на вашия компютър.", - "lobehub.description": "LobeHub Cloud използва официални API, за да осъществява достъп до AI модели и измерва използването чрез Кредити, свързани с токените на модела.", "longcat.description": "LongCat е серия от големи модели за генеративен AI, независимо разработени от Meituan. Той е създаден да подобри вътрешната продуктивност на предприятието и да позволи иновативни приложения чрез ефективна изчислителна архитектура и силни мултимодални възможности.", "minimax.description": "Основана през 2021 г., MiniMax създава универсален AI с мултимодални базови модели, включително текстови модели с трилиони параметри, речеви и визуални модели, както и приложения като Hailuo AI.", "minimaxcodingplan.description": "MiniMax Token Plan предоставя достъп до модели MiniMax, включително M2.7, за задачи, свързани с програмиране, чрез абонамент с фиксирана такса.", diff --git a/locales/bg-BG/subscription.json b/locales/bg-BG/subscription.json index eae4d80e1d..97f25055d7 100644 --- a/locales/bg-BG/subscription.json +++ b/locales/bg-BG/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Активирайте автоматичното презареждане", "credits.autoTopUp.upgradeHint": "Абонирайте се за платен план, за да активирате автоматичното презареждане", "credits.autoTopUp.validation.targetMustExceedThreshold": "Целевият баланс трябва да бъде по-голям от прага", + "credits.costEstimateHint.desc": "Показване на леко предупреждение преди изпращане, когато прогнозната цена на модела достигне вашия праг", + "credits.costEstimateHint.saveError": "Неуспешно запазване на настройките за предупреждение за прогнозна цена", + "credits.costEstimateHint.saveSuccess": "Настройките за предупреждение за прогнозна цена са запазени", + "credits.costEstimateHint.threshold": "Праг за предупреждение", + "credits.costEstimateHint.title": "Предупреждение за прогнозна цена", + "credits.costEstimateHint.validation.threshold": "Прагът трябва да бъде по-голям или равен на 0", "credits.packages.auto": "Автоматично", "credits.packages.charged": "Таксувани ${{amount}}", "credits.packages.expired": "Изтекъл", diff --git a/locales/bg-BG/tool.json b/locales/bg-BG/tool.json index c1621b1c3d..8f5cdfc467 100644 --- a/locales/bg-BG/tool.json +++ b/locales/bg-BG/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Вече в библиотеката", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} вече в библиотеката", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} вече в библиотеката", + "claudeCode.askUserQuestion.escape.back": "Назад към опциите", + "claudeCode.askUserQuestion.escape.enter": "Или въведете директно", + "claudeCode.askUserQuestion.escape.placeholder": "Въведете вашия отговор тук…", + "claudeCode.askUserQuestion.multiSelectTag": "(многоизбор)", + "claudeCode.askUserQuestion.skip": "Пропусни", + "claudeCode.askUserQuestion.submit": "Изпрати", + "claudeCode.askUserQuestion.timeExpired": "Времето изтече — използва се опция 1 за всеки въпрос.", + "claudeCode.askUserQuestion.timeRemaining": "Оставащо време: {{time}} · въпросите без отговор ще се задават на опция 1 при изтичане на времето.", "codeInterpreter-legacy.error": "Грешка при изпълнение", "codeInterpreter-legacy.executing": "Изпълнение...", "codeInterpreter-legacy.files": "Файлове:", diff --git a/locales/bg-BG/topic.json b/locales/bg-BG/topic.json index 270a13f6ab..e677f1bdb1 100644 --- a/locales/bg-BG/topic.json +++ b/locales/bg-BG/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Преименуване на тема", "searchPlaceholder": "Търсене в темите...", "searchResultEmpty": "Няма намерени резултати от търсенето.", + "sidebar.title": "Теми", "taskManager.agent": "Агент за задачи", "taskManager.welcome": "Попитай ме за твоите задачи", "temp": "Временна", diff --git a/locales/de-DE/chat.json b/locales/de-DE/chat.json index 2886acaa73..c7ce339374 100644 --- a/locales/de-DE/chat.json +++ b/locales/de-DE/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "KI-Nachricht hinzufügen", "input.addUser": "Benutzernachricht hinzufügen", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} Credits/M Tokens", + "input.costEstimate.hint": "Geschätzte Kosten: ~{{credits}} Credits", + "input.costEstimate.inputLabel": "Eingabe", + "input.costEstimate.outputLabel": "Ausgabe", + "input.costEstimate.settingsLink": "Warnschwelle anpassen", + "input.costEstimate.tokenCount": "~{{tokens}} Tokens", + "input.costEstimate.tooltip": "Geschätzt basierend auf aktuellem Kontext, Tools und Modellpreisen. Tatsächliche Kosten können abweichen.", "input.disclaimer": "Agenten können Fehler machen. Verwenden Sie Ihr Urteilsvermögen bei kritischen Informationen.", "input.errorMsg": "Senden fehlgeschlagen: {{errorMsg}}. Versuchen Sie es erneut oder später.", "input.more": "Mehr", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Datei wird vorbereitet...", "upload.preview.status.pending": "Vorbereitung zum Hochladen...", "upload.preview.status.processing": "Datei wird verarbeitet...", + "upload.validation.unsupportedFileType": "Nicht unterstützter Dateityp: {{files}}. Unterstützte Bilder: JPG, PNG, GIF, WebP. Unterstützte Dokumente umfassen PDF, Word, Excel, PowerPoint, Markdown, Text, CSV, JSON und Code-Dateien.", "upload.validation.videoSizeExceeded": "Die Videodatei darf 20 MB nicht überschreiten. Aktuelle Größe: {{actualSize}}.", "viewMode.fullWidth": "Volle Breite", "viewMode.normal": "Standard", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Andere schließen", "workingPanel.localFile.closeRight": "Rechts schließen", "workingPanel.localFile.error": "Diese Datei konnte nicht geladen werden", + "workingPanel.localFile.preview.raw": "Rohdaten", + "workingPanel.localFile.preview.render": "Vorschau", "workingPanel.localFile.truncated": "Dateivorschau auf {{limit}} Zeichen gekürzt", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Zur einheitlichen Ansicht wechseln", "workingPanel.review.wordWrap.disable": "Zeilenumbruch deaktivieren", "workingPanel.review.wordWrap.enable": "Zeilenumbruch aktivieren", + "workingPanel.skills.empty": "Keine Fähigkeiten in diesem Projekt gefunden", + "workingPanel.skills.title": "Fähigkeiten", "workingPanel.space": "Leerzeichen", "workingPanel.title": "Working Panel", "you": "Du", diff --git a/locales/de-DE/components.json b/locales/de-DE/components.json index 63400f6b5f..45dc8a3ad8 100644 --- a/locales/de-DE/components.json +++ b/locales/de-DE/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Kontextlänge", "ModelSwitchPanel.detail.pricing": "Preise", "ModelSwitchPanel.detail.pricing.cachedInput": "Gecachter Input ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Zwischengespeicherter Eingabewert {{amount}} Credits/M Tokens", + "ModelSwitchPanel.detail.pricing.credits.image": "Credits/Bild", + "ModelSwitchPanel.detail.pricing.credits.input": "Eingabe {{amount}} Credits/M Tokens", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "Credits/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "Credits/M Zeichen", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "Credits/M Tokens", + "ModelSwitchPanel.detail.pricing.credits.output": "Ausgabe {{amount}} Credits/M Tokens", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} Credits / Bild", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} Credits / Video", + "ModelSwitchPanel.detail.pricing.credits.second": "Credits/s", "ModelSwitchPanel.detail.pricing.group.audio": "Audio", "ModelSwitchPanel.detail.pricing.group.image": "Bild", "ModelSwitchPanel.detail.pricing.group.text": "Text", diff --git a/locales/de-DE/editor.json b/locales/de-DE/editor.json index e06ca980c2..2d1f5c5ade 100644 --- a/locales/de-DE/editor.json +++ b/locales/de-DE/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Befehl", + "actionTag.category.projectSkill": "Projektfertigkeit", "actionTag.category.skill": "Fähigkeit", "actionTag.category.tool": "Werkzeug", "actionTag.tooltip.command": "Führt vor dem Senden einen clientseitigen Slash-Befehl aus.", + "actionTag.tooltip.projectSkill": "Als Slash-Befehl gesendet, damit die CLI des Agenten die passende Projektfertigkeit ausführt.", "actionTag.tooltip.skill": "Lädt für diese Anfrage ein wiederverwendbares Fähigkeitspaket.", "actionTag.tooltip.tool": "Markiert ein Werkzeug, das der Benutzer für diese Anfrage ausdrücklich ausgewählt hat.", "actions.expand.off": "Einklappen", diff --git a/locales/de-DE/home.json b/locales/de-DE/home.json index cd9ed5c3e5..663c37063d 100644 --- a/locales/de-DE/home.json +++ b/locales/de-DE/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Ignorieren", "brief.action.retry": "Erneut versuchen", "brief.addFeedback": "Feedback teilen", + "brief.agentSignal.selfReview.applied.heading": "Aktualisiert", + "brief.agentSignal.selfReview.applied.summary": "{{count}} Traumaktualisierung wurde angewendet.", + "brief.agentSignal.selfReview.applied.summary_plural": "{{count}} Traumaktualisierungen wurden angewendet.", + "brief.agentSignal.selfReview.applied.title": "Traumressourcen aktualisiert", + "brief.agentSignal.selfReview.error.heading": "Problem", + "brief.agentSignal.selfReview.error.summary": "Einige Arbeiten konnten während dieses Traums nicht abgeschlossen werden.", + "brief.agentSignal.selfReview.error.title": "Traum stieß auf ein Problem", + "brief.agentSignal.selfReview.ideas.summary": "Gespeicherte Traumnotizen für zukünftige Überprüfung.", + "brief.agentSignal.selfReview.ideas.title": "Traumnotizen", + "brief.agentSignal.selfReview.proposal.heading": "Vorschlag", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} Traumvorschlag benötigt Ihre Überprüfung.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} Traumvorschläge benötigen Ihre Überprüfung.", + "brief.agentSignal.selfReview.proposal.title": "Traumvorschlag benötigt Überprüfung", "brief.collapse": "Weniger anzeigen", "brief.commentPlaceholder": "Ihr Feedback teilen...", "brief.commentSubmit": "Feedback senden", diff --git a/locales/de-DE/hotkey.json b/locales/de-DE/hotkey.json index a571cd4d51..124a97da16 100644 --- a/locales/de-DE/hotkey.json +++ b/locales/de-DE/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Füge die aktuelle Eingabe als Benutzernachricht hinzu, ohne die Generierung auszulösen", "addUserMessage.title": "Benutzernachricht hinzufügen", - "clearCurrentMessages.desc": "Lösche die Nachrichten und hochgeladenen Dateien aus dem aktuellen Gespräch", - "clearCurrentMessages.title": "Gesprächsnachrichten löschen", "commandPalette.desc": "Öffne die globale Befehlspalette für schnellen Zugriff auf Funktionen", "commandPalette.title": "Befehlspalette", "deleteAndRegenerateMessage.desc": "Lösche die letzte Nachricht und generiere sie neu", diff --git a/locales/de-DE/models.json b/locales/de-DE/models.json index cb05accf06..8dc464f00b 100644 --- a/locales/de-DE/models.json +++ b/locales/de-DE/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Brandneues Videoerzeugungsmodell mit umfassenden Verbesserungen in Körperbewegung, physikalischem Realismus und Befolgung von Anweisungen.", "MiniMax-M1.description": "Ein neues Inhouse-Argumentationsmodell mit 80K Chain-of-Thought und 1M Eingabe, vergleichbar mit führenden globalen Modellen.", "MiniMax-M2-Stable.description": "Entwickelt für effizientes Coden und Agenten-Workflows mit höherer Parallelität für den kommerziellen Einsatz.", - "MiniMax-M2.1-Lightning.description": "Leistungsstarke mehrsprachige Programmierfähigkeiten mit schnellerer und effizienterer Inferenz.", "MiniMax-M2.1-highspeed.description": "Leistungsstarke mehrsprachige Programmierfähigkeiten, umfassend verbesserte Programmiererfahrung. Schneller und effizienter.", "MiniMax-M2.1.description": "MiniMax-M2.1 ist das Flaggschiff unter den Open-Source-Großmodellen von MiniMax und konzentriert sich auf die Lösung komplexer Aufgaben aus der realen Welt. Seine zentralen Stärken liegen in der mehrsprachigen Programmierfähigkeit und der Fähigkeit, als Agent komplexe Aufgaben zu bewältigen.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: Gleiche Leistung wie M2.5 mit schnellerer Inferenz.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku ist das schnellste und kompakteste Modell von Anthropic, entwickelt für nahezu sofortige Antworten mit schneller, präziser Leistung.", "claude-3-opus-20240229.description": "Claude 3 Opus ist das leistungsstärkste Modell von Anthropic für hochkomplexe Aufgaben. Es überzeugt in Leistung, Intelligenz, Sprachfluss und Verständnis.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet bietet eine ausgewogene Kombination aus Intelligenz und Geschwindigkeit für Unternehmensanwendungen. Es liefert hohe Nutzbarkeit bei geringeren Kosten und zuverlässiger Skalierbarkeit.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 ist das schnellste und intelligenteste Haiku-Modell von Anthropic, mit blitzschneller Geschwindigkeit und erweitertem Denken.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 ist das schnellste und intelligenteste Haiku-Modell von Anthropic, mit blitzschneller Geschwindigkeit und erweitertem logischen Denken.", "claude-haiku-4-5.description": "Claude Haiku 4.5 von Anthropic — Next-Gen-Haiku mit verbessertem Reasoning und Vision.", "claude-haiku-4.5.description": "Claude Haiku 4.5 ist das schnellste und intelligenteste Haiku-Modell von Anthropic, mit blitzschneller Geschwindigkeit und erweiterten Denkfähigkeiten.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking ist eine erweiterte Variante, die ihren Denkprozess offenlegen kann.", "claude-opus-4-1-20250805.description": "Claude Opus 4.1 ist das neueste und leistungsfähigste Modell von Anthropic für hochkomplexe Aufgaben, das in Leistung, Intelligenz, Sprachgewandtheit und Verständnis herausragt.", "claude-opus-4-1.description": "Claude Opus 4.1 von Anthropic — Premium-Reasoning-Modell mit tiefgehender Analysefähigkeit.", - "claude-opus-4-20250514.description": "Claude Opus 4 ist das leistungsstärkste Modell von Anthropic für hochkomplexe Aufgaben, das in Leistung, Intelligenz, Sprachgewandtheit und Verständnis herausragt.", + "claude-opus-4-20250514.description": "Claude Opus 4 ist das leistungsstärkste Modell von Anthropic für hochkomplexe Aufgaben, das in Leistung, Intelligenz, Sprachgewandtheit und Verständnis brilliert.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 ist das Flaggschiffmodell von Anthropic. Es kombiniert herausragende Intelligenz mit skalierbarer Leistung und ist ideal für komplexe Aufgaben, die höchste Qualität bei Antworten und logischem Denken erfordern.", "claude-opus-4-5.description": "Claude Opus 4.5 von Anthropic — Flaggschiffmodell mit erstklassigem Reasoning und Coding.", "claude-opus-4-6.description": "Claude Opus 4.6 von Anthropic — Flaggschiffmodell mit 1M Kontextfenster und erweitertem Reasoning.", @@ -330,7 +329,7 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 ist das intelligenteste Modell von Anthropic für die Entwicklung von Agenten und Programmierung.", "claude-opus-4.6.description": "Claude Opus 4.6 ist das intelligenteste Modell von Anthropic für die Entwicklung von Agenten und Programmierung.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking kann nahezu sofortige Antworten oder schrittweises Denken mit sichtbarem Prozess erzeugen.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 ist das bisher intelligenteste Modell von Anthropic, das nahezu sofortige Antworten oder erweitertes schrittweises Denken mit fein abgestimmter Kontrolle für API-Nutzer bietet.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 kann nahezu sofortige Antworten oder ausführliches schrittweises Denken mit sichtbarem Prozess erzeugen.", "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 ist das bisher intelligenteste Modell von Anthropic.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 von Anthropic — weiterentwickeltes Sonnet mit verbesserter Coding-Leistung.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 von Anthropic — neuestes Sonnet mit überlegener Coding- und Tool-Nutzung.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) ist ein innovatives Modell mit tiefem Sprachverständnis und Interaktionsfähigkeit.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 ist ein Next-Gen-Denkmodell mit stärkerem komplexem Denken und Chain-of-Thought für tiefgreifende Analyseaufgaben.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 ist ein Next-Gen-Modell für logisches Denken mit stärkeren Fähigkeiten für komplexes Denken und Kettenlogik.", - "deepseek-chat.description": "Kompatibilitätsalias für den DeepSeek V4 Flash-Modus ohne Denken. Geplant für die Ausmusterung — verwenden Sie stattdessen DeepSeek V4 Flash.", + "deepseek-chat.description": "Ein neues Open-Source-Modell, das allgemeine und Code-Fähigkeiten kombiniert. Es bewahrt den allgemeinen Dialog des Chat-Modells und die starken Codierungsfähigkeiten des Coder-Modells, mit besserer Präferenzabstimmung. DeepSeek-V2.5 verbessert außerdem das Schreiben und die Befolgung von Anweisungen.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B ist ein Code-Sprachmodell, trainiert auf 2 B Tokens (87 % Code, 13 % chinesisch/englischer Text). Es bietet ein 16K-Kontextfenster und Fill-in-the-Middle-Aufgaben für projektweite Codevervollständigung und Snippet-Ergänzung.", "deepseek-coder-v2.description": "DeepSeek Coder V2 ist ein Open-Source-MoE-Code-Modell mit starker Leistung bei Programmieraufgaben, vergleichbar mit GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 ist ein Open-Source-MoE-Code-Modell mit starker Leistung bei Programmieraufgaben, vergleichbar mit GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "DeepSeek R1 Schnellversion mit Echtzeit-Websuche – kombiniert 671B-Fähigkeiten mit schneller Reaktion.", "deepseek-r1-online.description": "DeepSeek R1 Vollversion mit 671B Parametern und Echtzeit-Websuche – bietet stärkeres Verständnis und bessere Generierung.", "deepseek-r1.description": "DeepSeek-R1 nutzt Cold-Start-Daten vor dem RL und erreicht vergleichbare Leistungen wie OpenAI-o1 bei Mathematik, Programmierung und logischem Denken.", - "deepseek-reasoner.description": "Kompatibilitätsalias für den DeepSeek V4 Flash-Denkmodus. Geplant für die Ausmusterung — verwenden Sie stattdessen DeepSeek V4 Flash.", + "deepseek-reasoner.description": "Ein DeepSeek-Logikmodell, das sich auf komplexe logische Denkaufgaben konzentriert.", "deepseek-v2.description": "DeepSeek V2 ist ein effizientes MoE-Modell für kostengünstige Verarbeitung.", "deepseek-v2:236b.description": "DeepSeek V2 236B ist das codefokussierte Modell von DeepSeek mit starker Codegenerierung.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 ist ein MoE-Modell mit 671B Parametern und herausragenden Stärken in Programmierung, technischer Kompetenz, Kontextverständnis und Langtextverarbeitung.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 ist ein Bildgenerierungsmodell von ByteDance Seed, das Text- und Bildeingaben unterstützt und eine hochgradig kontrollierbare, hochwertige Bildgenerierung ermöglicht. Es erzeugt Bilder aus Texteingaben.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 ist das neueste multimodale Bildmodell von ByteDance, das Text-zu-Bild, Bild-zu-Bild und Batch-Bilderzeugung integriert und dabei Allgemeinwissen und logisches Denken einbezieht. Im Vergleich zur vorherigen Version 4.0 bietet es eine deutlich verbesserte Generierungsqualität, bessere Konsistenz bei der Bearbeitung und Multi-Bild-Fusion. Es ermöglicht eine präzisere Kontrolle über visuelle Details, erzeugt kleine Texte und kleine Gesichter natürlicher und erreicht harmonischere Layouts und Farben, wodurch die Gesamtästhetik verbessert wird.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite ist das neueste Bildgenerierungsmodell von ByteDance. Erstmals integriert es Online-Retrieval-Funktionen, die es ermöglichen, Echtzeit-Webinformationen einzubeziehen und die Aktualität der generierten Bilder zu verbessern. Die Intelligenz des Modells wurde ebenfalls aufgerüstet, um komplexe Anweisungen und visuelle Inhalte präzise zu interpretieren. Darüber hinaus bietet es eine verbesserte globale Wissensabdeckung, Konsistenz bei Referenzen und Generierungsqualität in professionellen Szenarien, um den visuellen Erstellungsbedarf auf Unternehmensebene besser zu erfüllen.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 von ByteDance ist das leistungsstärkste Videogenerierungsmodell, das multimodale Referenzvideogenerierung, Videobearbeitung, Videoerweiterung, Text-zu-Video und Bild-zu-Video mit synchronisiertem Audio unterstützt.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast von ByteDance bietet die gleichen Funktionen wie Seedance 2.0 mit schnellerer Generierungsgeschwindigkeit zu einem wettbewerbsfähigeren Preis.", "emohaa.description": "Emohaa ist ein Modell für psychische Gesundheit mit professionellen Beratungsfähigkeiten, das Nutzern hilft, emotionale Probleme zu verstehen.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B ist ein quelloffenes, leichtgewichtiges Modell für lokale und individuell angepasste Bereitstellungen.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview ist ein Vorschau-Modell mit 8K Kontextlänge zur Bewertung von ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking ist ein natives, vollmodales Flaggschiffmodell mit einheitlicher Modellierung von Text, Bild, Audio und Video. Es bietet umfassende Leistungsverbesserungen für komplexe Frage-Antwort-, Kreativ- und Agenten-Szenarien.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview ist ein natives, vollmodales Flaggschiffmodell mit einheitlicher Modellierung von Text, Bild, Audio und Video. Es bietet umfassende Leistungsverbesserungen für komplexe Frage-Antwort-, Kreativ- und Agenten-Szenarien.", "ernie-5.0.description": "ERNIE 5.0, das neue Modell der ERNIE-Serie, ist ein nativ multimodales Großmodell. Es nutzt einen einheitlichen multimodalen Ansatz, um Text, Bilder, Audio und Video gemeinsam zu modellieren und umfassende multimodale Fähigkeiten bereitzustellen. Die Basisfähigkeiten wurden stark verbessert und erzielen hervorragende Ergebnisse in Benchmarks. Besonders stark ist es in multimodalem Verständnis, Befolgen von Anweisungen, kreativem Schreiben, Faktengenauigkeit, agentenbasiertem Planen und Tool-Nutzung.", + "ernie-5.1.description": "ERNIE 5.1 ist das neueste Modell der ERNIE-Serie und bietet umfassende Verbesserungen seiner grundlegenden Fähigkeiten. Es zeigt bedeutende Fortschritte in Bereichen wie Agenten, Wissensverarbeitung, logischem Denken und tiefgehender Suche. Diese Version verwendet eine entkoppelte, vollständig asynchrone Verstärkungslernarchitektur, die speziell entwickelt wurde, um zentrale Herausforderungen bei der Weiterentwicklung großer Modelle hin zu autonomer Entscheidungsfindung durch Agenten zu bewältigen, einschließlich numerischer Diskrepanzen zwischen Training und Inferenz, geringer Auslastung heterogener Rechenressourcen und globaler Probleme durch Langschwanz-Effekte. Darüber hinaus werden großskalige Agenten-Nachtrainierungstechniken eingesetzt, um die Fähigkeiten und die Generalisierungsleistung des Modells weiter zu verbessern. Durch ein dreistufiges kollaboratives Framework, das Umgebung, Experten und Fusionsprozesse umfasst, wird nicht nur die Trainingseffizienz sichergestellt, sondern auch die Stabilität und Leistung des Modells bei komplexen Aufgaben erheblich verbessert.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview ist ein Vorschau-Modell zur Charakter- und Plot-Erstellung für Funktionsbewertung und Tests.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K ist ein Persönlichkeitsmodell für Romane und Plot-Erstellung, geeignet für die Generierung von Langform-Geschichten.", "ernie-image-turbo.description": "ERNIE-Image ist ein Text-zu-Bild-Modell mit 8B Parametern von Baidu. Es zählt zu den besten Modellen in mehreren Benchmarks, inklusive Platz 1 (geteilt) bei SuperCLUE in China, und ist führend im Open-Source-Bereich.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K ist ein schnelles Denkmodell mit 32K Kontext für komplexe Schlussfolgerungen und mehrstufige Gespräche.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview ist ein Vorschau-Modell mit Denkfähigkeit zur Bewertung und zum Testen.", "ernie-x1.1.description": "ERNIE X1.1 ist ein Vorschau-Denkmodell für Evaluierung und Tests.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, entwickelt vom ByteDance Seed-Team, unterstützt die Bearbeitung und Komposition mehrerer Bilder. Es bietet verbesserte Konsistenz von Motiven, präzise Befolgung von Anweisungen, räumliches Logikverständnis, ästhetischen Ausdruck, Posterlayout und Logodesign mit hochpräziser Text-Bild-Wiedergabe.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, entwickelt von ByteDance Seed, unterstützt Text- und Bildeingaben für hochkontrollierbare, qualitativ hochwertige Bildgenerierung aus Eingabeaufforderungen.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 ist ein Bildgenerierungsmodell von ByteDance Seed, das Text- und Bildinputs unterstützt und hochkontrollierbare, qualitativ hochwertige Bildgenerierung ermöglicht. Es erzeugt Bilder aus Textaufforderungen.", "fal-ai/flux-kontext/dev.description": "FLUX.1-Modell mit Fokus auf Bildbearbeitung, unterstützt Text- und Bildeingaben.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] akzeptiert Texte und Referenzbilder als Eingabe und ermöglicht gezielte lokale Bearbeitungen sowie komplexe globale Szenentransformationen.", "fal-ai/flux/krea.description": "Flux Krea [dev] ist ein Bildgenerierungsmodell mit ästhetischer Ausrichtung auf realistischere, natürliche Bilder.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Ein leistungsstarkes natives multimodales Bildgenerierungsmodell.", "fal-ai/imagen4/preview.description": "Hochwertiges Bildgenerierungsmodell von Google.", "fal-ai/nano-banana.description": "Nano Banana ist das neueste, schnellste und effizienteste native multimodale Modell von Google. Es ermöglicht Bildgenerierung und -bearbeitung im Dialog.", - "fal-ai/qwen-image-edit.description": "Ein professionelles Bildbearbeitungsmodell vom Qwen-Team, das semantische und optische Bearbeitungen, präzise chinesische/englische Textbearbeitung, Stilübertragung, Drehung und mehr unterstützt.", - "fal-ai/qwen-image.description": "Ein leistungsstarkes Bildgenerierungsmodell vom Qwen-Team mit starker chinesischer Textrendering-Fähigkeit und vielfältigen visuellen Stilen.", + "fal-ai/qwen-image-edit.description": "Ein professionelles Bildbearbeitungsmodell des Qwen-Teams, das semantische und visuelle Bearbeitungen unterstützt, präzise chinesischen und englischen Text bearbeitet und hochwertige Bearbeitungen wie Stilübertragungen und Objektrotationen ermöglicht.", + "fal-ai/qwen-image.description": "Ein leistungsstarkes Bildgenerierungsmodell des Qwen-Teams mit beeindruckender chinesischer Textrendering und vielfältigen visuellen Stilen.", "flux-1-schnell.description": "Ein Text-zu-Bild-Modell mit 12 Milliarden Parametern von Black Forest Labs, das latente adversariale Diffusionsdistillation nutzt, um hochwertige Bilder in 1–4 Schritten zu erzeugen. Es konkurriert mit geschlossenen Alternativen und ist unter Apache-2.0 für persönliche, Forschungs- und kommerzielle Nutzung verfügbar.", "flux-dev.description": "Open-Source‑Bildgenerierungsmodell für Forschung und Entwicklung, effizient optimiert für nichtkommerzielle Innovationsforschung.", "flux-kontext-max.description": "Modernste kontextuelle Bildgenerierung und -bearbeitung, kombiniert Text und Bilder für präzise, kohärente Ergebnisse.", @@ -569,7 +566,7 @@ "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) ist Googles Bildgenerierungsmodell und unterstützt auch multimodale Chats.", "gemini-3-pro-preview.description": "Gemini 3 Pro ist Googles leistungsstärkstes Agenten- und Vibe-Coding-Modell. Es bietet reichhaltigere visuelle Inhalte und tiefere Interaktionen auf Basis modernster logischer Fähigkeiten.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) ist Googles schnellstes natives Bildgenerierungsmodell mit Denkunterstützung, konversationaler Bildgenerierung und -bearbeitung.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) liefert Pro-Level-Bildqualität mit Flash-Geschwindigkeit und unterstützt multimodale Chats.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) ist Googles schnellstes natives Bildgenerierungsmodell mit Unterstützung für Denken, konversationelle Bildgenerierung und -bearbeitung.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview ist Googles kosteneffizientestes multimodales Modell, optimiert für hochvolumige agentische Aufgaben, Übersetzung und Datenverarbeitung.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite ist Googles kosteneffizientestes multimodales Modell, optimiert für hochvolumige agentenbasierte Aufgaben, Übersetzungen und Datenverarbeitung.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview verbessert Gemini 3 Pro mit erweiterten Fähigkeiten für logisches Denken und unterstützt mittleres Denklevel.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Wir freuen uns, Grok 4 Fast vorzustellen – unser neuester Fortschritt bei kosteneffizienten Denkmodellen.", "grok-4.20-0309-non-reasoning.description": "Eine Non-Reasoning-Variante für einfache Anwendungsfälle.", "grok-4.20-0309-reasoning.description": "Intelligentes, extrem schnelles Modell, das vor der Antwort aktiv denkt.", - "grok-4.20-beta-0309-non-reasoning.description": "Eine Variante ohne Denkprozesse für einfache Anwendungsfälle.", - "grok-4.20-beta-0309-reasoning.description": "Intelligentes, blitzschnelles Modell, das vor der Antwort überlegt.", "grok-4.20-multi-agent-0309.description": "Ein Team aus 4 oder 16 Agenten, hervorragend für Rechercheaufgaben. Unterstützt derzeit keine clientseitigen Tools. Unterstützt ausschließlich serverseitige xAI-Tools (z. B. X Search, Web Search Tools) und Remote-MCP-Tools.", "grok-4.3.description": "Das wahrheitssuchendste große Sprachmodell der Welt", "grok-4.description": "Das neueste Grok-Flaggschiff mit unvergleichlicher Leistung in Sprache, Mathematik und Logik — ein wahrer Alleskönner. Derzeit verweist es auf grok-4-0709; aufgrund begrenzter Ressourcen ist der Preis vorübergehend 10 % höher als der offizielle Preis und wird voraussichtlich später wieder auf den offiziellen Preis zurückkehren.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ ist ein Schlussfolgerungsmodell aus der Qwen-Familie. Im Vergleich zu standardmäßig instruktionstunierten Modellen bietet es überlegene Denk- und Schlussfolgerungsfähigkeiten, die die Leistung bei nachgelagerten Aufgaben deutlich verbessern – insbesondere bei schwierigen Problemen. QwQ-32B ist ein mittelgroßes Modell, das mit führenden Schlussfolgerungsmodellen wie DeepSeek-R1 und o1-mini mithalten kann.", "qwq_32b.description": "Mittelgroßes Schlussfolgerungsmodell aus der Qwen-Familie. Im Vergleich zu standardmäßig instruktionstunierten Modellen steigern QwQs Denk- und Schlussfolgerungsfähigkeiten die Leistung bei nachgelagerten Aufgaben deutlich – insbesondere bei schwierigen Problemen.", "r1-1776.description": "R1-1776 ist eine nachtrainierte Variante von DeepSeek R1, die darauf ausgelegt ist, unzensierte, objektive und faktenbasierte Informationen bereitzustellen.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro von ByteDance unterstützt Text-zu-Video, Bild-zu-Video (erster Frame, erster+letzter Frame) und Audiogenerierung synchronisiert mit visuellen Inhalten.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite von BytePlus bietet webgestützte Generierung für Echtzeitinformationen, verbesserte Interpretation komplexer Eingabeaufforderungen und verbesserte Konsistenz von Referenzen für professionelle visuelle Kreationen.", "solar-mini-ja.description": "Solar Mini (Ja) erweitert Solar Mini mit einem Fokus auf Japanisch und behält dabei eine effiziente und starke Leistung in Englisch und Koreanisch bei.", "solar-mini.description": "Solar Mini ist ein kompaktes LLM, das GPT-3.5 übertrifft. Es bietet starke mehrsprachige Fähigkeiten in Englisch und Koreanisch und ist eine effiziente Lösung mit kleinem Ressourcenbedarf.", "solar-pro.description": "Solar Pro ist ein hochintelligentes LLM von Upstage, das auf Befolgen von Anweisungen auf einer einzelnen GPU ausgelegt ist und IFEval-Werte über 80 erreicht. Derzeit wird Englisch unterstützt; die vollständige Veröffentlichung mit erweitertem Sprachsupport und längeren Kontexten war für November 2024 geplant.", diff --git a/locales/de-DE/onboarding.json b/locales/de-DE/onboarding.json index 6170773ea2..a3fd2127a5 100644 --- a/locales/de-DE/onboarding.json +++ b/locales/de-DE/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Für jetzt überspringen", "agent.layout.skipConfirm.title": "Onboarding jetzt überspringen?", "agent.layout.switchMessage": "Heute nicht so in Stimmung? Du kannst zum {{mode}} wechseln oder {{skip}}.", + "agent.layout.switchMessageClassic": "Nicht in der Stimmung heute? Du kannst zu {{mode}} wechseln.", + "agent.messenger.cta.discord": "Zu Discord hinzufügen", + "agent.messenger.cta.slack": "Zu Slack hinzufügen", + "agent.messenger.cta.telegram": "In Telegram öffnen", + "agent.messenger.subtitle": "Chatte mit deinem Agenten auf Telegram, Slack oder Discord", + "agent.messenger.telegramQrCaption": "Mit der Handykamera scannen", + "agent.messenger.title": "Nimm mich überall mit, wo du Nachrichten sendest", "agent.modeSwitch.agent": "Konversation", "agent.modeSwitch.classic": "Klassisch", "agent.modeSwitch.collapse": "Einklappen", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "Ich speichere, was wir bisher besprochen haben. Sie können jederzeit zurückkommen und weiter chatten.", "agent.wrapUp.confirm.ok": "Jetzt abschließen", "agent.wrapUp.confirm.title": "Onboarding jetzt abschließen?", + "agentPicker.allCategories": "Alle", + "agentPicker.continue": "Weiter", + "agentPicker.skip": "Jetzt überspringen", + "agentPicker.subtitle": "Füge jetzt ein paar zu deiner Bibliothek hinzu – entdecke später jederzeit mehr.", + "agentPicker.title": "Lass uns ein paar Agenten zu deiner Bibliothek hinzufügen", + "agentPicker.title2": "Wähle die aus, die zu deiner Arbeitsweise passen", + "agentPicker.title3": "Du kannst später immer mehr hinzufügen – starte mit ein paar", "back": "Zurück", "finish": "Los geht’s", "interests.area.business": "Geschäft & Strategie", diff --git a/locales/de-DE/plugin.json b/locales/de-DE/plugin.json index 9f75eeb62f..13359a6fd6 100644 --- a/locales/de-DE/plugin.json +++ b/locales/de-DE/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} Dokumente", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} Vorgänge", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} Vorgänge", - "builtins.lobe-agent-documents.inspector.target.agent": "im Agenten", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "im Thema", + "builtins.lobe-agent-documents.inspector.scope.agent": "im Agenten", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "im Thema", "builtins.lobe-agent-documents.title": "Agentendokumente", "builtins.lobe-agent-management.apiName.callAgent": "Agent anrufen", "builtins.lobe-agent-management.apiName.createAgent": "Agent erstellen", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Lobe-Agent", "builtins.lobe-claude-code.agent.instruction": "Anweisung", "builtins.lobe-claude-code.agent.result": "Ergebnis", + "builtins.lobe-claude-code.task.createLabel": "Aufgabe erstellen: ", + "builtins.lobe-claude-code.task.getLabel": "Aufgabe #{{taskId}} überprüfen", + "builtins.lobe-claude-code.task.listLabel": "Aufgaben auflisten", + "builtins.lobe-claude-code.task.updateCompleted": "Abgeschlossen", + "builtins.lobe-claude-code.task.updateDeleted": "Gelöscht", + "builtins.lobe-claude-code.task.updateInProgress": "Gestartet", + "builtins.lobe-claude-code.task.updateLabel": "Aufgabe #{{taskId}} aktualisieren", + "builtins.lobe-claude-code.task.updatePending": "Zurücksetzen", "builtins.lobe-claude-code.todoWrite.allDone": "Alle Aufgaben abgeschlossen", "builtins.lobe-claude-code.todoWrite.currentStep": "Aktueller Schritt", "builtins.lobe-claude-code.todoWrite.todos": "Aufgaben", diff --git a/locales/de-DE/providers.json b/locales/de-DE/providers.json index 434040880b..0741192bc7 100644 --- a/locales/de-DE/providers.json +++ b/locales/de-DE/providers.json @@ -33,7 +33,6 @@ "jina.description": "Jina AI wurde 2020 gegründet und ist ein führendes Unternehmen im Bereich Such-KI. Der Such-Stack umfasst Vektormodelle, Reranker und kleine Sprachmodelle für zuverlässige, hochwertige generative und multimodale Suchanwendungen.", "kimicodingplan.description": "Kimi Code von Moonshot AI bietet Zugriff auf Kimi-Modelle, darunter K2.5, für Coding-Aufgaben.", "lmstudio.description": "LM Studio ist eine Desktop-App zur Entwicklung und zum Experimentieren mit LLMs auf dem eigenen Computer.", - "lobehub.description": "LobeHub Cloud verwendet offizielle APIs, um auf KI-Modelle zuzugreifen, und misst die Nutzung mit Credits, die an Modell-Token gebunden sind.", "longcat.description": "LongCat ist eine Reihe von generativen KI-Großmodellen, die unabhängig von Meituan entwickelt wurden. Sie sind darauf ausgelegt, die Produktivität innerhalb des Unternehmens zu steigern und innovative Anwendungen durch eine effiziente Rechenarchitektur und starke multimodale Fähigkeiten zu ermöglichen.", "minimax.description": "MiniMax wurde 2021 gegründet und entwickelt allgemeine KI mit multimodalen Foundation-Modellen, darunter Textmodelle mit Billionen Parametern, Sprach- und Bildmodelle sowie Apps wie Hailuo AI.", "minimaxcodingplan.description": "Der MiniMax Token Plan bietet Zugriff auf MiniMax-Modelle, darunter M2.7, für Coding-Aufgaben im Rahmen eines Festpreis-Abonnements.", diff --git a/locales/de-DE/subscription.json b/locales/de-DE/subscription.json index f4c929c206..8f5cf956e4 100644 --- a/locales/de-DE/subscription.json +++ b/locales/de-DE/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Automatische Aufladung aktivieren", "credits.autoTopUp.upgradeHint": "Abonnieren Sie einen kostenpflichtigen Plan, um die automatische Aufladung zu aktivieren", "credits.autoTopUp.validation.targetMustExceedThreshold": "Das Zielguthaben muss größer als der Schwellenwert sein", + "credits.costEstimateHint.desc": "Zeigen Sie eine leichte Warnung an, bevor Sie senden, wenn die geschätzten Modellkosten Ihren Schwellenwert erreichen", + "credits.costEstimateHint.saveError": "Fehler beim Speichern der Einstellungen für die Kostenschätzungswarnung", + "credits.costEstimateHint.saveSuccess": "Einstellungen für die Kostenschätzungswarnung gespeichert", + "credits.costEstimateHint.threshold": "Warnschwelle", + "credits.costEstimateHint.title": "Kostenschätzungswarnung", + "credits.costEstimateHint.validation.threshold": "Der Schwellenwert muss größer oder gleich 0 sein", "credits.packages.auto": "Automatisch", "credits.packages.charged": "Berechnet ${{amount}}", "credits.packages.expired": "Abgelaufen", diff --git a/locales/de-DE/tool.json b/locales/de-DE/tool.json index 0581c2d2d4..f6e1c94169 100644 --- a/locales/de-DE/tool.json +++ b/locales/de-DE/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Bereits in der Bibliothek", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} bereits in der Bibliothek", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} bereits in der Bibliothek", + "claudeCode.askUserQuestion.escape.back": "Zurück zu den Optionen", + "claudeCode.askUserQuestion.escape.enter": "Oder direkt eingeben", + "claudeCode.askUserQuestion.escape.placeholder": "Geben Sie Ihre Antwort hier ein…", + "claudeCode.askUserQuestion.multiSelectTag": "(Mehrfachauswahl)", + "claudeCode.askUserQuestion.skip": "Überspringen", + "claudeCode.askUserQuestion.submit": "Absenden", + "claudeCode.askUserQuestion.timeExpired": "Zeit abgelaufen — Option 1 für jede Frage wird verwendet.", + "claudeCode.askUserQuestion.timeRemaining": "Verbleibende Zeit: {{time}} · unbeantwortete Fragen werden bei Ablauf auf Option 1 gesetzt.", "codeInterpreter-legacy.error": "Ausführungsfehler", "codeInterpreter-legacy.executing": "Wird ausgeführt...", "codeInterpreter-legacy.files": "Dateien:", diff --git a/locales/de-DE/topic.json b/locales/de-DE/topic.json index b07105f43f..24852705a0 100644 --- a/locales/de-DE/topic.json +++ b/locales/de-DE/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Thema umbenennen", "searchPlaceholder": "Themen suchen...", "searchResultEmpty": "Keine Suchergebnisse gefunden.", + "sidebar.title": "Themen", "taskManager.agent": "Aufgaben-Agent", "taskManager.welcome": "Frag mich nach deinen Aufgaben", "temp": "Temporär", diff --git a/locales/en-US/chat.json b/locales/en-US/chat.json index e5bbe8a838..6dc274d475 100644 --- a/locales/en-US/chat.json +++ b/locales/en-US/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "Add an AI message", "input.addUser": "Add a user message", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} credits/M tokens", + "input.costEstimate.hint": "Estimated cost: ~{{credits}} credits", + "input.costEstimate.inputLabel": "Input", + "input.costEstimate.outputLabel": "Output", + "input.costEstimate.settingsLink": "Adjust warning threshold", + "input.costEstimate.tokenCount": "~{{tokens}} tokens", + "input.costEstimate.tooltip": "Estimated from current context, tools, and model pricing. Actual cost may vary.", "input.disclaimer": "Agents can make mistakes. Use your judgment for critical info.", "input.errorMsg": "Send failed: {{errorMsg}}. Retry, or send again later.", "input.more": "More", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Preparing chunks...", "upload.preview.status.pending": "Preparing to upload...", "upload.preview.status.processing": "Processing file...", + "upload.validation.unsupportedFileType": "Unsupported file type: {{files}}. Supported images: JPG, PNG, GIF, WebP. Supported documents include PDF, Word, Excel, PowerPoint, Markdown, text, CSV, JSON, and code files.", "upload.validation.videoSizeExceeded": "Video file size must not exceed 20MB. Current file size is {{actualSize}}.", "viewMode.fullWidth": "Full Width", "viewMode.normal": "Standard", diff --git a/locales/en-US/components.json b/locales/en-US/components.json index 3d3eb683e9..9fb5df54c2 100644 --- a/locales/en-US/components.json +++ b/locales/en-US/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Context Length", "ModelSwitchPanel.detail.pricing": "Pricing", "ModelSwitchPanel.detail.pricing.cachedInput": "Cached input ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Cached input {{amount}} credits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.image": "credits/img", + "ModelSwitchPanel.detail.pricing.credits.input": "Input {{amount}} credits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "credits/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "credits/M chars", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "credits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.output": "Output {{amount}} credits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} credits / image", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} credits / video", + "ModelSwitchPanel.detail.pricing.credits.second": "credits/s", "ModelSwitchPanel.detail.pricing.group.audio": "Audio", "ModelSwitchPanel.detail.pricing.group.image": "Image", "ModelSwitchPanel.detail.pricing.group.text": "Text", diff --git a/locales/en-US/hotkey.json b/locales/en-US/hotkey.json index 902b1555b3..515cf25f3e 100644 --- a/locales/en-US/hotkey.json +++ b/locales/en-US/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Add the current input as a user message without triggering generation", "addUserMessage.title": "Add a User Message", - "clearCurrentMessages.desc": "Clear the messages and uploaded files from the current conversation", - "clearCurrentMessages.title": "Clear Conversation Messages", "commandPalette.desc": "Open the global command palette for quick access to features", "commandPalette.title": "Command Palette", "deleteAndRegenerateMessage.desc": "Delete the last message and regenerate", diff --git a/locales/en-US/models.json b/locales/en-US/models.json index 3c724d77ab..59b81ecae6 100644 --- a/locales/en-US/models.json +++ b/locales/en-US/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Brand-new video generation model with comprehensive upgrades in body motion, physical realism, and instruction following.", "MiniMax-M1.description": "A new in-house reasoning model with 80K chain-of-thought and 1M input, delivering performance comparable to top global models.", "MiniMax-M2-Stable.description": "Built for efficient coding and agent workflows, with higher concurrency for commercial use.", - "MiniMax-M2.1-Lightning.description": "Powerful multilingual programming capabilities with faster and more efficient inference.", "MiniMax-M2.1-highspeed.description": "Powerful multilingual programming capabilities, comprehensively upgraded programming experience. Faster and more efficient.", "MiniMax-M2.1.description": "MiniMax-M2.1 is a flagship open-source large model from MiniMax, focusing on solving complex real-world tasks. Its core strengths are multi-language programming capabilities and the ability to solve complex tasks as an Agent.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: Same performance as M2.5 with faster inference.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku is Anthropic’s fastest and most compact model, designed for near-instant responses with fast, accurate performance.", "claude-3-opus-20240229.description": "Claude 3 Opus is Anthropic’s most powerful model for highly complex tasks, excelling in performance, intelligence, fluency, and comprehension.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet balances intelligence and speed for enterprise workloads, delivering high utility at lower cost and reliable large-scale deployment.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 is Anthropic's fastest and most intelligent Haiku model, with lightning speed and extended thinking.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 is Anthropic’s fastest and smartest Haiku model, with lightning speed and extended reasoning.", "claude-haiku-4-5.description": "Claude Haiku 4.5 by Anthropic — next-gen Haiku with enhanced reasoning and vision.", "claude-haiku-4.5.description": "Claude Haiku 4.5 is Anthropic’s fastest and smartest Haiku model, with lightning speed and extended reasoning.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking is an advanced variant that can reveal its reasoning process.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 is Anthropic's latest and most capable model for highly complex tasks, excelling in performance, intelligence, fluency, and understanding.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 is Anthropic’s latest and most capable model for highly complex tasks, excelling in performance, intelligence, fluency, and understanding.", "claude-opus-4-1.description": "Claude Opus 4.1 by Anthropic — premium reasoning model with deep analysis capabilities.", - "claude-opus-4-20250514.description": "Claude Opus 4 is Anthropic's most powerful model for highly complex tasks, excelling in performance, intelligence, fluency, and understanding.", + "claude-opus-4-20250514.description": "Claude Opus 4 is Anthropic’s most powerful model for highly complex tasks, excelling in performance, intelligence, fluency, and comprehension.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 is Anthropic’s flagship model, combining outstanding intelligence with scalable performance, ideal for complex tasks requiring the highest-quality responses and reasoning.", "claude-opus-4-5.description": "Claude Opus 4.5 by Anthropic — flagship model with top-tier reasoning and coding.", "claude-opus-4-6.description": "Claude Opus 4.6 by Anthropic — 1M context window flagship with advanced reasoning.", @@ -330,8 +329,8 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 is Anthropic’s most intelligent model for building agents and coding.", "claude-opus-4.6.description": "Claude Opus 4.6 is Anthropic’s most intelligent model for building agents and coding.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking can produce near-instant responses or extended step-by-step thinking with visible process.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 is Anthropic's most intelligent model to date, offering near-instant responses or extended step-by-step thinking with fine-grained control for API users.", - "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 is Anthropic's most intelligent model to date.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 can produce near-instant responses or extended step-by-step thinking with visible process.", + "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 is Anthropic’s most intelligent model to date.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 by Anthropic — improved Sonnet with enhanced coding performance.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 by Anthropic — latest Sonnet with superior coding and tool use.", "claude-sonnet-4.5.description": "Claude Sonnet 4.5 is Anthropic’s most intelligent model to date.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) is an innovative model offering deep language understanding and interaction.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 is a next-gen reasoning model with stronger complex reasoning and chain-of-thought for deep analysis tasks.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 is a next-gen reasoning model with stronger complex reasoning and chain-of-thought capabilities.", - "deepseek-chat.description": "Compatibility alias for DeepSeek V4 Flash non-thinking mode. Slated for deprecation — use DeepSeek V4 Flash instead.", + "deepseek-chat.description": "A new open-source model combining general and code abilities. It preserves the chat model’s general dialogue and the coder model’s strong coding, with better preference alignment. DeepSeek-V2.5 also improves writing and instruction following.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B is a code language model trained on 2T tokens (87% code, 13% Chinese/English text). It introduces a 16K context window and fill-in-the-middle tasks, providing project-level code completion and snippet infilling.", "deepseek-coder-v2.description": "DeepSeek Coder V2 is an open-source MoE code model that performs strongly on coding tasks, comparable to GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 is an open-source MoE code model that performs strongly on coding tasks, comparable to GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "DeepSeek R1 fast full version with real-time web search, combining 671B-scale capability and faster response.", "deepseek-r1-online.description": "DeepSeek R1 full version with 671B parameters and real-time web search, offering stronger understanding and generation.", "deepseek-r1.description": "DeepSeek-R1 uses cold-start data before RL and performs comparably to OpenAI-o1 on math, coding, and reasoning.", - "deepseek-reasoner.description": "Compatibility alias for DeepSeek V4 Flash thinking mode. Slated for deprecation — use DeepSeek V4 Flash instead.", + "deepseek-reasoner.description": "A DeepSeek reasoning model focused on complex logical reasoning tasks.", "deepseek-v2.description": "DeepSeek V2 is an efficient MoE model for cost-effective processing.", "deepseek-v2:236b.description": "DeepSeek V2 236B is DeepSeek’s code-focused model with strong code generation.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 is a 671B-parameter MoE model with standout strengths in programming and technical capability, context understanding, and long-text handling.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 is an image generation model from ByteDance Seed, supporting text and image inputs with highly controllable, high-quality image generation. It generates images from text prompts.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 is ByteDance’s latest multimodal image model, integrating text-to-image, image-to-image, and batch image generation capabilities, while incorporating commonsense and reasoning abilities. Compared to the previous 4.0 version, it delivers significantly improved generation quality, with better editing consistency and multi-image fusion. It offers more precise control over visual details, producing small text and small faces more naturally, and achieves more harmonious layout and color, enhancing overall aesthetics.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite is ByteDance’s latest image-generation model. For the first time, it integrates online retrieval capabilities, allowing it to incorporate real-time web information and enhance the timeliness of generated images. The model’s intelligence has also been upgraded, enabling precise interpretation of complex instructions and visual content. Additionally, it offers improved global knowledge coverage, reference consistency, and generation quality in professional scenarios, better meeting enterprise-level visual creation needs.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 by ByteDance is the most powerful video generation model, supporting multimodal reference video generation, video editing, video extension, text-to-video, and image-to-video with synchronized audio.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast by ByteDance offers the same capabilities as Seedance 2.0 with faster generation speeds at a more competitive price.", "emohaa.description": "Emohaa is a mental health model with professional counseling abilities to help users understand emotional issues.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B is an open-source lightweight model for local and customized deployment.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview is an 8K context preview model for evaluating ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking is a native full-modal flagship model with unified text, image, audio, and video modeling. It delivers broad capability upgrades for complex QA, creation, and agent scenarios.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview is a native full-modal flagship model with unified text, image, audio, and video modeling. It delivers broad capability upgrades for complex QA, creation, and agent scenarios.", "ernie-5.0.description": "ERNIE 5.0, the new-generation model in the ERNIE series, is a natively multimodal large model. It adopts a unified multimodal modeling approach, jointly modeling text, images, audio, and video to deliver comprehensive multimodal capabilities. Its foundational abilities have been significantly upgraded, achieving strong performance on benchmark evaluations. It particularly excels in multimodal understanding, instruction following, creative writing, factual accuracy, agent planning, and tool utilization.", + "ernie-5.1.description": "ERNIE 5.1 is the latest model in the ERNIE series, featuring comprehensive upgrades to its foundational capabilities. It demonstrates significant improvements in areas such as agents, knowledge processing, reasoning, and deep search. This release adopts a decoupled fully asynchronous reinforcement learning architecture, specifically designed to address key challenges in the evolution of large models toward autonomous agent decision-making, including training–inference numerical discrepancies, low utilization of heterogeneous computing resources, and global issues caused by long-tail effects. In addition, large-scale agent post-training techniques are employed to further enhance the model’s capabilities and generalization performance. Through a three-stage collaborative framework involving environment, expert, and fusion processes, the approach not only ensures training efficiency but also significantly improves the model’s stability and performance on complex tasks.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview is a character and plot creation model preview for feature evaluation and testing.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K is a persona model for novels and plot creation, suited for long-form story generation.", "ernie-image-turbo.description": "ERNIE-Image is an 8B-parameter text-to-image model developed by Baidu. It ranks among the top on multiple benchmarks, achieving a tied first place in SuperCLUE in China and leading in the open-source track.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K is a fast thinking model with 32K context for complex reasoning and multi-turn chat.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview is a thinking-model preview for evaluation and testing.", "ernie-x1.1.description": "ERNIE X1.1 is a thinking-model preview for evaluation and testing.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, built by ByteDance Seed team, supports multi-image editing and composition. Features enhanced subject consistency, precise instruction following, spatial logic understanding, aesthetic expression, poster layout and logo design with high-precision text-image rendering.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, built by ByteDance Seed, supports text and image inputs for highly controllable, high-quality image generation from prompts.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 is an image generation model from ByteDance Seed, supporting text and image inputs with highly controllable, high-quality image generation. It generates images from text prompts.", "fal-ai/flux-kontext/dev.description": "FLUX.1 model focused on image editing, supporting text and image inputs.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] accepts text and reference images as input, enabling targeted local edits and complex global scene transformations.", "fal-ai/flux/krea.description": "Flux Krea [dev] is an image generation model with an aesthetic bias toward more realistic, natural images.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "A powerful native multimodal image generation model.", "fal-ai/imagen4/preview.description": "High-quality image generation model from Google.", "fal-ai/nano-banana.description": "Nano Banana is Google’s newest, fastest, and most efficient native multimodal model, enabling image generation and editing through conversation.", - "fal-ai/qwen-image-edit.description": "A professional image editing model from the Qwen team, supporting semantic and appearance edits, precise Chinese/English text editing, style transfer, rotation, and more.", - "fal-ai/qwen-image.description": "A powerful image generation model from the Qwen team with strong Chinese text rendering and diverse visual styles.", + "fal-ai/qwen-image-edit.description": "A professional image editing model from the Qwen team that supports semantic and appearance edits, precisely edits Chinese and English text, and enables high-quality edits such as style transfer and object rotation.", + "fal-ai/qwen-image.description": "A powerful image generation model from the Qwen team with impressive Chinese text rendering and diverse visual styles.", "flux-1-schnell.description": "A 12B-parameter text-to-image model from Black Forest Labs using latent adversarial diffusion distillation to generate high-quality images in 1-4 steps. It rivals closed alternatives and is released under Apache-2.0 for personal, research, and commercial use.", "flux-dev.description": "Open-source R&D image generation model, efficiently optimized for non-commercial innovation research.", "flux-kontext-max.description": "State-of-the-art contextual image generation and editing, combining text and images for precise, coherent results.", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash is the smartest model built for speed, combining cutting-edge intelligence with excellent search grounding.", "gemini-3-flash.description": "Gemini 3 Flash by Google — ultra-fast model with multimodal input support.", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image (Nano Banana Pro) is Google's image generation model that also supports multimodal dialogue.", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) is Google's image generation model and also supports multimodal chat.", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) is Google’s image generation model and also supports multimodal chat.", "gemini-3-pro-preview.description": "Gemini 3 Pro is Google’s most powerful agent and vibe-coding model, delivering richer visuals and deeper interaction on top of state-of-the-art reasoning.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) is Google's fastest native image generation model with thinking support, conversational image generation and editing.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) delivers Pro-level image quality at Flash speed with multimodal chat support.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) is Google's fastest native image generation model with thinking support, conversational image generation and editing.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview is Google's most cost-efficient multimodal model, optimized for high-volume agentic tasks, translation, and data processing.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite is Google's most cost-efficient multimodal model, optimized for high-volume agentic tasks, translation, and data processing.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview improves on Gemini 3 Pro with enhanced reasoning capabilities and adds medium thinking level support.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "We’re excited to release Grok 4 Fast, our latest progress in cost-effective reasoning models.", "grok-4.20-0309-non-reasoning.description": "A non-reasoning variant for simple use cases", "grok-4.20-0309-reasoning.description": "Intelligent, blazing-fast model that reasons before responding", - "grok-4.20-beta-0309-non-reasoning.description": "A non-reasoning variant for simple use cases", - "grok-4.20-beta-0309-reasoning.description": "Intelligent, blazing-fast model that reasons before responding", "grok-4.20-multi-agent-0309.description": "A team of 4 or 16 agents, Excels at research use cases, Does not currently support client-side tools. Only supports xAI server side tools (eg X Search, Web Search tools) and remote MCP tools.", "grok-4.3.description": "The most truth-seeking large language model in the world", "grok-4.description": "Latest Grok flagship with unmatched performance in language, math, and reasoning — a true all-rounder. Currently points to grok-4-0709; due to limited resources it is temporarily 10% higher than official pricing and is expected to return to official price later.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ is a reasoning model in the Qwen family. Compared with standard instruction-tuned models, it brings thinking and reasoning abilities that significantly improve downstream performance, especially on hard problems. QwQ-32B is a mid-sized reasoning model that competes well with top reasoning models like DeepSeek-R1 and o1-mini.", "qwq_32b.description": "Mid-sized reasoning model in the Qwen family. Compared with standard instruction-tuned models, QwQ’s thinking and reasoning abilities significantly boost downstream performance, especially on hard problems.", "r1-1776.description": "R1-1776 is a post-trained variant of DeepSeek R1 designed to provide uncensored, unbiased factual information.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro by ByteDance supports text-to-video, image-to-video (first frame, first+last frame), and audio generation synchronized with visuals.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite by BytePlus features web-retrieval-augmented generation for real-time information, enhanced complex prompt interpretation, and improved reference consistency for professional visual creation.", "solar-mini-ja.description": "Solar Mini (Ja) extends Solar Mini with a focus on Japanese while maintaining efficient, strong performance in English and Korean.", "solar-mini.description": "Solar Mini is a compact LLM that outperforms GPT-3.5, with strong multilingual capability supporting English and Korean, offering an efficient small-footprint solution.", "solar-pro.description": "Solar Pro is a high-intelligence LLM from Upstage, focused on instruction following on a single GPU, with IFEval scores above 80. It currently supports English; the full release was planned for November 2024 with expanded language support and longer context.", diff --git a/locales/en-US/onboarding.json b/locales/en-US/onboarding.json index 164316ae47..a1f1f23ea7 100644 --- a/locales/en-US/onboarding.json +++ b/locales/en-US/onboarding.json @@ -28,6 +28,12 @@ "agent.layout.skipConfirm.title": "Skip onboarding for now?", "agent.layout.switchMessage": "Not feeling it today? You can switch to {{mode}} or {{skip}}.", "agent.layout.switchMessageClassic": "Not feeling it today? You can switch to {{mode}}.", + "agent.messenger.cta.discord": "Add to Discord", + "agent.messenger.cta.slack": "Add to Slack", + "agent.messenger.cta.telegram": "Open in Telegram", + "agent.messenger.subtitle": "Chat with your agent on Telegram, Slack, or Discord", + "agent.messenger.telegramQrCaption": "Scan with your phone camera", + "agent.messenger.title": "Keep me with you, wherever you message", "agent.modeSwitch.agent": "Conversational", "agent.modeSwitch.classic": "Classic", "agent.modeSwitch.collapse": "Collapse", diff --git a/locales/en-US/plugin.json b/locales/en-US/plugin.json index cbbe90effa..0b3861a7ff 100644 --- a/locales/en-US/plugin.json +++ b/locales/en-US/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} docs", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} ops", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} ops", - "builtins.lobe-agent-documents.inspector.target.agent": "in agent", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "in topic", + "builtins.lobe-agent-documents.inspector.scope.agent": "in agent", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "in topic", "builtins.lobe-agent-documents.title": "Agent Documents", "builtins.lobe-agent-management.apiName.callAgent": "Call agent", "builtins.lobe-agent-management.apiName.createAgent": "Create agent", diff --git a/locales/en-US/providers.json b/locales/en-US/providers.json index ece32d6726..cdbf854011 100644 --- a/locales/en-US/providers.json +++ b/locales/en-US/providers.json @@ -33,7 +33,6 @@ "jina.description": "Founded in 2020, Jina AI is a leading search AI company. Its search stack includes vector models, rerankers, and small language models to build reliable, high-quality generative and multimodal search apps.", "kimicodingplan.description": "Kimi Code from Moonshot AI provides access to Kimi models including K2.5 for coding tasks.", "lmstudio.description": "LM Studio is a desktop app for developing and experimenting with LLMs on your computer.", - "lobehub.description": "LobeHub Cloud uses official APIs to access AI models and measures usage with Credits tied to model tokens.", "longcat.description": "LongCat is a series of generative AI large models independently developed by Meituan. It is designed to enhance internal enterprise productivity and enable innovative applications through an efficient computational architecture and strong multimodal capabilities.", "minimax.description": "Founded in 2021, MiniMax builds general-purpose AI with multimodal foundation models, including trillion-parameter MoE text models, speech models, and vision models, along with apps like Hailuo AI.", "minimaxcodingplan.description": "MiniMax Token Plan provides access to MiniMax models including M2.7 for coding tasks via a fixed-fee subscription.", diff --git a/locales/en-US/subscription.json b/locales/en-US/subscription.json index 392bd8750a..a042d071eb 100644 --- a/locales/en-US/subscription.json +++ b/locales/en-US/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Enable Auto Top-Up", "credits.autoTopUp.upgradeHint": "Subscribe to a paid plan to enable auto top-up", "credits.autoTopUp.validation.targetMustExceedThreshold": "Target balance must be greater than threshold", + "credits.costEstimateHint.desc": "Show a lightweight warning before sending when the estimated model cost reaches your threshold", + "credits.costEstimateHint.saveError": "Failed to save cost estimate alert settings", + "credits.costEstimateHint.saveSuccess": "Cost estimate alert settings saved", + "credits.costEstimateHint.threshold": "Warning Threshold", + "credits.costEstimateHint.title": "Cost Estimate Alert", + "credits.costEstimateHint.validation.threshold": "Threshold must be greater than or equal to 0", "credits.packages.auto": "Auto", "credits.packages.charged": "Charged ${{amount}}", "credits.packages.expired": "Expired", diff --git a/locales/es-ES/chat.json b/locales/es-ES/chat.json index a70f138d2c..5901514081 100644 --- a/locales/es-ES/chat.json +++ b/locales/es-ES/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "Agregar mensaje de IA", "input.addUser": "Agregar mensaje de usuario", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} créditos/M tokens", + "input.costEstimate.hint": "Costo estimado: ~{{credits}} créditos", + "input.costEstimate.inputLabel": "Entrada", + "input.costEstimate.outputLabel": "Salida", + "input.costEstimate.settingsLink": "Ajustar umbral de advertencia", + "input.costEstimate.tokenCount": "~{{tokens}} tokens", + "input.costEstimate.tooltip": "Estimado a partir del contexto actual, herramientas y precios del modelo. El costo real puede variar.", "input.disclaimer": "Los agentes pueden cometer errores. Usa tu criterio para información crítica.", "input.errorMsg": "Error al enviar: {{errorMsg}}. Intenta de nuevo más tarde.", "input.more": "Más", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Preparando fragmentos...", "upload.preview.status.pending": "Preparando para subir...", "upload.preview.status.processing": "Procesando archivo...", + "upload.validation.unsupportedFileType": "Tipo de archivo no compatible: {{files}}. Imágenes compatibles: JPG, PNG, GIF, WebP. Documentos compatibles incluyen PDF, Word, Excel, PowerPoint, Markdown, texto, CSV, JSON y archivos de código.", "upload.validation.videoSizeExceeded": "El tamaño del archivo de video no debe superar los 20MB. Tamaño actual: {{actualSize}}.", "viewMode.fullWidth": "Ancho completo", "viewMode.normal": "Estándar", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Cerrar Otros", "workingPanel.localFile.closeRight": "Cerrar a la Derecha", "workingPanel.localFile.error": "No se pudo cargar este archivo", + "workingPanel.localFile.preview.raw": "Sin procesar", + "workingPanel.localFile.preview.render": "Vista previa", "workingPanel.localFile.truncated": "Vista previa del archivo truncada a {{limit}} caracteres", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Cambiar a vista unificada", "workingPanel.review.wordWrap.disable": "Desactivar ajuste de línea", "workingPanel.review.wordWrap.enable": "Activar ajuste de línea", + "workingPanel.skills.empty": "No se encontraron habilidades en este proyecto", + "workingPanel.skills.title": "Habilidades", "workingPanel.space": "Espacio", "workingPanel.title": "Working Panel", "you": "Tú", diff --git a/locales/es-ES/components.json b/locales/es-ES/components.json index bc54c669c3..aa9d7cfc19 100644 --- a/locales/es-ES/components.json +++ b/locales/es-ES/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Longitud del contexto", "ModelSwitchPanel.detail.pricing": "Precios", "ModelSwitchPanel.detail.pricing.cachedInput": "Entrada en caché ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Entrada en caché {{amount}} créditos/M tokens", + "ModelSwitchPanel.detail.pricing.credits.image": "créditos/img", + "ModelSwitchPanel.detail.pricing.credits.input": "Entrada {{amount}} créditos/M tokens", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "créditos/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "créditos/M caracteres", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "créditos/M tokens", + "ModelSwitchPanel.detail.pricing.credits.output": "Salida {{amount}} créditos/M tokens", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} créditos / imagen", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} créditos / video", + "ModelSwitchPanel.detail.pricing.credits.second": "créditos/s", "ModelSwitchPanel.detail.pricing.group.audio": "Audio", "ModelSwitchPanel.detail.pricing.group.image": "Imagen", "ModelSwitchPanel.detail.pricing.group.text": "Texto", diff --git a/locales/es-ES/editor.json b/locales/es-ES/editor.json index 1e66ef7a31..94b16a46ff 100644 --- a/locales/es-ES/editor.json +++ b/locales/es-ES/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Comando", + "actionTag.category.projectSkill": "Habilidad del proyecto", "actionTag.category.skill": "Habilidad", "actionTag.category.tool": "Herramienta", "actionTag.tooltip.command": "Ejecuta un comando de barra en el cliente antes de enviar.", + "actionTag.tooltip.projectSkill": "Enviado como una invocación de barra diagonal para que la CLI del agente ejecute la habilidad del proyecto correspondiente.", "actionTag.tooltip.skill": "Carga un paquete de habilidades reutilizable para esta solicitud.", "actionTag.tooltip.tool": "Marca una herramienta que el usuario seleccionó explícitamente para esta solicitud.", "actions.expand.off": "Colapsar", diff --git a/locales/es-ES/home.json b/locales/es-ES/home.json index 6482a19ae6..7f5daa4442 100644 --- a/locales/es-ES/home.json +++ b/locales/es-ES/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Ignorar", "brief.action.retry": "Reintentar", "brief.addFeedback": "Compartir comentarios", + "brief.agentSignal.selfReview.applied.heading": "Actualizado", + "brief.agentSignal.selfReview.applied.summary": "Se aplicó {{count}} actualización de sueño.", + "brief.agentSignal.selfReview.applied.summary_plural": "Se aplicaron {{count}} actualizaciones de sueño.", + "brief.agentSignal.selfReview.applied.title": "Recursos de sueño actualizados", + "brief.agentSignal.selfReview.error.heading": "Problema", + "brief.agentSignal.selfReview.error.summary": "Algunos trabajos no pudieron completarse durante este sueño.", + "brief.agentSignal.selfReview.error.title": "El sueño encontró un problema", + "brief.agentSignal.selfReview.ideas.summary": "Notas de sueño guardadas para revisión futura.", + "brief.agentSignal.selfReview.ideas.title": "Notas de sueño", + "brief.agentSignal.selfReview.proposal.heading": "Sugerencia", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} sugerencia de sueño necesita tu revisión.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} sugerencias de sueño necesitan tu revisión.", + "brief.agentSignal.selfReview.proposal.title": "Sugerencia de sueño necesita revisión", "brief.collapse": "Mostrar menos", "brief.commentPlaceholder": "Comparte tus comentarios...", "brief.commentSubmit": "Enviar comentarios", diff --git a/locales/es-ES/hotkey.json b/locales/es-ES/hotkey.json index bfd714763f..a480124de2 100644 --- a/locales/es-ES/hotkey.json +++ b/locales/es-ES/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Agregar la entrada actual como un mensaje de usuario sin activar la generación", "addUserMessage.title": "Agregar un mensaje de usuario", - "clearCurrentMessages.desc": "Borrar los mensajes y archivos subidos de la conversación actual", - "clearCurrentMessages.title": "Borrar mensajes de la conversación", "commandPalette.desc": "Abrir el panel de comandos global para acceder rápidamente a las funciones", "commandPalette.title": "Panel de comandos", "deleteAndRegenerateMessage.desc": "Eliminar el último mensaje y regenerarlo", diff --git a/locales/es-ES/models.json b/locales/es-ES/models.json index fca8e2cdb9..a307997d5b 100644 --- a/locales/es-ES/models.json +++ b/locales/es-ES/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Nuevo modelo de generación de video con mejoras integrales en movimiento corporal, realismo físico y seguimiento de instrucciones.", "MiniMax-M1.description": "Nuevo modelo de razonamiento interno con 80K de cadena de pensamiento y 1M de entrada, con rendimiento comparable a los mejores modelos globales.", "MiniMax-M2-Stable.description": "Diseñado para codificación eficiente y flujos de trabajo de agentes, con mayor concurrencia para uso comercial.", - "MiniMax-M2.1-Lightning.description": "Potentes capacidades de programación multilingüe con inferencia más rápida y eficiente.", "MiniMax-M2.1-highspeed.description": "Potentes capacidades de programación multilingüe, con una experiencia de programación completamente mejorada. Más rápido y eficiente.", "MiniMax-M2.1.description": "MiniMax-M2.1 es un modelo insignia de código abierto de MiniMax, enfocado en resolver tareas complejas del mundo real. Sus principales fortalezas son sus capacidades de programación multilingüe y su habilidad para resolver tareas complejas como un Agente.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: Mismo rendimiento que M2.5 con inferencia más rápida.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku es el modelo más rápido y compacto de Anthropic, diseñado para respuestas casi instantáneas con rendimiento rápido y preciso.", "claude-3-opus-20240229.description": "Claude 3 Opus es el modelo más potente de Anthropic para tareas altamente complejas, destacando en rendimiento, inteligencia, fluidez y comprensión.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet equilibra inteligencia y velocidad para cargas de trabajo empresariales, ofreciendo alta utilidad a menor costo y despliegue confiable a gran escala.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 es el modelo Haiku más rápido e inteligente de Anthropic, con velocidad relámpago y pensamiento extendido.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 es el modelo Haiku más rápido e inteligente de Anthropic, con velocidad relámpago y razonamiento extendido.", "claude-haiku-4-5.description": "Claude Haiku 4.5 de Anthropic: Haiku de nueva generación con razonamiento y visión mejorados.", "claude-haiku-4.5.description": "Claude Haiku 4.5 es el modelo Haiku más rápido e inteligente de Anthropic, con velocidad relámpago y razonamiento extendido.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking es una variante avanzada que puede mostrar su proceso de razonamiento.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 es el modelo más reciente y avanzado de Anthropic para tareas altamente complejas, destacando en rendimiento, inteligencia, fluidez y comprensión.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 es el modelo más reciente y capaz de Anthropic para tareas altamente complejas, destacando en rendimiento, inteligencia, fluidez y comprensión.", "claude-opus-4-1.description": "Claude Opus 4.1 de Anthropic: modelo de razonamiento premium con profundas capacidades de análisis.", - "claude-opus-4-20250514.description": "Claude Opus 4 es el modelo más poderoso de Anthropic para tareas altamente complejas, destacando en rendimiento, inteligencia, fluidez y comprensión.", + "claude-opus-4-20250514.description": "Claude Opus 4 es el modelo más poderoso de Anthropic para tareas altamente complejas, sobresaliendo en rendimiento, inteligencia, fluidez y comprensión.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 es el modelo insignia de Anthropic, combinando inteligencia excepcional con rendimiento escalable, ideal para tareas complejas que requieren respuestas y razonamiento de la más alta calidad.", "claude-opus-4-5.description": "Claude Opus 4.5 de Anthropic: modelo insignia con razonamiento y programación de primer nivel.", "claude-opus-4-6.description": "Claude Opus 4.6 de Anthropic: modelo insignia con ventana de contexto de 1M y razonamiento avanzado.", @@ -330,7 +329,7 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 es el modelo más inteligente de Anthropic para construir agentes y programar.", "claude-opus-4.6.description": "Claude Opus 4.6 es el modelo más inteligente de Anthropic para construir agentes y programar.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking puede generar respuestas casi instantáneas o pensamiento paso a paso extendido con proceso visible.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 es el modelo más inteligente de Anthropic hasta la fecha, ofreciendo respuestas casi instantáneas o pensamiento paso a paso extendido con control detallado para usuarios de API.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 puede generar respuestas casi instantáneas o razonamientos detallados paso a paso con un proceso visible.", "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 es el modelo más inteligente de Anthropic hasta la fecha.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 de Anthropic: versión mejorada de Sonnet con mayor rendimiento en programación.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 de Anthropic: última versión de Sonnet con programación superior y uso avanzado de herramientas.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) es un modelo innovador que ofrece una comprensión profunda del lenguaje y una interacción avanzada.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 es un modelo de razonamiento de nueva generación con capacidades mejoradas para razonamiento complejo y cadenas de pensamiento, ideal para tareas de análisis profundo.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 es un modelo de razonamiento de próxima generación con capacidades mejoradas de razonamiento complejo y cadenas de pensamiento.", - "deepseek-chat.description": "Alias de compatibilidad para el modo sin razonamiento de DeepSeek V4 Flash. Programado para ser descontinuado: utiliza DeepSeek V4 Flash en su lugar.", + "deepseek-chat.description": "Un nuevo modelo de código abierto que combina habilidades generales y de codificación. Preserva el diálogo general del modelo de chat y la sólida capacidad de codificación del modelo de programador, con una mejor alineación de preferencias. DeepSeek-V2.5 también mejora la escritura y el seguimiento de instrucciones.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B es un modelo de lenguaje para código entrenado con 2T de tokens (87% código, 13% texto en chino/inglés). Introduce una ventana de contexto de 16K y tareas de completado intermedio, ofreciendo completado de código a nivel de proyecto y relleno de fragmentos.", "deepseek-coder-v2.description": "DeepSeek Coder V2 es un modelo de código MoE de código abierto que tiene un rendimiento sólido en tareas de programación, comparable a GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 es un modelo de código MoE de código abierto que tiene un rendimiento sólido en tareas de programación, comparable a GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "Versión completa rápida de DeepSeek R1 con búsqueda web en tiempo real, combinando capacidad a escala 671B y respuesta ágil.", "deepseek-r1-online.description": "Versión completa de DeepSeek R1 con 671B de parámetros y búsqueda web en tiempo real, ofreciendo mejor comprensión y generación.", "deepseek-r1.description": "DeepSeek-R1 utiliza datos de arranque en frío antes del aprendizaje por refuerzo y tiene un rendimiento comparable a OpenAI-o1 en matemáticas, programación y razonamiento.", - "deepseek-reasoner.description": "Alias de compatibilidad para el modo de razonamiento de DeepSeek V4 Flash. Programado para ser descontinuado: utiliza DeepSeek V4 Flash en su lugar.", + "deepseek-reasoner.description": "Un modelo de razonamiento DeepSeek enfocado en tareas de razonamiento lógico complejo.", "deepseek-v2.description": "DeepSeek V2 es un modelo MoE eficiente para procesamiento rentable.", "deepseek-v2:236b.description": "DeepSeek V2 236B es el modelo de DeepSeek centrado en código con fuerte generación de código.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 es un modelo MoE con 671 mil millones de parámetros, con fortalezas destacadas en programación, capacidad técnica, comprensión de contexto y manejo de textos largos.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 es un modelo de generación de imágenes de ByteDance Seed que admite entradas de texto e imagen con generación de imágenes de alta calidad y altamente controlable. Genera imágenes a partir de indicaciones de texto.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 es el último modelo multimodal de imágenes de ByteDance, que integra capacidades de texto a imagen, imagen a imagen y generación de imágenes por lotes, mientras incorpora sentido común y habilidades de razonamiento. En comparación con la versión 4.0 anterior, ofrece una calidad de generación significativamente mejorada, con mayor consistencia en la edición y fusión de múltiples imágenes. Proporciona un control más preciso sobre los detalles visuales, produciendo texto y rostros pequeños de manera más natural, y logra una disposición y color más armoniosos, mejorando la estética general.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite es el último modelo de generación de imágenes de ByteDance. Por primera vez, integra capacidades de recuperación en línea, permitiendo incorporar información web en tiempo real y mejorar la actualidad de las imágenes generadas. La inteligencia del modelo también ha sido mejorada, permitiendo una interpretación precisa de instrucciones complejas y contenido visual. Además, ofrece una mejor cobertura de conocimiento global, consistencia de referencia y calidad de generación en escenarios profesionales, satisfaciendo mejor las necesidades de creación visual a nivel empresarial.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 de ByteDance es el modelo de generación de video más poderoso, compatible con generación de video multimodal de referencia, edición de video, extensión de video, texto a video e imagen a video con audio sincronizado.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast de ByteDance ofrece las mismas capacidades que Seedance 2.0 con velocidades de generación más rápidas a un precio más competitivo.", "emohaa.description": "Emohaa es un modelo de salud mental con capacidades profesionales de asesoramiento para ayudar a los usuarios a comprender problemas emocionales.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B es un modelo ligero de código abierto para implementación local y personalizada.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview es un modelo de vista previa con contexto de 8K para evaluar ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking es un modelo insignia nativo multimodal con modelado unificado de texto, imagen, audio y video. Ofrece mejoras amplias en capacidades para preguntas complejas, creación y escenarios de agentes.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview es un modelo insignia nativo multimodal con modelado unificado de texto, imagen, audio y video. Ofrece mejoras amplias en capacidades para preguntas complejas, creación y escenarios de agentes.", "ernie-5.0.description": "ERNIE 5.0, el modelo de nueva generación de la serie ERNIE, es un modelo multimodal nativo. Adopta un enfoque unificado de modelado multimodal, integrando texto, imágenes, audio y vídeo para ofrecer capacidades completas. Sus habilidades fundamentales han sido significativamente mejoradas, logrando un sólido rendimiento en benchmarks. Destaca en comprensión multimodal, seguimiento de instrucciones, redacción creativa, precisión factual, planificación agéntica y uso de herramientas.", + "ernie-5.1.description": "ERNIE 5.1 es el modelo más reciente de la serie ERNIE, con mejoras integrales en sus capacidades fundamentales. Demuestra avances significativos en áreas como agentes, procesamiento de conocimiento, razonamiento y búsqueda profunda. Esta versión adopta una arquitectura de aprendizaje por refuerzo completamente asincrónica y desacoplada, diseñada específicamente para abordar desafíos clave en la evolución de modelos grandes hacia la toma de decisiones autónoma por parte de agentes, incluyendo discrepancias numéricas entre entrenamiento e inferencia, baja utilización de recursos informáticos heterogéneos y problemas globales causados por efectos de larga cola. Además, se emplean técnicas de post-entrenamiento a gran escala para agentes, lo que mejora aún más las capacidades y el rendimiento de generalización del modelo. A través de un marco colaborativo de tres etapas que involucra procesos de entorno, experto y fusión, el enfoque no solo garantiza la eficiencia del entrenamiento, sino que también mejora significativamente la estabilidad y el rendimiento del modelo en tareas complejas.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview es un modelo preliminar para la creación de personajes y tramas, diseñado para evaluación y pruebas.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K es un modelo de personajes para novelas y creación de tramas, ideal para generación de historias extensas.", "ernie-image-turbo.description": "ERNIE‑Image es un modelo de texto a imagen de 8B parámetros desarrollado por Baidu. Se sitúa entre los mejores en múltiples benchmarks, logrando el primer puesto compartido en SuperCLUE en China y liderando la categoría de código abierto.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K es un modelo de pensamiento rápido con contexto de 32K para razonamiento complejo y chat de múltiples turnos.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview es una vista previa del modelo de pensamiento para evaluación y pruebas.", "ernie-x1.1.description": "ERNIE X1.1 es un modelo de pensamiento en vista previa para evaluación y pruebas.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, desarrollado por el equipo Seed de ByteDance, admite edición y composición de múltiples imágenes. Incluye consistencia mejorada de sujetos, seguimiento preciso de instrucciones, comprensión de lógica espacial, expresión estética, diseño de carteles y logotipos con renderizado de texto-imagen de alta precisión.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, desarrollado por ByteDance Seed, admite entradas de texto e imagen para generación de imágenes altamente controlable y de alta calidad a partir de indicaciones.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 es un modelo de generación de imágenes de ByteDance Seed, que admite entradas de texto e imagen con generación de imágenes altamente controlable y de alta calidad. Genera imágenes a partir de indicaciones de texto.", "fal-ai/flux-kontext/dev.description": "Modelo FLUX.1 centrado en la edición de imágenes, compatible con entradas de texto e imagen.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] acepta texto e imágenes de referencia como entrada, permitiendo ediciones locales dirigidas y transformaciones globales complejas de escenas.", "fal-ai/flux/krea.description": "Flux Krea [dev] es un modelo de generación de imágenes con una inclinación estética hacia imágenes más realistas y naturales.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Un potente modelo nativo multimodal de generación de imágenes.", "fal-ai/imagen4/preview.description": "Modelo de generación de imágenes de alta calidad de Google.", "fal-ai/nano-banana.description": "Nano Banana es el modelo multimodal nativo más nuevo, rápido y eficiente de Google, que permite generación y edición de imágenes mediante conversación.", - "fal-ai/qwen-image-edit.description": "Un modelo profesional de edición de imágenes del equipo Qwen, que admite ediciones semánticas y de apariencia, edición precisa de texto en chino/inglés, transferencia de estilo, rotación y más.", - "fal-ai/qwen-image.description": "Un modelo poderoso de generación de imágenes del equipo Qwen con un fuerte renderizado de texto en chino y estilos visuales diversos.", + "fal-ai/qwen-image-edit.description": "Un modelo profesional de edición de imágenes del equipo Qwen que admite ediciones semánticas y de apariencia, edita con precisión texto en chino e inglés, y permite ediciones de alta calidad como transferencia de estilo y rotación de objetos.", + "fal-ai/qwen-image.description": "Un modelo poderoso de generación de imágenes del equipo Qwen con una impresionante representación de texto en chino y estilos visuales diversos.", "flux-1-schnell.description": "Modelo de texto a imagen con 12 mil millones de parámetros de Black Forest Labs que utiliza destilación difusiva adversarial latente para generar imágenes de alta calidad en 1 a 4 pasos. Compite con alternativas cerradas y se lanza bajo licencia Apache-2.0 para uso personal, de investigación y comercial.", "flux-dev.description": "Modelo de generación de imágenes de I+D de código abierto, optimizado de forma eficiente para investigación innovadora no comercial.", "flux-kontext-max.description": "Generación y edición de imágenes contextual de última generación, combinando texto e imágenes para resultados precisos y coherentes.", @@ -569,7 +566,7 @@ "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) es el modelo de generación de imágenes de Google y también admite chat multimodal.", "gemini-3-pro-preview.description": "Gemini 3 Pro es el agente más potente de Google y modelo de codificación emocional, que ofrece visuales más ricos e interacción más profunda sobre un razonamiento de última generación.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) es el modelo nativo de generación de imágenes más rápido de Google con soporte de pensamiento, generación conversacional de imágenes y edición.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) ofrece calidad de imagen a nivel Pro a velocidad Flash con soporte para chat multimodal.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) es el modelo nativo de generación de imágenes más rápido de Google, con soporte para razonamiento, generación conversacional de imágenes y edición.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview es el modelo multimodal más rentable de Google, optimizado para tareas agentivas de alto volumen, traducción y procesamiento de datos.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite es el modelo multimodal más eficiente en costos de Google, optimizado para tareas agentivas de alto volumen, traducción y procesamiento de datos.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview mejora las capacidades de razonamiento de Gemini 3 Pro y añade soporte para un nivel de pensamiento medio.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Nos complace lanzar Grok 4 Fast, nuestro último avance en modelos de razonamiento rentables.", "grok-4.20-0309-non-reasoning.description": "Variante sin razonamiento para casos de uso simples.", "grok-4.20-0309-reasoning.description": "Modelo inteligente y rapidísimo que razona antes de responder.", - "grok-4.20-beta-0309-non-reasoning.description": "Una variante sin razonamiento para casos de uso simples.", - "grok-4.20-beta-0309-reasoning.description": "Modelo inteligente y ultrarrápido que razona antes de responder.", "grok-4.20-multi-agent-0309.description": "Equipo de 4 o 16 agentes. Destaca en casos de investigación. No admite herramientas del lado del cliente. Solo admite herramientas del lado del servidor de xAI (como X Search, Web Search) y herramientas MCP remotas.", "grok-4.3.description": "El modelo de lenguaje grande más orientado a la verdad en el mundo.", "grok-4.description": "Último modelo insignia de Grok con un rendimiento inigualable en lenguaje, matemáticas y razonamiento — un verdadero todoterreno. Actualmente apunta a grok-4-0709; debido a recursos limitados, tiene un precio temporalmente un 10% más alto que el oficial y se espera que regrese al precio oficial más adelante.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ es un modelo de razonamiento de la familia Qwen. En comparación con los modelos estándar ajustados por instrucciones, ofrece capacidades de pensamiento y razonamiento que mejoran significativamente el rendimiento en tareas difíciles. QwQ-32B es un modelo de razonamiento de tamaño medio que compite con los mejores modelos como DeepSeek-R1 y o1-mini.", "qwq_32b.description": "Modelo de razonamiento de tamaño medio de la familia Qwen. En comparación con los modelos estándar ajustados por instrucciones, las capacidades de pensamiento y razonamiento de QwQ mejoran significativamente el rendimiento en tareas difíciles.", "r1-1776.description": "R1-1776 es una variante postentrenada de DeepSeek R1 diseñada para proporcionar información factual sin censura ni sesgo.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro de ByteDance admite texto a video, imagen a video (primer cuadro, primer+último cuadro) y generación de audio sincronizado con visuales.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite de BytePlus incluye generación aumentada con recuperación web para información en tiempo real, interpretación mejorada de indicaciones complejas y mayor consistencia de referencia para creación visual profesional.", "solar-mini-ja.description": "Solar Mini (Ja) amplía Solar Mini con un enfoque en japonés, manteniendo un rendimiento eficiente y sólido en inglés y coreano.", "solar-mini.description": "Solar Mini es un modelo LLM compacto que supera a GPT-3.5, con una sólida capacidad multilingüe compatible con inglés y coreano, ofreciendo una solución eficiente de bajo consumo.", "solar-pro.description": "Solar Pro es un LLM de alta inteligencia de Upstage, enfocado en el seguimiento de instrucciones en una sola GPU, con puntuaciones IFEval superiores a 80. Actualmente admite inglés; el lanzamiento completo estaba previsto para noviembre de 2024 con soporte de idiomas ampliado y contexto más largo.", diff --git a/locales/es-ES/onboarding.json b/locales/es-ES/onboarding.json index 229f056e87..7eeea89930 100644 --- a/locales/es-ES/onboarding.json +++ b/locales/es-ES/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Omitir por ahora", "agent.layout.skipConfirm.title": "¿Omitir la configuración inicial por ahora?", "agent.layout.switchMessage": "¿No te convence hoy? Puedes cambiar a {{mode}} o {{skip}}.", + "agent.layout.switchMessageClassic": "¿No te sientes con ganas hoy? Puedes cambiar a {{mode}}.", + "agent.messenger.cta.discord": "Añadir a Discord", + "agent.messenger.cta.slack": "Añadir a Slack", + "agent.messenger.cta.telegram": "Abrir en Telegram", + "agent.messenger.subtitle": "Chatea con tu agente en Telegram, Slack o Discord", + "agent.messenger.telegramQrCaption": "Escanea con la cámara de tu teléfono", + "agent.messenger.title": "Llévame contigo, donde sea que envíes mensajes", "agent.modeSwitch.agent": "Conversacional", "agent.modeSwitch.classic": "Clásico", "agent.modeSwitch.collapse": "Colapsar", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "Guardaré lo que hemos visto hasta ahora. Siempre puedes volver y seguir charlando más adelante.", "agent.wrapUp.confirm.ok": "Terminar ahora", "agent.wrapUp.confirm.title": "¿Finalizar la incorporación ahora?", + "agentPicker.allCategories": "Todos", + "agentPicker.continue": "Continuar", + "agentPicker.skip": "Saltar por ahora", + "agentPicker.subtitle": "Añade algunos a tu biblioteca ahora — descubre más en cualquier momento después.", + "agentPicker.title": "Añadamos algunos agentes a tu biblioteca", + "agentPicker.title2": "Elige los que se adapten a tu forma de trabajar", + "agentPicker.title3": "Siempre puedes añadir más después — empieza con algunos", "back": "Volver", "finish": "Comenzar", "interests.area.business": "Negocios y Estrategia", diff --git a/locales/es-ES/plugin.json b/locales/es-ES/plugin.json index 39e2724f68..74f96aac22 100644 --- a/locales/es-ES/plugin.json +++ b/locales/es-ES/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} documentos", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} operaciones", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} operaciones", - "builtins.lobe-agent-documents.inspector.target.agent": "en agente", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "en tema", + "builtins.lobe-agent-documents.inspector.scope.agent": "en agente", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "en tema", "builtins.lobe-agent-documents.title": "Documentos del Agente", "builtins.lobe-agent-management.apiName.callAgent": "Agente de llamada", "builtins.lobe-agent-management.apiName.createAgent": "Crear agente", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Agente Lobe", "builtins.lobe-claude-code.agent.instruction": "Instrucción", "builtins.lobe-claude-code.agent.result": "Resultado", + "builtins.lobe-claude-code.task.createLabel": "Creando tarea: ", + "builtins.lobe-claude-code.task.getLabel": "Inspeccionando tarea #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "Listando tareas", + "builtins.lobe-claude-code.task.updateCompleted": "Completado", + "builtins.lobe-claude-code.task.updateDeleted": "Eliminado", + "builtins.lobe-claude-code.task.updateInProgress": "Iniciado", + "builtins.lobe-claude-code.task.updateLabel": "Actualizando tarea #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "Restablecer", "builtins.lobe-claude-code.todoWrite.allDone": "Todas las tareas completadas", "builtins.lobe-claude-code.todoWrite.currentStep": "Paso actual", "builtins.lobe-claude-code.todoWrite.todos": "Tareas", diff --git a/locales/es-ES/providers.json b/locales/es-ES/providers.json index 310682cd8a..c4ef10fb49 100644 --- a/locales/es-ES/providers.json +++ b/locales/es-ES/providers.json @@ -33,7 +33,6 @@ "jina.description": "Fundada en 2020, Jina AI es una empresa líder en búsqueda con IA. Su pila de búsqueda incluye modelos vectoriales, reordenadores y pequeños modelos de lenguaje para construir aplicaciones generativas y multimodales confiables y de alta calidad.", "kimicodingplan.description": "Kimi Code de Moonshot AI proporciona acceso a los modelos Kimi, incluidos K2.5, para tareas de codificación.", "lmstudio.description": "LM Studio es una aplicación de escritorio para desarrollar y experimentar con LLMs en tu ordenador.", - "lobehub.description": "LobeHub Cloud utiliza APIs oficiales para acceder a modelos de IA y mide el uso con Créditos vinculados a los tokens del modelo.", "longcat.description": "LongCat es una serie de modelos grandes de inteligencia artificial generativa desarrollados de manera independiente por Meituan. Está diseñado para mejorar la productividad interna de la empresa y permitir aplicaciones innovadoras mediante una arquitectura computacional eficiente y sólidas capacidades multimodales.", "minimax.description": "Fundada en 2021, MiniMax desarrolla IA de propósito general con modelos fundacionales multimodales, incluyendo modelos de texto MoE con billones de parámetros, modelos de voz y visión, junto con aplicaciones como Hailuo AI.", "minimaxcodingplan.description": "El Plan de Tokens MiniMax proporciona acceso a los modelos MiniMax, incluidos M2.7, para tareas de codificación mediante una suscripción de tarifa fija.", diff --git a/locales/es-ES/subscription.json b/locales/es-ES/subscription.json index 9ca7e5c7be..56d5215633 100644 --- a/locales/es-ES/subscription.json +++ b/locales/es-ES/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Activar Recarga Automática", "credits.autoTopUp.upgradeHint": "Suscríbete a un plan de pago para habilitar la recarga automática", "credits.autoTopUp.validation.targetMustExceedThreshold": "El saldo objetivo debe ser mayor que el umbral", + "credits.costEstimateHint.desc": "Muestra una advertencia ligera antes de enviar cuando el costo estimado del modelo alcanza tu umbral", + "credits.costEstimateHint.saveError": "No se pudieron guardar las configuraciones de alerta de estimación de costos", + "credits.costEstimateHint.saveSuccess": "Configuraciones de alerta de estimación de costos guardadas", + "credits.costEstimateHint.threshold": "Umbral de Advertencia", + "credits.costEstimateHint.title": "Alerta de Estimación de Costos", + "credits.costEstimateHint.validation.threshold": "El umbral debe ser mayor o igual a 0", "credits.packages.auto": "Automático", "credits.packages.charged": "Cargado ${{amount}}", "credits.packages.expired": "Expirado", diff --git a/locales/es-ES/tool.json b/locales/es-ES/tool.json index 8ecbf2336b..ca7f71e7be 100644 --- a/locales/es-ES/tool.json +++ b/locales/es-ES/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Ya en la biblioteca", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} ya en la biblioteca", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} ya en la biblioteca", + "claudeCode.askUserQuestion.escape.back": "Volver a las opciones", + "claudeCode.askUserQuestion.escape.enter": "O escribe directamente", + "claudeCode.askUserQuestion.escape.placeholder": "Escribe tu respuesta aquí…", + "claudeCode.askUserQuestion.multiSelectTag": "(selección múltiple)", + "claudeCode.askUserQuestion.skip": "Omitir", + "claudeCode.askUserQuestion.submit": "Enviar", + "claudeCode.askUserQuestion.timeExpired": "Tiempo expirado — usando la opción 1 de cada pregunta.", + "claudeCode.askUserQuestion.timeRemaining": "Tiempo restante: {{time}} · las preguntas sin respuesta se asignan a la opción 1 al agotarse el tiempo.", "codeInterpreter-legacy.error": "Error de Ejecución", "codeInterpreter-legacy.executing": "Ejecutando...", "codeInterpreter-legacy.files": "Archivos:", diff --git a/locales/es-ES/topic.json b/locales/es-ES/topic.json index 08209df959..e2d1c4a35a 100644 --- a/locales/es-ES/topic.json +++ b/locales/es-ES/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Renombrar tema", "searchPlaceholder": "Buscar temas...", "searchResultEmpty": "No se encontraron resultados de búsqueda.", + "sidebar.title": "Temas", "taskManager.agent": "Agente de Tareas", "taskManager.welcome": "Pregúntame sobre tus tareas", "temp": "Temporal", diff --git a/locales/fa-IR/chat.json b/locales/fa-IR/chat.json index 975c8e4e61..4028aecdb6 100644 --- a/locales/fa-IR/chat.json +++ b/locales/fa-IR/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "افزودن پیام هوش مصنوعی", "input.addUser": "افزودن پیام کاربر", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} اعتبار/میلیون توکن", + "input.costEstimate.hint": "هزینه تخمینی: ~{{credits}} اعتبار", + "input.costEstimate.inputLabel": "ورودی", + "input.costEstimate.outputLabel": "خروجی", + "input.costEstimate.settingsLink": "تنظیم آستانه هشدار", + "input.costEstimate.tokenCount": "~{{tokens}} توکن", + "input.costEstimate.tooltip": "تخمین زده شده بر اساس زمینه فعلی، ابزارها و قیمت‌گذاری مدل. هزینه واقعی ممکن است متفاوت باشد.", "input.disclaimer": "عوامل ممکن است اشتباه کنند. برای اطلاعات حساس از قضاوت خود استفاده کنید.", "input.errorMsg": "ارسال ناموفق: {{errorMsg}}. دوباره تلاش کنید یا بعداً ارسال نمایید.", "input.more": "بیشتر", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "در حال آماده‌سازی بخش‌ها...", "upload.preview.status.pending": "در حال آماده‌سازی برای بارگذاری...", "upload.preview.status.processing": "در حال پردازش فایل...", + "upload.validation.unsupportedFileType": "نوع فایل پشتیبانی نشده: {{files}}. تصاویر پشتیبانی شده: JPG، PNG، GIF، WebP. اسناد پشتیبانی شده شامل PDF، Word، Excel، PowerPoint، Markdown، متن، CSV، JSON و فایل‌های کد هستند.", "upload.validation.videoSizeExceeded": "حجم فایل ویدیو نباید بیش از ۲۰ مگابایت باشد. حجم فعلی: {{actualSize}}.", "viewMode.fullWidth": "تمام‌عرض", "viewMode.normal": "استاندارد", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "بستن سایرین", "workingPanel.localFile.closeRight": "بستن به سمت راست", "workingPanel.localFile.error": "بارگذاری این فایل ممکن نیست", + "workingPanel.localFile.preview.raw": "خام", + "workingPanel.localFile.preview.render": "پیش‌نمایش", "workingPanel.localFile.truncated": "پیش‌نمایش فایل به {{limit}} کاراکتر محدود شده است", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "تغییر به نمای یکپارچه", "workingPanel.review.wordWrap.disable": "غیرفعال کردن پیچش کلمات", "workingPanel.review.wordWrap.enable": "فعال کردن پیچش کلمات", + "workingPanel.skills.empty": "هیچ مهارتی در این پروژه یافت نشد", + "workingPanel.skills.title": "مهارت‌ها", "workingPanel.space": "فضا", "workingPanel.title": "Working Panel", "you": "شما", diff --git a/locales/fa-IR/components.json b/locales/fa-IR/components.json index 598b0d0ed7..820cd1a2de 100644 --- a/locales/fa-IR/components.json +++ b/locales/fa-IR/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "طول زمینه", "ModelSwitchPanel.detail.pricing": "قیمت‌گذاری", "ModelSwitchPanel.detail.pricing.cachedInput": "ورودی کش‌شده ${{amount}}/میلیون", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "ورودی ذخیره‌شده {{amount}} اعتبار/میلیون توکن", + "ModelSwitchPanel.detail.pricing.credits.image": "اعتبار/تصویر", + "ModelSwitchPanel.detail.pricing.credits.input": "ورودی {{amount}} اعتبار/میلیون توکن", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "اعتبار/مگاپیکسل", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "اعتبار/میلیون کاراکتر", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "اعتبار/میلیون توکن", + "ModelSwitchPanel.detail.pricing.credits.output": "خروجی {{amount}} اعتبار/میلیون توکن", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} اعتبار / تصویر", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} اعتبار / ویدیو", + "ModelSwitchPanel.detail.pricing.credits.second": "اعتبار/ثانیه", "ModelSwitchPanel.detail.pricing.group.audio": "صوت", "ModelSwitchPanel.detail.pricing.group.image": "تصویر", "ModelSwitchPanel.detail.pricing.group.text": "متن", diff --git a/locales/fa-IR/editor.json b/locales/fa-IR/editor.json index 9091a707d8..0877e16335 100644 --- a/locales/fa-IR/editor.json +++ b/locales/fa-IR/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "دستور", + "actionTag.category.projectSkill": "مهارت پروژه", "actionTag.category.skill": "مهارت", "actionTag.category.tool": "ابزار", "actionTag.tooltip.command": "پیش از ارسال، یک دستور اسلش سمت کلاینت را اجرا می‌کند.", + "actionTag.tooltip.projectSkill": "به عنوان یک فراخوانی اسلش ارسال می‌شود تا CLI عامل مهارت پروژه مطابقت‌یافته را اجرا کند.", "actionTag.tooltip.skill": "برای این درخواست، یک بسته مهارت قابل استفاده مجدد را بارگذاری می‌کند.", "actionTag.tooltip.tool": "ابزاری را که کاربر به‌طور صریح برای این درخواست انتخاب کرده است علامت‌گذاری می‌کند.", "actions.expand.off": "جمع کردن", diff --git a/locales/fa-IR/home.json b/locales/fa-IR/home.json index 93b12e538f..79bbacaf56 100644 --- a/locales/fa-IR/home.json +++ b/locales/fa-IR/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "نادیده گرفتن", "brief.action.retry": "تلاش دوباره", "brief.addFeedback": "اشتراک‌گذاری بازخورد", + "brief.agentSignal.selfReview.applied.heading": "به‌روزرسانی شد", + "brief.agentSignal.selfReview.applied.summary": "{{count}} به‌روزرسانی رویا اعمال شد.", + "brief.agentSignal.selfReview.applied.summary_plural": "{{count}} به‌روزرسانی‌های رویا اعمال شدند.", + "brief.agentSignal.selfReview.applied.title": "منابع به‌روزرسانی شده رویا", + "brief.agentSignal.selfReview.error.heading": "مشکل", + "brief.agentSignal.selfReview.error.summary": "برخی کارها در طول این رویا کامل نشدند.", + "brief.agentSignal.selfReview.error.title": "رویا با مشکلی مواجه شد", + "brief.agentSignal.selfReview.ideas.summary": "یادداشت‌های رویا برای بررسی‌های آینده ذخیره شدند.", + "brief.agentSignal.selfReview.ideas.title": "یادداشت‌های رویا", + "brief.agentSignal.selfReview.proposal.heading": "پیشنهاد", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} پیشنهاد رویا نیاز به بررسی شما دارد.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} پیشنهادهای رویا نیاز به بررسی شما دارند.", + "brief.agentSignal.selfReview.proposal.title": "پیشنهاد رویا نیاز به بررسی دارد", "brief.collapse": "نمایش کمتر", "brief.commentPlaceholder": "بازخورد خود را بنویسید...", "brief.commentSubmit": "ارسال بازخورد", diff --git a/locales/fa-IR/hotkey.json b/locales/fa-IR/hotkey.json index dd7773018a..373262fddc 100644 --- a/locales/fa-IR/hotkey.json +++ b/locales/fa-IR/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "افزودن ورودی فعلی به‌عنوان پیام کاربر بدون شروع تولید پاسخ", "addUserMessage.title": "افزودن پیام کاربر", - "clearCurrentMessages.desc": "پاک‌سازی پیام‌ها و فایل‌های بارگذاری‌شده از گفت‌وگوی فعلی", - "clearCurrentMessages.title": "پاک‌سازی پیام‌های گفت‌وگو", "commandPalette.desc": "باز کردن پنل فرمان جهانی برای دسترسی سریع به قابلیت‌ها", "commandPalette.title": "پنل فرمان", "deleteAndRegenerateMessage.desc": "حذف آخرین پیام و تولید مجدد آن", diff --git a/locales/fa-IR/models.json b/locales/fa-IR/models.json index 368e8ede83..be44cdc9da 100644 --- a/locales/fa-IR/models.json +++ b/locales/fa-IR/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "مدل جدید تولید ویدئو با ارتقاهای جامع در حرکت بدن، واقع‌گرایی فیزیکی و پیروی از دستورالعمل‌ها.", "MiniMax-M1.description": "یک مدل استدلالی داخلی جدید با ۸۰ هزار زنجیره تفکر و ورودی ۱ میلیون توکن، با عملکردی در سطح مدل‌های برتر جهانی.", "MiniMax-M2-Stable.description": "طراحی‌شده برای کدنویسی کارآمد و جریان‌های کاری عامل‌محور، با هم‌زمانی بالاتر برای استفاده تجاری.", - "MiniMax-M2.1-Lightning.description": "قابلیت‌های برنامه‌نویسی چندزبانه قدرتمند با استنتاج سریع‌تر و کارآمدتر.", "MiniMax-M2.1-highspeed.description": "قابلیت‌های برنامه‌نویسی چندزبانه قدرتمند، تجربه برنامه‌نویسی کاملاً ارتقاء یافته. سریع‌تر و کارآمدتر.", "MiniMax-M2.1.description": "MiniMax-M2.1 یک مدل بزرگ متن‌باز پیشرفته از MiniMax است که بر حل وظایف پیچیده دنیای واقعی تمرکز دارد. نقاط قوت اصلی آن شامل توانایی برنامه‌نویسی چندزبانه و قابلیت عمل به‌عنوان یک عامل هوشمند برای حل مسائل پیچیده است.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: همان عملکرد M2.5 با استنتاج سریع‌تر.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku سریع‌ترین و فشرده‌ترین مدل Anthropic است که برای پاسخ‌های تقریباً فوری با عملکرد سریع و دقیق طراحی شده است.", "claude-3-opus-20240229.description": "Claude 3 Opus قدرتمندترین مدل Anthropic برای وظایف بسیار پیچیده است که در عملکرد، هوش، روانی و درک زبان برتری دارد.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet تعادل بین هوش و سرعت را برای بارهای کاری سازمانی برقرار می‌کند و با هزینه کمتر، بهره‌وری بالا و استقرار قابل اعتماد در مقیاس وسیع را ارائه می‌دهد.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 سریع‌ترین و هوشمندترین مدل هایکو Anthropic است، با سرعت فوق‌العاده و توانایی تفکر گسترده.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 سریع‌ترین و هوشمندترین مدل هایکو Anthropic است که با سرعتی برق‌آسا و توانایی استدلال پیشرفته عمل می‌کند.", "claude-haiku-4-5.description": "Claude Haiku 4.5 از Anthropic — نسل جدید Haiku با استدلال و پردازش تصویری پیشرفته.", "claude-haiku-4.5.description": "Claude Haiku 4.5 سریع‌ترین و هوشمندترین مدل Haiku از Anthropic است که با سرعت برق‌آسا و توانایی استدلال پیشرفته ارائه می‌شود.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking یک نسخه پیشرفته است که می‌تواند فرآیند استدلال خود را آشکار کند.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 جدیدترین و توانمندترین مدل Anthropic برای وظایف بسیار پیچیده است که در عملکرد، هوش، روانی و درک برتری دارد.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 جدیدترین و توانمندترین مدل Anthropic برای انجام وظایف بسیار پیچیده است که در عملکرد، هوش، روانی و درک برتری دارد.", "claude-opus-4-1.description": "Claude Opus 4.1 از Anthropic — مدل استدلال سطح‌بالا با توانایی تحلیل عمیق.", - "claude-opus-4-20250514.description": "Claude Opus 4 قدرتمندترین مدل Anthropic برای وظایف بسیار پیچیده است که در عملکرد، هوش، روانی و درک برتری دارد.", + "claude-opus-4-20250514.description": "Claude Opus 4 قدرتمندترین مدل Anthropic برای انجام وظایف بسیار پیچیده است که در عملکرد، هوش، روانی و فهم برتری دارد.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 مدل پرچم‌دار Anthropic است که هوش برجسته را با عملکرد مقیاس‌پذیر ترکیب می‌کند و برای وظایف پیچیده‌ای که نیاز به پاسخ‌های باکیفیت و استدلال دارند، ایده‌آل است.", "claude-opus-4-5.description": "Claude Opus 4.5 از Anthropic — مدل پرچم‌دار با استدلال و کدنویسی سطح‌بالا.", "claude-opus-4-6.description": "Claude Opus 4.6 از Anthropic — مدل پرچم‌دار با پنجره زمینه ۱ میلیون و توانایی استدلال پیشرفته.", @@ -330,7 +329,7 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 هوشمندترین مدل Anthropic برای ساخت عوامل و کدنویسی است.", "claude-opus-4.6.description": "Claude Opus 4.6 هوشمندترین مدل Anthropic برای ساخت عوامل و کدنویسی است.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking می‌تواند پاسخ‌های تقریباً فوری یا تفکر گام‌به‌گام طولانی با فرآیند قابل مشاهده تولید کند.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 هوشمندترین مدل Anthropic تا به امروز است که پاسخ‌های تقریباً فوری یا تفکر گام‌به‌گام گسترده با کنترل دقیق برای کاربران API ارائه می‌دهد.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 می‌تواند پاسخ‌های تقریباً فوری یا تفکر گام‌به‌گام گسترده با فرآیند قابل مشاهده تولید کند.", "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 هوشمندترین مدل Anthropic تا به امروز است.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 از Anthropic — نسخه بهبود‌یافته Sonnet با عملکرد بهتر در کدنویسی.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 از Anthropic — جدیدترین Sonnet با کدنویسی برتر و استفاده بهتر از ابزار.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) یک مدل نوآورانه با درک عمیق زبان و تعامل است.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 یک مدل استدلال نسل بعدی با توانایی استدلال پیچیده و زنجیره تفکر برای وظایف تحلیلی عمیق است.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 یک مدل استدلال نسل بعدی با قابلیت‌های استدلال پیچیده‌تر و زنجیره‌ای از تفکر است.", - "deepseek-chat.description": "نام مستعار سازگار برای حالت غیرتفکری DeepSeek V4 Flash. برنامه‌ریزی شده برای توقف استفاده — به جای آن از DeepSeek V4 Flash استفاده کنید.", + "deepseek-chat.description": "یک مدل متن‌باز جدید که توانایی‌های عمومی و کدنویسی را ترکیب می‌کند. این مدل گفتگوی عمومی مدل چت و کدنویسی قوی مدل کدنویس را حفظ کرده و با هم‌ترازی بهتر ترجیحات همراه است. DeepSeek-V2.5 همچنین نوشتن و پیروی از دستورالعمل‌ها را بهبود می‌بخشد.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B یک مدل زبان برنامه‌نویسی است که با ۲ تریلیون توکن (۸۷٪ کد، ۱۳٪ متن چینی/انگلیسی) آموزش دیده است. این مدل دارای پنجره متنی ۱۶K و وظایف تکمیل در میانه است که تکمیل کد در سطح پروژه و پر کردن قطعات کد را فراهم می‌کند.", "deepseek-coder-v2.description": "DeepSeek Coder V2 یک مدل کدنویسی MoE متن‌باز است که در وظایف برنامه‌نویسی عملکردی هم‌سطح با GPT-4 Turbo دارد.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 یک مدل کدنویسی MoE متن‌باز است که در وظایف برنامه‌نویسی عملکردی هم‌سطح با GPT-4 Turbo دارد.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "نسخه کامل سریع DeepSeek R1 با جستجوی وب در زمان واقعی که توانایی در مقیاس ۶۷۱B را با پاسخ‌دهی سریع‌تر ترکیب می‌کند.", "deepseek-r1-online.description": "نسخه کامل DeepSeek R1 با ۶۷۱ میلیارد پارامتر و جستجوی وب در زمان واقعی که درک و تولید قوی‌تری را ارائه می‌دهد.", "deepseek-r1.description": "DeepSeek-R1 پیش از یادگیری تقویتی از داده‌های شروع سرد استفاده می‌کند و در وظایف ریاضی، کدنویسی و استدلال عملکردی هم‌سطح با OpenAI-o1 دارد.", - "deepseek-reasoner.description": "نام مستعار سازگار برای حالت تفکری DeepSeek V4 Flash. برنامه‌ریزی شده برای توقف استفاده — به جای آن از DeepSeek V4 Flash استفاده کنید.", + "deepseek-reasoner.description": "یک مدل استدلال DeepSeek که بر وظایف پیچیده استدلال منطقی متمرکز است.", "deepseek-v2.description": "DeepSeek V2 یک مدل MoE کارآمد است که پردازش مقرون‌به‌صرفه را امکان‌پذیر می‌سازد.", "deepseek-v2:236b.description": "DeepSeek V2 236B مدل متمرکز بر کدنویسی DeepSeek است که توانایی بالایی در تولید کد دارد.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 یک مدل MoE با ۶۷۱ میلیارد پارامتر است که در برنامه‌نویسی، توانایی‌های فنی، درک زمینه و پردازش متون بلند عملکرد برجسته‌ای دارد.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 یک مدل تولید تصویر از ByteDance Seed است که از ورودی‌های متن و تصویر پشتیبانی می‌کند و تولید تصویر با کیفیت بالا و قابل کنترل را ارائه می‌دهد. این مدل تصاویر را از دستورات متنی تولید می‌کند.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 جدیدترین مدل چندوجهی تصویر ByteDance است که قابلیت‌های تبدیل متن به تصویر، تصویر به تصویر و تولید دسته‌ای تصاویر را ادغام می‌کند و توانایی‌های استدلال و دانش عمومی را نیز در بر می‌گیرد. در مقایسه با نسخه قبلی 4.0، کیفیت تولید به‌طور قابل‌توجهی بهبود یافته است، با سازگاری بهتر در ویرایش و ترکیب چند تصویر. کنترل دقیق‌تری بر جزئیات بصری ارائه می‌دهد، متن‌های کوچک و چهره‌های کوچک را به‌طور طبیعی‌تر تولید می‌کند و به هماهنگی بهتر در چیدمان و رنگ دست می‌یابد، که زیبایی کلی را افزایش می‌دهد.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite جدیدترین مدل تولید تصویر ByteDance است. برای اولین بار، قابلیت‌های بازیابی آنلاین را ادغام کرده است که به آن امکان می‌دهد اطلاعات وب لحظه‌ای را وارد کند و به‌موقع بودن تصاویر تولید شده را افزایش دهد. هوش مدل نیز ارتقا یافته است، که تفسیر دقیق دستورالعمل‌های پیچیده و محتوای بصری را امکان‌پذیر می‌کند. علاوه بر این، پوشش دانش جهانی، سازگاری مرجع و کیفیت تولید در سناریوهای حرفه‌ای بهبود یافته است، که نیازهای خلق بصری در سطح سازمانی را بهتر برآورده می‌کند.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 توسط ByteDance قدرتمندترین مدل تولید ویدئو است که از تولید ویدئو با مرجع چندوجهی، ویرایش ویدئو، گسترش ویدئو، متن به ویدئو و تصویر به ویدئو با صدای همگام‌سازی شده پشتیبانی می‌کند.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast توسط ByteDance همان قابلیت‌های Seedance 2.0 را با سرعت تولید بالاتر و قیمت رقابتی‌تر ارائه می‌دهد.", "emohaa.description": "Emohaa یک مدل سلامت روان با توانایی مشاوره حرفه‌ای است که به کاربران در درک مسائل احساسی کمک می‌کند.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B یک مدل سبک متن‌باز برای استقرار محلی و سفارشی‌سازی شده است.", "ernie-4.5-8k-preview.description": "پیش‌نمایش مدل با پنجره متنی ۸هزار توکن برای ارزیابی ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking یک مدل پرچم‌دار بومی تمام‌وجهی است که مدل‌سازی متن، تصویر، صدا و ویدیو را یکپارچه می‌کند. این مدل ارتقاهای گسترده‌ای در توانایی برای پرسش و پاسخ پیچیده، تولید محتوا و سناریوهای عامل ارائه می‌دهد.", "ernie-5.0-thinking-preview.description": "پیش‌نمایش Wenxin 5.0 Thinking، یک مدل پرچم‌دار بومی تمام‌وجهی با مدل‌سازی یکپارچه متن، تصویر، صدا و ویدیو. این مدل ارتقاهای گسترده‌ای در توانایی برای پرسش و پاسخ پیچیده، تولید محتوا و سناریوهای عامل ارائه می‌دهد.", "ernie-5.0.description": "ERNIE 5.0 نسل جدید مدل‌های سری ERNIE است؛ یک مدل بزرگ چندوجهی که از ابتدا بر اساس یک رویکرد مدل‌سازی یکپارچه ساخته شده است. این مدل متن، تصویر، صوت و ویدئو را به شکل مشترک مدل‌سازی کرده و توانایی‌های چندوجهی قدرتمندی ارائه می‌دهد. توانایی‌های بنیادی آن ارتقا یافته و عملکرد قوی در ارزیابی‌های معیار نشان می‌دهد. این مدل در درک چندوجهی، پیروی از دستور، نوشتن خلاق، دقت واقعی، برنامه‌ریزی ایجنتی و استفاده از ابزار عملکرد برجسته‌ای دارد.", + "ernie-5.1.description": "ERNIE 5.1 جدیدترین مدل در سری ERNIE است که ارتقاهای جامعی در قابلیت‌های بنیادی خود ارائه می‌دهد. این مدل بهبودهای قابل توجهی در زمینه‌هایی مانند عامل‌ها، پردازش دانش، استدلال و جستجوی عمیق نشان می‌دهد. این نسخه از معماری تقویت یادگیری کاملاً غیرهمزمان و جداشده استفاده می‌کند که به طور خاص برای رفع چالش‌های کلیدی در تکامل مدل‌های بزرگ به سمت تصمیم‌گیری خودکار عامل‌ها طراحی شده است، از جمله اختلافات عددی آموزش-استنتاج، استفاده کم از منابع محاسباتی ناهمگن و مسائل جهانی ناشی از اثرات دم بلند. علاوه بر این، تکنیک‌های آموزش پس از عامل در مقیاس بزرگ برای افزایش قابلیت‌ها و عملکرد تعمیم مدل به کار گرفته شده‌اند. از طریق یک چارچوب همکاری سه مرحله‌ای شامل فرآیندهای محیط، متخصص و ادغام، این رویکرد نه تنها کارایی آموزش را تضمین می‌کند بلکه به طور قابل توجهی پایداری و عملکرد مدل را در وظایف پیچیده بهبود می‌بخشد.", "ernie-char-fiction-8k-preview.description": "پیش‌نمایش ERNIE Character Fiction 8K یک مدل ساخت شخصیت و داستان برای ارزیابی و آزمایش ویژگی‌ها است.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K یک مدل شخصیتی برای رمان‌نویسی و خلق داستان است که برای تولید داستان‌های بلند مناسب است.", "ernie-image-turbo.description": "ERNIE-Image یک مدل متن‌به‌تصویر با ۸ میلیارد پارامتر از Baidu است. این مدل در چندین معیار در میان بهترین‌ها قرار می‌گیرد و در SuperCLUE چین رتبه اول مشترک و رتبه برتر در بخش متن‌باز دارد.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K یک مدل تفکر سریع با زمینه ۳۲K برای استدلال پیچیده و گفت‌وگوی چندمرحله‌ای است.", "ernie-x1.1-preview.description": "پیش‌نمایش ERNIE X1.1 یک مدل تفکر برای ارزیابی و آزمایش است.", "ernie-x1.1.description": "ERNIE X1.1 یک مدل تفکر پیش‌نمایش برای ارزیابی و آزمایش است.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5 که توسط تیم Seed ByteDance ساخته شده است، از ویرایش و ترکیب چندتصویری پشتیبانی می‌کند. ویژگی‌ها شامل سازگاری بهتر موضوع، پیروی دقیق از دستورات، درک منطق فضایی، بیان زیبایی‌شناختی، طراحی پوستر و لوگو با رندر دقیق متن-تصویر است.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 که توسط تیم Seed ByteDance ساخته شده است، از ورودی‌های متن و تصویر برای تولید تصاویر باکیفیت و قابل‌کنترل از طریق دستورات پشتیبانی می‌کند.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 یک مدل تولید تصویر از ByteDance Seed است که از ورودی‌های متنی و تصویری پشتیبانی می‌کند و تولید تصاویر با کیفیت بالا و کنترل‌پذیری بالا را ممکن می‌سازد. این مدل تصاویر را از دستورات متنی تولید می‌کند.", "fal-ai/flux-kontext/dev.description": "مدل FLUX.1 با تمرکز بر ویرایش تصویر که از ورودی‌های متنی و تصویری پشتیبانی می‌کند.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] ورودی‌های متنی و تصاویر مرجع را می‌پذیرد و امکان ویرایش‌های محلی هدفمند و تغییرات پیچیده در صحنه کلی را فراهم می‌کند.", "fal-ai/flux/krea.description": "Flux Krea [dev] یک مدل تولید تصویر با تمایل زیبایی‌شناسی به تصاویر طبیعی و واقع‌گرایانه‌تر است.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "یک مدل قدرتمند بومی چندوجهی برای تولید تصویر.", "fal-ai/imagen4/preview.description": "مدل تولید تصویر با کیفیت بالا از گوگل.", "fal-ai/nano-banana.description": "Nano Banana جدیدترین، سریع‌ترین و کارآمدترین مدل چندوجهی بومی گوگل است که امکان تولید و ویرایش تصویر از طریق مکالمه را فراهم می‌کند.", - "fal-ai/qwen-image-edit.description": "مدل ویرایش تصویر حرفه‌ای از تیم Qwen که از ویرایش‌های معنایی و ظاهری، ویرایش دقیق متن‌های چینی/انگلیسی، انتقال سبک، چرخش و موارد دیگر پشتیبانی می‌کند.", - "fal-ai/qwen-image.description": "مدل قدرتمند تولید تصویر از تیم Qwen با قابلیت رندر قوی متن چینی و سبک‌های بصری متنوع.", + "fal-ai/qwen-image-edit.description": "یک مدل حرفه‌ای ویرایش تصویر از تیم Qwen که از ویرایش‌های معنایی و ظاهری پشتیبانی می‌کند، متن‌های چینی و انگلیسی را با دقت ویرایش می‌کند و ویرایش‌های با کیفیت بالا مانند انتقال سبک و چرخش اشیاء را ممکن می‌سازد.", + "fal-ai/qwen-image.description": "یک مدل قدرتمند تولید تصویر از تیم Qwen با قابلیت‌های برجسته در رندر متن چینی و سبک‌های بصری متنوع.", "flux-1-schnell.description": "مدل تبدیل متن به تصویر با ۱۲ میلیارد پارامتر از Black Forest Labs که از تقطیر انتشار تقابلی نهفته برای تولید تصاویر با کیفیت بالا در ۱ تا ۴ مرحله استفاده می‌کند. این مدل با جایگزین‌های بسته رقابت می‌کند و تحت مجوز Apache-2.0 برای استفاده شخصی، تحقیقاتی و تجاری منتشر شده است.", "flux-dev.description": "مدل تولید تصویر متن‌باز برای تحقیق و توسعه، به‌طور کارآمد برای پژوهش‌های نوآورانهٔ غیرتجاری بهینه‌سازی شده است.", "flux-kontext-max.description": "تولید و ویرایش تصویر متنی-زمینه‌ای پیشرفته که متن و تصویر را برای نتایج دقیق و منسجم ترکیب می‌کند.", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash هوشمندترین مدل طراحی‌شده برای سرعت است که هوش پیشرفته را با قابلیت جست‌وجوی دقیق ترکیب می‌کند.", "gemini-3-flash.description": "Gemini 3 Flash از Google — مدل بسیار سریع با پشتیبانی ورودی چندوجهی.", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image (Nano Banana Pro) مدل تولید تصویر گوگل است که از گفتگوی چندوجهی نیز پشتیبانی می‌کند.", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) مدل تولید تصویر گوگل است و همچنین از چت چندوجهی پشتیبانی می‌کند.", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) مدل تولید تصویر گوگل است که از چت چندوجهی نیز پشتیبانی می‌کند.", "gemini-3-pro-preview.description": "Gemini 3 Pro قدرتمندترین مدل عامل و کدنویسی احساسی گوگل است که تعاملات بصری غنی‌تر و تعامل عمیق‌تری را بر پایه استدلال پیشرفته ارائه می‌دهد.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) سریع‌ترین مدل تولید تصویر بومی گوگل با پشتیبانی از تفکر، تولید و ویرایش تصویر مکالمه‌ای است.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) کیفیت تصویر در سطح حرفه‌ای را با سرعت Flash و پشتیبانی از چت چندوجهی ارائه می‌دهد.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) سریع‌ترین مدل تولید تصویر بومی گوگل است که از تفکر، تولید و ویرایش تصاویر در مکالمات پشتیبانی می‌کند.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview اقتصادی‌ترین مدل چندوجهی گوگل است که برای وظایف عامل‌محور با حجم بالا، ترجمه و پردازش داده‌ها بهینه شده است.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite اقتصادی‌ترین مدل چندوجهی گوگل است که برای وظایف عاملی با حجم بالا، ترجمه و پردازش داده بهینه شده است.", "gemini-3.1-pro-preview.description": "پیش‌نمایش Gemini 3.1 Pro قابلیت‌های استدلال بهبود یافته را به Gemini 3 Pro اضافه می‌کند و از سطح تفکر متوسط پشتیبانی می‌کند.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "با افتخار Grok 4 Fast را معرفی می‌کنیم، جدیدترین پیشرفت ما در مدل‌های استدلال مقرون‌به‌صرفه.", "grok-4.20-0309-non-reasoning.description": "نسخه بدون استدلال برای کاربردهای ساده.", "grok-4.20-0309-reasoning.description": "مدلی هوشمند و بسیار سریع که قبل از پاسخ استدلال می‌کند.", - "grok-4.20-beta-0309-non-reasoning.description": "نسخه غیرتفکری برای موارد استفاده ساده.", - "grok-4.20-beta-0309-reasoning.description": "مدل هوشمند و فوق‌العاده سریع که قبل از پاسخ‌دهی استدلال می‌کند.", "grok-4.20-multi-agent-0309.description": "مجموعه‌ای از ۴ یا ۱۶ ایجنت که در پژوهش عملکرد عالی دارد. در حال حاضر از ابزارهای سمت کاربر پشتیبانی نمی‌کند و تنها ابزارهای سمت سرور xAI (مانند X Search و Web Search) و ابزارهای MCP از راه دور را پشتیبانی می‌کند.", "grok-4.3.description": "حقیقت‌جویانه‌ترین مدل زبان بزرگ در جهان", "grok-4.description": "جدیدترین مدل پرچمدار Grok با عملکرد بی‌نظیر در زبان، ریاضیات و استدلال — یک مدل همه‌جانبه واقعی. در حال حاضر به grok-4-0709 اشاره دارد؛ به دلیل منابع محدود، قیمت آن موقتاً ۱۰٪ بالاتر از قیمت رسمی است و انتظار می‌رود به قیمت رسمی بازگردد.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ یک مدل استدلال در خانواده Qwen است. در مقایسه با مدل‌های تنظیم‌شده با دستورالعمل استاندارد، توانایی تفکر و استدلال آن عملکرد پایین‌دستی را به‌ویژه در مسائل دشوار به‌طور قابل توجهی بهبود می‌بخشد. QwQ-32B یک مدل استدلال میان‌رده است که با مدل‌های برتر مانند DeepSeek-R1 و o1-mini رقابت می‌کند.", "qwq_32b.description": "مدل استدلال میان‌رده در خانواده Qwen. در مقایسه با مدل‌های تنظیم‌شده با دستورالعمل استاندارد، توانایی تفکر و استدلال QwQ عملکرد پایین‌دستی را به‌ویژه در مسائل دشوار به‌طور قابل توجهی بهبود می‌بخشد.", "r1-1776.description": "R1-1776 نسخه پس‌آموزشی مدل DeepSeek R1 است که برای ارائه اطلاعات واقعی، بدون سانسور و بی‌طرف طراحی شده است.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro توسط ByteDance از متن به ویدئو، تصویر به ویدئو (فریم اول، فریم اول+آخر) و تولید صدا همگام با تصاویر پشتیبانی می‌کند.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite توسط BytePlus دارای تولید تقویت‌شده با بازیابی وب برای اطلاعات بلادرنگ، تفسیر پیشرفته دستورات پیچیده و بهبود سازگاری مرجع برای خلق بصری حرفه‌ای است.", "solar-mini-ja.description": "Solar Mini (ژاپنی) نسخه‌ای از Solar Mini با تمرکز بر زبان ژاپنی است که در عین حال عملکرد قوی و کارآمدی در زبان‌های انگلیسی و کره‌ای حفظ می‌کند.", "solar-mini.description": "Solar Mini یک مدل زبانی فشرده است که عملکردی بهتر از GPT-3.5 دارد و با پشتیبانی چندزبانه قوی از زبان‌های انگلیسی و کره‌ای، راه‌حلی کارآمد با حجم کم ارائه می‌دهد.", "solar-pro.description": "Solar Pro یک مدل زبانی هوشمند از Upstage است که برای پیروی از دستورالعمل‌ها روی یک GPU طراحی شده و امتیاز IFEval بالای ۸۰ دارد. در حال حاضر از زبان انگلیسی پشتیبانی می‌کند؛ انتشار کامل آن برای نوامبر ۲۰۲۴ با پشتیبانی زبانی گسترده‌تر و زمینه طولانی‌تر برنامه‌ریزی شده است.", diff --git a/locales/fa-IR/onboarding.json b/locales/fa-IR/onboarding.json index 0a61c786fa..b8170e4cc2 100644 --- a/locales/fa-IR/onboarding.json +++ b/locales/fa-IR/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "فعلاً رد کن", "agent.layout.skipConfirm.title": "فعلاً از راه‌اندازی اولیه رد می‌شی؟", "agent.layout.switchMessage": "امروز حال و هواشو نداری؟ می‌تونی به {{mode}} یا {{skip}} تغییر بدی.", + "agent.layout.switchMessageClassic": "امروز حسش نیست؟ می‌توانید به {{mode}} تغییر دهید.", + "agent.messenger.cta.discord": "افزودن به دیسکورد", + "agent.messenger.cta.slack": "افزودن به اسلک", + "agent.messenger.cta.telegram": "باز کردن در تلگرام", + "agent.messenger.subtitle": "با نماینده خود در تلگرام، اسلک یا دیسکورد گفتگو کنید", + "agent.messenger.telegramQrCaption": "با دوربین گوشی خود اسکن کنید", + "agent.messenger.title": "من را هر جا که پیام می‌دهید، همراه خود داشته باشید", "agent.modeSwitch.agent": "مکالمه‌ای", "agent.modeSwitch.classic": "کلاسیک", "agent.modeSwitch.collapse": "بستن", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "آنچه تا اینجا گفتیم را ذخیره می‌کنم. هر زمان خواستید می‌توانید برگردید و ادامه دهید.", "agent.wrapUp.confirm.ok": "همین حالا تمام کن", "agent.wrapUp.confirm.title": "آیا می‌خواهید روند آشنایی را همین حالا تمام کنید؟", + "agentPicker.allCategories": "همه", + "agentPicker.continue": "ادامه", + "agentPicker.skip": "فعلاً رد کردن", + "agentPicker.subtitle": "چند مورد را اکنون به کتابخانه خود اضافه کنید — هر زمان که خواستید موارد بیشتری کشف کنید.", + "agentPicker.title": "بیایید چند نماینده به کتابخانه شما اضافه کنیم", + "agentPicker.title2": "مواردی را انتخاب کنید که با نحوه کار شما مطابقت دارند", + "agentPicker.title3": "همیشه می‌توانید موارد بیشتری اضافه کنید — با چند مورد شروع کنید", "back": "بازگشت", "finish": "شروع کن", "interests.area.business": "کسب‌وکار و استراتژی", diff --git a/locales/fa-IR/plugin.json b/locales/fa-IR/plugin.json index abdc526b87..5791708113 100644 --- a/locales/fa-IR/plugin.json +++ b/locales/fa-IR/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} سند", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} عملیات", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} عملیات", - "builtins.lobe-agent-documents.inspector.target.agent": "در عامل", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "در موضوع", + "builtins.lobe-agent-documents.inspector.scope.agent": "در عامل", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "در موضوع", "builtins.lobe-agent-documents.title": "اسناد عامل", "builtins.lobe-agent-management.apiName.callAgent": "نماینده تماس", "builtins.lobe-agent-management.apiName.createAgent": "ایجاد نماینده", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "عامل لوب", "builtins.lobe-claude-code.agent.instruction": "دستورالعمل", "builtins.lobe-claude-code.agent.result": "نتیجه", + "builtins.lobe-claude-code.task.createLabel": "ایجاد وظیفه: ", + "builtins.lobe-claude-code.task.getLabel": "بررسی وظیفه #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "فهرست وظایف", + "builtins.lobe-claude-code.task.updateCompleted": "تکمیل شده", + "builtins.lobe-claude-code.task.updateDeleted": "حذف شده", + "builtins.lobe-claude-code.task.updateInProgress": "شروع شده", + "builtins.lobe-claude-code.task.updateLabel": "به‌روزرسانی وظیفه #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "بازنشانی", "builtins.lobe-claude-code.todoWrite.allDone": "همه کارها انجام شدند", "builtins.lobe-claude-code.todoWrite.currentStep": "مرحله‌ی فعلی", "builtins.lobe-claude-code.todoWrite.todos": "کارها", diff --git a/locales/fa-IR/providers.json b/locales/fa-IR/providers.json index 54dc2d7229..d06eb4a87b 100644 --- a/locales/fa-IR/providers.json +++ b/locales/fa-IR/providers.json @@ -33,7 +33,6 @@ "jina.description": "Jina AI که در سال 2020 تأسیس شد، یک شرکت پیشرو در زمینه جستجوی هوش مصنوعی است. پشته جستجوی آن شامل مدل‌های برداری، رتبه‌بندها و مدل‌های زبانی کوچک برای ساخت اپلیکیشن‌های جستجوی مولد و چندوجهی با کیفیت بالا است.", "kimicodingplan.description": "Kimi Code از Moonshot AI دسترسی به مدل‌های Kimi شامل K2.5 را برای وظایف کدنویسی فراهم می‌کند.", "lmstudio.description": "LM Studio یک اپلیکیشن دسکتاپ برای توسعه و آزمایش مدل‌های زبانی بزرگ روی رایانه شخصی شماست.", - "lobehub.description": "LobeHub Cloud از APIهای رسمی برای دسترسی به مدل‌های هوش مصنوعی استفاده می‌کند و مصرف را با اعتباراتی که به توکن‌های مدل مرتبط هستند، اندازه‌گیری می‌کند.", "longcat.description": "لانگ‌کت مجموعه‌ای از مدل‌های بزرگ هوش مصنوعی تولیدی است که به‌طور مستقل توسط میتوآن توسعه داده شده است. این مدل‌ها برای افزایش بهره‌وری داخلی شرکت و امکان‌پذیر کردن کاربردهای نوآورانه از طریق معماری محاسباتی کارآمد و قابلیت‌های چندوجهی قدرتمند طراحی شده‌اند.", "minimax.description": "MiniMax که در سال 2021 تأسیس شد، هوش مصنوعی چندمنظوره با مدل‌های پایه چندوجهی از جمله مدل‌های متنی با پارامترهای تریلیونی، مدل‌های گفتاری و تصویری توسعه می‌دهد و اپ‌هایی مانند Hailuo AI را ارائه می‌کند.", "minimaxcodingplan.description": "طرح توکن MiniMax دسترسی به مدل‌های MiniMax شامل M2.7 را برای وظایف کدنویسی از طریق اشتراک با هزینه ثابت فراهم می‌کند.", diff --git a/locales/fa-IR/subscription.json b/locales/fa-IR/subscription.json index ea97456b27..1bb0e9fd57 100644 --- a/locales/fa-IR/subscription.json +++ b/locales/fa-IR/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "فعال کردن شارژ خودکار", "credits.autoTopUp.upgradeHint": "برای فعال کردن شارژ خودکار به یک طرح پولی اشتراک بگیرید", "credits.autoTopUp.validation.targetMustExceedThreshold": "موجودی هدف باید بیشتر از آستانه باشد", + "credits.costEstimateHint.desc": "قبل از ارسال، هنگامی که هزینه تخمینی مدل به آستانه شما می‌رسد، یک هشدار سبک نمایش دهید", + "credits.costEstimateHint.saveError": "ذخیره تنظیمات هشدار هزینه تخمینی ناموفق بود", + "credits.costEstimateHint.saveSuccess": "تنظیمات هشدار هزینه تخمینی ذخیره شد", + "credits.costEstimateHint.threshold": "آستانه هشدار", + "credits.costEstimateHint.title": "هشدار هزینه تخمینی", + "credits.costEstimateHint.validation.threshold": "آستانه باید بزرگتر یا مساوی با ۰ باشد", "credits.packages.auto": "خودکار", "credits.packages.charged": "شارژ شده ${{amount}}", "credits.packages.expired": "منقضی شده", diff --git a/locales/fa-IR/tool.json b/locales/fa-IR/tool.json index a59d30e419..1f5eeef145 100644 --- a/locales/fa-IR/tool.json +++ b/locales/fa-IR/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "قبلاً در کتابخانه", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} قبلاً در کتابخانه", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} قبلاً در کتابخانه", + "claudeCode.askUserQuestion.escape.back": "بازگشت به گزینه‌ها", + "claudeCode.askUserQuestion.escape.enter": "یا مستقیماً تایپ کنید", + "claudeCode.askUserQuestion.escape.placeholder": "پاسخ خود را اینجا تایپ کنید…", + "claudeCode.askUserQuestion.multiSelectTag": "(چند انتخابی)", + "claudeCode.askUserQuestion.skip": "رد کردن", + "claudeCode.askUserQuestion.submit": "ارسال", + "claudeCode.askUserQuestion.timeExpired": "زمان به پایان رسید — استفاده از گزینه ۱ برای هر سوال.", + "claudeCode.askUserQuestion.timeRemaining": "زمان باقی‌مانده: {{time}} · سوالات بی‌پاسخ به طور پیش‌فرض به گزینه ۱ در زمان پایان تنظیم می‌شوند.", "codeInterpreter-legacy.error": "خطای اجرا", "codeInterpreter-legacy.executing": "در حال اجرا...", "codeInterpreter-legacy.files": "فایل‌ها:", diff --git a/locales/fa-IR/topic.json b/locales/fa-IR/topic.json index 0e3e05c652..294518d8fb 100644 --- a/locales/fa-IR/topic.json +++ b/locales/fa-IR/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "تغییر نام موضوع", "searchPlaceholder": "جستجوی گفت‌وگوها...", "searchResultEmpty": "نتیجه‌ای برای جستجو یافت نشد.", + "sidebar.title": "موضوعات", "taskManager.agent": "عامل وظایف", "taskManager.welcome": "در مورد کارهایت از من بپرس", "temp": "موقت", diff --git a/locales/fr-FR/chat.json b/locales/fr-FR/chat.json index b0ae4d79f0..a5d8ea4ce1 100644 --- a/locales/fr-FR/chat.json +++ b/locales/fr-FR/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe IA", "input.addAi": "Ajouter un message IA", "input.addUser": "Ajouter un message utilisateur", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} crédits/M tokens", + "input.costEstimate.hint": "Coût estimé : ~{{credits}} crédits", + "input.costEstimate.inputLabel": "Entrée", + "input.costEstimate.outputLabel": "Sortie", + "input.costEstimate.settingsLink": "Ajuster le seuil d'avertissement", + "input.costEstimate.tokenCount": "~{{tokens}} tokens", + "input.costEstimate.tooltip": "Estimé à partir du contexte actuel, des outils et des tarifs du modèle. Le coût réel peut varier.", "input.disclaimer": "Les agents peuvent faire des erreurs. Faites preuve de discernement pour les informations critiques.", "input.errorMsg": "Échec de l’envoi : {{errorMsg}}. Réessayez ou envoyez plus tard.", "input.more": "Plus", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Préparation des segments...", "upload.preview.status.pending": "Préparation au téléversement...", "upload.preview.status.processing": "Traitement du fichier...", + "upload.validation.unsupportedFileType": "Type de fichier non pris en charge : {{files}}. Images prises en charge : JPG, PNG, GIF, WebP. Les documents pris en charge incluent PDF, Word, Excel, PowerPoint, Markdown, texte, CSV, JSON et fichiers de code.", "upload.validation.videoSizeExceeded": "La taille du fichier vidéo ne doit pas dépasser 20 Mo. Taille actuelle : {{actualSize}}.", "viewMode.fullWidth": "Pleine largeur", "viewMode.normal": "Standard", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Fermer les autres", "workingPanel.localFile.closeRight": "Fermer à droite", "workingPanel.localFile.error": "Impossible de charger ce fichier", + "workingPanel.localFile.preview.raw": "Brut", + "workingPanel.localFile.preview.render": "Aperçu", "workingPanel.localFile.truncated": "Aperçu du fichier tronqué à {{limit}} caractères", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Passer à la vue unifiée", "workingPanel.review.wordWrap.disable": "Désactiver le retour à la ligne", "workingPanel.review.wordWrap.enable": "Activer le retour à la ligne", + "workingPanel.skills.empty": "Aucune compétence trouvée dans ce projet", + "workingPanel.skills.title": "Compétences", "workingPanel.space": "Espace", "workingPanel.title": "Working Panel", "you": "Vous", diff --git a/locales/fr-FR/components.json b/locales/fr-FR/components.json index 127112b4ef..4f46946baf 100644 --- a/locales/fr-FR/components.json +++ b/locales/fr-FR/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Longueur du contexte", "ModelSwitchPanel.detail.pricing": "Tarification", "ModelSwitchPanel.detail.pricing.cachedInput": "Entrée en cache ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Entrée mise en cache {{amount}} crédits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.image": "crédits/img", + "ModelSwitchPanel.detail.pricing.credits.input": "Entrée {{amount}} crédits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "crédits/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "crédits/M caractères", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "crédits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.output": "Sortie {{amount}} crédits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} crédits / image", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} crédits / vidéo", + "ModelSwitchPanel.detail.pricing.credits.second": "crédits/s", "ModelSwitchPanel.detail.pricing.group.audio": "Audio", "ModelSwitchPanel.detail.pricing.group.image": "Image", "ModelSwitchPanel.detail.pricing.group.text": "Texte", diff --git a/locales/fr-FR/editor.json b/locales/fr-FR/editor.json index 1d62c353a8..04711f251f 100644 --- a/locales/fr-FR/editor.json +++ b/locales/fr-FR/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Commande", + "actionTag.category.projectSkill": "Compétence de projet", "actionTag.category.skill": "Compétence", "actionTag.category.tool": "Outil", "actionTag.tooltip.command": "Exécute une commande slash côté client avant l’envoi.", + "actionTag.tooltip.projectSkill": "Envoyé comme une invocation par barre oblique pour que le CLI de l'agent exécute la compétence de projet correspondante.", "actionTag.tooltip.skill": "Charge un paquet de compétences réutilisable pour cette requête.", "actionTag.tooltip.tool": "Marque un outil que l’utilisateur a explicitement sélectionné pour cette requête.", "actions.expand.off": "Réduire", diff --git a/locales/fr-FR/home.json b/locales/fr-FR/home.json index c8027e8d33..2a357e4d47 100644 --- a/locales/fr-FR/home.json +++ b/locales/fr-FR/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Ignorer", "brief.action.retry": "Réessayer", "brief.addFeedback": "Partager un retour", + "brief.agentSignal.selfReview.applied.heading": "Mis à jour", + "brief.agentSignal.selfReview.applied.summary": "{{count}} mise à jour de rêve a été appliquée.", + "brief.agentSignal.selfReview.applied.summary_plural": "{{count}} mises à jour de rêve ont été appliquées.", + "brief.agentSignal.selfReview.applied.title": "Ressources de rêve mises à jour", + "brief.agentSignal.selfReview.error.heading": "Problème", + "brief.agentSignal.selfReview.error.summary": "Certains travaux n'ont pas pu être terminés pendant ce rêve.", + "brief.agentSignal.selfReview.error.title": "Le rêve a rencontré un problème", + "brief.agentSignal.selfReview.ideas.summary": "Notes de rêve enregistrées pour une révision future.", + "brief.agentSignal.selfReview.ideas.title": "Notes de rêve", + "brief.agentSignal.selfReview.proposal.heading": "Suggestion", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} suggestion de rêve nécessite votre révision.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} suggestions de rêve nécessitent votre révision.", + "brief.agentSignal.selfReview.proposal.title": "Suggestion de rêve à réviser", "brief.collapse": "Afficher moins", "brief.commentPlaceholder": "Partagez votre retour...", "brief.commentSubmit": "Envoyer le retour", diff --git a/locales/fr-FR/hotkey.json b/locales/fr-FR/hotkey.json index 2b7052089c..497d2ccfdb 100644 --- a/locales/fr-FR/hotkey.json +++ b/locales/fr-FR/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Ajouter l'entrée actuelle comme message utilisateur sans déclencher la génération", "addUserMessage.title": "Ajouter un message utilisateur", - "clearCurrentMessages.desc": "Effacer les messages et les fichiers téléchargés de la conversation en cours", - "clearCurrentMessages.title": "Effacer les messages de la conversation", "commandPalette.desc": "Ouvrir la palette de commandes globale pour un accès rapide aux fonctionnalités", "commandPalette.title": "Palette de commandes", "deleteAndRegenerateMessage.desc": "Supprimer le dernier message et le régénérer", diff --git a/locales/fr-FR/models.json b/locales/fr-FR/models.json index 9360265c2a..3ad314ff0f 100644 --- a/locales/fr-FR/models.json +++ b/locales/fr-FR/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Nouveau modèle de génération vidéo avec des améliorations complètes dans les mouvements corporels, le réalisme physique et le suivi des instructions.", "MiniMax-M1.description": "Un nouveau modèle de raisonnement interne avec 80 000 chaînes de pensée et 1 million d’entrées, offrant des performances comparables aux meilleurs modèles mondiaux.", "MiniMax-M2-Stable.description": "Conçu pour un codage efficace et des flux de travail d’agents, avec une plus grande simultanéité pour un usage commercial.", - "MiniMax-M2.1-Lightning.description": "Capacités de programmation multilingues puissantes avec une inférence plus rapide et plus efficace.", "MiniMax-M2.1-highspeed.description": "Des capacités de programmation multilingues puissantes, offrant une expérience de programmation entièrement améliorée. Plus rapide et plus efficace.", "MiniMax-M2.1.description": "MiniMax-M2.1 est un modèle phare open source de MiniMax, conçu pour résoudre des tâches complexes du monde réel. Ses principaux atouts résident dans ses capacités de programmation multilingue et sa faculté à résoudre des problèmes complexes en tant qu'agent.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed : Même performance que M2.5 avec une inférence plus rapide.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku est le modèle le plus rapide et le plus compact d’Anthropic, conçu pour des réponses quasi instantanées avec des performances rapides et précises.", "claude-3-opus-20240229.description": "Claude 3 Opus est le modèle le plus puissant d’Anthropic pour les tâches complexes, excellent en performance, intelligence, fluidité et compréhension.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet équilibre intelligence et rapidité pour les charges de travail en entreprise, offrant une grande utilité à moindre coût et un déploiement fiable à grande échelle.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 est le modèle Haiku le plus rapide et le plus intelligent d'Anthropic, avec une vitesse fulgurante et une réflexion approfondie.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 est le modèle Haiku le plus rapide et le plus intelligent d’Anthropic, avec une vitesse fulgurante et un raisonnement étendu.", "claude-haiku-4-5.description": "Claude Haiku 4.5 par Anthropic — modèle Haiku de nouvelle génération avec un raisonnement et une vision améliorés.", "claude-haiku-4.5.description": "Claude Haiku 4.5 est le modèle Haiku le plus rapide et le plus intelligent d’Anthropic, avec une vitesse fulgurante et un raisonnement étendu.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking est une variante avancée capable de révéler son processus de raisonnement.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 est le dernier modèle d'Anthropic, le plus performant pour les tâches hautement complexes, excelle en performance, intelligence, fluidité et compréhension.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 est le modèle le plus récent et le plus performant d’Anthropic pour les tâches hautement complexes, excelling en performance, intelligence, fluidité et compréhension.", "claude-opus-4-1.description": "Claude Opus 4.1 par Anthropic — modèle de raisonnement premium avec des capacités d'analyse approfondie.", - "claude-opus-4-20250514.description": "Claude Opus 4 est le modèle le plus puissant d'Anthropic pour les tâches hautement complexes, excelle en performance, intelligence, fluidité et compréhension.", + "claude-opus-4-20250514.description": "Claude Opus 4 est le modèle le plus puissant d’Anthropic pour les tâches hautement complexes, excelling en performance, intelligence, fluidité et compréhension.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 est le modèle phare d’Anthropic, combinant intelligence exceptionnelle et performance évolutive, idéal pour les tâches complexes nécessitant des réponses et un raisonnement de très haute qualité.", "claude-opus-4-5.description": "Claude Opus 4.5 par Anthropic — modèle phare avec un raisonnement et un codage de premier ordre.", "claude-opus-4-6.description": "Claude Opus 4.6 par Anthropic — modèle phare avec une fenêtre de contexte de 1M et un raisonnement avancé.", @@ -330,8 +329,8 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 est le modèle le plus intelligent d’Anthropic pour la création d’agents et le codage.", "claude-opus-4.6.description": "Claude Opus 4.6 est le modèle le plus intelligent d’Anthropic pour la création d’agents et le codage.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking peut produire des réponses quasi instantanées ou une réflexion détaillée étape par étape avec un processus visible.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 est le modèle le plus intelligent d'Anthropic à ce jour, offrant des réponses quasi-instantanées ou une réflexion détaillée étape par étape avec un contrôle précis pour les utilisateurs d'API.", - "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 est le modèle le plus intelligent d'Anthropic à ce jour.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 peut produire des réponses quasi instantanées ou un raisonnement détaillé étape par étape avec un processus visible.", + "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 est le modèle le plus intelligent d’Anthropic à ce jour.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 par Anthropic — Sonnet amélioré avec des performances de codage accrues.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 par Anthropic — dernier modèle Sonnet avec un codage supérieur et une utilisation d'outils avancée.", "claude-sonnet-4.5.description": "Claude Sonnet 4.5 est le modèle le plus intelligent d’Anthropic à ce jour.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) est un modèle innovant offrant une compréhension linguistique approfondie et une interaction fluide.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 est un modèle de raisonnement nouvelle génération avec un raisonnement complexe renforcé et une chaîne de pensée pour les tâches d’analyse approfondie.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 est un modèle de raisonnement de nouvelle génération avec des capacités renforcées de raisonnement complexe et de chaîne de pensée.", - "deepseek-chat.description": "Alias de compatibilité pour le mode non-réflexif de DeepSeek V4 Flash. Prévu pour être déprécié — utilisez DeepSeek V4 Flash à la place.", + "deepseek-chat.description": "Un nouveau modèle open-source combinant des capacités générales et de codage. Il conserve le dialogue général du modèle de chat et les solides compétences en codage du modèle de programmeur, avec un meilleur alignement des préférences. DeepSeek-V2.5 améliore également l’écriture et le suivi des instructions.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B est un modèle de langage pour le code entraîné sur 2T de tokens (87 % de code, 13 % de texte en chinois/anglais). Il introduit une fenêtre de contexte de 16K et des tâches de remplissage au milieu, offrant une complétion de code à l’échelle du projet et un remplissage de fragments.", "deepseek-coder-v2.description": "DeepSeek Coder V2 est un modèle de code MoE open source performant sur les tâches de programmation, comparable à GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 est un modèle de code MoE open source performant sur les tâches de programmation, comparable à GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "Version complète rapide de DeepSeek R1 avec recherche web en temps réel, combinant des capacités à l’échelle de 671B et des réponses plus rapides.", "deepseek-r1-online.description": "Version complète de DeepSeek R1 avec 671B de paramètres et recherche web en temps réel, offrant une meilleure compréhension et génération.", "deepseek-r1.description": "DeepSeek-R1 utilise des données de démarrage à froid avant l’apprentissage par renforcement et affiche des performances comparables à OpenAI-o1 en mathématiques, codage et raisonnement.", - "deepseek-reasoner.description": "Alias de compatibilité pour le mode réflexif de DeepSeek V4 Flash. Prévu pour être déprécié — utilisez DeepSeek V4 Flash à la place.", + "deepseek-reasoner.description": "Un modèle de raisonnement DeepSeek axé sur des tâches complexes de raisonnement logique.", "deepseek-v2.description": "DeepSeek V2 est un modèle MoE efficace pour un traitement économique.", "deepseek-v2:236b.description": "DeepSeek V2 236B est le modèle axé sur le code de DeepSeek avec une forte génération de code.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 est un modèle MoE de 671B paramètres avec des points forts en programmation, compréhension du contexte et traitement de longs textes.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 est un modèle de génération d’image de ByteDance Seed, prenant en charge les entrées texte et image avec une génération d’image de haute qualité et hautement contrôlable. Il génère des images à partir d’invites textuelles.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 est le dernier modèle d'image multimodal de ByteDance, intégrant des capacités de génération de texte en image, d'image en image et de génération d'images par lots, tout en incorporant des compétences en raisonnement et en bon sens. Par rapport à la version précédente 4.0, il offre une qualité de génération nettement améliorée, avec une meilleure cohérence d'édition et une fusion multi-images. Il permet un contrôle plus précis des détails visuels, produisant des textes et des visages plus petits de manière plus naturelle, et atteint une mise en page et des couleurs plus harmonieuses, améliorant l'esthétique globale.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite est le dernier modèle de génération d'images de ByteDance. Pour la première fois, il intègre des capacités de recherche en ligne, lui permettant d'incorporer des informations web en temps réel et d'améliorer la pertinence des images générées. L'intelligence du modèle a également été améliorée, permettant une interprétation précise des instructions complexes et du contenu visuel. De plus, il offre une meilleure couverture des connaissances globales, une cohérence des références et une qualité de génération dans des scénarios professionnels, répondant mieux aux besoins de création visuelle au niveau des entreprises.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 de ByteDance est le modèle de génération vidéo le plus puissant, prenant en charge la génération de vidéos multimodales de référence, le montage vidéo, l'extension vidéo, la conversion texte en vidéo et image en vidéo avec audio synchronisé.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast de ByteDance offre les mêmes capacités que Seedance 2.0 avec des vitesses de génération plus rapides à un prix plus compétitif.", "emohaa.description": "Emohaa est un modèle de santé mentale doté de compétences professionnelles en conseil pour aider les utilisateurs à comprendre leurs problèmes émotionnels.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B est un modèle léger open source conçu pour un déploiement local et personnalisé.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview est un modèle de prévisualisation avec contexte 8K pour l’évaluation d’ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking est un modèle phare natif tout-modal avec modélisation unifiée du texte, de l’image, de l’audio et de la vidéo. Il offre des améliorations majeures pour la QA complexe, la création et les scénarios d’agents.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview est un modèle phare natif tout-modal avec modélisation unifiée du texte, de l’image, de l’audio et de la vidéo. Il offre des améliorations majeures pour la QA complexe, la création et les scénarios d’agents.", "ernie-5.0.description": "ERNIE 5.0, le modèle de nouvelle génération de la série ERNIE, est un modèle natif multimodal de grande taille. Il adopte une approche de modélisation multimodale unifiée, modélisant conjointement le texte, les images, l'audio et la vidéo pour offrir des capacités multimodales complètes. Ses capacités fondamentales ont été considérablement améliorées, atteignant des performances élevées lors des évaluations de référence. Il excelle particulièrement dans la compréhension multimodale, le suivi des instructions, l'écriture créative, la précision factuelle, la planification d'agents et l'utilisation d'outils.", + "ernie-5.1.description": "ERNIE 5.1 est le dernier modèle de la série ERNIE, avec des améliorations complètes de ses capacités fondamentales. Il démontre des progrès significatifs dans des domaines tels que les agents, le traitement des connaissances, le raisonnement et la recherche approfondie. Cette version adopte une architecture d’apprentissage par renforcement entièrement asynchrone et découplée, spécifiquement conçue pour relever les défis clés de l’évolution des grands modèles vers une prise de décision autonome des agents, y compris les écarts numériques entre l’entraînement et l’inférence, la faible utilisation des ressources informatiques hétérogènes et les problèmes globaux causés par les effets de longue traîne. De plus, des techniques de post-entraînement à grande échelle pour les agents sont employées pour améliorer davantage les capacités et les performances de généralisation du modèle. Grâce à un cadre collaboratif en trois étapes impliquant des processus d’environnement, d’expert et de fusion, l’approche garantit non seulement l’efficacité de l’entraînement, mais améliore également de manière significative la stabilité et les performances du modèle sur des tâches complexes.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview est une préversion de modèle pour la création de personnages et d’intrigues, destinée à l’évaluation des fonctionnalités.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K est un modèle de personnage pour romans et création d’intrigues, adapté à la génération d’histoires longues.", "ernie-image-turbo.description": "ERNIE-Image est un modèle texte-vers-image de 8 milliards de paramètres développé par Baidu. Il se classe parmi les meilleurs sur plusieurs benchmarks, atteignant la première place ex aequo dans SuperCLUE en Chine et en tête dans la catégorie open source.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K est un modèle de réflexion rapide avec un contexte de 32K pour le raisonnement complexe et les dialogues multi-tours.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview est une préversion de modèle de réflexion pour l’évaluation et les tests.", "ernie-x1.1.description": "ERNIE X1.1 est un modèle de réflexion en aperçu pour évaluation et test.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, développé par l'équipe Seed de ByteDance, prend en charge l'édition et la composition multi-images. Inclut une meilleure cohérence des sujets, un suivi précis des instructions, une compréhension de la logique spatiale, une expression esthétique, une mise en page de posters et la conception de logos avec un rendu texte-image de haute précision.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, développé par ByteDance Seed, prend en charge les entrées texte et image pour une génération d'images hautement contrôlable et de haute qualité à partir de prompts.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 est un modèle de génération d’images de ByteDance Seed, prenant en charge les entrées texte et image avec une génération d’images hautement contrôlable et de haute qualité. Il génère des images à partir de descriptions textuelles.", "fal-ai/flux-kontext/dev.description": "Modèle FLUX.1 axé sur l’édition d’images, prenant en charge les entrées texte et image.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] accepte des textes et des images de référence en entrée, permettant des modifications locales ciblées et des transformations globales complexes de scènes.", "fal-ai/flux/krea.description": "Flux Krea [dev] est un modèle de génération d’images avec une préférence esthétique pour des images plus réalistes et naturelles.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Un puissant modèle natif multimodal de génération d’images.", "fal-ai/imagen4/preview.description": "Modèle de génération d’images de haute qualité développé par Google.", "fal-ai/nano-banana.description": "Nano Banana est le modèle multimodal natif le plus récent, le plus rapide et le plus efficace de Google, permettant la génération et l’édition d’images via la conversation.", - "fal-ai/qwen-image-edit.description": "Un modèle professionnel d'édition d'images de l'équipe Qwen, prenant en charge les modifications sémantiques et d'apparence, l'édition précise de texte en chinois/anglais, le transfert de style, la rotation et plus encore.", - "fal-ai/qwen-image.description": "Un modèle puissant de génération d'images de l'équipe Qwen avec un rendu texte chinois robuste et des styles visuels variés.", + "fal-ai/qwen-image-edit.description": "Un modèle professionnel d’édition d’images de l’équipe Qwen qui prend en charge les modifications sémantiques et d’apparence, édite précisément le texte en chinois et en anglais, et permet des modifications de haute qualité telles que le transfert de style et la rotation d’objets.", + "fal-ai/qwen-image.description": "Un puissant modèle de génération d’images de l’équipe Qwen avec un rendu impressionnant du texte en chinois et des styles visuels variés.", "flux-1-schnell.description": "Modèle texte-vers-image à 12 milliards de paramètres de Black Forest Labs utilisant la distillation par diffusion latente adversariale pour générer des images de haute qualité en 1 à 4 étapes. Il rivalise avec les alternatives propriétaires et est publié sous licence Apache-2.0 pour un usage personnel, de recherche et commercial.", "flux-dev.description": "Modèle open source de génération d’images destiné à la R&D, optimisé efficacement pour la recherche d’innovation non commerciale.", "flux-kontext-max.description": "Génération et édition d’images contextuelles de pointe, combinant texte et images pour des résultats précis et cohérents.", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash est le modèle le plus intelligent conçu pour la vitesse, alliant intelligence de pointe et ancrage de recherche performant.", "gemini-3-flash.description": "Gemini 3 Flash par Google — modèle ultra-rapide avec prise en charge des entrées multimodales.", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image (Nano Banana Pro) est le modèle de génération d'images de Google qui prend également en charge le dialogue multimodal.", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) est le modèle de génération d'images de Google et prend également en charge le chat multimodal.", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) est le modèle de génération d’images de Google et prend également en charge le chat multimodal.", "gemini-3-pro-preview.description": "Gemini 3 Pro est le modèle agent et de codage le plus puissant de Google, offrant des visuels enrichis et une interaction plus poussée grâce à un raisonnement de pointe.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) est le modèle de génération d'images natif le plus rapide de Google avec prise en charge de la réflexion, génération et édition d'images conversationnelles.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) offre une qualité d'image de niveau Pro à une vitesse Flash avec prise en charge du chat multimodal.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) est le modèle de génération d’images natif le plus rapide de Google, avec prise en charge de la réflexion, génération et édition d’images conversationnelles.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview est le modèle multimodal le plus économique de Google, optimisé pour les tâches agentiques à haut volume, la traduction et le traitement des données.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite est le modèle multimodal le plus économique de Google, optimisé pour les tâches agentiques à haut volume, la traduction et le traitement des données.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview améliore Gemini 3 Pro avec des capacités de raisonnement renforcées et ajoute un support de niveau de réflexion moyen.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Nous sommes ravis de présenter Grok 4 Fast, notre dernière avancée en matière de modèles de raisonnement économiques.", "grok-4.20-0309-non-reasoning.description": "Une variante sans raisonnement pour des cas d'utilisation simples.", "grok-4.20-0309-reasoning.description": "Modèle intelligent et ultra-rapide qui raisonne avant de répondre.", - "grok-4.20-beta-0309-non-reasoning.description": "Une variante non-réflexive pour des cas d'utilisation simples.", - "grok-4.20-beta-0309-reasoning.description": "Modèle intelligent et ultra-rapide qui réfléchit avant de répondre.", "grok-4.20-multi-agent-0309.description": "Une équipe de 4 ou 16 agents, excelle dans les cas d'utilisation de recherche. Ne prend actuellement pas en charge les outils côté client. Prend uniquement en charge les outils côté serveur xAI (par exemple X Search, outils de recherche Web) et les outils MCP distants.", "grok-4.3.description": "Le modèle de langage de grande taille le plus axé sur la vérité au monde", "grok-4.description": "Dernier modèle phare Grok avec des performances inégalées en langage, mathématiques et raisonnement — un véritable polyvalent. Actuellement pointé vers grok-4-0709 ; en raison de ressources limitées, son prix est temporairement 10 % plus élevé que le tarif officiel et devrait revenir au prix officiel ultérieurement.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ est un modèle de raisonnement de la famille Qwen. Comparé aux modèles classiques ajustés par instruction, il apporte des capacités de réflexion et de raisonnement qui améliorent considérablement les performances en aval, notamment sur les problèmes complexes. QwQ-32B est un modèle de raisonnement de taille moyenne qui rivalise avec les meilleurs modèles comme DeepSeek-R1 et o1-mini.", "qwq_32b.description": "Modèle de raisonnement de taille moyenne de la famille Qwen. Comparé aux modèles classiques ajustés par instruction, les capacités de réflexion et de raisonnement de QwQ améliorent considérablement les performances en aval, notamment sur les problèmes complexes.", "r1-1776.description": "R1-1776 est une variante post-entraînée de DeepSeek R1 conçue pour fournir des informations factuelles non censurées et impartiales.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro de ByteDance prend en charge la conversion texte en vidéo, image en vidéo (première image, première+dernière image) et la génération audio synchronisée avec les visuels.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite par BytePlus propose une génération augmentée par récupération web pour des informations en temps réel, une interprétation améliorée des prompts complexes et une meilleure cohérence des références pour la création visuelle professionnelle.", "solar-mini-ja.description": "Solar Mini (Ja) étend Solar Mini avec un accent sur le japonais tout en maintenant des performances efficaces et solides en anglais et en coréen.", "solar-mini.description": "Solar Mini est un modèle LLM compact surpassant GPT-3.5, avec de solides capacités multilingues en anglais et en coréen, offrant une solution efficace à faible empreinte.", "solar-pro.description": "Solar Pro est un LLM intelligent développé par Upstage, axé sur le suivi d'instructions sur un seul GPU, avec des scores IFEval supérieurs à 80. Il prend actuellement en charge l'anglais ; la version complète est prévue pour novembre 2024 avec un support linguistique élargi et un contexte plus long.", diff --git a/locales/fr-FR/onboarding.json b/locales/fr-FR/onboarding.json index a9fb6b6432..aba6829952 100644 --- a/locales/fr-FR/onboarding.json +++ b/locales/fr-FR/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Passer pour le moment", "agent.layout.skipConfirm.title": "Passer l'initialisation pour l'instant ?", "agent.layout.switchMessage": "Pas d'humeur aujourd'hui ? Vous pouvez passer en {{mode}} ou {{skip}}.", + "agent.layout.switchMessageClassic": "Pas d'humeur aujourd'hui ? Vous pouvez passer à {{mode}}.", + "agent.messenger.cta.discord": "Ajouter à Discord", + "agent.messenger.cta.slack": "Ajouter à Slack", + "agent.messenger.cta.telegram": "Ouvrir dans Telegram", + "agent.messenger.subtitle": "Discutez avec votre agent sur Telegram, Slack ou Discord", + "agent.messenger.telegramQrCaption": "Scannez avec l'appareil photo de votre téléphone", + "agent.messenger.title": "Gardez-moi avec vous, où que vous envoyiez des messages", "agent.modeSwitch.agent": "Conversationnel", "agent.modeSwitch.classic": "Classique", "agent.modeSwitch.collapse": "Réduire", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "J’enregistrerai ce que nous avons couvert jusqu’ici. Vous pourrez toujours revenir discuter plus tard.", "agent.wrapUp.confirm.ok": "Terminer maintenant", "agent.wrapUp.confirm.title": "Terminer l’accueil maintenant ?", + "agentPicker.allCategories": "Tous", + "agentPicker.continue": "Continuer", + "agentPicker.skip": "Passer pour l'instant", + "agentPicker.subtitle": "Ajoutez-en quelques-uns à votre bibliothèque maintenant — découvrez-en plus à tout moment plus tard.", + "agentPicker.title": "Ajoutons quelques agents à votre bibliothèque", + "agentPicker.title2": "Choisissez ceux qui correspondent à votre façon de travailler", + "agentPicker.title3": "Vous pouvez toujours en ajouter plus tard — commencez par quelques-uns", "back": "Retour", "finish": "Commencer", "interests.area.business": "Affaires & Stratégie", diff --git a/locales/fr-FR/plugin.json b/locales/fr-FR/plugin.json index f62a25600d..043f1b9cd7 100644 --- a/locales/fr-FR/plugin.json +++ b/locales/fr-FR/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} documents", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} opérations", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} opérations", - "builtins.lobe-agent-documents.inspector.target.agent": "dans l'agent", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "dans le sujet", + "builtins.lobe-agent-documents.inspector.scope.agent": "dans l'agent", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "dans le sujet", "builtins.lobe-agent-documents.title": "Documents de l'agent", "builtins.lobe-agent-management.apiName.callAgent": "Appeler un agent", "builtins.lobe-agent-management.apiName.createAgent": "Créer un agent", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Agent Lobe", "builtins.lobe-claude-code.agent.instruction": "Consigne", "builtins.lobe-claude-code.agent.result": "Résultat", + "builtins.lobe-claude-code.task.createLabel": "Création de tâche : ", + "builtins.lobe-claude-code.task.getLabel": "Inspection de la tâche #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "Liste des tâches", + "builtins.lobe-claude-code.task.updateCompleted": "Terminée", + "builtins.lobe-claude-code.task.updateDeleted": "Supprimée", + "builtins.lobe-claude-code.task.updateInProgress": "Commencée", + "builtins.lobe-claude-code.task.updateLabel": "Mise à jour de la tâche #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "Réinitialisée", "builtins.lobe-claude-code.todoWrite.allDone": "Toutes les tâches sont terminées", "builtins.lobe-claude-code.todoWrite.currentStep": "Étape actuelle", "builtins.lobe-claude-code.todoWrite.todos": "Tâches", diff --git a/locales/fr-FR/providers.json b/locales/fr-FR/providers.json index ba3e58742e..cc72e426df 100644 --- a/locales/fr-FR/providers.json +++ b/locales/fr-FR/providers.json @@ -33,7 +33,6 @@ "jina.description": "Fondée en 2020, Jina AI est une entreprise leader en IA de recherche. Sa pile technologique comprend des modèles vectoriels, des rerankers et de petits modèles linguistiques pour créer des applications de recherche générative et multimodale fiables et de haute qualité.", "kimicodingplan.description": "Kimi Code de Moonshot AI offre un accès aux modèles Kimi, y compris K2.5, pour des tâches de codage.", "lmstudio.description": "LM Studio est une application de bureau pour développer et expérimenter avec des LLMs sur votre ordinateur.", - "lobehub.description": "LobeHub Cloud utilise des API officielles pour accéder aux modèles d'IA et mesure l'utilisation avec des Crédits liés aux jetons des modèles.", "longcat.description": "LongCat est une série de grands modèles d'IA générative développés indépendamment par Meituan. Elle est conçue pour améliorer la productivité interne de l'entreprise et permettre des applications innovantes grâce à une architecture informatique efficace et de puissantes capacités multimodales.", "minimax.description": "Fondée en 2021, MiniMax développe une IA généraliste avec des modèles fondamentaux multimodaux, incluant des modèles texte MoE à un billion de paramètres, des modèles vocaux et visuels, ainsi que des applications comme Hailuo AI.", "minimaxcodingplan.description": "Le plan de jetons MiniMax offre un accès aux modèles MiniMax, y compris M2.7, pour des tâches de codage via un abonnement à tarif fixe.", diff --git a/locales/fr-FR/subscription.json b/locales/fr-FR/subscription.json index a76c9e24be..e0edcc590e 100644 --- a/locales/fr-FR/subscription.json +++ b/locales/fr-FR/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Activer la recharge automatique", "credits.autoTopUp.upgradeHint": "Abonnez-vous à un plan payant pour activer la recharge automatique", "credits.autoTopUp.validation.targetMustExceedThreshold": "Le solde cible doit être supérieur au seuil", + "credits.costEstimateHint.desc": "Afficher un avertissement léger avant l'envoi lorsque le coût estimé du modèle atteint votre seuil", + "credits.costEstimateHint.saveError": "Échec de l'enregistrement des paramètres d'alerte de l'estimation des coûts", + "credits.costEstimateHint.saveSuccess": "Paramètres d'alerte de l'estimation des coûts enregistrés", + "credits.costEstimateHint.threshold": "Seuil d'avertissement", + "credits.costEstimateHint.title": "Alerte d'estimation des coûts", + "credits.costEstimateHint.validation.threshold": "Le seuil doit être supérieur ou égal à 0", "credits.packages.auto": "Automatique", "credits.packages.charged": "Facturé ${{amount}}", "credits.packages.expired": "Expiré", diff --git a/locales/fr-FR/tool.json b/locales/fr-FR/tool.json index 1cb4fc08e5..c1782d1f45 100644 --- a/locales/fr-FR/tool.json +++ b/locales/fr-FR/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Déjà dans la bibliothèque", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} déjà dans la bibliothèque", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} déjà dans la bibliothèque", + "claudeCode.askUserQuestion.escape.back": "Retour aux options", + "claudeCode.askUserQuestion.escape.enter": "Ou tapez directement", + "claudeCode.askUserQuestion.escape.placeholder": "Tapez votre réponse ici…", + "claudeCode.askUserQuestion.multiSelectTag": "(sélection multiple)", + "claudeCode.askUserQuestion.skip": "Passer", + "claudeCode.askUserQuestion.submit": "Soumettre", + "claudeCode.askUserQuestion.timeExpired": "Temps écoulé — utilisation de l'option 1 pour chaque question.", + "claudeCode.askUserQuestion.timeRemaining": "Temps restant : {{time}} · les questions sans réponse par défaut passent à l'option 1 à l'expiration.", "codeInterpreter-legacy.error": "Erreur d'exécution", "codeInterpreter-legacy.executing": "Exécution en cours...", "codeInterpreter-legacy.files": "Fichiers :", diff --git a/locales/fr-FR/topic.json b/locales/fr-FR/topic.json index aac6fdbe74..de6a1b8192 100644 --- a/locales/fr-FR/topic.json +++ b/locales/fr-FR/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Renommer le sujet", "searchPlaceholder": "Rechercher des sujets...", "searchResultEmpty": "Aucun résultat trouvé.", + "sidebar.title": "Sujets", "taskManager.agent": "Agent de tâches", "taskManager.welcome": "Demandez-moi à propos de vos tâches", "temp": "Temporaire", diff --git a/locales/it-IT/chat.json b/locales/it-IT/chat.json index 6c6c245d8f..ca099c0bce 100644 --- a/locales/it-IT/chat.json +++ b/locales/it-IT/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "Aggiungi un messaggio AI", "input.addUser": "Aggiungi un messaggio utente", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} crediti/M token", + "input.costEstimate.hint": "Costo stimato: ~{{credits}} crediti", + "input.costEstimate.inputLabel": "Input", + "input.costEstimate.outputLabel": "Output", + "input.costEstimate.settingsLink": "Regola la soglia di avviso", + "input.costEstimate.tokenCount": "~{{tokens}} token", + "input.costEstimate.tooltip": "Stimato dal contesto attuale, dagli strumenti e dai prezzi del modello. Il costo effettivo potrebbe variare.", "input.disclaimer": "Gli agenti possono commettere errori. Usa il tuo giudizio per informazioni critiche.", "input.errorMsg": "Invio non riuscito: {{errorMsg}}. Riprova o invia più tardi.", "input.more": "Altro", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Preparazione segmenti...", "upload.preview.status.pending": "Preparazione al caricamento...", "upload.preview.status.processing": "Elaborazione file...", + "upload.validation.unsupportedFileType": "Tipo di file non supportato: {{files}}. Immagini supportate: JPG, PNG, GIF, WebP. Documenti supportati includono PDF, Word, Excel, PowerPoint, Markdown, testo, CSV, JSON e file di codice.", "upload.validation.videoSizeExceeded": "La dimensione del file video non deve superare i 20MB. Dimensione attuale: {{actualSize}}.", "viewMode.fullWidth": "Larghezza completa", "viewMode.normal": "Standard", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Chiudi Altri", "workingPanel.localFile.closeRight": "Chiudi a Destra", "workingPanel.localFile.error": "Impossibile caricare questo file", + "workingPanel.localFile.preview.raw": "Grezzo", + "workingPanel.localFile.preview.render": "Anteprima", "workingPanel.localFile.truncated": "Anteprima del file troncata a {{limit}} caratteri", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Passa alla vista unificata", "workingPanel.review.wordWrap.disable": "Disabilita ritorno a capo automatico", "workingPanel.review.wordWrap.enable": "Abilita ritorno a capo automatico", + "workingPanel.skills.empty": "Nessuna competenza trovata in questo progetto", + "workingPanel.skills.title": "Competenze", "workingPanel.space": "Spazio", "workingPanel.title": "Working Panel", "you": "Tu", diff --git a/locales/it-IT/components.json b/locales/it-IT/components.json index 1596b25880..ce7111a375 100644 --- a/locales/it-IT/components.json +++ b/locales/it-IT/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Lunghezza del Contesto", "ModelSwitchPanel.detail.pricing": "Prezzi", "ModelSwitchPanel.detail.pricing.cachedInput": "Input memorizzato ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Input memorizzato nella cache {{amount}} crediti/M token", + "ModelSwitchPanel.detail.pricing.credits.image": "crediti/img", + "ModelSwitchPanel.detail.pricing.credits.input": "Input {{amount}} crediti/M token", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "crediti/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "crediti/M caratteri", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "crediti/M token", + "ModelSwitchPanel.detail.pricing.credits.output": "Output {{amount}} crediti/M token", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} crediti / immagine", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} crediti / video", + "ModelSwitchPanel.detail.pricing.credits.second": "crediti/s", "ModelSwitchPanel.detail.pricing.group.audio": "Audio", "ModelSwitchPanel.detail.pricing.group.image": "Immagine", "ModelSwitchPanel.detail.pricing.group.text": "Testo", diff --git a/locales/it-IT/editor.json b/locales/it-IT/editor.json index 21c28f73b3..d89dfbcabc 100644 --- a/locales/it-IT/editor.json +++ b/locales/it-IT/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Comando", + "actionTag.category.projectSkill": "Competenza di progetto", "actionTag.category.skill": "Abilità", "actionTag.category.tool": "Strumento", "actionTag.tooltip.command": "Esegue un comando slash lato client prima dell'invio.", + "actionTag.tooltip.projectSkill": "Inviato come un'istruzione slash affinché la CLI dell'agente esegua la competenza di progetto corrispondente.", "actionTag.tooltip.skill": "Carica un pacchetto di abilità riutilizzabile per questa richiesta.", "actionTag.tooltip.tool": "Contrassegna uno strumento selezionato esplicitamente dall'utente per questa richiesta.", "actions.expand.off": "Comprimi", diff --git a/locales/it-IT/home.json b/locales/it-IT/home.json index 7cdb5a6df0..f65149e150 100644 --- a/locales/it-IT/home.json +++ b/locales/it-IT/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Ignora", "brief.action.retry": "Riprova", "brief.addFeedback": "Condividi feedback", + "brief.agentSignal.selfReview.applied.heading": "Aggiornato", + "brief.agentSignal.selfReview.applied.summary": "{{count}} aggiornamento del sogno è stato applicato.", + "brief.agentSignal.selfReview.applied.summary_plural": "{{count}} aggiornamenti del sogno sono stati applicati.", + "brief.agentSignal.selfReview.applied.title": "Risorse del sogno aggiornate", + "brief.agentSignal.selfReview.error.heading": "Problema", + "brief.agentSignal.selfReview.error.summary": "Alcuni lavori non sono stati completati durante questo sogno.", + "brief.agentSignal.selfReview.error.title": "Il sogno ha incontrato un problema", + "brief.agentSignal.selfReview.ideas.summary": "Note del sogno salvate per una revisione futura.", + "brief.agentSignal.selfReview.ideas.title": "Note del sogno", + "brief.agentSignal.selfReview.proposal.heading": "Suggerimento", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} suggerimento del sogno necessita della tua revisione.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} suggerimenti del sogno necessitano della tua revisione.", + "brief.agentSignal.selfReview.proposal.title": "Suggerimento del sogno da rivedere", "brief.collapse": "Mostra meno", "brief.commentPlaceholder": "Condividi il tuo feedback...", "brief.commentSubmit": "Invia feedback", diff --git a/locales/it-IT/hotkey.json b/locales/it-IT/hotkey.json index 3c347b39a0..cba4834717 100644 --- a/locales/it-IT/hotkey.json +++ b/locales/it-IT/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Aggiungi l'input corrente come messaggio utente senza avviare la generazione", "addUserMessage.title": "Aggiungi un Messaggio Utente", - "clearCurrentMessages.desc": "Cancella i messaggi e i file caricati dalla conversazione corrente", - "clearCurrentMessages.title": "Cancella Messaggi della Conversazione", "commandPalette.desc": "Apri la palette comandi globale per accedere rapidamente alle funzionalità", "commandPalette.title": "Palette Comandi", "deleteAndRegenerateMessage.desc": "Elimina l'ultimo messaggio e rigenera", diff --git a/locales/it-IT/models.json b/locales/it-IT/models.json index 75b60b3e1d..bef1ab274d 100644 --- a/locales/it-IT/models.json +++ b/locales/it-IT/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Nuovo modello di generazione video con aggiornamenti completi nei movimenti del corpo, realismo fisico e aderenza alle istruzioni.", "MiniMax-M1.description": "Nuovo modello di ragionamento proprietario con 80K chain-of-thought e 1M di input, con prestazioni comparabili ai migliori modelli globali.", "MiniMax-M2-Stable.description": "Progettato per flussi di lavoro di codifica e agenti efficienti, con maggiore concorrenza per l'uso commerciale.", - "MiniMax-M2.1-Lightning.description": "Potenti capacità di programmazione multilingue con inferenza più rapida ed efficiente.", "MiniMax-M2.1-highspeed.description": "Potenti capacità di programmazione multilingue, esperienza di programmazione completamente aggiornata. Più veloce ed efficiente.", "MiniMax-M2.1.description": "MiniMax-M2.1 è un modello open-source di punta di MiniMax, progettato per affrontare compiti complessi del mondo reale. I suoi punti di forza principali sono le capacità di programmazione multilingue e la risoluzione di compiti complessi come agente.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: Stesse prestazioni di M2.5 con inferenza più veloce.", @@ -315,11 +314,11 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku è il modello più veloce e compatto di Anthropic, progettato per risposte quasi istantanee con prestazioni rapide e accurate.", "claude-3-opus-20240229.description": "Claude 3 Opus è il modello più potente di Anthropic per compiti altamente complessi, eccellendo in prestazioni, intelligenza, fluidità e comprensione.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet bilancia intelligenza e velocità per carichi di lavoro aziendali, offrendo alta utilità a costi inferiori e distribuzione affidabile su larga scala.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 è il modello Haiku più veloce e intelligente di Anthropic, con velocità fulminea e pensiero esteso.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 è il modello Haiku più veloce e intelligente di Anthropic, con velocità fulminea e capacità di ragionamento estese.", "claude-haiku-4-5.description": "Claude Haiku 4.5 di Anthropic — Haiku di nuova generazione con ragionamento e visione migliorati.", "claude-haiku-4.5.description": "Claude Haiku 4.5 è il modello Haiku più veloce e intelligente di Anthropic, con velocità fulminea e capacità di ragionamento estese.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking è una variante avanzata in grado di mostrare il proprio processo di ragionamento.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 è l'ultimo e più avanzato modello di Anthropic per compiti altamente complessi, eccellendo in prestazioni, intelligenza, fluidità e comprensione.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 è il modello più recente e avanzato di Anthropic per compiti altamente complessi, eccellendo in prestazioni, intelligenza, fluidità e comprensione.", "claude-opus-4-1.description": "Claude Opus 4.1 di Anthropic — modello premium di ragionamento con capacità di analisi approfondita.", "claude-opus-4-20250514.description": "Claude Opus 4 è il modello più potente di Anthropic per compiti altamente complessi, eccellendo in prestazioni, intelligenza, fluidità e comprensione.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 è il modello di punta di Anthropic, che combina intelligenza eccezionale e prestazioni scalabili, ideale per compiti complessi che richiedono risposte e ragionamenti di altissima qualità.", @@ -330,8 +329,8 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 è il modello più intelligente di Anthropic per la creazione di agenti e la programmazione.", "claude-opus-4.6.description": "Claude Opus 4.6 è il modello più intelligente di Anthropic per la creazione di agenti e la programmazione.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking può produrre risposte quasi istantanee o riflessioni estese passo dopo passo con processo visibile.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 è il modello più intelligente di Anthropic fino ad oggi, offrendo risposte quasi istantanee o pensiero esteso passo dopo passo con controllo dettagliato per gli utenti API.", - "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 è il modello più intelligente di Anthropic fino ad oggi.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 può produrre risposte quasi istantanee o pensieri estesi passo dopo passo con un processo visibile.", + "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 è il modello più intelligente mai creato da Anthropic.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 di Anthropic — Sonnet migliorato con prestazioni di codifica avanzate.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 di Anthropic — ultimo Sonnet con codifica superiore e utilizzo di strumenti.", "claude-sonnet-4.5.description": "Claude Sonnet 4.5 è il modello più intelligente mai creato da Anthropic.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) è un modello innovativo che offre una profonda comprensione linguistica e interazione.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 è un modello di nuova generazione per il ragionamento, con capacità avanzate di ragionamento complesso e chain-of-thought per compiti di analisi approfondita.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 è un modello di ragionamento di nuova generazione con capacità avanzate di ragionamento complesso e catena di pensiero.", - "deepseek-chat.description": "Alias di compatibilità per la modalità non pensante di DeepSeek V4 Flash. Destinato alla deprecazione — utilizzare DeepSeek V4 Flash invece.", + "deepseek-chat.description": "Un nuovo modello open-source che combina capacità generali e di codifica. Preserva il dialogo generale del modello di chat e la forte capacità di codifica del modello coder, con un migliore allineamento delle preferenze. DeepSeek-V2.5 migliora anche la scrittura e il seguito delle istruzioni.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B è un modello linguistico per il codice addestrato su 2 trilioni di token (87% codice, 13% testo in cinese/inglese). Introduce una finestra di contesto da 16K e compiti di completamento intermedio, offrendo completamento di codice a livello di progetto e riempimento di snippet.", "deepseek-coder-v2.description": "DeepSeek Coder V2 è un modello MoE open-source per il codice che ottiene ottimi risultati nei compiti di programmazione, comparabile a GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 è un modello MoE open-source per il codice che ottiene ottimi risultati nei compiti di programmazione, comparabile a GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "DeepSeek R1 versione completa veloce con ricerca web in tempo reale, che combina capacità su scala 671B e risposte rapide.", "deepseek-r1-online.description": "DeepSeek R1 versione completa con 671 miliardi di parametri e ricerca web in tempo reale, che offre una comprensione e generazione più avanzate.", "deepseek-r1.description": "DeepSeek-R1 utilizza dati cold-start prima dell'RL e ottiene prestazioni comparabili a OpenAI-o1 in matematica, programmazione e ragionamento.", - "deepseek-reasoner.description": "Alias di compatibilità per la modalità pensante di DeepSeek V4 Flash. Destinato alla deprecazione — utilizzare DeepSeek V4 Flash invece.", + "deepseek-reasoner.description": "Un modello di ragionamento DeepSeek focalizzato su compiti di ragionamento logico complessi.", "deepseek-v2.description": "DeepSeek V2 è un modello MoE efficiente per un'elaborazione conveniente.", "deepseek-v2:236b.description": "DeepSeek V2 236B è il modello DeepSeek focalizzato sul codice con forte capacità di generazione.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 è un modello MoE con 671 miliardi di parametri, con punti di forza nella programmazione, capacità tecnica, comprensione del contesto e gestione di testi lunghi.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 è un modello di generazione di immagini di ByteDance Seed, che supporta input di testo e immagini con generazione di immagini di alta qualità e altamente controllabile. Genera immagini da prompt testuali.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 è l'ultimo modello multimodale di ByteDance, che integra capacità di generazione da testo a immagine, immagine a immagine e generazione di immagini in batch, incorporando anche conoscenze di senso comune e capacità di ragionamento. Rispetto alla versione precedente 4.0, offre una qualità di generazione significativamente migliorata, con una maggiore coerenza nell'editing e nella fusione di più immagini. Offre un controllo più preciso sui dettagli visivi, producendo testi e volti piccoli in modo più naturale, e raggiunge una disposizione e una colorazione più armoniose, migliorando l'estetica complessiva.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite è l'ultimo modello di generazione di immagini di ByteDance. Per la prima volta, integra capacità di recupero online, consentendo di incorporare informazioni web in tempo reale e migliorare la tempestività delle immagini generate. L'intelligenza del modello è stata inoltre aggiornata, consentendo un'interpretazione precisa di istruzioni complesse e contenuti visivi. Inoltre, offre una copertura globale della conoscenza migliorata, una maggiore coerenza di riferimento e una qualità di generazione superiore in scenari professionali, soddisfacendo meglio le esigenze di creazione visiva a livello aziendale.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 di ByteDance è il modello di generazione video più potente, supportando la generazione di video multimodali di riferimento, editing video, estensione video, testo-a-video e immagine-a-video con audio sincronizzato.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast di ByteDance offre le stesse capacità di Seedance 2.0 con velocità di generazione più rapide a un prezzo più competitivo.", "emohaa.description": "Emohaa è un modello per la salute mentale con capacità di consulenza professionale per aiutare gli utenti a comprendere le problematiche emotive.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B è un modello open-source leggero per implementazioni locali e personalizzate.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview è un modello di anteprima con finestra contestuale da 8K per la valutazione di ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking è un modello di punta nativo full-modal con modellazione unificata di testo, immagini, audio e video. Offre ampi miglioramenti nelle capacità per domande complesse, creazione e scenari con agenti.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview è un modello di punta nativo full-modal con modellazione unificata di testo, immagini, audio e video. Offre ampi miglioramenti nelle capacità per domande complesse, creazione e scenari con agenti.", "ernie-5.0.description": "ERNIE 5.0, il modello di nuova generazione della serie ERNIE, è un grande modello multimodale nativo. Adotta un approccio di modellazione multimodale unificato, modellando congiuntamente testo, immagini, audio e video per offrire capacità multimodali complete. Le sue abilità fondamentali sono state significativamente migliorate, raggiungendo prestazioni elevate nelle valutazioni di benchmark. Eccelle particolarmente nella comprensione multimodale, nel seguito delle istruzioni, nella scrittura creativa, nell'accuratezza fattuale, nella pianificazione degli agenti e nell'utilizzo degli strumenti.", + "ernie-5.1.description": "ERNIE 5.1 è l'ultimo modello della serie ERNIE, con aggiornamenti completi alle sue capacità fondamentali. Dimostra miglioramenti significativi in aree come agenti, elaborazione della conoscenza, ragionamento e ricerca approfondita. Questa versione adotta un'architettura di apprendimento per rinforzo completamente asincrona e decoupled, progettata specificamente per affrontare le sfide chiave nell'evoluzione dei modelli di grandi dimensioni verso la decisione autonoma degli agenti, inclusi discrepanze numeriche tra addestramento e inferenza, basso utilizzo delle risorse di calcolo eterogenee e problemi globali causati dagli effetti di lunga coda. Inoltre, vengono impiegate tecniche di post-addestramento su larga scala per agenti per migliorare ulteriormente le capacità e le prestazioni di generalizzazione del modello. Attraverso un framework collaborativo a tre stadi che coinvolge ambiente, esperto e processi di fusione, l'approccio non solo garantisce l'efficienza dell'addestramento ma migliora significativamente la stabilità e le prestazioni del modello su compiti complessi.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview è un’anteprima del modello per la creazione di personaggi e trame, utile per valutazioni e test di funzionalità.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K è un modello con personalità per romanzi e creazione di trame, adatto alla generazione di storie di lunga durata.", "ernie-image-turbo.description": "ERNIE-Image è un modello di testo-immagine con 8 miliardi di parametri sviluppato da Baidu. Si colloca tra i migliori in diversi benchmark, raggiungendo il primo posto ex aequo in SuperCLUE in Cina e guidando la pista open-source.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K è un modello di pensiero veloce con contesto da 32K per ragionamento complesso e chat multi-turno.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview è un’anteprima del modello di pensiero per valutazioni e test.", "ernie-x1.1.description": "ERNIE X1.1 è un'anteprima del modello di pensiero per valutazione e test.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, sviluppato dal team Seed di ByteDance, supporta l'editing e la composizione multi-immagine. Caratteristiche includono coerenza del soggetto migliorata, esecuzione precisa delle istruzioni, comprensione della logica spaziale, espressione estetica, layout di poster e design di loghi con rendering testo-immagine ad alta precisione.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, sviluppato da ByteDance Seed, supporta input di testo e immagini per una generazione di immagini altamente controllabile e di alta qualità a partire dai prompt.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 è un modello di generazione di immagini di ByteDance Seed, che supporta input di testo e immagini con generazione di immagini altamente controllabile e di alta qualità. Genera immagini a partire da prompt testuali.", "fal-ai/flux-kontext/dev.description": "FLUX.1 è un modello focalizzato sull’editing di immagini, che supporta input di testo e immagini.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] accetta testo e immagini di riferimento come input, consentendo modifiche locali mirate e trasformazioni complesse della scena globale.", "fal-ai/flux/krea.description": "Flux Krea [dev] è un modello di generazione di immagini con una preferenza estetica per immagini più realistiche e naturali.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Un potente modello nativo multimodale per la generazione di immagini.", "fal-ai/imagen4/preview.description": "Modello di generazione di immagini di alta qualità sviluppato da Google.", "fal-ai/nano-banana.description": "Nano Banana è il modello multimodale nativo più recente, veloce ed efficiente di Google, che consente la generazione e l’editing di immagini tramite conversazione.", - "fal-ai/qwen-image-edit.description": "Un modello professionale di editing immagini del team Qwen, che supporta modifiche semantiche e di aspetto, editing preciso di testo in cinese/inglese, trasferimento di stile, rotazione e altro.", - "fal-ai/qwen-image.description": "Un potente modello di generazione immagini del team Qwen con una forte resa del testo in cinese e stili visivi diversificati.", + "fal-ai/qwen-image-edit.description": "Un modello professionale di editing di immagini del team Qwen che supporta modifiche semantiche e di aspetto, modifica con precisione testo in cinese e inglese, e consente modifiche di alta qualità come trasferimento di stile e rotazione di oggetti.", + "fal-ai/qwen-image.description": "Un potente modello di generazione di immagini del team Qwen con impressionante rendering di testo in cinese e stili visivi diversificati.", "flux-1-schnell.description": "Modello testo-immagine da 12 miliardi di parametri di Black Forest Labs che utilizza la distillazione latente avversariale per generare immagini di alta qualità in 1-4 passaggi. Con licenza Apache-2.0 per uso personale, di ricerca e commerciale.", "flux-dev.description": "Modello open-source per la ricerca e sviluppo nella generazione di immagini, ottimizzato in modo efficiente per la ricerca innovativa non commerciale.", "flux-kontext-max.description": "Generazione ed editing di immagini contestuali all’avanguardia, combinando testo e immagini per risultati precisi e coerenti.", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash è il modello più intelligente progettato per la velocità, che combina intelligenza all'avanguardia con un eccellente ancoraggio alla ricerca.", "gemini-3-flash.description": "Gemini 3 Flash di Google — modello ultra-veloce con supporto per input multimodali.", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image (Nano Banana Pro) è il modello di generazione di immagini di Google che supporta anche il dialogo multimodale.", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) è il modello di generazione immagini di Google e supporta anche la chat multimodale.", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) è il modello di generazione di immagini di Google e supporta anche la chat multimodale.", "gemini-3-pro-preview.description": "Gemini 3 Pro è il modello più potente di Google per agenti e codifica creativa, offrendo visuali più ricche e interazioni più profonde grazie a un ragionamento all'avanguardia.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) è il modello di generazione di immagini nativo più veloce di Google con supporto al pensiero, generazione e modifica di immagini conversazionali.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) offre qualità di immagine di livello Pro a velocità Flash con supporto per la chat multimodale.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) è il modello di generazione di immagini nativo più veloce di Google con supporto al pensiero, generazione e modifica di immagini conversazionali.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview è il modello multimodale più economico di Google, ottimizzato per compiti agentici ad alto volume, traduzione e elaborazione dati.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite è il modello multimodale più economico di Google, ottimizzato per compiti agentici ad alto volume, traduzione e elaborazione dati.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview migliora Gemini 3 Pro con capacità di ragionamento avanzate e aggiunge supporto per un livello di pensiero medio.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Siamo entusiasti di presentare Grok 4 Fast, il nostro ultimo progresso nei modelli di ragionamento a basso costo.", "grok-4.20-0309-non-reasoning.description": "Una variante senza ragionamento per casi d'uso semplici.", "grok-4.20-0309-reasoning.description": "Modello intelligente e velocissimo che ragiona prima di rispondere.", - "grok-4.20-beta-0309-non-reasoning.description": "Una variante non pensante per casi d'uso semplici.", - "grok-4.20-beta-0309-reasoning.description": "Modello intelligente e ultra-veloce che ragiona prima di rispondere.", "grok-4.20-multi-agent-0309.description": "Un team di 4 o 16 agenti, eccelle nei casi d'uso di ricerca, non supporta attualmente strumenti client-side. Supporta solo strumenti server-side xAI (es. X Search, strumenti di ricerca web) e strumenti MCP remoti.", "grok-4.3.description": "Il modello linguistico di grandi dimensioni più orientato alla verità al mondo", "grok-4.description": "Ultimo modello di punta Grok con prestazioni ineguagliabili in linguaggio, matematica e ragionamento — un vero tuttofare. Attualmente punta a grok-4-0709; a causa di risorse limitate, il prezzo è temporaneamente superiore del 10% rispetto al prezzo ufficiale e si prevede un ritorno al prezzo ufficiale in seguito.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ è un modello di ragionamento della famiglia Qwen. Rispetto ai modelli standard ottimizzati per istruzioni, offre capacità di pensiero e ragionamento che migliorano significativamente le prestazioni nei compiti difficili. QwQ-32B è un modello di medie dimensioni che compete con i migliori modelli di ragionamento come DeepSeek-R1 e o1-mini.", "qwq_32b.description": "Modello di ragionamento di medie dimensioni della famiglia Qwen. Rispetto ai modelli standard ottimizzati per istruzioni, le capacità di pensiero e ragionamento di QwQ migliorano significativamente le prestazioni nei compiti difficili.", "r1-1776.description": "R1-1776 è una variante post-addestrata di DeepSeek R1 progettata per fornire informazioni fattuali non censurate e imparziali.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro di ByteDance supporta testo-a-video, immagine-a-video (prima immagine, prima+ultima immagine) e generazione audio sincronizzata con i visual.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite di BytePlus offre generazione aumentata da recupero web per informazioni in tempo reale, interpretazione migliorata di prompt complessi e maggiore coerenza di riferimento per la creazione visiva professionale.", "solar-mini-ja.description": "Solar Mini (Ja) estende Solar Mini con un focus sul giapponese, mantenendo prestazioni efficienti e solide in inglese e coreano.", "solar-mini.description": "Solar Mini è un LLM compatto che supera GPT-3.5, con forte capacità multilingue in inglese e coreano, offrendo una soluzione efficiente e leggera.", "solar-pro.description": "Solar Pro è un LLM ad alta intelligenza di Upstage, focalizzato sull’esecuzione di istruzioni su una singola GPU, con punteggi IFEval superiori a 80. Attualmente supporta l’inglese; il rilascio completo è previsto per novembre 2024 con supporto linguistico ampliato e contesto più lungo.", diff --git a/locales/it-IT/onboarding.json b/locales/it-IT/onboarding.json index cf915af2ae..99ddd3e6ae 100644 --- a/locales/it-IT/onboarding.json +++ b/locales/it-IT/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Salta per ora", "agent.layout.skipConfirm.title": "Saltare l’onboarding per ora?", "agent.layout.switchMessage": "Non è giornata? Puoi passare a {{mode}} oppure a {{skip}}.", + "agent.layout.switchMessageClassic": "Non ti va oggi? Puoi passare a {{mode}}.", + "agent.messenger.cta.discord": "Aggiungi a Discord", + "agent.messenger.cta.slack": "Aggiungi a Slack", + "agent.messenger.cta.telegram": "Apri in Telegram", + "agent.messenger.subtitle": "Chatta con il tuo agente su Telegram, Slack o Discord", + "agent.messenger.telegramQrCaption": "Scansiona con la fotocamera del tuo telefono", + "agent.messenger.title": "Tienimi con te, ovunque tu invii messaggi", "agent.modeSwitch.agent": "Conversazionale", "agent.modeSwitch.classic": "Classico", "agent.modeSwitch.collapse": "Comprimi", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "Salverò ciò che abbiamo coperto finora. Puoi sempre tornare e continuare la conversazione più tardi.", "agent.wrapUp.confirm.ok": "Termina ora", "agent.wrapUp.confirm.title": "Vuoi terminare l’onboarding adesso?", + "agentPicker.allCategories": "Tutti", + "agentPicker.continue": "Continua", + "agentPicker.skip": "Salta per ora", + "agentPicker.subtitle": "Aggiungine alcuni alla tua libreria ora — scopri di più in qualsiasi momento.", + "agentPicker.title": "Aggiungiamo alcuni agenti alla tua libreria", + "agentPicker.title2": "Scegli quelli che si adattano al tuo modo di lavorare", + "agentPicker.title3": "Puoi sempre aggiungerne altri in seguito — inizia con alcuni", "back": "Indietro", "finish": "Inizia", "interests.area.business": "Business e Strategia", diff --git a/locales/it-IT/plugin.json b/locales/it-IT/plugin.json index 55c2680cf9..d9ef06ad4e 100644 --- a/locales/it-IT/plugin.json +++ b/locales/it-IT/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} documenti", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} operazioni", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} operazioni", - "builtins.lobe-agent-documents.inspector.target.agent": "nell'agente", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "nell'argomento", + "builtins.lobe-agent-documents.inspector.scope.agent": "nell'agente", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "nell'argomento", "builtins.lobe-agent-documents.title": "Documenti dell'agente", "builtins.lobe-agent-management.apiName.callAgent": "Chiamare agente", "builtins.lobe-agent-management.apiName.createAgent": "Creare agente", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Agente Lobe", "builtins.lobe-claude-code.agent.instruction": "Istruzione", "builtins.lobe-claude-code.agent.result": "Risultato", + "builtins.lobe-claude-code.task.createLabel": "Creazione attività: ", + "builtins.lobe-claude-code.task.getLabel": "Ispezione attività #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "Elenco attività", + "builtins.lobe-claude-code.task.updateCompleted": "Completato", + "builtins.lobe-claude-code.task.updateDeleted": "Eliminato", + "builtins.lobe-claude-code.task.updateInProgress": "Avviato", + "builtins.lobe-claude-code.task.updateLabel": "Aggiornamento attività #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "Reimposta", "builtins.lobe-claude-code.todoWrite.allDone": "Tutte le attività completate", "builtins.lobe-claude-code.todoWrite.currentStep": "Passaggio attuale", "builtins.lobe-claude-code.todoWrite.todos": "Attività", diff --git a/locales/it-IT/providers.json b/locales/it-IT/providers.json index c586b43c52..aca1986b82 100644 --- a/locales/it-IT/providers.json +++ b/locales/it-IT/providers.json @@ -33,7 +33,6 @@ "jina.description": "Fondata nel 2020, Jina AI è un'azienda leader nell'AI per la ricerca. Il suo stack include modelli vettoriali, reranker e piccoli modelli linguistici per costruire app di ricerca generativa e multimodale affidabili e di alta qualità.", "kimicodingplan.description": "Kimi Code di Moonshot AI offre accesso ai modelli Kimi, inclusi K2.5, per attività di codifica.", "lmstudio.description": "LM Studio è un'app desktop per sviluppare e sperimentare con LLM direttamente sul tuo computer.", - "lobehub.description": "LobeHub Cloud utilizza API ufficiali per accedere ai modelli di intelligenza artificiale e misura l'utilizzo con Crediti legati ai token del modello.", "longcat.description": "LongCat è una serie di modelli AI generativi di grandi dimensioni sviluppati indipendentemente da Meituan. È progettato per migliorare la produttività interna dell'azienda e consentire applicazioni innovative attraverso un'architettura computazionale efficiente e potenti capacità multimodali.", "minimax.description": "Fondata nel 2021, MiniMax sviluppa AI generali con modelli fondamentali multimodali, inclusi modelli testuali MoE da trilioni di parametri, modelli vocali e visivi, oltre ad app come Hailuo AI.", "minimaxcodingplan.description": "Il piano di token MiniMax offre accesso ai modelli MiniMax, inclusi M2.7, per attività di codifica tramite un abbonamento a tariffa fissa.", diff --git a/locales/it-IT/subscription.json b/locales/it-IT/subscription.json index 55f325400d..cfe91f63af 100644 --- a/locales/it-IT/subscription.json +++ b/locales/it-IT/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Abilita ricarica automatica", "credits.autoTopUp.upgradeHint": "Abbonati a un piano a pagamento per abilitare la ricarica automatica", "credits.autoTopUp.validation.targetMustExceedThreshold": "Il saldo obiettivo deve essere maggiore della soglia", + "credits.costEstimateHint.desc": "Mostra un avviso leggero prima dell'invio quando il costo stimato del modello raggiunge la tua soglia", + "credits.costEstimateHint.saveError": "Impossibile salvare le impostazioni dell'avviso di stima dei costi", + "credits.costEstimateHint.saveSuccess": "Impostazioni dell'avviso di stima dei costi salvate", + "credits.costEstimateHint.threshold": "Soglia di Avviso", + "credits.costEstimateHint.title": "Avviso di Stima dei Costi", + "credits.costEstimateHint.validation.threshold": "La soglia deve essere maggiore o uguale a 0", "credits.packages.auto": "Automatico", "credits.packages.charged": "Addebitato ${{amount}}", "credits.packages.expired": "Scaduto", diff --git a/locales/it-IT/tool.json b/locales/it-IT/tool.json index 9e72963182..18bf3390eb 100644 --- a/locales/it-IT/tool.json +++ b/locales/it-IT/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Già nella libreria", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} già nella libreria", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} già nella libreria", + "claudeCode.askUserQuestion.escape.back": "Torna alle opzioni", + "claudeCode.askUserQuestion.escape.enter": "Oppure digita direttamente", + "claudeCode.askUserQuestion.escape.placeholder": "Scrivi la tua risposta qui…", + "claudeCode.askUserQuestion.multiSelectTag": "(selezione multipla)", + "claudeCode.askUserQuestion.skip": "Salta", + "claudeCode.askUserQuestion.submit": "Invia", + "claudeCode.askUserQuestion.timeExpired": "Tempo scaduto — utilizzando l'opzione 1 per ogni domanda.", + "claudeCode.askUserQuestion.timeRemaining": "Tempo rimanente: {{time}} · le domande senza risposta predefinite all'opzione 1 allo scadere del tempo.", "codeInterpreter-legacy.error": "Errore di Esecuzione", "codeInterpreter-legacy.executing": "Esecuzione in corso...", "codeInterpreter-legacy.files": "File:", diff --git a/locales/it-IT/topic.json b/locales/it-IT/topic.json index cd1b3ba3e7..8afef52f17 100644 --- a/locales/it-IT/topic.json +++ b/locales/it-IT/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Rinomina argomento", "searchPlaceholder": "Cerca Argomenti...", "searchResultEmpty": "Nessun risultato trovato.", + "sidebar.title": "Argomenti", "taskManager.agent": "Agente di attività", "taskManager.welcome": "Chiedimi dei tuoi compiti", "temp": "Temporaneo", diff --git a/locales/ja-JP/chat.json b/locales/ja-JP/chat.json index 548a2c1d05..605d71013c 100644 --- a/locales/ja-JP/chat.json +++ b/locales/ja-JP/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "アシスタントメッセージを追加", "input.addUser": "ユーザーメッセージを追加", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} クレジット/Mトークン", + "input.costEstimate.hint": "推定コスト: 約{{credits}} クレジット", + "input.costEstimate.inputLabel": "入力", + "input.costEstimate.outputLabel": "出力", + "input.costEstimate.settingsLink": "警告閾値を調整", + "input.costEstimate.tokenCount": "約{{tokens}} トークン", + "input.costEstimate.tooltip": "現在のコンテキスト、ツール、およびモデルの価格設定に基づいて推定されています。実際のコストは異なる場合があります。", "input.disclaimer": "アシスタントも間違えることがあります。重要な情報はあなたの判断を最優先してください", "input.errorMsg": "送信中に問題が発生しました:{{errorMsg}}。再試行するか、時間を置いてから送ってください", "input.more": "もっと見る", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "チャンクの準備中…", "upload.preview.status.pending": "アップロードの準備中…", "upload.preview.status.processing": "ファイル処理中…", + "upload.validation.unsupportedFileType": "サポートされていないファイルタイプ: {{files}}。サポートされている画像形式: JPG、PNG、GIF、WebP。サポートされているドキュメント形式: PDF、Word、Excel、PowerPoint、Markdown、テキスト、CSV、JSON、コードファイル。", "upload.validation.videoSizeExceeded": "ビデオファイルは 20MB を超えることはできません。現在は {{actualSize}} です", "viewMode.fullWidth": "全幅表示", "viewMode.normal": "標準", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "その他を閉じる", "workingPanel.localFile.closeRight": "右側を閉じる", "workingPanel.localFile.error": "このファイルを読み込めませんでした", + "workingPanel.localFile.preview.raw": "生データ", + "workingPanel.localFile.preview.render": "プレビュー", "workingPanel.localFile.truncated": "ファイルプレビューは{{limit}}文字に切り詰められています", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "統合ビューに切り替え", "workingPanel.review.wordWrap.disable": "ワードラップを無効化", "workingPanel.review.wordWrap.enable": "ワードラップを有効化", + "workingPanel.skills.empty": "このプロジェクトにはスキルが見つかりませんでした", + "workingPanel.skills.title": "スキル", "workingPanel.space": "スペース", "workingPanel.title": "Working Panel", "you": "あなた", diff --git a/locales/ja-JP/components.json b/locales/ja-JP/components.json index 0fdf7be26a..1ac82670f2 100644 --- a/locales/ja-JP/components.json +++ b/locales/ja-JP/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "コンテキスト長", "ModelSwitchPanel.detail.pricing": "料金", "ModelSwitchPanel.detail.pricing.cachedInput": "キャッシュ済み入力 ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "キャッシュされた入力 {{amount}} クレジット/M トークン", + "ModelSwitchPanel.detail.pricing.credits.image": "クレジット/画像", + "ModelSwitchPanel.detail.pricing.credits.input": "入力 {{amount}} クレジット/M トークン", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "クレジット/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "クレジット/M 文字", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "クレジット/M トークン", + "ModelSwitchPanel.detail.pricing.credits.output": "出力 {{amount}} クレジット/M トークン", + "ModelSwitchPanel.detail.pricing.credits.perImage": "約 {{amount}} クレジット / 画像", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "約 {{amount}} クレジット / 動画", + "ModelSwitchPanel.detail.pricing.credits.second": "クレジット/秒", "ModelSwitchPanel.detail.pricing.group.audio": "音声", "ModelSwitchPanel.detail.pricing.group.image": "画像", "ModelSwitchPanel.detail.pricing.group.text": "テキスト", diff --git a/locales/ja-JP/editor.json b/locales/ja-JP/editor.json index 1e4a0fec73..884ef0378f 100644 --- a/locales/ja-JP/editor.json +++ b/locales/ja-JP/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "コマンド", + "actionTag.category.projectSkill": "プロジェクトスキル", "actionTag.category.skill": "スキル", "actionTag.category.tool": "ツール", "actionTag.tooltip.command": "送信前にクライアント側のスラッシュコマンドを実行します。", + "actionTag.tooltip.projectSkill": "スラッシュ呼び出しとして送信され、エージェントのCLIが一致するプロジェクトスキルを実行します。", "actionTag.tooltip.skill": "このリクエスト用に再利用可能なスキルパッケージを読み込みます。", "actionTag.tooltip.tool": "このリクエストでユーザーが明示的に選択したツールを示します。", "actions.expand.off": "折りたたむ", diff --git a/locales/ja-JP/home.json b/locales/ja-JP/home.json index 53b7ba1630..281224ae3f 100644 --- a/locales/ja-JP/home.json +++ b/locales/ja-JP/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "無視する", "brief.action.retry": "再試行", "brief.addFeedback": "フィードバックを共有", + "brief.agentSignal.selfReview.applied.heading": "更新済み", + "brief.agentSignal.selfReview.applied.summary": "{{count}} 件の夢の更新が適用されました。", + "brief.agentSignal.selfReview.applied.summary_plural": "{{count}} 件の夢の更新が適用されました。", + "brief.agentSignal.selfReview.applied.title": "夢の更新されたリソース", + "brief.agentSignal.selfReview.error.heading": "問題", + "brief.agentSignal.selfReview.error.summary": "この夢の中で一部の作業を完了できませんでした。", + "brief.agentSignal.selfReview.error.title": "夢で問題が発生しました", + "brief.agentSignal.selfReview.ideas.summary": "将来のレビューのために夢のメモを保存しました。", + "brief.agentSignal.selfReview.ideas.title": "夢のメモ", + "brief.agentSignal.selfReview.proposal.heading": "提案", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} 件の夢の提案があなたのレビューを必要としています。", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} 件の夢の提案があなたのレビューを必要としています。", + "brief.agentSignal.selfReview.proposal.title": "夢の提案がレビューを必要としています", "brief.collapse": "表示を減らす", "brief.commentPlaceholder": "フィードバックを入力してください...", "brief.commentSubmit": "フィードバックを送信", diff --git a/locales/ja-JP/hotkey.json b/locales/ja-JP/hotkey.json index f9af2639c4..5a4a62058b 100644 --- a/locales/ja-JP/hotkey.json +++ b/locales/ja-JP/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "現在の入力内容をユーザーメッセージとして追加しますが、生成はトリガーしません", "addUserMessage.title": "ユーザーメッセージを追加", - "clearCurrentMessages.desc": "現在のセッションのメッセージとアップロードされたファイルをクリアする", - "clearCurrentMessages.title": "セッションメッセージをクリア", "commandPalette.desc": "グローバルコマンドパレットを開いて機能に素早くアクセス", "commandPalette.title": "コマンドパレット", "deleteAndRegenerateMessage.desc": "最後のメッセージを削除して再生成する", diff --git a/locales/ja-JP/models.json b/locales/ja-JP/models.json index a36ead92c8..2daf8d553c 100644 --- a/locales/ja-JP/models.json +++ b/locales/ja-JP/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "身体動作、物理的リアリズム、指示追従性において全面的にアップグレードされた新しいビデオ生成モデル。", "MiniMax-M1.description": "80Kの思考連鎖と1Mの入力を備えた新しい社内推論モデルで、世界トップクラスのモデルに匹敵する性能を発揮します。", "MiniMax-M2-Stable.description": "効率的なコーディングとエージェントワークフローのために設計され、商用利用における高い同時実行性を実現します。", - "MiniMax-M2.1-Lightning.description": "強力な多言語プログラミング機能を備え、より高速かつ効率的な推論を実現。", "MiniMax-M2.1-highspeed.description": "強力な多言語プログラミング機能を備え、プログラミング体験を包括的に向上。より高速かつ効率的です。", "MiniMax-M2.1.description": "MiniMax-M2.1は、MiniMaxが開発したフラッグシップのオープンソース大規模モデルで、複雑な現実世界のタスク解決に特化しています。多言語プログラミング能力とエージェントとしての高度なタスク処理能力が主な強みです。", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: M2.5と同等の性能で推論速度が向上。", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haikuは、Anthropicの最速かつ最小のモデルで、即時応答と高速かつ正確な性能を実現するよう設計されています。", "claude-3-opus-20240229.description": "Claude 3 Opusは、Anthropicの最も強力なモデルで、非常に複雑なタスクにおいて卓越した性能、知性、流暢さ、理解力を発揮します。", "claude-3-sonnet-20240229.description": "Claude 3 Sonnetは、知性と速度のバランスを取り、エンタープライズ向けのワークロードにおいて高い実用性とコスト効率、信頼性のある大規模展開を実現します。", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5はAnthropicの最速かつ最も知的なHaikuモデルで、驚異的な速度と拡張された思考能力を備えています。", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5は、Anthropicが提供する最速かつ最も賢いHaikuモデルで、驚異的なスピードと高度な推論能力を備えています。", "claude-haiku-4-5.description": "Claude Haiku 4.5 by Anthropic — 次世代Haikuモデルで、推論能力とビジョンが強化されています。", "claude-haiku-4.5.description": "Claude Haiku 4.5は、Anthropicの最速かつ最も賢いHaikuモデルで、驚異的なスピードと高度な推論能力を備えています。", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinkingは、推論プロセスを可視化できる高度なバリアントです。", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1はAnthropicの最新かつ最も高度なモデルで、非常に複雑なタスクにおいて卓越した性能、知性、流暢さ、理解力を発揮します。", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1は、Anthropicが提供する最新かつ最も高性能なモデルで、非常に複雑なタスクにおいて卓越したパフォーマンス、知性、流暢さ、理解力を発揮します。", "claude-opus-4-1.description": "Claude Opus 4.1 by Anthropic — 深い分析能力を備えたプレミアム推論モデル。", - "claude-opus-4-20250514.description": "Claude Opus 4はAnthropicの最も強力なモデルで、非常に複雑なタスクにおいて卓越した性能、知性、流暢さ、理解力を発揮します。", + "claude-opus-4-20250514.description": "Claude Opus 4は、Anthropicが提供する最も強力なモデルで、非常に複雑なタスクにおいて卓越したパフォーマンス、知性、流暢さ、理解力を発揮します。", "claude-opus-4-5-20251101.description": "Claude Opus 4.5は、Anthropicのフラッグシップモデルで、卓越した知性とスケーラブルな性能を兼ね備え、最高品質の応答と推論が求められる複雑なタスクに最適です。", "claude-opus-4-5.description": "Claude Opus 4.5 by Anthropic — 最高レベルの推論とコーディング能力を備えたフラッグシップモデル。", "claude-opus-4-6.description": "Claude Opus 4.6 by Anthropic — 1Mコンテキストウィンドウを備えたフラッグシップモデルで、高度な推論能力を提供します。", @@ -330,8 +329,8 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6は、エージェント構築やコーディングにおいてAnthropicの最も知的なモデルです。", "claude-opus-4.6.description": "Claude Opus 4.6は、エージェント構築やコーディングにおいてAnthropicの最も知的なモデルです。", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinkingは、即時応答または段階的な思考プロセスを可視化しながら出力できます。", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4はAnthropicのこれまでで最も知的なモデルで、ほぼ瞬時の応答や詳細なステップバイステップの思考を提供し、APIユーザー向けに細かい制御が可能です。", - "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5はAnthropicのこれまでで最も知的なモデルです。", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4は、瞬時の応答や、プロセスを可視化した段階的な思考を生成することができます。", + "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5は、これまでで最も知的なAnthropicのモデルです。", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 by Anthropic — コーディング性能が向上した改良版Sonnet。", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 by Anthropic — 最新のSonnetモデルで、優れたコーディングとツール使用能力を備えています。", "claude-sonnet-4.5.description": "Claude Sonnet 4.5は、これまでで最も知的なAnthropicのモデルです。", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat(67B)は、深い言語理解と対話能力を提供する革新的なモデルです。", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 は次世代の推論モデルで、複雑な推論と連想思考に優れ、深い分析タスクに対応します。", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2は次世代推論モデルで、複雑な推論と連鎖的思考能力が強化されています。", - "deepseek-chat.description": "DeepSeek V4 Flash非思考モードの互換性エイリアス。廃止予定 — DeepSeek V4 Flashを使用してください。", + "deepseek-chat.description": "一般的な対話能力とコード能力を組み合わせた新しいオープンソースモデルです。チャットモデルの一般的な対話能力と、コーダーモデルの強力なコーディング能力を保持し、より良い嗜好調整を実現しています。DeepSeek-V2.5は、文章作成や指示の追従能力も向上させています。", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B は 2T トークン(コード 87%、中英テキスト 13%)で学習されたコード言語モデルです。16K のコンテキストウィンドウと Fill-in-the-Middle タスクを導入し、プロジェクトレベルのコード補完とスニペット補完を提供します。", "deepseek-coder-v2.description": "DeepSeek Coder V2 はオープンソースの MoE コードモデルで、コーディングタスクにおいて GPT-4 Turbo に匹敵する性能を発揮します。", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 はオープンソースの MoE コードモデルで、コーディングタスクにおいて GPT-4 Turbo に匹敵する性能を発揮します。", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "DeepSeek R1 高速フルバージョンは、リアルタイムのウェブ検索を搭載し、671Bスケールの能力と高速応答を両立します。", "deepseek-r1-online.description": "DeepSeek R1 フルバージョンは、671Bパラメータとリアルタイムのウェブ検索を備え、より強力な理解と生成を提供します。", "deepseek-r1.description": "DeepSeek-R1は、強化学習前にコールドスタートデータを使用し、数学、コーディング、推論においてOpenAI-o1と同等の性能を発揮します。", - "deepseek-reasoner.description": "DeepSeek V4 Flash思考モードの互換性エイリアス。廃止予定 — DeepSeek V4 Flashを使用してください。", + "deepseek-reasoner.description": "複雑な論理的推論タスクに特化したDeepSeekの推論モデルです。", "deepseek-v2.description": "DeepSeek V2は、コスト効率の高い処理を実現する効率的なMoEモデルです。", "deepseek-v2:236b.description": "DeepSeek V2 236Bは、コード生成に特化したDeepSeekのモデルで、強力なコード生成能力を持ちます。", "deepseek-v3-0324.description": "DeepSeek-V3-0324は、671BパラメータのMoEモデルで、プログラミングや技術的能力、文脈理解、長文処理において優れた性能を発揮します。", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 は ByteDance Seed による画像生成モデルで、テキストと画像入力に対応し、高品質かつ制御性の高い画像生成を実現します。テキストプロンプトから画像を生成します。", "doubao-seedream-4-5-251128.description": "Seedream 4.5はByteDanceの最新マルチモーダル画像モデルで、テキストから画像生成、画像間変換、バッチ画像生成機能を統合し、常識と推論能力を組み込んでいます。前バージョン4.0と比較して、生成品質が大幅に向上し、編集の一貫性や複数画像の融合が改善されています。視覚的な詳細の制御がより正確になり、小さなテキストや顔を自然に生成し、レイアウトや色彩の調和が向上し、全体的な美観が強化されています。", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-liteはByteDanceの最新画像生成モデルです。初めてオンライン検索機能を統合し、リアルタイムのウェブ情報を取り入れることで生成画像のタイムリー性を向上させています。モデルの知能もアップグレードされ、複雑な指示や視覚コンテンツを正確に解釈できるようになりました。また、専門的なシナリオでのグローバルな知識カバレッジ、一貫性、生成品質が向上し、企業レベルの視覚制作ニーズにより適合しています。", - "dreamina-seedance-2-0-260128.description": "ByteDanceのSeedance 2.0は、マルチモーダル参照動画生成、動画編集、動画拡張、テキストから動画、画像から動画への同期音声付き生成をサポートする最も強力な動画生成モデルです。", - "dreamina-seedance-2-0-fast-260128.description": "ByteDanceのSeedance 2.0 Fastは、Seedance 2.0と同じ機能を提供しながら、より高速な生成速度と競争力のある価格を実現します。", "emohaa.description": "Emohaa は、専門的なカウンセリング能力を備えたメンタルヘルスモデルで、ユーザーが感情的な問題を理解するのを支援します。", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B は、ローカルおよびカスタマイズ展開に適した軽量なオープンソースモデルです。", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview は、ERNIE 4.5 の評価用に設計された 8K コンテキストプレビューモデルです。", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "文心 5.0 Thinking は、テキスト、画像、音声、動画を統合的に扱うネイティブなフルモーダルフラッグシップモデルであり、複雑な質問応答、創作、エージェントシナリオにおいて大幅な能力向上を実現します。", "ernie-5.0-thinking-preview.description": "文心 5.0 Thinking Preview は、テキスト、画像、音声、動画を統合的に扱うネイティブなフルモーダルフラッグシップモデルであり、複雑な質問応答、創作、エージェントシナリオにおいて大幅な能力向上を実現します。", "ernie-5.0.description": "ERNIE 5.0は、ERNIEシリーズの新世代モデルで、ネイティブにマルチモーダルな大規模モデルです。統一されたマルチモーダルモデリングアプローチを採用し、テキスト、画像、音声、動画を共同でモデリングして包括的なマルチモーダル能力を提供します。その基盤能力は大幅に向上し、ベンチマーク評価で優れた性能を達成しています。特にマルチモーダル理解、指示の追従、創造的な執筆、事実の正確性、エージェント計画、ツール利用において優れています。", + "ernie-5.1.description": "ERNIE 5.1は、ERNIEシリーズの最新モデルで、基盤能力に大幅なアップグレードが施されています。エージェント、知識処理、推論、深層検索などの分野で顕著な改善を示しています。このリリースでは、完全非同期型の強化学習アーキテクチャを採用し、大規模モデルの自律エージェント意思決定への進化における主要な課題(トレーニングと推論の数値的不一致、異種計算リソースの低利用率、ロングテール効果によるグローバルな問題)に対応しています。さらに、大規模エージェントのポストトレーニング技術を活用し、モデルの能力と一般化性能をさらに向上させています。環境、専門家、融合プロセスを含む三段階の協調フレームワークを通じて、このアプローチはトレーニング効率を確保するだけでなく、複雑なタスクにおけるモデルの安定性とパフォーマンスを大幅に向上させます。", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview は、キャラクターとプロットの創作に対応したモデルのプレビュー版であり、機能評価とテストに適しています。", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K は、小説やプロット創作に適した人格モデルであり、長編ストーリー生成に最適です。", "ernie-image-turbo.description": "ERNIE-Imageは、Baiduが開発した8Bパラメータのテキストから画像への生成モデルです。複数のベンチマークでトップにランクインしており、中国のSuperCLUEで同率1位を達成し、オープンソーストラックでリードしています。", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K は、複雑な推論やマルチターン対話に対応した 32K コンテキストの高速思考モデルです。", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview は、評価およびテスト用の思考モデルプレビューです。", "ernie-x1.1.description": "ERNIE X1.1は評価とテスト用の思考モデルプレビューです。", - "fal-ai/bytedance/seedream/v4.5.description": "ByteDance Seedチームが開発したSeedream 4.5は、マルチ画像編集と構成をサポートします。被写体の一貫性向上、正確な指示の追従、空間論理の理解、美的表現、ポスターのレイアウトやロゴデザイン、高精度なテキスト画像レンダリングを特徴としています。", - "fal-ai/bytedance/seedream/v4.description": "ByteDance Seedが開発したSeedream 4.0は、テキストと画像入力をサポートし、プロンプトからの高度に制御可能で高品質な画像生成を実現します。", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0は、ByteDance Seedが提供する画像生成モデルで、テキストと画像入力をサポートし、高度に制御可能で高品質な画像生成を実現します。テキストプロンプトから画像を生成します。", "fal-ai/flux-kontext/dev.description": "FLUX.1 モデルは画像編集に特化しており、テキストと画像の入力に対応しています。", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] は、テキストと参照画像を入力として受け取り、局所的な編集や複雑なシーン全体の変換を可能にします。", "fal-ai/flux/krea.description": "Flux Krea [dev] は、よりリアルで自然な画像を生成する美的バイアスを持つ画像生成モデルです。", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "強力なネイティブマルチモーダル画像生成モデルです。", "fal-ai/imagen4/preview.description": "Google による高品質な画像生成モデルです。", "fal-ai/nano-banana.description": "Nano Banana は Google による最新・最速・最も効率的なネイティブマルチモーダルモデルで、会話を通じた画像生成と編集が可能です。", - "fal-ai/qwen-image-edit.description": "Qwenチームによるプロフェッショナルな画像編集モデルで、意味的および外観の編集、正確な中国語/英語テキスト編集、スタイル変換、回転などをサポートします。", - "fal-ai/qwen-image.description": "Qwenチームによる強力な画像生成モデルで、中国語テキストのレンダリング能力が高く、多様な視覚スタイルを提供します。", + "fal-ai/qwen-image-edit.description": "Qwenチームが提供するプロフェッショナルな画像編集モデルで、意味的および外観的な編集をサポートし、中国語と英語のテキストを正確に編集します。スタイル変換やオブジェクトの回転など、高品質な編集が可能です。", + "fal-ai/qwen-image.description": "Qwenチームが提供する強力な画像生成モデルで、中国語のテキストレンダリングや多様なビジュアルスタイルに優れています。", "flux-1-schnell.description": "Black Forest Labs による 120 億パラメータのテキストから画像への変換モデルで、潜在敵対的拡散蒸留を用いて 1~4 ステップで高品質な画像を生成します。クローズドな代替モデルに匹敵し、Apache-2.0 ライセンスのもと、個人・研究・商用利用が可能です。", "flux-dev.description": "非商用の研究開発向けに効率化されたオープンソース画像生成モデルです。", "flux-kontext-max.description": "最先端のコンテキスト画像生成・編集モデルで、テキストと画像を組み合わせて精密かつ一貫性のある結果を生成します。", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash は、最先端の知能と優れた検索基盤を融合し、スピードに特化した最もスマートなモデルです。", "gemini-3-flash.description": "Gemini 3 Flash by Google — 超高速モデルでマルチモーダル入力をサポートします。", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image(Nano Banana Pro)は、Googleの画像生成モデルで、マルチモーダル対話もサポートします。", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro)はGoogleの画像生成モデルで、マルチモーダルチャットもサポートします。", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image(Nano Banana Pro)は、Googleの画像生成モデルで、マルチモーダルチャットもサポートしています。", "gemini-3-pro-preview.description": "Gemini 3 Pro は、Google による最も強力なエージェントおよびバイブコーディングモデルで、最先端の推論に加え、より豊かなビジュアルと深い対話を実現します。", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image(Nano Banana 2)は、Googleの最速のネイティブ画像生成モデルで、思考サポート、対話型画像生成および編集を提供します。", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2)は、プロレベルの画像品質をフラッシュ速度で提供し、マルチモーダルチャットをサポートします。", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image(Nano Banana 2)は、Googleの最速のネイティブ画像生成モデルで、思考サポート、会話型画像生成、編集を可能にします。", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite PreviewはGoogleの最もコスト効率の高いマルチモーダルモデルで、大量のエージェントタスク、翻訳、データ処理に最適化されています。", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-LiteはGoogleの最もコスト効率の高いマルチモーダルモデルで、大量のエージェントタスク、翻訳、データ処理に最適化されています。", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Previewは、Gemini 3 Proの推論能力を強化し、中程度の思考レベルサポートを追加しています。", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Grok 4 Fast をリリースしました。コスト効率の高い推論モデルにおける最新の進展です。", "grok-4.20-0309-non-reasoning.description": "単純なユースケース向けの非推論バリアント。", "grok-4.20-0309-reasoning.description": "応答前に推論する知的で超高速なモデル。", - "grok-4.20-beta-0309-non-reasoning.description": "シンプルなユースケース向けの非思考型バリアント", - "grok-4.20-beta-0309-reasoning.description": "応答前に推論する知的で超高速なモデル", "grok-4.20-multi-agent-0309.description": "4または16のエージェントチーム。研究ユースケースに優れています。現在、クライアントサイドツールはサポートしていません。xAIサーバーサイドツール(例:X Search、Web Searchツール)およびリモートMCPツールのみをサポートします。", "grok-4.3.description": "世界で最も真実を追求する大規模言語モデル", "grok-4.description": "最新のGrokフラッグシップモデルで、言語、数学、推論において比類のない性能を発揮する真のオールラウンダーです。現在はgrok-4-0709を指しており、リソースの制限により一時的に公式価格より10%高く設定されていますが、後に公式価格に戻る予定です。", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQは、Qwenファミリーの推論モデルです。標準的な指示調整モデルと比較して、思考と推論能力に優れ、特に難解な問題において下流性能を大幅に向上させます。QwQ-32Bは、DeepSeek-R1やo1-miniと競合する中規模の推論モデルです。", "qwq_32b.description": "Qwenファミリーの中規模推論モデル。標準的な指示調整モデルと比較して、QwQの思考と推論能力は、特に難解な問題において下流性能を大幅に向上させます。", "r1-1776.description": "R1-1776は、DeepSeek R1のポストトレーニングバリアントで、検閲のない偏りのない事実情報を提供するよう設計されています。", - "seedance-1-5-pro-251215.description": "ByteDanceのSeedance 1.5 Proは、テキストから動画、画像から動画(最初のフレーム、最初+最後のフレーム)、視覚と同期した音声生成をサポートします。", - "seedream-5-0-260128.description": "BytePlusによるByteDance-Seedream-5.0-liteは、リアルタイム情報のためのウェブ検索補強生成、複雑なプロンプト解釈の強化、プロフェッショナルな視覚制作のための参照一貫性の向上を特徴としています。", "solar-mini-ja.description": "Solar Mini (Ja)は、Solar Miniを日本語に特化させたモデルで、英語と韓国語でも効率的かつ高性能な動作を維持します。", "solar-mini.description": "Solar Miniは、GPT-3.5を上回る性能を持つコンパクトなLLMで、英語と韓国語に対応した多言語機能を備え、効率的な小型ソリューションを提供します。", "solar-pro.description": "Solar Proは、Upstageが提供する高知能LLMで、単一GPU上での指示追従に特化し、IFEvalスコア80以上を記録しています。現在は英語に対応しており、2024年11月の正式リリースでは対応言語とコンテキスト長が拡張される予定です。", diff --git a/locales/ja-JP/onboarding.json b/locales/ja-JP/onboarding.json index 3cc08ded58..e4f2730a70 100644 --- a/locales/ja-JP/onboarding.json +++ b/locales/ja-JP/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "とりあえずスキップ", "agent.layout.skipConfirm.title": "オンボーディングを今はスキップしますか?", "agent.layout.switchMessage": "今日は気分が乗らないですか?{{mode}}{{skip}}に切り替えられます。", + "agent.layout.switchMessageClassic": "今日は気分が乗らない?{{mode}}に切り替えることができます。", + "agent.messenger.cta.discord": "Discordに追加", + "agent.messenger.cta.slack": "Slackに追加", + "agent.messenger.cta.telegram": "Telegramで開く", + "agent.messenger.subtitle": "Telegram、Slack、またはDiscordでエージェントとチャット", + "agent.messenger.telegramQrCaption": "スマートフォンのカメラでスキャンしてください", + "agent.messenger.title": "どこでメッセージを送る時も、私をそばに置いてください", "agent.modeSwitch.agent": "会話モード", "agent.modeSwitch.classic": "クラシック", "agent.modeSwitch.collapse": "折りたたむ", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "ここまでの内容を保存しておきます。いつでも戻って続きを話せますよ。", "agent.wrapUp.confirm.ok": "今すぐ終了する", "agent.wrapUp.confirm.title": "オンボーディングを終了しますか?", + "agentPicker.allCategories": "すべて", + "agentPicker.continue": "続ける", + "agentPicker.skip": "今はスキップ", + "agentPicker.subtitle": "今すぐライブラリにいくつか追加しましょう — 後でいつでもさらに発見できます。", + "agentPicker.title": "ライブラリにいくつかのエージェントを追加しましょう", + "agentPicker.title2": "あなたの働き方に合ったものを選んでください", + "agentPicker.title3": "後でいつでも追加できます — まずは少しから始めましょう", "back": "前へ", "finish": "使い始める", "interests.area.business": "ビジネスと戦略", diff --git a/locales/ja-JP/plugin.json b/locales/ja-JP/plugin.json index 4aa39dee0d..21052380f4 100644 --- a/locales/ja-JP/plugin.json +++ b/locales/ja-JP/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} ドキュメント", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} 操作", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} 操作", - "builtins.lobe-agent-documents.inspector.target.agent": "エージェント内", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "トピック内", + "builtins.lobe-agent-documents.inspector.scope.agent": "エージェント内", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "トピック内", "builtins.lobe-agent-documents.title": "エージェント文書", "builtins.lobe-agent-management.apiName.callAgent": "エージェントを呼び出す", "builtins.lobe-agent-management.apiName.createAgent": "エージェントを作成する", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "ローブエージェント", "builtins.lobe-claude-code.agent.instruction": "指示", "builtins.lobe-claude-code.agent.result": "結果", + "builtins.lobe-claude-code.task.createLabel": "タスクを作成中: ", + "builtins.lobe-claude-code.task.getLabel": "タスク #{{taskId}} を確認中", + "builtins.lobe-claude-code.task.listLabel": "タスクを一覧表示", + "builtins.lobe-claude-code.task.updateCompleted": "完了", + "builtins.lobe-claude-code.task.updateDeleted": "削除済み", + "builtins.lobe-claude-code.task.updateInProgress": "開始済み", + "builtins.lobe-claude-code.task.updateLabel": "タスク #{{taskId}} を更新中", + "builtins.lobe-claude-code.task.updatePending": "リセット", "builtins.lobe-claude-code.todoWrite.allDone": "すべてのタスクが完了しました", "builtins.lobe-claude-code.todoWrite.currentStep": "現在のステップ", "builtins.lobe-claude-code.todoWrite.todos": "ToDo", diff --git a/locales/ja-JP/providers.json b/locales/ja-JP/providers.json index 2c85d1b244..f09f806600 100644 --- a/locales/ja-JP/providers.json +++ b/locales/ja-JP/providers.json @@ -33,7 +33,6 @@ "jina.description": "Jina AIは2020年に設立された検索AIのリーディングカンパニーで、ベクトルモデル、リランカー、小型言語モデルを含む検索スタックにより、高品質な生成・マルチモーダル検索アプリを構築できます。", "kimicodingplan.description": "Moonshot AIのKimi Codeは、K2.5を含むKimiモデルへのアクセスを提供します。", "lmstudio.description": "LM Studioは、ローカルPC上でLLMの開発と実験ができるデスクトップアプリです。", - "lobehub.description": "LobeHub Cloudは公式APIを使用してAIモデルにアクセスし、モデルのトークンに紐づいたクレジットで使用量を測定します。", "longcat.description": "LongCatは、Meituanが独自に開発した生成AIの大型モデルシリーズです。効率的な計算アーキテクチャと強力なマルチモーダル機能を通じて、企業内部の生産性を向上させ、革新的なアプリケーションを可能にすることを目的としています。", "minimax.description": "MiniMaxは2021年に設立され、マルチモーダル基盤モデルを用いた汎用AIを開発しています。兆単位パラメータのMoEテキストモデル、音声モデル、ビジョンモデル、Hailuo AIなどのアプリを提供します。", "minimaxcodingplan.description": "MiniMaxトークンプランは、固定料金のサブスクリプションを通じてM2.7を含むMiniMaxモデルへのアクセスを提供します。", diff --git a/locales/ja-JP/subscription.json b/locales/ja-JP/subscription.json index 11dd3d7185..ae94c7ab1b 100644 --- a/locales/ja-JP/subscription.json +++ b/locales/ja-JP/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "自動チャージを有効にする", "credits.autoTopUp.upgradeHint": "有料プランに加入して自動チャージを有効にしてください", "credits.autoTopUp.validation.targetMustExceedThreshold": "目標残高はしきい値を上回る必要があります", + "credits.costEstimateHint.desc": "推定モデルコストが設定した閾値に達したときに、送信前に軽量な警告を表示します", + "credits.costEstimateHint.saveError": "コスト見積もりアラート設定の保存に失敗しました", + "credits.costEstimateHint.saveSuccess": "コスト見積もりアラート設定が保存されました", + "credits.costEstimateHint.threshold": "警告閾値", + "credits.costEstimateHint.title": "コスト見積もりアラート", + "credits.costEstimateHint.validation.threshold": "閾値は0以上でなければなりません", "credits.packages.auto": "自動", "credits.packages.charged": "${{amount}}が請求されました", "credits.packages.expired": "期限切れ", diff --git a/locales/ja-JP/tool.json b/locales/ja-JP/tool.json index 18abf4b3af..323c964775 100644 --- a/locales/ja-JP/tool.json +++ b/locales/ja-JP/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "すでにライブラリにあります", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} 件がすでにライブラリにあります", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} 件がすでにライブラリにあります", + "claudeCode.askUserQuestion.escape.back": "オプションに戻る", + "claudeCode.askUserQuestion.escape.enter": "または直接入力してください", + "claudeCode.askUserQuestion.escape.placeholder": "ここに回答を入力してください…", + "claudeCode.askUserQuestion.multiSelectTag": "(複数選択)", + "claudeCode.askUserQuestion.skip": "スキップ", + "claudeCode.askUserQuestion.submit": "送信", + "claudeCode.askUserQuestion.timeExpired": "時間切れ — 各質問のオプション1を使用します。", + "claudeCode.askUserQuestion.timeRemaining": "残り時間: {{time}} · 未回答の質問はタイムアウト時にオプション1がデフォルトになります。", "codeInterpreter-legacy.error": "実行エラー", "codeInterpreter-legacy.executing": "実行中...", "codeInterpreter-legacy.files": "ファイル:", diff --git a/locales/ja-JP/topic.json b/locales/ja-JP/topic.json index 386af1973f..73d148d858 100644 --- a/locales/ja-JP/topic.json +++ b/locales/ja-JP/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "トピック名を変更", "searchPlaceholder": "トピックを検索...", "searchResultEmpty": "検索結果はありません", + "sidebar.title": "トピック", "taskManager.agent": "タスクエージェント", "taskManager.welcome": "タスクについて聞いてください", "temp": "一時的", diff --git a/locales/ko-KR/chat.json b/locales/ko-KR/chat.json index 659366df86..918fb6d2bb 100644 --- a/locales/ko-KR/chat.json +++ b/locales/ko-KR/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "도우미 메시지 추가", "input.addUser": "사용자 메시지 추가", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} 크레딧/M 토큰", + "input.costEstimate.hint": "예상 비용: 약 {{credits}} 크레딧", + "input.costEstimate.inputLabel": "입력", + "input.costEstimate.outputLabel": "출력", + "input.costEstimate.settingsLink": "경고 임계값 조정", + "input.costEstimate.tokenCount": "약 {{tokens}} 토큰", + "input.costEstimate.tooltip": "현재 컨텍스트, 도구 및 모델 가격을 기준으로 추정됩니다. 실제 비용은 다를 수 있습니다.", "input.disclaimer": "도우미도 실수를 할 수 있습니다. 중요한 정보는 당신의 판단을 최우선으로 하세요", "input.errorMsg": "전송 중 문제가 발생했습니다: {{errorMsg}}. 재시도하거나 나중에 다시 보내세요", "input.more": "더 보기", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "청크 준비 중…", "upload.preview.status.pending": "업로드 준비 중…", "upload.preview.status.processing": "파일 처리 중…", + "upload.validation.unsupportedFileType": "지원되지 않는 파일 형식: {{files}}. 지원되는 이미지: JPG, PNG, GIF, WebP. 지원되는 문서: PDF, Word, Excel, PowerPoint, Markdown, 텍스트, CSV, JSON 및 코드 파일.", "upload.validation.videoSizeExceeded": "비디오 파일은 20MB를 초과할 수 없습니다. 현재 {{actualSize}}입니다", "viewMode.fullWidth": "전체 너비", "viewMode.normal": "일반", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "다른 파일 닫기", "workingPanel.localFile.closeRight": "오른쪽 닫기", "workingPanel.localFile.error": "이 파일을 로드할 수 없습니다", + "workingPanel.localFile.preview.raw": "원본", + "workingPanel.localFile.preview.render": "미리보기", "workingPanel.localFile.truncated": "파일 미리보기가 {{limit}}자로 잘렸습니다", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "통합 보기로 전환", "workingPanel.review.wordWrap.disable": "자동 줄 바꿈 비활성화", "workingPanel.review.wordWrap.enable": "자동 줄 바꿈 활성화", + "workingPanel.skills.empty": "이 프로젝트에서 발견된 스킬이 없습니다", + "workingPanel.skills.title": "스킬", "workingPanel.space": "공간", "workingPanel.title": "Working Panel", "you": "당신", diff --git a/locales/ko-KR/components.json b/locales/ko-KR/components.json index a50e72eaca..0d3949399b 100644 --- a/locales/ko-KR/components.json +++ b/locales/ko-KR/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "컨텍스트 길이", "ModelSwitchPanel.detail.pricing": "요금", "ModelSwitchPanel.detail.pricing.cachedInput": "캐시된 입력 ${{amount}}/백만자", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "캐시된 입력 {{amount}} 크레딧/M 토큰", + "ModelSwitchPanel.detail.pricing.credits.image": "크레딧/이미지", + "ModelSwitchPanel.detail.pricing.credits.input": "입력 {{amount}} 크레딧/M 토큰", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "크레딧/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "크레딧/M 문자", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "크레딧/M 토큰", + "ModelSwitchPanel.detail.pricing.credits.output": "출력 {{amount}} 크레딧/M 토큰", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} 크레딧 / 이미지", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} 크레딧 / 비디오", + "ModelSwitchPanel.detail.pricing.credits.second": "크레딧/초", "ModelSwitchPanel.detail.pricing.group.audio": "오디오", "ModelSwitchPanel.detail.pricing.group.image": "이미지", "ModelSwitchPanel.detail.pricing.group.text": "텍스트", diff --git a/locales/ko-KR/editor.json b/locales/ko-KR/editor.json index f2ff849472..43b8af3e63 100644 --- a/locales/ko-KR/editor.json +++ b/locales/ko-KR/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "명령", + "actionTag.category.projectSkill": "프로젝트 스킬", "actionTag.category.skill": "스킬", "actionTag.category.tool": "도구", "actionTag.tooltip.command": "전송 전에 클라이언트 측 슬래시 명령을 실행합니다.", + "actionTag.tooltip.projectSkill": "슬래시 호출로 전송되어 에이전트의 CLI가 일치하는 프로젝트 스킬을 실행합니다.", "actionTag.tooltip.skill": "이번 요청에 사용할 재사용 가능한 스킬 패키지를 불러옵니다.", "actionTag.tooltip.tool": "이번 요청에서 사용자가 명시적으로 선택한 도구를 표시합니다.", "actions.expand.off": "접기", diff --git a/locales/ko-KR/home.json b/locales/ko-KR/home.json index e86f3b805f..8c7eadebb4 100644 --- a/locales/ko-KR/home.json +++ b/locales/ko-KR/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "무시", "brief.action.retry": "다시 시도", "brief.addFeedback": "피드백 공유", + "brief.agentSignal.selfReview.applied.heading": "업데이트됨", + "brief.agentSignal.selfReview.applied.summary": "{{count}}개의 꿈 업데이트가 적용되었습니다.", + "brief.agentSignal.selfReview.applied.summary_plural": "{{count}}개의 꿈 업데이트가 적용되었습니다.", + "brief.agentSignal.selfReview.applied.title": "꿈 업데이트된 리소스", + "brief.agentSignal.selfReview.error.heading": "문제", + "brief.agentSignal.selfReview.error.summary": "이 꿈 동안 일부 작업을 완료할 수 없었습니다.", + "brief.agentSignal.selfReview.error.title": "꿈에서 문제가 발생했습니다", + "brief.agentSignal.selfReview.ideas.summary": "미래 검토를 위한 꿈 노트를 저장했습니다.", + "brief.agentSignal.selfReview.ideas.title": "꿈 노트", + "brief.agentSignal.selfReview.proposal.heading": "제안", + "brief.agentSignal.selfReview.proposal.summary": "{{count}}개의 꿈 제안이 검토를 필요로 합니다.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}}개의 꿈 제안이 검토를 필요로 합니다.", + "brief.agentSignal.selfReview.proposal.title": "꿈 제안 검토 필요", "brief.collapse": "간략히 보기", "brief.commentPlaceholder": "피드백을 공유하세요...", "brief.commentSubmit": "피드백 제출", diff --git a/locales/ko-KR/hotkey.json b/locales/ko-KR/hotkey.json index 1891cbbdc8..7cf1359654 100644 --- a/locales/ko-KR/hotkey.json +++ b/locales/ko-KR/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "현재 입력한 내용을 사용자 메시지로 추가하지만 생성은 트리거하지 않음", "addUserMessage.title": "사용자 메시지 추가", - "clearCurrentMessages.desc": "현재 대화의 메시지와 업로드된 파일을 모두 삭제", - "clearCurrentMessages.title": "대화 메시지 지우기", "commandPalette.desc": "전역 명령 팔레트를 열어 기능에 빠르게 접근합니다", "commandPalette.title": "명령 팔레트", "deleteAndRegenerateMessage.desc": "마지막 메시지를 삭제하고 다시 생성합니다", diff --git a/locales/ko-KR/models.json b/locales/ko-KR/models.json index fa493f8f20..8e36a5d105 100644 --- a/locales/ko-KR/models.json +++ b/locales/ko-KR/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "신규 비디오 생성 모델로 신체 움직임, 물리적 사실성, 지침 준수에서 전반적인 업그레이드 제공.", "MiniMax-M1.description": "80K 체인 오브 싱킹과 100만 입력을 지원하는 새로운 자체 개발 추론 모델로, 세계 최고 수준의 모델과 유사한 성능을 제공합니다.", "MiniMax-M2-Stable.description": "상업적 사용을 위한 높은 동시성을 제공하며, 효율적인 코딩 및 에이전트 워크플로우에 최적화되어 있습니다.", - "MiniMax-M2.1-Lightning.description": "강력한 다국어 프로그래밍 기능과 더 빠르고 효율적인 추론을 제공합니다.", "MiniMax-M2.1-highspeed.description": "강력한 다국어 프로그래밍 기능과 종합적으로 업그레이드된 프로그래밍 경험. 더 빠르고 효율적입니다.", "MiniMax-M2.1.description": "MiniMax-M2.1은 MiniMax에서 개발한 대표적인 오픈소스 대형 모델로, 복잡한 실제 과제를 해결하는 데 중점을 둡니다. 다국어 프로그래밍 능력과 에이전트로서 복잡한 작업을 수행하는 능력이 핵심 강점입니다.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: M2.5와 동일한 성능을 제공하며 추론 속도가 더 빠릅니다.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku는 Anthropic의 가장 빠르고 컴팩트한 모델로, 빠르고 정확한 성능으로 즉각적인 응답을 위해 설계되었습니다.", "claude-3-opus-20240229.description": "Claude 3 Opus는 Anthropic의 가장 강력한 모델로, 고난도 작업에서 뛰어난 성능, 지능, 유창성, 이해력을 자랑합니다.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet은 엔터프라이즈 워크로드를 위한 지능과 속도의 균형을 제공하며, 낮은 비용으로 높은 효용성과 안정적인 대규모 배포를 지원합니다.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5는 Anthropic의 가장 빠르고 지능적인 Haiku 모델로, 번개 같은 속도와 확장된 사고 능력을 제공합니다.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5는 Anthropic의 가장 빠르고 스마트한 Haiku 모델로, 번개 같은 속도와 확장된 추론 능력을 자랑합니다.", "claude-haiku-4-5.description": "Anthropic의 Claude Haiku 4.5 — 향상된 추론 및 비전을 갖춘 차세대 Haiku.", "claude-haiku-4.5.description": "Claude Haiku 4.5는 Anthropic의 가장 빠르고 똑똑한 Haiku 모델로, 번개 같은 속도와 확장된 추론 능력을 자랑합니다.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking은 자신의 추론 과정을 드러낼 수 있는 고급 변형 모델입니다.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1은 Anthropic의 최신 모델로, 매우 복잡한 작업에서 뛰어난 성능, 지능, 유창함, 이해력을 자랑합니다.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1은 Anthropic의 최신 모델로, 매우 복잡한 작업에서 뛰어난 성능, 지능, 유창성, 이해력을 발휘하는 가장 강력한 모델입니다.", "claude-opus-4-1.description": "Anthropic의 Claude Opus 4.1 — 심층 분석 기능을 갖춘 프리미엄 추론 모델.", - "claude-opus-4-20250514.description": "Claude Opus 4는 Anthropic의 가장 강력한 모델로, 매우 복잡한 작업에서 뛰어난 성능, 지능, 유창함, 이해력을 자랑합니다.", + "claude-opus-4-20250514.description": "Claude Opus 4는 Anthropic의 가장 강력한 모델로, 매우 복잡한 작업에서 뛰어난 성능, 지능, 유창성, 이해력을 발휘합니다.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5는 Anthropic의 플래그십 모델로, 탁월한 지능과 확장 가능한 성능을 결합하여 최고 품질의 응답과 추론이 필요한 복잡한 작업에 이상적입니다.", "claude-opus-4-5.description": "Anthropic의 Claude Opus 4.5 — 최고 수준의 추론 및 코딩을 갖춘 플래그십 모델.", "claude-opus-4-6.description": "Anthropic의 Claude Opus 4.6 — 고급 추론을 갖춘 1M 컨텍스트 윈도우 플래그십.", @@ -330,8 +329,8 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6은 에이전트 구축과 코딩을 위한 Anthropic의 가장 지능적인 모델입니다.", "claude-opus-4.6.description": "Claude Opus 4.6은 에이전트 구축과 코딩을 위한 Anthropic의 가장 지능적인 모델입니다.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking은 즉각적인 응답 또는 단계별 사고 과정을 시각적으로 보여주는 확장된 사고를 생성할 수 있습니다.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4는 Anthropic의 가장 지능적인 모델로, API 사용자에게 세밀한 제어를 제공하며 즉각적인 응답 또는 단계별 사고를 지원합니다.", - "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5는 Anthropic의 가장 지능적인 모델입니다.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4는 즉각적인 응답을 생성하거나 가시적인 과정을 통해 단계별 사고를 확장할 수 있습니다.", + "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5는 현재까지 Anthropic의 가장 지능적인 모델입니다.", "claude-sonnet-4-5.description": "Anthropic의 Claude Sonnet 4.5 — 향상된 코딩 성능을 갖춘 개선된 Sonnet.", "claude-sonnet-4-6.description": "Anthropic의 Claude Sonnet 4.6 — 우수한 코딩 및 도구 사용을 갖춘 최신 Sonnet.", "claude-sonnet-4.5.description": "Claude Sonnet 4.5는 지금까지의 Anthropic 모델 중 가장 지능적인 모델입니다.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B)은 심층 언어 이해와 상호작용을 제공하는 혁신적인 모델입니다.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1은 복잡한 추론과 연쇄적 사고(chain-of-thought)에 강한 차세대 추론 모델로, 심층 분석 작업에 적합합니다.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2는 복잡한 추론과 연쇄 사고 능력이 강화된 차세대 추론 모델입니다.", - "deepseek-chat.description": "DeepSeek V4 Flash 비사고 모드의 호환성 별칭입니다. 사용 중단 예정 — DeepSeek V4 Flash를 대신 사용하세요.", + "deepseek-chat.description": "일반 대화 능력과 코딩 능력을 결합한 새로운 오픈소스 모델입니다. 이 모델은 대화 모델의 일반적인 대화 능력과 코더 모델의 강력한 코딩 능력을 유지하며, 더 나은 선호도 정렬을 제공합니다. DeepSeek-V2.5는 또한 글쓰기와 지시 따르기 능력을 향상시켰습니다.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B는 2T 토큰(코드 87%, 중/영문 텍스트 13%)으로 학습된 코드 언어 모델입니다. 16K 문맥 창과 중간 채우기(fit-in-the-middle) 작업을 도입하여 프로젝트 수준의 코드 완성과 코드 조각 보완을 지원합니다.", "deepseek-coder-v2.description": "DeepSeek Coder V2는 GPT-4 Turbo에 필적하는 성능을 보이는 오픈소스 MoE 코드 모델입니다.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2는 GPT-4 Turbo에 필적하는 성능을 보이는 오픈소스 MoE 코드 모델입니다.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "DeepSeek R1의 빠른 전체 버전으로, 실시간 웹 검색을 지원하며 671B 규모의 성능과 빠른 응답을 결합합니다.", "deepseek-r1-online.description": "DeepSeek R1 전체 버전은 671B 파라미터와 실시간 웹 검색을 지원하여 더 강력한 이해 및 생성 능력을 제공합니다.", "deepseek-r1.description": "DeepSeek-R1은 강화 학습 전 콜드 스타트 데이터를 사용하며, 수학, 코딩, 추론에서 OpenAI-o1과 유사한 성능을 보입니다.", - "deepseek-reasoner.description": "DeepSeek V4 Flash 사고 모드의 호환성 별칭입니다. 사용 중단 예정 — DeepSeek V4 Flash를 대신 사용하세요.", + "deepseek-reasoner.description": "복잡한 논리적 추론 작업에 중점을 둔 DeepSeek 추론 모델입니다.", "deepseek-v2.description": "DeepSeek V2는 비용 효율적인 처리를 위한 고효율 MoE 모델입니다.", "deepseek-v2:236b.description": "DeepSeek V2 236B는 코드 생성에 강점을 가진 DeepSeek의 코드 특화 모델입니다.", "deepseek-v3-0324.description": "DeepSeek-V3-0324는 671B 파라미터의 MoE 모델로, 프로그래밍 및 기술 역량, 문맥 이해, 장문 처리에서 뛰어난 성능을 보입니다.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0은 ByteDance Seed의 이미지 생성 모델로, 텍스트 및 이미지 입력을 지원하며, 고품질의 이미지 생성과 높은 제어력을 제공합니다. 텍스트 프롬프트로부터 이미지를 생성합니다.", "doubao-seedream-4-5-251128.description": "Seedream 4.5는 ByteDance의 최신 멀티모달 이미지 모델로, 텍스트-이미지, 이미지-이미지, 배치 이미지 생성 기능을 통합하며 상식과 추론 능력을 포함합니다. 이전 4.0 버전에 비해 생성 품질이 크게 향상되었으며, 편집 일관성과 다중 이미지 융합이 개선되었습니다. 시각적 세부 사항에 대한 더 정밀한 제어를 제공하며, 작은 텍스트와 작은 얼굴을 더 자연스럽게 생성하고 레이아웃과 색상이 더 조화롭게 되어 전체적인 미학을 향상시킵니다.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite는 ByteDance의 최신 이미지 생성 모델로, 처음으로 온라인 검색 기능을 통합하여 실시간 웹 정보를 포함하고 생성된 이미지의 시의성을 향상시킵니다. 모델의 지능도 업그레이드되어 복잡한 지시와 시각적 콘텐츠를 정확히 해석할 수 있습니다. 또한 전문적인 시나리오에서 글로벌 지식 범위, 참조 일관성, 생성 품질이 개선되어 기업 수준의 시각적 창작 요구를 더 잘 충족시킵니다.", - "dreamina-seedance-2-0-260128.description": "ByteDance의 Seedance 2.0은 가장 강력한 비디오 생성 모델로, 다중 모달 참조 비디오 생성, 비디오 편집, 비디오 확장, 텍스트-비디오 및 이미지-비디오를 동기화된 오디오와 함께 지원합니다.", - "dreamina-seedance-2-0-fast-260128.description": "ByteDance의 Seedance 2.0 Fast는 Seedance 2.0과 동일한 기능을 제공하며, 더 빠른 생성 속도와 경쟁력 있는 가격을 자랑합니다.", "emohaa.description": "Emohaa는 전문 상담 능력을 갖춘 정신 건강 모델로, 사용자가 감정 문제를 이해하도록 돕습니다.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B는 로컬 및 맞춤형 배포를 위한 오픈소스 경량 모델입니다.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview는 ERNIE 4.5의 8K 컨텍스트 프리뷰 모델로, 평가용으로 사용됩니다.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking은 텍스트, 이미지, 오디오, 비디오를 통합 모델링하는 네이티브 풀모달 플래그십 모델로, 복잡한 질의응답, 창작, 에이전트 시나리오에서 전반적인 성능을 대폭 향상시킵니다.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview는 텍스트, 이미지, 오디오, 비디오를 통합 모델링하는 네이티브 풀모달 플래그십 모델로, 복잡한 질의응답, 창작, 에이전트 시나리오에서 전반적인 성능을 대폭 향상시킵니다.", "ernie-5.0.description": "ERNIE 5.0은 ERNIE 시리즈의 차세대 모델로, 본질적으로 멀티모달 대형 모델입니다. 텍스트, 이미지, 오디오 및 비디오를 공동으로 모델링하는 통합 멀티모달 모델링 접근 방식을 채택하여 포괄적인 멀티모달 능력을 제공합니다. 기본 능력이 크게 업그레이드되어 벤치마크 평가에서 강력한 성능을 달성했습니다. 특히 멀티모달 이해, 명령 따르기, 창의적 글쓰기, 사실 정확성, 에이전트 계획 및 도구 활용에서 뛰어납니다.", + "ernie-5.1.description": "ERNIE 5.1은 ERNIE 시리즈의 최신 모델로, 기본 기능에 대한 포괄적인 업그레이드를 제공합니다. 에이전트, 지식 처리, 추론, 심층 검색 등 여러 분야에서 상당한 개선을 보여줍니다. 이 릴리스는 대규모 모델이 자율 에이전트 의사결정으로 진화하는 과정에서 발생하는 주요 문제를 해결하기 위해 비동기 강화 학습 아키텍처를 채택했습니다. 여기에는 훈련-추론 간 수치 불일치, 이기종 컴퓨팅 자원의 낮은 활용도, 롱테일 효과로 인한 글로벌 문제 등이 포함됩니다. 또한 대규모 에이전트 후속 훈련 기술을 활용하여 모델의 기능과 일반화 성능을 더욱 강화했습니다. 환경, 전문가, 융합 프로세스를 포함한 3단계 협업 프레임워크를 통해 훈련 효율성을 보장할 뿐만 아니라 복잡한 작업에서 모델의 안정성과 성능을 크게 향상시켰습니다.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview는 캐릭터 및 스토리 창작 기능을 평가하고 테스트하기 위한 프리뷰 모델입니다.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K는 장편 소설 및 스토리 창작에 적합한 페르소나 모델로, 다채로운 이야기 생성에 최적화되어 있습니다.", "ernie-image-turbo.description": "ERNIE-Image는 Baidu에서 개발한 8B-파라미터 텍스트-이미지 모델입니다. 여러 벤치마크에서 상위권에 랭크되며, 중국의 SuperCLUE에서 공동 1위를 차지하고 오픈소스 트랙에서 선두를 달리고 있습니다.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K는 복잡한 추론 및 다중 턴 대화를 위한 32K 컨텍스트의 고속 사고 모델입니다.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview는 평가 및 테스트를 위한 사고 모델 프리뷰입니다.", "ernie-x1.1.description": "ERNIE X1.1은 평가 및 테스트를 위한 사고 모델 프리뷰입니다.", - "fal-ai/bytedance/seedream/v4.5.description": "ByteDance Seed 팀이 개발한 Seedream 4.5는 다중 이미지 편집 및 합성을 지원하며, 향상된 주제 일관성, 정확한 지시 따르기, 공간 논리 이해, 미적 표현, 포스터 레이아웃 및 로고 디자인을 고정밀 텍스트-이미지 렌더링과 함께 제공합니다.", - "fal-ai/bytedance/seedream/v4.description": "ByteDance Seed가 개발한 Seedream 4.0은 텍스트 및 이미지 입력을 지원하며, 프롬프트를 기반으로 고품질 이미지를 생성할 수 있는 높은 제어력을 제공합니다.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0은 ByteDance Seed의 이미지 생성 모델로, 텍스트와 이미지 입력을 지원하며 고도로 제어 가능하고 고품질의 이미지를 생성합니다. 텍스트 프롬프트를 기반으로 이미지를 생성합니다.", "fal-ai/flux-kontext/dev.description": "FLUX.1 모델은 이미지 편집에 중점을 두며, 텍스트와 이미지 입력을 지원합니다.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro]는 텍스트와 참조 이미지를 입력으로 받아, 국소 편집과 복잡한 장면 변환을 정밀하게 수행할 수 있습니다.", "fal-ai/flux/krea.description": "Flux Krea [dev]는 보다 사실적이고 자연스러운 이미지 스타일에 중점을 둔 이미지 생성 모델입니다.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "강력한 네이티브 멀티모달 이미지 생성 모델입니다.", "fal-ai/imagen4/preview.description": "Google에서 개발한 고품질 이미지 생성 모델입니다.", "fal-ai/nano-banana.description": "Nano Banana는 Google의 최신, 가장 빠르고 효율적인 네이티브 멀티모달 모델로, 대화형 이미지 생성 및 편집을 지원합니다.", - "fal-ai/qwen-image-edit.description": "Qwen 팀의 전문 이미지 편집 모델로, 의미 및 외형 편집, 정확한 중국어/영어 텍스트 편집, 스타일 전환, 회전 등을 지원합니다.", - "fal-ai/qwen-image.description": "Qwen 팀의 강력한 이미지 생성 모델로, 뛰어난 중국어 텍스트 렌더링과 다양한 시각적 스타일을 제공합니다.", + "fal-ai/qwen-image-edit.description": "Qwen 팀의 전문 이미지 편집 모델로, 의미와 외형 편집을 지원하며, 중국어와 영어 텍스트를 정밀하게 편집하고 스타일 전환, 객체 회전과 같은 고품질 편집을 가능하게 합니다.", + "fal-ai/qwen-image.description": "Qwen 팀의 강력한 이미지 생성 모델로, 중국어 텍스트 렌더링과 다양한 시각적 스타일에서 뛰어난 성능을 발휘합니다.", "flux-1-schnell.description": "Black Forest Labs에서 개발한 120억 파라미터 텍스트-이미지 모델로, 잠재 적대 확산 증류를 사용하여 1~4단계 내에 고품질 이미지를 생성합니다. Apache-2.0 라이선스로 개인, 연구, 상업적 사용이 가능합니다.", "flux-dev.description": "비상업적 혁신 연구를 위해 효율적으로 최적화된 오픈소스 R&D 이미지 생성 모델입니다.", "flux-kontext-max.description": "최첨단 문맥 기반 이미지 생성 및 편집 모델로, 텍스트와 이미지를 결합하여 정밀하고 일관된 결과를 생성합니다.", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash는 속도를 위해 설계된 가장 스마트한 모델로, 최첨단 지능과 뛰어난 검색 기반을 결합합니다.", "gemini-3-flash.description": "Google의 Gemini 3 Flash — 멀티모달 입력 지원을 갖춘 초고속 모델.", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image (Nano Banana Pro)는 구글의 이미지 생성 모델로, 멀티모달 대화도 지원합니다.", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro)는 Google의 이미지 생성 모델로, 다중 모달 채팅도 지원합니다.", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro)는 Google의 이미지 생성 모델로, 멀티모달 대화도 지원합니다.", "gemini-3-pro-preview.description": "Gemini 3 Pro는 Google의 가장 강력한 에이전트 및 바이브 코딩 모델로, 최첨단 추론 위에 풍부한 시각적 표현과 깊은 상호작용을 제공합니다.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2)는 구글의 가장 빠른 네이티브 이미지 생성 모델로, 사고 지원, 대화형 이미지 생성 및 편집을 제공합니다.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2)는 Flash 속도로 Pro 수준의 이미지 품질을 제공하며, 다중 모달 채팅을 지원합니다.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2)는 Google의 가장 빠른 네이티브 이미지 생성 모델로, 사고 지원, 대화형 이미지 생성 및 편집을 제공합니다.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview는 Google의 가장 비용 효율적인 다중 모드 모델로, 대량 에이전트 작업, 번역 및 데이터 처리에 최적화되어 있습니다.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite는 Google의 가장 비용 효율적인 멀티모달 모델로, 대량 에이전트 작업, 번역 및 데이터 처리에 최적화되어 있습니다.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview는 Gemini 3 Pro의 추론 능력을 강화하고 중간 사고 수준 지원을 추가합니다.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Grok 4 Fast는 비용 효율적인 추론 모델 분야에서의 최신 성과로, 출시를 기쁘게 생각합니다.", "grok-4.20-0309-non-reasoning.description": "간단한 사용 사례를 위한 비추론 변형", "grok-4.20-0309-reasoning.description": "응답 전에 추론하는 지능적이고 매우 빠른 모델", - "grok-4.20-beta-0309-non-reasoning.description": "간단한 사용 사례를 위한 비사고 변형 모델입니다.", - "grok-4.20-beta-0309-reasoning.description": "응답 전에 사고하는 지능적이고 매우 빠른 모델입니다.", "grok-4.20-multi-agent-0309.description": "4명 또는 16명의 에이전트 팀, 연구 사용 사례에서 뛰어남, 현재 클라이언트 측 도구를 지원하지 않음. xAI 서버 측 도구(예: X Search, Web Search 도구) 및 원격 MCP 도구만 지원.", "grok-4.3.description": "세계에서 가장 진실을 추구하는 대규모 언어 모델", "grok-4.description": "언어, 수학, 추론에서 타의 추종을 불허하는 성능을 자랑하는 최신 Grok 플래그십 모델 — 진정한 만능 모델입니다. 현재 grok-4-0709를 가리키며, 제한된 자원으로 인해 공식 가격보다 임시로 10% 높게 책정되었으며, 이후 공식 가격으로 복귀할 예정입니다.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ는 Qwen 계열의 추론 모델입니다. 일반적인 지시 조정 모델과 비교해 사고 및 추론 능력이 뛰어나며, 특히 어려운 문제에서 다운스트림 성능을 크게 향상시킵니다. QwQ-32B는 DeepSeek-R1 및 o1-mini와 경쟁할 수 있는 중형 추론 모델입니다.", "qwq_32b.description": "Qwen 계열의 중형 추론 모델입니다. 일반적인 지시 조정 모델과 비교해 QwQ의 사고 및 추론 능력은 특히 어려운 문제에서 다운스트림 성능을 크게 향상시킵니다.", "r1-1776.description": "R1-1776은 DeepSeek R1의 후속 학습 버전으로, 검열되지 않고 편향 없는 사실 정보를 제공합니다.", - "seedance-1-5-pro-251215.description": "ByteDance의 Seedance 1.5 Pro는 텍스트-비디오, 이미지-비디오(첫 프레임, 첫+마지막 프레임) 및 시각과 동기화된 오디오 생성을 지원합니다.", - "seedream-5-0-260128.description": "BytePlus의 ByteDance-Seedream-5.0-lite는 실시간 정보를 위한 웹 검색 기반 생성, 복잡한 프롬프트 해석 향상, 전문적인 시각적 창작을 위한 참조 일관성 개선을 제공합니다.", "solar-mini-ja.description": "Solar Mini (Ja)는 Solar Mini의 일본어 특화 버전으로, 영어와 한국어에서도 효율적이고 강력한 성능을 유지합니다.", "solar-mini.description": "Solar Mini는 GPT-3.5를 능가하는 성능을 가진 소형 LLM으로, 영어와 한국어를 지원하는 강력한 다국어 기능을 갖추고 있으며, 효율적인 경량 솔루션을 제공합니다.", "solar-pro.description": "Solar Pro는 Upstage의 고지능 LLM으로, 단일 GPU에서 지시 수행에 최적화되어 있으며, IFEval 점수 80 이상을 기록합니다. 현재는 영어를 지원하며, 2024년 11월 전체 릴리스 시 더 많은 언어와 긴 컨텍스트를 지원할 예정입니다.", diff --git a/locales/ko-KR/onboarding.json b/locales/ko-KR/onboarding.json index 6be93ec119..45de880767 100644 --- a/locales/ko-KR/onboarding.json +++ b/locales/ko-KR/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "일단 건너뛰기", "agent.layout.skipConfirm.title": "지금 온보딩을 건너뛰시겠어요?", "agent.layout.switchMessage": "오늘은 기분이 아니신가요? {{mode}}로 전환하거나 {{skip}}하실 수 있어요.", + "agent.layout.switchMessageClassic": "오늘은 별로인가요? {{mode}}로 전환할 수 있습니다.", + "agent.messenger.cta.discord": "Discord에 추가", + "agent.messenger.cta.slack": "Slack에 추가", + "agent.messenger.cta.telegram": "Telegram에서 열기", + "agent.messenger.subtitle": "Telegram, Slack, 또는 Discord에서 에이전트와 채팅하세요", + "agent.messenger.telegramQrCaption": "휴대폰 카메라로 스캔하세요", + "agent.messenger.title": "어디서든 메시지로 저와 함께하세요", "agent.modeSwitch.agent": "대화형", "agent.modeSwitch.classic": "클래식", "agent.modeSwitch.collapse": "축소", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "지금까지의 내용을 저장할게요. 언제든 다시 와서 계속 이야기할 수 있어요.", "agent.wrapUp.confirm.ok": "지금 마치기", "agent.wrapUp.confirm.title": "온보딩을 지금 마칠까요?", + "agentPicker.allCategories": "전체", + "agentPicker.continue": "계속하기", + "agentPicker.skip": "지금은 건너뛰기", + "agentPicker.subtitle": "지금 몇 가지를 라이브러리에 추가하세요 — 나중에 언제든 더 발견할 수 있습니다.", + "agentPicker.title": "라이브러리에 몇 가지 에이전트를 추가해봅시다", + "agentPicker.title2": "당신의 작업 방식에 맞는 것을 선택하세요", + "agentPicker.title3": "언제든 더 추가할 수 있습니다 — 우선 몇 가지로 시작해보세요", "back": "이전 단계", "finish": "시작하기", "interests.area.business": "비즈니스 및 전략", diff --git a/locales/ko-KR/plugin.json b/locales/ko-KR/plugin.json index c1759a1fb5..ec2698ec6b 100644 --- a/locales/ko-KR/plugin.json +++ b/locales/ko-KR/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} 문서", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} 작업", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} 작업", - "builtins.lobe-agent-documents.inspector.target.agent": "에이전트에서", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "주제에서", + "builtins.lobe-agent-documents.inspector.scope.agent": "에이전트에서", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "주제에서", "builtins.lobe-agent-documents.title": "에이전트 문서", "builtins.lobe-agent-management.apiName.callAgent": "통화 에이전트", "builtins.lobe-agent-management.apiName.createAgent": "에이전트 생성", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "로브 에이전트", "builtins.lobe-claude-code.agent.instruction": "지시사항", "builtins.lobe-claude-code.agent.result": "결과", + "builtins.lobe-claude-code.task.createLabel": "작업 생성: ", + "builtins.lobe-claude-code.task.getLabel": "작업 #{{taskId}} 검사 중", + "builtins.lobe-claude-code.task.listLabel": "작업 목록", + "builtins.lobe-claude-code.task.updateCompleted": "완료됨", + "builtins.lobe-claude-code.task.updateDeleted": "삭제됨", + "builtins.lobe-claude-code.task.updateInProgress": "시작됨", + "builtins.lobe-claude-code.task.updateLabel": "작업 #{{taskId}} 업데이트 중", + "builtins.lobe-claude-code.task.updatePending": "초기화", "builtins.lobe-claude-code.todoWrite.allDone": "모든 작업이 완료되었습니다", "builtins.lobe-claude-code.todoWrite.currentStep": "현재 단계", "builtins.lobe-claude-code.todoWrite.todos": "할 일", diff --git a/locales/ko-KR/providers.json b/locales/ko-KR/providers.json index 1e05daa79e..08f8678375 100644 --- a/locales/ko-KR/providers.json +++ b/locales/ko-KR/providers.json @@ -33,7 +33,6 @@ "jina.description": "2020년에 설립된 Jina AI는 선도적인 검색 AI 기업으로, 벡터 모델, 재정렬기, 소형 언어 모델을 포함한 검색 스택을 통해 신뢰성 높고 고품질의 생성형 및 멀티모달 검색 앱을 구축합니다.", "kimicodingplan.description": "문샷 AI의 Kimi Code는 K2.5를 포함한 Kimi 모델에 접근하여 코딩 작업을 수행할 수 있습니다.", "lmstudio.description": "LM Studio는 데스크탑에서 LLM을 개발하고 실험할 수 있는 애플리케이션입니다.", - "lobehub.description": "LobeHub Cloud는 공식 API를 사용하여 AI 모델에 접근하며, 모델 토큰에 연동된 크레딧으로 사용량을 측정합니다.", "longcat.description": "LongCat은 Meituan에서 독자적으로 개발한 생성형 AI 대형 모델 시리즈입니다. 이는 효율적인 계산 아키텍처와 강력한 멀티모달 기능을 통해 내부 기업 생산성을 향상시키고 혁신적인 애플리케이션을 가능하게 하기 위해 설계되었습니다.", "minimax.description": "2021년에 설립된 MiniMax는 텍스트, 음성, 비전 등 멀티모달 기반의 범용 AI를 개발하며, 조 단위 파라미터의 MoE 텍스트 모델과 Hailuo AI와 같은 앱을 제공합니다.", "minimaxcodingplan.description": "MiniMax 토큰 플랜은 고정 요금 구독을 통해 M2.7을 포함한 MiniMax 모델에 접근하여 코딩 작업을 수행할 수 있습니다.", diff --git a/locales/ko-KR/subscription.json b/locales/ko-KR/subscription.json index ecb9e075e8..50d5e8247c 100644 --- a/locales/ko-KR/subscription.json +++ b/locales/ko-KR/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "자동 충전 활성화", "credits.autoTopUp.upgradeHint": "유료 플랜을 구독하여 자동 충전을 활성화하세요", "credits.autoTopUp.validation.targetMustExceedThreshold": "목표 잔액은 임계값보다 커야 합니다", + "credits.costEstimateHint.desc": "예상 모델 비용이 설정한 임계값에 도달하면 전송 전에 경고를 표시합니다", + "credits.costEstimateHint.saveError": "비용 추정 경고 설정 저장에 실패했습니다", + "credits.costEstimateHint.saveSuccess": "비용 추정 경고 설정이 저장되었습니다", + "credits.costEstimateHint.threshold": "경고 임계값", + "credits.costEstimateHint.title": "비용 추정 경고", + "credits.costEstimateHint.validation.threshold": "임계값은 0 이상이어야 합니다", "credits.packages.auto": "자동", "credits.packages.charged": "${{amount}} 청구됨", "credits.packages.expired": "만료됨", diff --git a/locales/ko-KR/tool.json b/locales/ko-KR/tool.json index d0729b3b78..694401feca 100644 --- a/locales/ko-KR/tool.json +++ b/locales/ko-KR/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "이미 라이브러리에 있음", "agentMarketplace.render.alreadyInLibrary_one": "{{count}}개가 이미 라이브러리에 있음", "agentMarketplace.render.alreadyInLibrary_other": "{{count}}개가 이미 라이브러리에 있음", + "claudeCode.askUserQuestion.escape.back": "옵션으로 돌아가기", + "claudeCode.askUserQuestion.escape.enter": "직접 입력하세요", + "claudeCode.askUserQuestion.escape.placeholder": "여기에 답변을 입력하세요…", + "claudeCode.askUserQuestion.multiSelectTag": "(다중 선택)", + "claudeCode.askUserQuestion.skip": "건너뛰기", + "claudeCode.askUserQuestion.submit": "제출", + "claudeCode.askUserQuestion.timeExpired": "시간 초과 — 각 질문의 옵션 1을 사용합니다.", + "claudeCode.askUserQuestion.timeRemaining": "남은 시간: {{time}} · 시간 초과 시 답변되지 않은 질문은 옵션 1로 기본 설정됩니다.", "codeInterpreter-legacy.error": "실행 오류", "codeInterpreter-legacy.executing": "실행 중...", "codeInterpreter-legacy.files": "파일:", diff --git a/locales/ko-KR/topic.json b/locales/ko-KR/topic.json index fd19dfa124..b673300784 100644 --- a/locales/ko-KR/topic.json +++ b/locales/ko-KR/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "토픽 이름 변경", "searchPlaceholder": "주제 검색...", "searchResultEmpty": "검색 결과가 없습니다.", + "sidebar.title": "주제", "taskManager.agent": "작업 에이전트", "taskManager.welcome": "작업에 대해 물어보세요", "temp": "임시", diff --git a/locales/nl-NL/chat.json b/locales/nl-NL/chat.json index d333feaff7..cd80c28214 100644 --- a/locales/nl-NL/chat.json +++ b/locales/nl-NL/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "AI-bericht toevoegen", "input.addUser": "Gebruikersbericht toevoegen", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} credits/M tokens", + "input.costEstimate.hint": "Geschatte kosten: ~{{credits}} credits", + "input.costEstimate.inputLabel": "Invoer", + "input.costEstimate.outputLabel": "Uitvoer", + "input.costEstimate.settingsLink": "Waarschuwingsdrempel aanpassen", + "input.costEstimate.tokenCount": "~{{tokens}} tokens", + "input.costEstimate.tooltip": "Geschat op basis van de huidige context, tools en modelprijzen. Werkelijke kosten kunnen variëren.", "input.disclaimer": "Agents kunnen fouten maken. Gebruik je eigen oordeel bij belangrijke informatie.", "input.errorMsg": "Verzenden mislukt: {{errorMsg}}. Probeer opnieuw of later nog eens.", "input.more": "Meer", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Delen voorbereiden...", "upload.preview.status.pending": "Voorbereiden op upload...", "upload.preview.status.processing": "Bestand verwerken...", + "upload.validation.unsupportedFileType": "Niet-ondersteund bestandstype: {{files}}. Ondersteunde afbeeldingen: JPG, PNG, GIF, WebP. Ondersteunde documenten zijn onder andere PDF, Word, Excel, PowerPoint, Markdown, tekst, CSV, JSON en codebestanden.", "upload.validation.videoSizeExceeded": "De bestandsgrootte van de video mag niet groter zijn dan 20MB. Huidige grootte is {{actualSize}}.", "viewMode.fullWidth": "Volledige breedte", "viewMode.normal": "Standaard", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Overige Sluiten", "workingPanel.localFile.closeRight": "Sluiten aan de Rechterkant", "workingPanel.localFile.error": "Kon dit bestand niet laden", + "workingPanel.localFile.preview.raw": "Ruw", + "workingPanel.localFile.preview.render": "Voorbeeld", "workingPanel.localFile.truncated": "Bestandsvoorbeeld ingekort tot {{limit}} tekens", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Schakel over naar uniforme weergave", "workingPanel.review.wordWrap.disable": "Tekstterugloop uitschakelen", "workingPanel.review.wordWrap.enable": "Tekstterugloop inschakelen", + "workingPanel.skills.empty": "Geen vaardigheden gevonden in dit project", + "workingPanel.skills.title": "Vaardigheden", "workingPanel.space": "Ruimte", "workingPanel.title": "Working Panel", "you": "Jij", diff --git a/locales/nl-NL/components.json b/locales/nl-NL/components.json index 9f49534643..f7a8477913 100644 --- a/locales/nl-NL/components.json +++ b/locales/nl-NL/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Contextlengte", "ModelSwitchPanel.detail.pricing": "Prijzen", "ModelSwitchPanel.detail.pricing.cachedInput": "Ingevoerde cache ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Gecachte invoer {{amount}} credits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.image": "credits/afbeelding", + "ModelSwitchPanel.detail.pricing.credits.input": "Invoer {{amount}} credits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "credits/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "credits/M tekens", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "credits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.output": "Uitvoer {{amount}} credits/M tokens", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} credits / afbeelding", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} credits / video", + "ModelSwitchPanel.detail.pricing.credits.second": "credits/s", "ModelSwitchPanel.detail.pricing.group.audio": "Audio", "ModelSwitchPanel.detail.pricing.group.image": "Afbeelding", "ModelSwitchPanel.detail.pricing.group.text": "Tekst", diff --git a/locales/nl-NL/editor.json b/locales/nl-NL/editor.json index 021ac74b28..5b736f5b23 100644 --- a/locales/nl-NL/editor.json +++ b/locales/nl-NL/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Commando", + "actionTag.category.projectSkill": "Projectvaardigheid", "actionTag.category.skill": "Vaardigheid", "actionTag.category.tool": "Hulpmiddel", "actionTag.tooltip.command": "Voert vóór het verzenden een slash-commando aan de clientzijde uit.", + "actionTag.tooltip.projectSkill": "Verzonden als een schuine streep-aanroep zodat de CLI van de agent de bijpassende projectvaardigheid uitvoert.", "actionTag.tooltip.skill": "Laadt voor dit verzoek een herbruikbaar vaardigheidspakket.", "actionTag.tooltip.tool": "Markeert een hulpmiddel dat de gebruiker expliciet voor dit verzoek heeft geselecteerd.", "actions.expand.off": "Samenvouwen", diff --git a/locales/nl-NL/home.json b/locales/nl-NL/home.json index 47139769e2..0ff7aff0f5 100644 --- a/locales/nl-NL/home.json +++ b/locales/nl-NL/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Negeren", "brief.action.retry": "Opnieuw proberen", "brief.addFeedback": "Feedback delen", + "brief.agentSignal.selfReview.applied.heading": "Bijgewerkt", + "brief.agentSignal.selfReview.applied.summary": "{{count}} droomupdate is toegepast.", + "brief.agentSignal.selfReview.applied.summary_plural": "{{count}} droomupdates zijn toegepast.", + "brief.agentSignal.selfReview.applied.title": "Droombronnen bijgewerkt", + "brief.agentSignal.selfReview.error.heading": "Probleem", + "brief.agentSignal.selfReview.error.summary": "Sommig werk kon niet worden voltooid tijdens deze droom.", + "brief.agentSignal.selfReview.error.title": "Droom stuitte op een probleem", + "brief.agentSignal.selfReview.ideas.summary": "Opgeslagen droomnotities voor toekomstige beoordeling.", + "brief.agentSignal.selfReview.ideas.title": "Droomnotities", + "brief.agentSignal.selfReview.proposal.heading": "Suggestie", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} droomsuggestie heeft je beoordeling nodig.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} droomsuggesties hebben je beoordeling nodig.", + "brief.agentSignal.selfReview.proposal.title": "Droomsuggestie vereist beoordeling", "brief.collapse": "Minder weergeven", "brief.commentPlaceholder": "Deel je feedback...", "brief.commentSubmit": "Feedback verzenden", diff --git a/locales/nl-NL/hotkey.json b/locales/nl-NL/hotkey.json index 0193e5f4aa..018e8d5ae5 100644 --- a/locales/nl-NL/hotkey.json +++ b/locales/nl-NL/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Voeg de huidige invoer toe als een gebruikersbericht zonder generatie te starten", "addUserMessage.title": "Gebruikersbericht Toevoegen", - "clearCurrentMessages.desc": "Wis de berichten en geüploade bestanden van het huidige gesprek", - "clearCurrentMessages.title": "Gespreksberichten Wissen", "commandPalette.desc": "Open de globale opdrachtpalet voor snelle toegang tot functies", "commandPalette.title": "Opdrachtpalet", "deleteAndRegenerateMessage.desc": "Verwijder het laatste bericht en genereer opnieuw", diff --git a/locales/nl-NL/models.json b/locales/nl-NL/models.json index d669a1018d..b7dff8c918 100644 --- a/locales/nl-NL/models.json +++ b/locales/nl-NL/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Gloednieuw videogenereermodel met uitgebreide verbeteringen in lichaamsbeweging, fysieke realisme en instructienaleving.", "MiniMax-M1.description": "Een nieuw intern redeneermodel met 80K chain-of-thought en 1M input, met prestaties vergelijkbaar met toonaangevende wereldwijde modellen.", "MiniMax-M2-Stable.description": "Ontworpen voor efficiënte codeer- en agentworkflows, met hogere gelijktijdigheid voor commercieel gebruik.", - "MiniMax-M2.1-Lightning.description": "Krachtige meertalige programmeermogelijkheden met snellere en efficiëntere inferentie.", "MiniMax-M2.1-highspeed.description": "Krachtige meertalige programmeermogelijkheden, een volledig verbeterde programmeerervaring. Sneller en efficiënter.", "MiniMax-M2.1.description": "MiniMax-M2.1 is het vlaggenschip open-source grote model van MiniMax, gericht op het oplossen van complexe, realistische taken. De kernkwaliteiten zijn meertalige programmeermogelijkheden en het vermogen om complexe taken als een Agent op te lossen.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: Zelfde prestaties als M2.5 met snellere inferentie.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku is het snelste en meest compacte model van Anthropic, ontworpen voor vrijwel directe reacties met snelle en nauwkeurige prestaties.", "claude-3-opus-20240229.description": "Claude 3 Opus is het krachtigste model van Anthropic voor zeer complexe taken, met uitmuntende prestaties, intelligentie, vloeiendheid en begrip.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet biedt een balans tussen intelligentie en snelheid voor zakelijke toepassingen, met hoge bruikbaarheid tegen lagere kosten en betrouwbare grootschalige inzet.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 is het snelste en meest intelligente Haiku-model van Anthropic, met bliksemsnelle prestaties en uitgebreide denkcapaciteit.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 is Anthropic's snelste en slimste Haiku-model, met bliksemsnelle snelheid en uitgebreide redeneervermogen.", "claude-haiku-4-5.description": "Claude Haiku 4.5 door Anthropic — next-gen Haiku met verbeterde redenering en visie.", "claude-haiku-4.5.description": "Claude Haiku 4.5 is Anthropic's snelste en slimste Haiku-model, met bliksemsnelle snelheid en uitgebreide redeneervermogen.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking is een geavanceerde variant die zijn redeneerproces kan onthullen.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 is het nieuwste en meest capabele model van Anthropic voor zeer complexe taken, uitblinkend in prestaties, intelligentie, vloeiendheid en begrip.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 is Anthropic's nieuwste en meest capabele model voor zeer complexe taken, uitblinkend in prestaties, intelligentie, vloeiendheid en begrip.", "claude-opus-4-1.description": "Claude Opus 4.1 door Anthropic — premium redeneermodel met diepgaande analysemogelijkheden.", - "claude-opus-4-20250514.description": "Claude Opus 4 is het krachtigste model van Anthropic voor zeer complexe taken, uitblinkend in prestaties, intelligentie, vloeiendheid en begrip.", + "claude-opus-4-20250514.description": "Claude Opus 4 is Anthropic's krachtigste model voor zeer complexe taken, uitblinkend in prestaties, intelligentie, vloeiendheid en begrip.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 is het vlaggenschipmodel van Anthropic, dat uitzonderlijke intelligentie combineert met schaalbare prestaties. Ideaal voor complexe taken die hoogwaardige antwoorden en redenering vereisen.", "claude-opus-4-5.description": "Claude Opus 4.5 door Anthropic — vlaggenschipmodel met topklasse redenering en codering.", "claude-opus-4-6.description": "Claude Opus 4.6 door Anthropic — vlaggenschip met 1M contextvenster en geavanceerde redenering.", @@ -330,8 +329,8 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 is Anthropic's meest intelligente model voor het bouwen van agents en coderen.", "claude-opus-4.6.description": "Claude Opus 4.6 is Anthropic's meest intelligente model voor het bouwen van agents en coderen.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking kan vrijwel directe antwoorden geven of uitgebreide stapsgewijze redenering tonen met zichtbaar proces.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 is het meest intelligente model van Anthropic tot nu toe, met bijna directe reacties of uitgebreide stapsgewijze denkprocessen en fijne controle voor API-gebruikers.", - "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 is het meest intelligente model van Anthropic tot nu toe.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 kan bijna onmiddellijke reacties genereren of uitgebreide stapsgewijze denkprocessen met zichtbaar verloop.", + "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 is Anthropic's meest intelligente model tot nu toe.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 door Anthropic — verbeterde Sonnet met verbeterde codeerprestaties.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 door Anthropic — nieuwste Sonnet met superieure codering en hulpmiddelengebruik.", "claude-sonnet-4.5.description": "Claude Sonnet 4.5 is tot nu toe het meest intelligente model van Anthropic.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) is een innovatief model dat diep taalbegrip en interactie biedt.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 is een next-gen redeneermodel met sterkere complexe redenering en chain-of-thought voor diepgaande analysetaken.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 is een next-gen redeneermodel met sterkere complexe redeneer- en keten-van-denken-capaciteiten.", - "deepseek-chat.description": "Compatibiliteitsalias voor DeepSeek V4 Flash niet-denkmodus. Gepland voor afschaffing — gebruik DeepSeek V4 Flash in plaats daarvan.", + "deepseek-chat.description": "Een nieuw open-source model dat algemene en codevaardigheden combineert. Het behoudt de algemene dialoog van het chatmodel en de sterke codeerkwaliteiten van het coderingsmodel, met betere voorkeurafstemming. DeepSeek-V2.5 verbetert ook schrijven en het opvolgen van instructies.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B is een codeertaalmodel getraind op 2 biljoen tokens (87% code, 13% Chinees/Engels tekst). Het introduceert een contextvenster van 16K en 'fill-in-the-middle'-taken, wat projectniveau codeaanvulling en fragmentinvoeging mogelijk maakt.", "deepseek-coder-v2.description": "DeepSeek Coder V2 is een open-source MoE-codeermodel dat sterk presteert bij programmeertaken, vergelijkbaar met GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 is een open-source MoE-codeermodel dat sterk presteert bij programmeertaken, vergelijkbaar met GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "DeepSeek R1 snelle volledige versie met realtime webzoekfunctie, combineert 671B-capaciteit met snellere reacties.", "deepseek-r1-online.description": "DeepSeek R1 volledige versie met 671B parameters en realtime webzoekfunctie, biedt sterkere begrip- en generatiecapaciteiten.", "deepseek-r1.description": "DeepSeek-R1 gebruikt cold-start data vóór versterkingsleren en presteert vergelijkbaar met OpenAI-o1 op wiskunde, programmeren en redenering.", - "deepseek-reasoner.description": "Compatibiliteitsalias voor DeepSeek V4 Flash denkmodus. Gepland voor afschaffing — gebruik DeepSeek V4 Flash in plaats daarvan.", + "deepseek-reasoner.description": "Een DeepSeek redeneermodel gericht op complexe logische redeneertaken.", "deepseek-v2.description": "DeepSeek V2 is een efficiënt MoE-model voor kosteneffectieve verwerking.", "deepseek-v2:236b.description": "DeepSeek V2 236B is DeepSeek’s codegerichte model met sterke codegeneratie.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 is een MoE-model met 671B parameters en uitmuntende prestaties in programmeren, technische vaardigheden, contextbegrip en verwerking van lange teksten.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 is een beeldgeneratiemodel van ByteDance Seed dat tekst- en afbeeldingsinvoer ondersteunt voor zeer controleerbare, hoogwaardige beeldgeneratie. Het genereert beelden op basis van tekstprompts.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 is het nieuwste multimodale beeldmodel van ByteDance, dat tekst-naar-beeld, beeld-naar-beeld en batchbeeldgeneratiecapaciteiten integreert, terwijl het gezond verstand en redeneervermogen bevat. Vergeleken met de vorige 4.0-versie levert het aanzienlijk verbeterde generatiekwaliteit, met betere bewerkingsconsistentie en multi-beeldfusie. Het biedt meer precieze controle over visuele details, produceert kleine teksten en gezichten natuurlijker, en bereikt een harmonieuzere lay-out en kleur, wat de algehele esthetiek verbetert.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite is het nieuwste beeldgeneratiemodel van ByteDance. Voor het eerst integreert het online zoekmogelijkheden, waardoor het real-time webinformatie kan opnemen en de actualiteit van gegenereerde beelden kan verbeteren. De intelligentie van het model is ook geüpgraded, waardoor het complexe instructies en visuele inhoud nauwkeurig kan interpreteren. Bovendien biedt het verbeterde wereldwijde kennisdekking, referentieconsistentie en generatiekwaliteit in professionele scenario's, waardoor het beter voldoet aan visuele creatiebehoeften op ondernemingsniveau.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 van ByteDance is het krachtigste videogeneratiemodel, met ondersteuning voor multimodale referentievideogeneratie, videobewerking, video-uitbreiding, tekst-naar-video en afbeelding-naar-video met gesynchroniseerde audio.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast van ByteDance biedt dezelfde mogelijkheden als Seedance 2.0 met snellere generatiesnelheden tegen een concurrerende prijs.", "emohaa.description": "Emohaa is een mentaal gezondheidsmodel met professionele begeleidingsvaardigheden om gebruikers te helpen emotionele problemen te begrijpen.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B is een lichtgewicht open-source model voor lokale en aangepaste implementatie.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview is een previewmodel met 8K context voor het evalueren van ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking is een native full-modale vlaggenschipmodel met geïntegreerde tekst-, beeld-, audio- en videomodellering. Het biedt brede capaciteitsverbeteringen voor complexe vraag-en-antwoord, creatie en agenttoepassingen.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview is een native full-modale vlaggenschipmodel met geïntegreerde tekst-, beeld-, audio- en videomodellering. Het biedt brede capaciteitsverbeteringen voor complexe vraag-en-antwoord, creatie en agenttoepassingen.", "ernie-5.0.description": "ERNIE 5.0, het nieuwe generatie model in de ERNIE-serie, is een native multimodaal groot model. Het hanteert een uniforme multimodale modelleerbenadering, waarbij tekst, afbeeldingen, audio en video gezamenlijk worden gemodelleerd om uitgebreide multimodale mogelijkheden te bieden. De fundamentele vaardigheden zijn aanzienlijk verbeterd, met sterke prestaties op benchmarkevaluaties. Het blinkt met name uit in multimodale begrip, instructievolging, creatief schrijven, feitelijke nauwkeurigheid, agentplanning en hulpmiddelengebruik.", + "ernie-5.1.description": "ERNIE 5.1 is het nieuwste model in de ERNIE-serie, met uitgebreide upgrades van zijn fundamentele capaciteiten. Het toont aanzienlijke verbeteringen op gebieden zoals agenten, kennisverwerking, redeneren en diep zoeken. Deze release hanteert een ontkoppelde volledig asynchrone versterkingsleerarchitectuur, specifiek ontworpen om belangrijke uitdagingen aan te pakken in de evolutie van grote modellen naar autonome besluitvorming door agenten, waaronder numerieke discrepanties tussen training en inferentie, lage benutting van heterogene computermiddelen en wereldwijde problemen veroorzaakt door langstaart-effecten. Bovendien worden grootschalige agent-natrainingstechnieken toegepast om de capaciteiten en generalisatieprestaties van het model verder te verbeteren. Door een drie-stappen samenwerkingskader met omgeving, expert en fusieprocessen, zorgt de aanpak niet alleen voor trainingsefficiëntie, maar verbetert het ook aanzienlijk de stabiliteit en prestaties van het model bij complexe taken.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview is een previewmodel voor personage- en plotcreatie, bedoeld voor functietests en evaluatie.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K is een personagegericht model voor romans en plotontwikkeling, geschikt voor het genereren van lange verhalen.", "ernie-image-turbo.description": "ERNIE-Image is een 8B-parameter tekst-naar-afbeelding model ontwikkeld door Baidu. Het behoort tot de top op meerdere benchmarks, met een gedeelde eerste plaats in SuperCLUE in China en leidend in de open-source track.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K is een snel denkend model met 32K context voor complexe redenatie en meerstapsgesprekken.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview is een preview van een denkmodel voor evaluatie en testen.", "ernie-x1.1.description": "ERNIE X1.1 is een preview van een denkmodel voor evaluatie en testen.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, ontwikkeld door het ByteDance Seed-team, ondersteunt multi-afbeeldingbewerking en compositie. Kenmerken zijn verbeterde onderwerpconsistentie, nauwkeurige instructievolging, ruimtelijk logisch begrip, esthetische expressie, posterlay-out en logo-ontwerp met hoogprecisie tekst-afbeelding rendering.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, ontwikkeld door ByteDance Seed, ondersteunt tekst- en afbeeldingsinvoer voor zeer controleerbare, hoogwaardige afbeeldingsgeneratie vanuit prompts.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 is een beeldgeneratiemodel van ByteDance Seed, dat tekst- en beeldinvoer ondersteunt met zeer controleerbare, hoogwaardige beeldgeneratie. Het genereert beelden op basis van tekstprompts.", "fal-ai/flux-kontext/dev.description": "FLUX.1-model gericht op beeldbewerking, met ondersteuning voor tekst- en afbeeldingsinvoer.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] accepteert tekst en referentieafbeeldingen als invoer, waardoor gerichte lokale bewerkingen en complexe wereldwijde scèneaanpassingen mogelijk zijn.", "fal-ai/flux/krea.description": "Flux Krea [dev] is een afbeeldingsgeneratiemodel met een esthetische voorkeur voor realistische, natuurlijke beelden.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Een krachtig, native multimodaal afbeeldingsgeneratiemodel.", "fal-ai/imagen4/preview.description": "Hoogwaardig afbeeldingsgeneratiemodel van Google.", "fal-ai/nano-banana.description": "Nano Banana is het nieuwste, snelste en meest efficiënte native multimodale model van Google, waarmee beeldgeneratie en -bewerking via conversatie mogelijk is.", - "fal-ai/qwen-image-edit.description": "Een professioneel afbeeldingsbewerkingsmodel van het Qwen-team, met ondersteuning voor semantische en uiterlijke bewerkingen, nauwkeurige Chinese/Engelse tekstbewerking, stijltransfer, rotatie en meer.", - "fal-ai/qwen-image.description": "Een krachtig afbeeldingsgeneratiemodel van het Qwen-team met sterke Chinese tekstweergave en diverse visuele stijlen.", + "fal-ai/qwen-image-edit.description": "Een professioneel beeldbewerkingsmodel van het Qwen-team dat semantische en uiterlijke bewerkingen ondersteunt, nauwkeurig Chinese en Engelse tekst bewerkt, en hoogwaardige bewerkingen mogelijk maakt zoals stijltransformatie en objectrotatie.", + "fal-ai/qwen-image.description": "Een krachtig beeldgeneratiemodel van het Qwen-team met indrukwekkende Chinese tekstweergave en diverse visuele stijlen.", "flux-1-schnell.description": "Een tekst-naar-beeldmodel met 12 miljard parameters van Black Forest Labs, dat gebruikmaakt van latente adversariële diffusiedistillatie om hoogwaardige beelden te genereren in 1–4 stappen. Het evenaart gesloten alternatieven en is uitgebracht onder de Apache-2.0-licentie voor persoonlijk, onderzoeks- en commercieel gebruik.", "flux-dev.description": "Open-source R&D-beeldgeneratiemodel, efficiënt geoptimaliseerd voor niet-commercieel innovatief onderzoek.", "flux-kontext-max.description": "State-of-the-art contextuele beeldgeneratie en -bewerking, waarbij tekst en afbeeldingen worden gecombineerd voor nauwkeurige, samenhangende resultaten.", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash is het slimste model dat is gebouwd voor snelheid, met geavanceerde intelligentie en uitstekende zoekverankering.", "gemini-3-flash.description": "Gemini 3 Flash door Google — ultrafast model met ondersteuning voor multimodale invoer.", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image (Nano Banana Pro) is het beeldgeneratiemodel van Google dat ook multimodale dialogen ondersteunt.", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) is het afbeeldingsgeneratiemodel van Google en ondersteunt ook multimodale chat.", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) is Google's beeldgeneratiemodel en ondersteunt ook multimodale chat.", "gemini-3-pro-preview.description": "Gemini 3 Pro is het krachtigste agent- en vibe-codingmodel van Google, met rijkere visuele output en diepere interactie bovenop geavanceerde redeneercapaciteiten.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) is het snelste native beeldgeneratiemodel van Google met denksupport, conversatiebeeldgeneratie en bewerking.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) levert Pro-niveau afbeeldingskwaliteit met Flash-snelheid en ondersteuning voor multimodale chat.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) is Google's snelste native beeldgeneratiemodel met denkondersteuning, conversatiegerichte beeldgeneratie en bewerking.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview is het meest kostenefficiënte multimodale model van Google, geoptimaliseerd voor grootschalige agenttaken, vertaling en gegevensverwerking.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite is Google's meest kostenefficiënte multimodale model, geoptimaliseerd voor grootschalige agenttaken, vertaling en gegevensverwerking.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview verbetert Gemini 3 Pro met verbeterde redeneercapaciteiten en voegt ondersteuning toe voor een gemiddeld denkniveau.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "We zijn verheugd Grok 4 Fast uit te brengen, onze nieuwste vooruitgang in kosteneffectieve redeneermodellen.", "grok-4.20-0309-non-reasoning.description": "Een niet-redenerende variant voor eenvoudige gebruiksscenario's.", "grok-4.20-0309-reasoning.description": "Intelligent, razendsnel model dat redeneert voordat het reageert.", - "grok-4.20-beta-0309-non-reasoning.description": "Een niet-denkende variant voor eenvoudige gebruiksscenario's.", - "grok-4.20-beta-0309-reasoning.description": "Intelligent, razendsnel model dat redeneert voordat het reageert.", "grok-4.20-multi-agent-0309.description": "Een team van 4 of 16 agents, uitblinkend in onderzoeksgebruiksscenario's. Ondersteunt momenteel geen client-side tools. Ondersteunt alleen xAI server-side tools (bijv. X Search, Web Search tools) en remote MCP tools.", "grok-4.3.description": "Het meest waarheidsgetrouwe grote taalmodel ter wereld", "grok-4.description": "Het nieuwste vlaggenschip van Grok met ongeëvenaarde prestaties in taal, wiskunde en redeneervermogen — een echte alleskunner. Momenteel verwijst het naar grok-4-0709; vanwege beperkte middelen is de prijs tijdelijk 10% hoger dan de officiële prijs en wordt verwacht later terug te keren naar de officiële prijs.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ is een redeneermodel binnen de Qwen-familie. In vergelijking met standaard instructie-getrainde modellen biedt het denk- en redeneervermogen dat de prestaties op complexe problemen aanzienlijk verbetert. QwQ-32B is een middelgroot redeneermodel dat zich kan meten met topmodellen zoals DeepSeek-R1 en o1-mini.", "qwq_32b.description": "Middelgroot redeneermodel binnen de Qwen-familie. In vergelijking met standaard instructie-getrainde modellen verbeteren QwQ’s denk- en redeneervermogen de prestaties op complexe problemen aanzienlijk.", "r1-1776.description": "R1-1776 is een na-getrainde variant van DeepSeek R1, ontworpen om ongecensureerde, onbevooroordeelde feitelijke informatie te bieden.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro van ByteDance ondersteunt tekst-naar-video, afbeelding-naar-video (eerste frame, eerste+laatste frame) en audiogeneratie gesynchroniseerd met visuals.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite van BytePlus biedt web-ophaal-geaugmenteerde generatie voor realtime informatie, verbeterde interpretatie van complexe prompts en verbeterde referentieconsistentie voor professionele visuele creatie.", "solar-mini-ja.description": "Solar Mini (Ja) breidt Solar Mini uit met focus op Japans, terwijl het efficiënte, sterke prestaties in Engels en Koreaans behoudt.", "solar-mini.description": "Solar Mini is een compact LLM dat beter presteert dan GPT-3.5, met sterke meertalige ondersteuning voor Engels en Koreaans, en biedt een efficiënte oplossing met een kleine voetafdruk.", "solar-pro.description": "Solar Pro is een intelligent LLM van Upstage, gericht op instructieopvolging op een enkele GPU, met IFEval-scores boven de 80. Momenteel ondersteunt het Engels; de volledige release stond gepland voor november 2024 met uitgebreidere taalondersteuning en langere context.", diff --git a/locales/nl-NL/onboarding.json b/locales/nl-NL/onboarding.json index aabe666237..57fb446ff3 100644 --- a/locales/nl-NL/onboarding.json +++ b/locales/nl-NL/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Voor nu overslaan", "agent.layout.skipConfirm.title": "Onboarding nu overslaan?", "agent.layout.switchMessage": "Even geen zin vandaag? Je kunt schakelen naar {{mode}} of {{skip}}.", + "agent.layout.switchMessageClassic": "Geen zin vandaag? Je kunt overschakelen naar {{mode}}.", + "agent.messenger.cta.discord": "Toevoegen aan Discord", + "agent.messenger.cta.slack": "Toevoegen aan Slack", + "agent.messenger.cta.telegram": "Openen in Telegram", + "agent.messenger.subtitle": "Chat met je agent op Telegram, Slack of Discord", + "agent.messenger.telegramQrCaption": "Scan met de camera van je telefoon", + "agent.messenger.title": "Houd me bij je, waar je ook bericht", "agent.modeSwitch.agent": "Conversatie", "agent.modeSwitch.classic": "Klassiek", "agent.modeSwitch.collapse": "Samenvouwen", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "Ik sla op wat we tot nu toe hebben besproken. Je kunt altijd later terugkomen om verder te chatten.", "agent.wrapUp.confirm.ok": "Nu afronden", "agent.wrapUp.confirm.title": "Onboarding nu afronden?", + "agentPicker.allCategories": "Alle", + "agentPicker.continue": "Doorgaan", + "agentPicker.skip": "Nu overslaan", + "agentPicker.subtitle": "Voeg er nu een paar toe aan je bibliotheek — ontdek later meer op elk moment.", + "agentPicker.title": "Laten we een paar agents aan je bibliotheek toevoegen", + "agentPicker.title2": "Kies degene die passen bij hoe jij werkt", + "agentPicker.title3": "Je kunt altijd later meer toevoegen — begin met een paar", "back": "Terug", "finish": "Aan de slag", "interests.area.business": "Zakelijk & Strategie", diff --git a/locales/nl-NL/plugin.json b/locales/nl-NL/plugin.json index feeee684e1..4f65e5e314 100644 --- a/locales/nl-NL/plugin.json +++ b/locales/nl-NL/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} documenten", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} bewerkingen", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} bewerkingen", - "builtins.lobe-agent-documents.inspector.target.agent": "in agent", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "in onderwerp", + "builtins.lobe-agent-documents.inspector.scope.agent": "in agent", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "in onderwerp", "builtins.lobe-agent-documents.title": "Agentdocumenten", "builtins.lobe-agent-management.apiName.callAgent": "Bel agent", "builtins.lobe-agent-management.apiName.createAgent": "Maak agent aan", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Lobe Agent", "builtins.lobe-claude-code.agent.instruction": "Instructie", "builtins.lobe-claude-code.agent.result": "Resultaat", + "builtins.lobe-claude-code.task.createLabel": "Taak aanmaken: ", + "builtins.lobe-claude-code.task.getLabel": "Taak inspecteren #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "Taken weergeven", + "builtins.lobe-claude-code.task.updateCompleted": "Voltooid", + "builtins.lobe-claude-code.task.updateDeleted": "Verwijderd", + "builtins.lobe-claude-code.task.updateInProgress": "Gestart", + "builtins.lobe-claude-code.task.updateLabel": "Taak bijwerken #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "Opnieuw instellen", "builtins.lobe-claude-code.todoWrite.allDone": "Alle taken voltooid", "builtins.lobe-claude-code.todoWrite.currentStep": "Huidige stap", "builtins.lobe-claude-code.todoWrite.todos": "Taken", diff --git a/locales/nl-NL/providers.json b/locales/nl-NL/providers.json index d24aaec7f3..05ef593c8b 100644 --- a/locales/nl-NL/providers.json +++ b/locales/nl-NL/providers.json @@ -33,7 +33,6 @@ "jina.description": "Opgericht in 2020, is Jina AI een toonaangevend zoek-AI-bedrijf. De zoekstack omvat vectormodellen, herordenaars en kleine taalmodellen om betrouwbare, hoogwaardige generatieve en multimodale zoekapps te bouwen.", "kimicodingplan.description": "Kimi Code van Moonshot AI biedt toegang tot Kimi-modellen, waaronder K2.5, voor coderingstaken.", "lmstudio.description": "LM Studio is een desktopapplicatie voor het ontwikkelen en experimenteren met LLM’s op je eigen computer.", - "lobehub.description": "LobeHub Cloud gebruikt officiële API's om toegang te krijgen tot AI-modellen en meet het gebruik met Credits die gekoppeld zijn aan modeltokens.", "longcat.description": "LongCat is een reeks generatieve AI-grote modellen die onafhankelijk zijn ontwikkeld door Meituan. Het is ontworpen om de productiviteit binnen ondernemingen te verbeteren en innovatieve toepassingen mogelijk te maken door middel van een efficiënte computationele architectuur en sterke multimodale mogelijkheden.", "minimax.description": "Opgericht in 2021, bouwt MiniMax algemene AI met multimodale fundamentele modellen, waaronder tekstmodellen met biljoenen parameters, spraakmodellen en visiemodellen, evenals apps zoals Hailuo AI.", "minimaxcodingplan.description": "MiniMax Token Plan biedt toegang tot MiniMax-modellen, waaronder M2.7, voor coderingstaken via een abonnement met vaste kosten.", diff --git a/locales/nl-NL/subscription.json b/locales/nl-NL/subscription.json index 0944240df4..102f6f6883 100644 --- a/locales/nl-NL/subscription.json +++ b/locales/nl-NL/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Automatisch Opladen Inschakelen", "credits.autoTopUp.upgradeHint": "Abonneer je op een betaald plan om automatisch opladen in te schakelen", "credits.autoTopUp.validation.targetMustExceedThreshold": "Doelsaldo moet hoger zijn dan de drempel", + "credits.costEstimateHint.desc": "Toon een lichte waarschuwing voordat u verzendt wanneer de geschatte modelkosten uw drempel bereiken", + "credits.costEstimateHint.saveError": "Het opslaan van de instellingen voor kostenramingswaarschuwingen is mislukt", + "credits.costEstimateHint.saveSuccess": "Instellingen voor kostenramingswaarschuwingen opgeslagen", + "credits.costEstimateHint.threshold": "Waarschuwingsdrempel", + "credits.costEstimateHint.title": "Kostenramingswaarschuwing", + "credits.costEstimateHint.validation.threshold": "Drempel moet groter dan of gelijk aan 0 zijn", "credits.packages.auto": "Automatisch", "credits.packages.charged": "In rekening gebracht ${{amount}}", "credits.packages.expired": "Verlopen", diff --git a/locales/nl-NL/tool.json b/locales/nl-NL/tool.json index 05b645a449..eb22499cdc 100644 --- a/locales/nl-NL/tool.json +++ b/locales/nl-NL/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Al in bibliotheek", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} al in bibliotheek", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} al in bibliotheek", + "claudeCode.askUserQuestion.escape.back": "Terug naar opties", + "claudeCode.askUserQuestion.escape.enter": "Of typ direct", + "claudeCode.askUserQuestion.escape.placeholder": "Typ hier uw antwoord…", + "claudeCode.askUserQuestion.multiSelectTag": "(meerdere selecties)", + "claudeCode.askUserQuestion.skip": "Overslaan", + "claudeCode.askUserQuestion.submit": "Indienen", + "claudeCode.askUserQuestion.timeExpired": "Tijd verstreken — optie 1 van elke vraag wordt gebruikt.", + "claudeCode.askUserQuestion.timeRemaining": "Resterende tijd: {{time}} · onbeantwoorde vragen worden standaard optie 1 bij timeout.", "codeInterpreter-legacy.error": "Uitvoeringsfout", "codeInterpreter-legacy.executing": "Bezig met uitvoeren...", "codeInterpreter-legacy.files": "Bestanden:", diff --git a/locales/nl-NL/topic.json b/locales/nl-NL/topic.json index dca5d6dbf0..03044cef8b 100644 --- a/locales/nl-NL/topic.json +++ b/locales/nl-NL/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Onderwerp hernoemen", "searchPlaceholder": "Onderwerpen zoeken...", "searchResultEmpty": "Geen zoekresultaten gevonden.", + "sidebar.title": "Onderwerpen", "taskManager.agent": "Taakagent", "taskManager.welcome": "Vraag me naar je taken", "temp": "Tijdelijk", diff --git a/locales/pl-PL/chat.json b/locales/pl-PL/chat.json index 71cbd20e9d..a6f844d922 100644 --- a/locales/pl-PL/chat.json +++ b/locales/pl-PL/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "Dodaj wiadomość AI", "input.addUser": "Dodaj wiadomość użytkownika", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} kredytów/M tokenów", + "input.costEstimate.hint": "Szacowany koszt: ~{{credits}} kredytów", + "input.costEstimate.inputLabel": "Wejście", + "input.costEstimate.outputLabel": "Wyjście", + "input.costEstimate.settingsLink": "Dostosuj próg ostrzeżenia", + "input.costEstimate.tokenCount": "~{{tokens}} tokenów", + "input.costEstimate.tooltip": "Szacowane na podstawie bieżącego kontekstu, narzędzi i cen modelu. Rzeczywisty koszt może się różnić.", "input.disclaimer": "Agenci mogą popełniać błędy. W przypadku ważnych informacji zachowaj ostrożność.", "input.errorMsg": "Wysyłanie nie powiodło się: {{errorMsg}}. Spróbuj ponownie lub wyślij później.", "input.more": "Więcej", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Przygotowywanie fragmentów...", "upload.preview.status.pending": "Przygotowywanie do przesłania...", "upload.preview.status.processing": "Przetwarzanie pliku...", + "upload.validation.unsupportedFileType": "Nieobsługiwany typ pliku: {{files}}. Obsługiwane obrazy: JPG, PNG, GIF, WebP. Obsługiwane dokumenty obejmują PDF, Word, Excel, PowerPoint, Markdown, tekst, CSV, JSON i pliki kodu.", "upload.validation.videoSizeExceeded": "Rozmiar pliku wideo nie może przekraczać 20 MB. Obecny rozmiar pliku to {{actualSize}}.", "viewMode.fullWidth": "Pełna szerokość", "viewMode.normal": "Standardowy", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Zamknij pozostałe", "workingPanel.localFile.closeRight": "Zamknij po prawej", "workingPanel.localFile.error": "Nie udało się załadować tego pliku", + "workingPanel.localFile.preview.raw": "Surowe dane", + "workingPanel.localFile.preview.render": "Podgląd", "workingPanel.localFile.truncated": "Podgląd pliku skrócony do {{limit}} znaków", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Przełącz na widok zjednoczony", "workingPanel.review.wordWrap.disable": "Wyłącz zawijanie wierszy", "workingPanel.review.wordWrap.enable": "Włącz zawijanie wierszy", + "workingPanel.skills.empty": "Nie znaleziono umiejętności w tym projekcie", + "workingPanel.skills.title": "Umiejętności", "workingPanel.space": "Przestrzeń", "workingPanel.title": "Working Panel", "you": "Ty", diff --git a/locales/pl-PL/components.json b/locales/pl-PL/components.json index 7ad2e20548..b0e65fe5bd 100644 --- a/locales/pl-PL/components.json +++ b/locales/pl-PL/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Długość kontekstu", "ModelSwitchPanel.detail.pricing": "Cennik", "ModelSwitchPanel.detail.pricing.cachedInput": "Buforowane dane wejściowe ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Buforowane dane wejściowe {{amount}} kredytów/M tokenów", + "ModelSwitchPanel.detail.pricing.credits.image": "kredyty/img", + "ModelSwitchPanel.detail.pricing.credits.input": "Dane wejściowe {{amount}} kredytów/M tokenów", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "kredyty/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "kredyty/M znaków", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "kredyty/M tokenów", + "ModelSwitchPanel.detail.pricing.credits.output": "Dane wyjściowe {{amount}} kredytów/M tokenów", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} kredytów / obraz", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} kredytów / wideo", + "ModelSwitchPanel.detail.pricing.credits.second": "kredyty/s", "ModelSwitchPanel.detail.pricing.group.audio": "Audio", "ModelSwitchPanel.detail.pricing.group.image": "Obraz", "ModelSwitchPanel.detail.pricing.group.text": "Tekst", diff --git a/locales/pl-PL/editor.json b/locales/pl-PL/editor.json index 7367204ca6..0dd6233c29 100644 --- a/locales/pl-PL/editor.json +++ b/locales/pl-PL/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Polecenie", + "actionTag.category.projectSkill": "Umiejętność projektowa", "actionTag.category.skill": "Umiejętność", "actionTag.category.tool": "Narzędzie", "actionTag.tooltip.command": "Uruchamia polecenie slash po stronie klienta przed wysłaniem.", + "actionTag.tooltip.projectSkill": "Wysłane jako wywołanie ukośnika, aby CLI agenta uruchomiło pasującą umiejętność projektową.", "actionTag.tooltip.skill": "Wczytuje pakiet umiejętności wielokrotnego użytku dla tego żądania.", "actionTag.tooltip.tool": "Oznacza narzędzie, które użytkownik jawnie wybrał dla tego żądania.", "actions.expand.off": "Zwiń", diff --git a/locales/pl-PL/home.json b/locales/pl-PL/home.json index 059db601dd..a8a073f749 100644 --- a/locales/pl-PL/home.json +++ b/locales/pl-PL/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Ignoruj", "brief.action.retry": "Ponów próbę", "brief.addFeedback": "Prześlij opinię", + "brief.agentSignal.selfReview.applied.heading": "Zaktualizowano", + "brief.agentSignal.selfReview.applied.summary": "Zastosowano {{count}} aktualizację snu.", + "brief.agentSignal.selfReview.applied.summary_plural": "Zastosowano {{count}} aktualizacje snu.", + "brief.agentSignal.selfReview.applied.title": "Zaktualizowane zasoby snu", + "brief.agentSignal.selfReview.error.heading": "Problem", + "brief.agentSignal.selfReview.error.summary": "Niektóre zadania nie mogły zostać ukończone podczas tego snu.", + "brief.agentSignal.selfReview.error.title": "Sen napotkał problem", + "brief.agentSignal.selfReview.ideas.summary": "Zapisano notatki snu do przyszłego przeglądu.", + "brief.agentSignal.selfReview.ideas.title": "Notatki snu", + "brief.agentSignal.selfReview.proposal.heading": "Sugestia", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} sugestia snu wymaga Twojej uwagi.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} sugestie snu wymagają Twojej uwagi.", + "brief.agentSignal.selfReview.proposal.title": "Sugestia snu wymaga przeglądu", "brief.collapse": "Pokaż mniej", "brief.commentPlaceholder": "Podziel się swoją opinią...", "brief.commentSubmit": "Prześlij opinię", diff --git a/locales/pl-PL/hotkey.json b/locales/pl-PL/hotkey.json index 86ea3b82a6..52d2bfaa98 100644 --- a/locales/pl-PL/hotkey.json +++ b/locales/pl-PL/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Dodaj bieżący wpis jako wiadomość użytkownika bez uruchamiania generowania", "addUserMessage.title": "Dodaj wiadomość użytkownika", - "clearCurrentMessages.desc": "Wyczyść wiadomości i przesłane pliki z bieżącej rozmowy", - "clearCurrentMessages.title": "Wyczyść wiadomości rozmowy", "commandPalette.desc": "Otwórz globalną paletę poleceń, aby szybko uzyskać dostęp do funkcji", "commandPalette.title": "Paleta poleceń", "deleteAndRegenerateMessage.desc": "Usuń ostatnią wiadomość i wygeneruj ponownie", diff --git a/locales/pl-PL/models.json b/locales/pl-PL/models.json index 53b563b533..876fcb904a 100644 --- a/locales/pl-PL/models.json +++ b/locales/pl-PL/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Nowy model generowania wideo z kompleksowymi ulepszeniami w zakresie ruchu ciała, realizmu fizycznego i przestrzegania instrukcji.", "MiniMax-M1.description": "Nowy wewnętrzny model rozumowania z 80 tys. łańcuchów myślowych i 1 mln tokenów wejściowych, oferujący wydajność porównywalną z czołowymi modelami światowymi.", "MiniMax-M2-Stable.description": "Zaprojektowany z myślą o wydajnym kodowaniu i przepływach pracy agentów, z większą równoległością dla zastosowań komercyjnych.", - "MiniMax-M2.1-Lightning.description": "Potężne wielojęzyczne możliwości programowania z szybszym i bardziej wydajnym wnioskowaniem.", "MiniMax-M2.1-highspeed.description": "Potężne wielojęzyczne możliwości programistyczne, kompleksowo ulepszone doświadczenie programowania. Szybszy i bardziej wydajny.", "MiniMax-M2.1.description": "MiniMax-M2.1 to flagowy, otwartoźródłowy model dużej skali od MiniMax, zaprojektowany do rozwiązywania złożonych zadań rzeczywistych. Jego główne atuty to wielojęzyczne możliwości programistyczne oraz zdolność działania jako Agent do rozwiązywania skomplikowanych problemów.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: Ta sama wydajność co M2.5, ale z szybszym wnioskowaniem.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku to najszybszy i najbardziej kompaktowy model firmy Anthropic, zaprojektowany do natychmiastowych odpowiedzi z szybką i dokładną wydajnością.", "claude-3-opus-20240229.description": "Claude 3 Opus to najpotężniejszy model firmy Anthropic do bardzo złożonych zadań, wyróżniający się wydajnością, inteligencją, płynnością i zrozumieniem.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet łączy inteligencję i szybkość dla obciążeń korporacyjnych, oferując wysoką użyteczność przy niższych kosztach i niezawodnym wdrażaniu na dużą skalę.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 to najszybszy i najbardziej inteligentny model Haiku od Anthropic, oferujący błyskawiczną prędkość i rozszerzone myślenie.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 to najszybszy i najinteligentniejszy model Haiku firmy Anthropic, oferujący błyskawiczną szybkość i rozszerzone możliwości rozumowania.", "claude-haiku-4-5.description": "Claude Haiku 4.5 by Anthropic — model nowej generacji Haiku z ulepszonym rozumowaniem i wizją.", "claude-haiku-4.5.description": "Claude Haiku 4.5 to najszybszy i najinteligentniejszy model Haiku firmy Anthropic, charakteryzujący się błyskawiczną szybkością i rozszerzonym rozumowaniem.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking to zaawansowany wariant, który może ujawniać swój proces rozumowania.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 to najnowszy i najbardziej zaawansowany model Anthropic do wysoce złożonych zadań, wyróżniający się wydajnością, inteligencją, płynnością i zrozumieniem.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 to najnowszy i najbardziej zaawansowany model firmy Anthropic do wykonywania wysoce złożonych zadań, wyróżniający się wydajnością, inteligencją, płynnością i zrozumieniem.", "claude-opus-4-1.description": "Claude Opus 4.1 by Anthropic — model premium do rozumowania z głębokimi możliwościami analizy.", - "claude-opus-4-20250514.description": "Claude Opus 4 to najpotężniejszy model Anthropic do wysoce złożonych zadań, wyróżniający się wydajnością, inteligencją, płynnością i zrozumieniem.", + "claude-opus-4-20250514.description": "Claude Opus 4 to najpotężniejszy model firmy Anthropic do wykonywania wysoce złożonych zadań, wyróżniający się wydajnością, inteligencją, płynnością i zrozumieniem.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 to flagowy model firmy Anthropic, łączący wyjątkową inteligencję z wydajnością na dużą skalę, idealny do złożonych zadań wymagających najwyższej jakości odpowiedzi i rozumowania.", "claude-opus-4-5.description": "Claude Opus 4.5 by Anthropic — flagowy model z najwyższej klasy rozumowaniem i kodowaniem.", "claude-opus-4-6.description": "Claude Opus 4.6 by Anthropic — flagowy model z oknem kontekstowym 1M i zaawansowanym rozumowaniem.", @@ -330,8 +329,8 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 to najbardziej inteligentny model firmy Anthropic do tworzenia agentów i kodowania.", "claude-opus-4.6.description": "Claude Opus 4.6 to najbardziej inteligentny model firmy Anthropic do tworzenia agentów i kodowania.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking może generować natychmiastowe odpowiedzi lub rozszerzone rozumowanie krok po kroku z widocznym procesem.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 to najbardziej inteligentny model Anthropic do tej pory, oferujący niemal natychmiastowe odpowiedzi lub rozszerzone, krok po kroku myślenie z precyzyjną kontrolą dla użytkowników API.", - "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 to najbardziej inteligentny model Anthropic do tej pory.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 potrafi generować niemal natychmiastowe odpowiedzi lub rozbudowane, krok po kroku przemyślenia z widocznym procesem.", + "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 to najbardziej inteligentny model firmy Anthropic do tej pory.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 by Anthropic — ulepszony Sonnet z lepszą wydajnością kodowania.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 by Anthropic — najnowszy Sonnet z lepszym kodowaniem i obsługą narzędzi.", "claude-sonnet-4.5.description": "Claude Sonnet 4.5 to najbardziej inteligentny model firmy Anthropic do tej pory.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) to innowacyjny model oferujący głębokie zrozumienie języka i interakcję.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 to model nowej generacji do rozumowania z silniejszym rozumowaniem złożonym i łańcuchem myśli do zadań wymagających głębokiej analizy.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 to model rozumowania nowej generacji z ulepszonymi zdolnościami do rozwiązywania złożonych problemów i myślenia łańcuchowego.", - "deepseek-chat.description": "Alias kompatybilności dla trybu bezmyślowego DeepSeek V4 Flash. Przeznaczony do wycofania — użyj zamiast tego DeepSeek V4 Flash.", + "deepseek-chat.description": "Nowy model open-source łączący zdolności ogólne i kodowania. Zachowuje ogólną zdolność dialogową modelu czatu oraz silne możliwości kodowania modelu programistycznego, z lepszym dopasowaniem preferencji. DeepSeek-V2.5 dodatkowo poprawia pisanie i wykonywanie instrukcji.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B to model języka kodu wytrenowany na 2T tokenach (87% kod, 13% tekst chiński/angielski). Wprowadza okno kontekstu 16K i zadania uzupełniania w środku, oferując uzupełnianie kodu na poziomie projektu i wypełnianie fragmentów.", "deepseek-coder-v2.description": "DeepSeek Coder V2 to open-source’owy model kodu MoE, który osiąga wysokie wyniki w zadaniach programistycznych, porównywalne z GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 to open-source’owy model kodu MoE, który osiąga wysokie wyniki w zadaniach programistycznych, porównywalne z GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "Szybka pełna wersja DeepSeek R1 z wyszukiwaniem w czasie rzeczywistym, łącząca możliwości modelu 671B z szybszymi odpowiedziami.", "deepseek-r1-online.description": "Pełna wersja DeepSeek R1 z 671 miliardami parametrów i wyszukiwaniem w czasie rzeczywistym, oferująca lepsze rozumienie i generowanie.", "deepseek-r1.description": "DeepSeek-R1 wykorzystuje dane startowe przed RL i osiąga wyniki porównywalne z OpenAI-o1 w zadaniach matematycznych, programistycznych i logicznych.", - "deepseek-reasoner.description": "Alias kompatybilności dla trybu myślowego DeepSeek V4 Flash. Przeznaczony do wycofania — użyj zamiast tego DeepSeek V4 Flash.", + "deepseek-reasoner.description": "Model rozumowania DeepSeek skoncentrowany na złożonych zadaniach logicznego rozumowania.", "deepseek-v2.description": "DeepSeek V2 to wydajny model MoE zoptymalizowany pod kątem efektywności kosztowej.", "deepseek-v2:236b.description": "DeepSeek V2 236B to model skoncentrowany na kodzie, oferujący zaawansowane generowanie kodu.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 to model MoE z 671 miliardami parametrów, wyróżniający się w programowaniu, rozumieniu kontekstu i obsłudze długich tekstów.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 to model generowania obrazów od ByteDance Seed, obsługujący wejścia tekstowe i obrazowe z wysoką kontrolą i jakością. Generuje obrazy na podstawie tekstowych promptów.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 to najnowszy multimodalny model obrazu ByteDance, integrujący funkcje tekst-do-obrazu, obraz-do-obrazu i generowanie obrazów w partiach, jednocześnie uwzględniając zdrowy rozsądek i zdolności rozumowania. W porównaniu do poprzedniej wersji 4.0 oferuje znacznie lepszą jakość generowania, lepszą spójność edycji i fuzję wielu obrazów. Zapewnia bardziej precyzyjną kontrolę nad szczegółami wizualnymi, naturalnie generując małe teksty i twarze, a także osiąga bardziej harmonijny układ i kolorystykę, poprawiając estetykę ogólną.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite to najnowszy model generowania obrazów ByteDance. Po raz pierwszy integruje funkcje wyszukiwania online, co pozwala na uwzględnienie informacji w czasie rzeczywistym i poprawę aktualności generowanych obrazów. Inteligencja modelu została również ulepszona, umożliwiając precyzyjną interpretację złożonych instrukcji i treści wizualnych. Dodatkowo oferuje lepsze pokrycie globalnej wiedzy, spójność odniesień i jakość generowania w profesjonalnych scenariuszach, lepiej spełniając potrzeby wizualnej kreacji na poziomie przedsiębiorstw.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 od ByteDance to najpotężniejszy model generowania wideo, obsługujący multimodalne generowanie wideo referencyjnego, edycję wideo, rozszerzanie wideo, tekst na wideo oraz obraz na wideo z zsynchronizowanym dźwiękiem.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast od ByteDance oferuje te same możliwości co Seedance 2.0, ale z szybszymi prędkościami generowania i bardziej konkurencyjną ceną.", "emohaa.description": "Emohaa to model zdrowia psychicznego z profesjonalnymi umiejętnościami doradczymi, pomagający użytkownikom zrozumieć problemy emocjonalne.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B to lekki model open-source przeznaczony do lokalnego i dostosowanego wdrażania.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview to model podglądowy z kontekstem 8K, służący do oceny możliwości ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking to flagowy model natywny pełnomodalny z ujednoliconym modelowaniem tekstu, obrazu, dźwięku i wideo. Zapewnia szerokie ulepszenia możliwości w złożonych scenariuszach QA, twórczości i agentów.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview to flagowy model natywny pełnomodalny z ujednoliconym modelowaniem tekstu, obrazu, dźwięku i wideo. Zapewnia szerokie ulepszenia możliwości w złożonych scenariuszach QA, twórczości i agentów.", "ernie-5.0.description": "ERNIE 5.0, nowej generacji model z serii ERNIE, to natywnie multimodalny duży model. Przyjmuje zintegrowane podejście do modelowania multimodalnego, wspólnie modelując tekst, obrazy, dźwięk i wideo, aby dostarczyć kompleksowe możliwości multimodalne. Jego podstawowe zdolności zostały znacznie ulepszone, osiągając wysoką wydajność w ocenach benchmarkowych. Szczególnie wyróżnia się w zrozumieniu multimodalnym, przestrzeganiu instrukcji, twórczym pisaniu, dokładności faktograficznej, planowaniu agentów i wykorzystaniu narzędzi.", + "ernie-5.1.description": "ERNIE 5.1 to najnowszy model z serii ERNIE, oferujący kompleksowe ulepszenia swoich podstawowych możliwości. Wykazuje znaczące poprawy w takich obszarach jak agenci, przetwarzanie wiedzy, rozumowanie i głębokie wyszukiwanie. W tej wersji zastosowano odłączoną, w pełni asynchroniczną architekturę uczenia ze wzmocnieniem, zaprojektowaną specjalnie w celu rozwiązania kluczowych wyzwań związanych z ewolucją dużych modeli w kierunku autonomicznego podejmowania decyzji przez agentów, w tym rozbieżności numerycznych między treningiem a inferencją, niskiego wykorzystania heterogenicznych zasobów obliczeniowych oraz globalnych problemów spowodowanych efektami długiego ogona. Ponadto zastosowano techniki post-treningu agentów na dużą skalę, aby dodatkowo zwiększyć możliwości modelu i jego wydajność w zakresie uogólniania. Dzięki trójfazowemu współpracującemu podejściu obejmującemu środowisko, ekspertów i procesy fuzji, podejście to nie tylko zapewnia efektywność treningu, ale także znacząco poprawia stabilność i wydajność modelu w złożonych zadaniach.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview to model podglądowy do tworzenia postaci i fabuły, przeznaczony do oceny funkcji i testów.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K to model osobowościowy do powieści i tworzenia fabuły, odpowiedni do generowania długich historii.", "ernie-image-turbo.description": "ERNIE-Image to model tekst-do-obrazu o 8 miliardach parametrów opracowany przez Baidu. Zajmuje czołowe miejsca w wielu benchmarkach, osiągając ex aequo pierwsze miejsce w SuperCLUE w Chinach i prowadząc w otwartym torze open-source.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K to szybki model rozumowania z kontekstem 32K do złożonego rozumowania i dialogów wieloetapowych.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview to podgląd modelu rozumowania do oceny i testów.", "ernie-x1.1.description": "ERNIE X1.1 to model rozumowania w wersji podglądowej do oceny i testowania.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, stworzony przez zespół ByteDance Seed, obsługuje edycję i kompozycję wielu obrazów. Funkcje obejmują ulepszoną spójność obiektów, precyzyjne wykonywanie instrukcji, zrozumienie logiki przestrzennej, ekspresję estetyczną, układ plakatów i projektowanie logo z wysoką precyzją renderowania tekstu i obrazu.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, stworzony przez ByteDance Seed, obsługuje wejścia tekstowe i obrazowe do wysoce kontrolowanego, wysokiej jakości generowania obrazów na podstawie podpowiedzi.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 to model generowania obrazów firmy ByteDance Seed, obsługujący wejścia tekstowe i obrazowe oraz oferujący wysoce kontrolowalne, wysokiej jakości generowanie obrazów. Generuje obrazy na podstawie tekstowych wskazówek.", "fal-ai/flux-kontext/dev.description": "Model FLUX.1 skoncentrowany na edycji obrazów, obsługujący wejścia tekstowe i obrazowe.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] przyjmuje tekst i obrazy referencyjne jako dane wejściowe, umożliwiając lokalne edycje i złożone transformacje sceny.", "fal-ai/flux/krea.description": "Flux Krea [dev] to model generowania obrazów z estetycznym ukierunkowaniem na bardziej realistyczne, naturalne obrazy.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Potężny natywny model multimodalny do generowania obrazów.", "fal-ai/imagen4/preview.description": "Model generowania obrazów wysokiej jakości od Google.", "fal-ai/nano-banana.description": "Nano Banana to najnowszy, najszybszy i najbardziej wydajny natywny model multimodalny Google, umożliwiający generowanie i edycję obrazów w rozmowie.", - "fal-ai/qwen-image-edit.description": "Profesjonalny model edycji obrazów od zespołu Qwen, obsługujący edycje semantyczne i wyglądu, precyzyjną edycję tekstu w języku chińskim/angielskim, transfer stylu, obrót i inne.", - "fal-ai/qwen-image.description": "Potężny model generowania obrazów od zespołu Qwen z silnym renderowaniem tekstu w języku chińskim i różnorodnymi stylami wizualnymi.", + "fal-ai/qwen-image-edit.description": "Profesjonalny model edycji obrazów zespołu Qwen, który obsługuje edycje semantyczne i wyglądu, precyzyjnie edytuje tekst w języku chińskim i angielskim oraz umożliwia wysokiej jakości edycje, takie jak transfer stylu i obrót obiektów.", + "fal-ai/qwen-image.description": "Potężny model generowania obrazów zespołu Qwen, oferujący imponujące renderowanie tekstu w języku chińskim i różnorodne style wizualne.", "flux-1-schnell.description": "Model tekst-na-obraz z 12 miliardami parametrów od Black Forest Labs, wykorzystujący latent adversarial diffusion distillation do generowania wysokiej jakości obrazów w 1–4 krokach. Dorównuje zamkniętym alternatywom i jest dostępny na licencji Apache-2.0 do użytku osobistego, badawczego i komercyjnego.", "flux-dev.description": "Model generowania obrazów do badań i rozwoju o otwartym kodzie źródłowym, zoptymalizowany pod kątem niekomercyjnych badań innowacyjnych.", "flux-kontext-max.description": "Najnowocześniejsze generowanie i edycja obrazów kontekstowych, łączące tekst i obrazy dla precyzyjnych, spójnych wyników.", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash to najszybszy i najinteligentniejszy model, łączący najnowsze osiągnięcia AI z doskonałym osadzeniem w wynikach wyszukiwania.", "gemini-3-flash.description": "Gemini 3 Flash by Google — ultraszybki model z obsługą wejść multimodalnych.", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image (Nano Banana Pro) to model generowania obrazów od Google, który obsługuje również dialogi multimodalne.", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) to model generowania obrazów od Google, który obsługuje również czat multimodalny.", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) to model generowania obrazów firmy Google, który obsługuje również multimodalny czat.", "gemini-3-pro-preview.description": "Gemini 3 Pro to najpotężniejszy model agenta i kodowania nastrojów od Google, oferujący bogatsze wizualizacje i głębszą interakcję przy zaawansowanym rozumowaniu.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) to najszybszy natywny model generowania obrazów od Google z obsługą myślenia, generowaniem obrazów w rozmowach i edycją.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) oferuje jakość obrazu na poziomie Pro z prędkością Flash i obsługą czatu multimodalnego.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) to najszybszy natywny model generowania obrazów firmy Google, oferujący wsparcie dla myślenia, konwersacyjnego generowania obrazów i ich edycji.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview to najbardziej ekonomiczny model multimodalny Google, zoptymalizowany do zadań agentowych o dużej skali, tłumaczeń i przetwarzania danych.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite to najbardziej opłacalny model multimodalny Google, zoptymalizowany do zadań agentowych o dużej skali, tłumaczeń i przetwarzania danych.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview ulepsza Gemini 3 Pro, oferując lepsze zdolności rozumowania i wsparcie dla średniego poziomu myślenia.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Z radością prezentujemy Grok 4 Fast — nasz najnowszy postęp w dziedzinie modeli rozumowania o wysokiej opłacalności.", "grok-4.20-0309-non-reasoning.description": "Wariant bez rozumowania do prostych przypadków użycia.", "grok-4.20-0309-reasoning.description": "Inteligentny, błyskawiczny model, który rozumuje przed odpowiedzią.", - "grok-4.20-beta-0309-non-reasoning.description": "Wariant bezmyślowy do prostych przypadków użycia.", - "grok-4.20-beta-0309-reasoning.description": "Inteligentny, błyskawiczny model, który rozważa przed udzieleniem odpowiedzi.", "grok-4.20-multi-agent-0309.description": "Zespół 4 lub 16 agentów, doskonały w przypadkach badawczych. Obecnie nie obsługuje narzędzi po stronie klienta. Obsługuje tylko narzędzia po stronie serwera xAI (np. X Search, Web Search tools) i zdalne narzędzia MCP.", "grok-4.3.description": "Najbardziej poszukujący prawdy duży model językowy na świecie", "grok-4.description": "Najnowszy flagowy model Grok z niezrównaną wydajnością w języku, matematyce i rozumowaniu — prawdziwy wszechstronny model. Obecnie wskazuje na grok-4-0709; z powodu ograniczonych zasobów jego cena jest tymczasowo o 10% wyższa od oficjalnej i oczekuje się, że powróci do oficjalnej ceny później.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ to model rozumowania z rodziny Qwen. W porównaniu do standardowych modeli dostrojonych instrukcyjnie, oferuje zaawansowane myślenie i rozumowanie, co znacząco poprawia wydajność w zadaniach trudnych. QwQ-32B to model średniej wielkości, konkurujący z czołowymi modelami rozumowania, takimi jak DeepSeek-R1 i o1-mini.", "qwq_32b.description": "Model rozumowania średniej wielkości z rodziny Qwen. W porównaniu do standardowych modeli dostrojonych instrukcyjnie, zdolności myślenia i rozumowania QwQ znacząco poprawiają wydajność w trudnych zadaniach.", "r1-1776.description": "R1-1776 to wariant modelu DeepSeek R1 po dodatkowym treningu, zaprojektowany do dostarczania nieocenzurowanych, bezstronnych informacji faktograficznych.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro od ByteDance obsługuje tekst na wideo, obraz na wideo (pierwsza klatka, pierwsza + ostatnia klatka) oraz generowanie dźwięku zsynchronizowanego z wizualizacjami.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite od BytePlus oferuje generowanie wspomagane wyszukiwaniem w sieci w czasie rzeczywistym, ulepszoną interpretację złożonych podpowiedzi oraz poprawioną spójność odniesień do profesjonalnego tworzenia wizualnego.", "solar-mini-ja.description": "Solar Mini (Ja) rozszerza Solar Mini o nacisk na język japoński, zachowując jednocześnie wydajność w języku angielskim i koreańskim.", "solar-mini.description": "Solar Mini to kompaktowy model LLM, który przewyższa GPT-3.5, oferując silne możliwości wielojęzyczne w języku angielskim i koreańskim oraz efektywne działanie przy małych zasobach.", "solar-pro.description": "Solar Pro to inteligentny model LLM od Upstage, skoncentrowany na wykonywaniu instrukcji na pojedynczym GPU, z wynikami IFEval powyżej 80. Obecnie obsługuje język angielski; pełna wersja z rozszerzonym wsparciem językowym i dłuższym kontekstem planowana jest na listopad 2024.", diff --git a/locales/pl-PL/onboarding.json b/locales/pl-PL/onboarding.json index fd01f978f0..d4eeceb18f 100644 --- a/locales/pl-PL/onboarding.json +++ b/locales/pl-PL/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Pomiń na razie", "agent.layout.skipConfirm.title": "Pominąć konfigurację wstępną?", "agent.layout.switchMessage": "Nie masz dziś ochoty? Możesz przełączyć na {{mode}} lub {{skip}}.", + "agent.layout.switchMessageClassic": "Nie podoba Ci się dzisiaj? Możesz przełączyć się na {{mode}}.", + "agent.messenger.cta.discord": "Dodaj do Discorda", + "agent.messenger.cta.slack": "Dodaj do Slacka", + "agent.messenger.cta.telegram": "Otwórz w Telegramie", + "agent.messenger.subtitle": "Czat z Twoim agentem na Telegramie, Slacku lub Discordzie", + "agent.messenger.telegramQrCaption": "Zeskanuj aparatem telefonu", + "agent.messenger.title": "Zabierz mnie ze sobą, gdziekolwiek piszesz", "agent.modeSwitch.agent": "Konwersacyjny", "agent.modeSwitch.classic": "Klasyczny", "agent.modeSwitch.collapse": "Zwiń", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "Zapiszę to, co omówiliśmy do tej pory. Zawsze możesz wrócić i porozmawiać dalej.", "agent.wrapUp.confirm.ok": "Zakończ teraz", "agent.wrapUp.confirm.title": "Zakończyć onboarding?", + "agentPicker.allCategories": "Wszystkie", + "agentPicker.continue": "Kontynuuj", + "agentPicker.skip": "Pomiń na razie", + "agentPicker.subtitle": "Dodaj kilka do swojej biblioteki teraz — odkrywaj więcej w dowolnym momencie później.", + "agentPicker.title": "Dodajmy kilka agentów do Twojej biblioteki", + "agentPicker.title2": "Wybierz tych, którzy pasują do Twojego stylu pracy", + "agentPicker.title3": "Zawsze możesz dodać więcej później — zacznij od kilku", "back": "Wstecz", "finish": "Zaczynamy", "interests.area.business": "Biznes i strategia", diff --git a/locales/pl-PL/plugin.json b/locales/pl-PL/plugin.json index 9539ebd2b2..3e7a5974b3 100644 --- a/locales/pl-PL/plugin.json +++ b/locales/pl-PL/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} dokumentów", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} operacji", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} operacji", - "builtins.lobe-agent-documents.inspector.target.agent": "w agencie", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "w temacie", + "builtins.lobe-agent-documents.inspector.scope.agent": "w agencie", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "w temacie", "builtins.lobe-agent-documents.title": "Dokumenty agenta", "builtins.lobe-agent-management.apiName.callAgent": "Zadzwoń do agenta", "builtins.lobe-agent-management.apiName.createAgent": "Utwórz agenta", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Agent Lobe", "builtins.lobe-claude-code.agent.instruction": "Instrukcja", "builtins.lobe-claude-code.agent.result": "Wynik", + "builtins.lobe-claude-code.task.createLabel": "Tworzenie zadania: ", + "builtins.lobe-claude-code.task.getLabel": "Inspekcja zadania #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "Lista zadań", + "builtins.lobe-claude-code.task.updateCompleted": "Zakończono", + "builtins.lobe-claude-code.task.updateDeleted": "Usunięto", + "builtins.lobe-claude-code.task.updateInProgress": "Rozpoczęto", + "builtins.lobe-claude-code.task.updateLabel": "Aktualizacja zadania #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "Zresetowano", "builtins.lobe-claude-code.todoWrite.allDone": "Wszystkie zadania ukończone", "builtins.lobe-claude-code.todoWrite.currentStep": "Aktualny krok", "builtins.lobe-claude-code.todoWrite.todos": "Zadania", diff --git a/locales/pl-PL/providers.json b/locales/pl-PL/providers.json index 87cb4c8a9c..c61dde8836 100644 --- a/locales/pl-PL/providers.json +++ b/locales/pl-PL/providers.json @@ -33,7 +33,6 @@ "jina.description": "Założona w 2020 roku, Jina AI to wiodąca firma zajmująca się wyszukiwaniem AI. Jej stos wyszukiwania obejmuje modele wektorowe, rerankery i małe modele językowe do tworzenia niezawodnych, wysokiej jakości aplikacji generatywnych i multimodalnych.", "kimicodingplan.description": "Kimi Code od Moonshot AI zapewnia dostęp do modeli Kimi, w tym K2.5, do zadań związanych z kodowaniem.", "lmstudio.description": "LM Studio to aplikacja desktopowa do tworzenia i testowania LLM-ów na własnym komputerze.", - "lobehub.description": "LobeHub Cloud korzysta z oficjalnych interfejsów API do uzyskiwania dostępu do modeli AI i mierzy zużycie za pomocą Kredytów powiązanych z tokenami modeli.", "longcat.description": "LongCat to seria dużych modeli generatywnej sztucznej inteligencji, niezależnie opracowanych przez Meituan. Został zaprojektowany, aby zwiększyć produktywność wewnętrzną przedsiębiorstwa i umożliwić innowacyjne zastosowania dzięki wydajnej architekturze obliczeniowej i silnym możliwościom multimodalnym.", "minimax.description": "Założona w 2021 roku, MiniMax tworzy AI ogólnego przeznaczenia z multimodalnymi modelami bazowymi, w tym tekstowymi modelami MoE z bilionami parametrów, modelami mowy i wizji oraz aplikacjami takimi jak Hailuo AI.", "minimaxcodingplan.description": "MiniMax Token Plan zapewnia dostęp do modeli MiniMax, w tym M2.7, do zadań związanych z kodowaniem w ramach subskrypcji o stałej opłacie.", diff --git a/locales/pl-PL/subscription.json b/locales/pl-PL/subscription.json index 8b1fbbf245..81014dddc6 100644 --- a/locales/pl-PL/subscription.json +++ b/locales/pl-PL/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Włącz automatyczne doładowanie", "credits.autoTopUp.upgradeHint": "Subskrybuj płatny plan, aby włączyć automatyczne doładowanie", "credits.autoTopUp.validation.targetMustExceedThreshold": "Docelowe saldo musi być większe niż próg", + "credits.costEstimateHint.desc": "Wyświetl lekkie ostrzeżenie przed wysłaniem, gdy szacowany koszt modelu osiągnie Twój próg", + "credits.costEstimateHint.saveError": "Nie udało się zapisać ustawień alertu szacowanego kosztu", + "credits.costEstimateHint.saveSuccess": "Ustawienia alertu szacowanego kosztu zostały zapisane", + "credits.costEstimateHint.threshold": "Próg ostrzeżenia", + "credits.costEstimateHint.title": "Alert szacowanego kosztu", + "credits.costEstimateHint.validation.threshold": "Próg musi być większy lub równy 0", "credits.packages.auto": "Automatyczne", "credits.packages.charged": "Obciążono {{amount}} $", "credits.packages.expired": "Wygasło", diff --git a/locales/pl-PL/tool.json b/locales/pl-PL/tool.json index 8b77571d12..c99b072c46 100644 --- a/locales/pl-PL/tool.json +++ b/locales/pl-PL/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Już w bibliotece", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} już w bibliotece", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} już w bibliotece", + "claudeCode.askUserQuestion.escape.back": "Powrót do opcji", + "claudeCode.askUserQuestion.escape.enter": "Lub wpisz bezpośrednio", + "claudeCode.askUserQuestion.escape.placeholder": "Wpisz swoją odpowiedź tutaj…", + "claudeCode.askUserQuestion.multiSelectTag": "(wielokrotny wybór)", + "claudeCode.askUserQuestion.skip": "Pomiń", + "claudeCode.askUserQuestion.submit": "Zatwierdź", + "claudeCode.askUserQuestion.timeExpired": "Czas minął — użyto opcji 1 dla każdego pytania.", + "claudeCode.askUserQuestion.timeRemaining": "Pozostały czas: {{time}} · nieodpowiedziane pytania domyślnie wybierają opcję 1 po upływie czasu.", "codeInterpreter-legacy.error": "Błąd Wykonania", "codeInterpreter-legacy.executing": "Wykonywanie...", "codeInterpreter-legacy.files": "Pliki:", diff --git a/locales/pl-PL/topic.json b/locales/pl-PL/topic.json index b14eb3b697..f9db3f28aa 100644 --- a/locales/pl-PL/topic.json +++ b/locales/pl-PL/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Zmień nazwę tematu", "searchPlaceholder": "Szukaj tematów...", "searchResultEmpty": "Brak wyników wyszukiwania.", + "sidebar.title": "Tematy", "taskManager.agent": "Agent Zadań", "taskManager.welcome": "Zapytaj mnie o swoje zadania", "temp": "Tymczasowy", diff --git a/locales/pt-BR/chat.json b/locales/pt-BR/chat.json index bc218fa9e4..47ec747098 100644 --- a/locales/pt-BR/chat.json +++ b/locales/pt-BR/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "Adicionar mensagem de IA", "input.addUser": "Adicionar mensagem de usuário", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} créditos/M tokens", + "input.costEstimate.hint": "Custo estimado: ~{{credits}} créditos", + "input.costEstimate.inputLabel": "Entrada", + "input.costEstimate.outputLabel": "Saída", + "input.costEstimate.settingsLink": "Ajustar limite de aviso", + "input.costEstimate.tokenCount": "~{{tokens}} tokens", + "input.costEstimate.tooltip": "Estimado com base no contexto atual, ferramentas e preços do modelo. O custo real pode variar.", "input.disclaimer": "Agentes podem cometer erros. Use seu julgamento para informações críticas.", "input.errorMsg": "Falha ao enviar: {{errorMsg}}. Tente novamente ou envie mais tarde.", "input.more": "Mais", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Preparando blocos...", "upload.preview.status.pending": "Preparando para envio...", "upload.preview.status.processing": "Processando arquivo...", + "upload.validation.unsupportedFileType": "Tipo de arquivo não suportado: {{files}}. Imagens suportadas: JPG, PNG, GIF, WebP. Documentos suportados incluem PDF, Word, Excel, PowerPoint, Markdown, texto, CSV, JSON e arquivos de código.", "upload.validation.videoSizeExceeded": "O tamanho do vídeo não deve exceder 20MB. Tamanho atual: {{actualSize}}.", "viewMode.fullWidth": "Largura Total", "viewMode.normal": "Padrão", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Fechar Outros", "workingPanel.localFile.closeRight": "Fechar à Direita", "workingPanel.localFile.error": "Não foi possível carregar este arquivo", + "workingPanel.localFile.preview.raw": "Bruto", + "workingPanel.localFile.preview.render": "Visualizar", "workingPanel.localFile.truncated": "Pré-visualização do arquivo truncada para {{limit}} caracteres", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Alternar para visualização unificada", "workingPanel.review.wordWrap.disable": "Desativar quebra de linha", "workingPanel.review.wordWrap.enable": "Ativar quebra de linha", + "workingPanel.skills.empty": "Nenhuma habilidade encontrada neste projeto", + "workingPanel.skills.title": "Habilidades", "workingPanel.space": "Espaço", "workingPanel.title": "Working Panel", "you": "Você", diff --git a/locales/pt-BR/components.json b/locales/pt-BR/components.json index 76e4852782..70265c9fd5 100644 --- a/locales/pt-BR/components.json +++ b/locales/pt-BR/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Comprimento do Contexto", "ModelSwitchPanel.detail.pricing": "Preços", "ModelSwitchPanel.detail.pricing.cachedInput": "Entrada em cache ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Entrada em cache {{amount}} créditos/M tokens", + "ModelSwitchPanel.detail.pricing.credits.image": "créditos/img", + "ModelSwitchPanel.detail.pricing.credits.input": "Entrada {{amount}} créditos/M tokens", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "créditos/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "créditos/M caracteres", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "créditos/M tokens", + "ModelSwitchPanel.detail.pricing.credits.output": "Saída {{amount}} créditos/M tokens", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} créditos / imagem", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} créditos / vídeo", + "ModelSwitchPanel.detail.pricing.credits.second": "créditos/s", "ModelSwitchPanel.detail.pricing.group.audio": "Áudio", "ModelSwitchPanel.detail.pricing.group.image": "Imagem", "ModelSwitchPanel.detail.pricing.group.text": "Texto", diff --git a/locales/pt-BR/editor.json b/locales/pt-BR/editor.json index 7fb25b7afc..c743070015 100644 --- a/locales/pt-BR/editor.json +++ b/locales/pt-BR/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Comando", + "actionTag.category.projectSkill": "Habilidade do projeto", "actionTag.category.skill": "Habilidade", "actionTag.category.tool": "Ferramenta", "actionTag.tooltip.command": "Executa um comando slash no cliente antes do envio.", + "actionTag.tooltip.projectSkill": "Enviado como uma invocação de barra para que o CLI do agente execute a habilidade correspondente do projeto.", "actionTag.tooltip.skill": "Carrega um pacote de habilidades reutilizável para esta solicitação.", "actionTag.tooltip.tool": "Marca uma ferramenta que o usuário selecionou explicitamente para esta solicitação.", "actions.expand.off": "Recolher", diff --git a/locales/pt-BR/home.json b/locales/pt-BR/home.json index 132e602b71..68e73deab6 100644 --- a/locales/pt-BR/home.json +++ b/locales/pt-BR/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Ignorar", "brief.action.retry": "Tentar novamente", "brief.addFeedback": "Compartilhar feedback", + "brief.agentSignal.selfReview.applied.heading": "Atualizado", + "brief.agentSignal.selfReview.applied.summary": "{{count}} atualização de sonho foi aplicada.", + "brief.agentSignal.selfReview.applied.summary_plural": "{{count}} atualizações de sonho foram aplicadas.", + "brief.agentSignal.selfReview.applied.title": "Recursos de sonho atualizados", + "brief.agentSignal.selfReview.error.heading": "Problema", + "brief.agentSignal.selfReview.error.summary": "Alguns trabalhos não puderam ser concluídos durante este sonho.", + "brief.agentSignal.selfReview.error.title": "O sonho encontrou um problema", + "brief.agentSignal.selfReview.ideas.summary": "Notas de sonho salvas para revisão futura.", + "brief.agentSignal.selfReview.ideas.title": "Notas do sonho", + "brief.agentSignal.selfReview.proposal.heading": "Sugestão", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} sugestão de sonho precisa da sua revisão.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} sugestões de sonho precisam da sua revisão.", + "brief.agentSignal.selfReview.proposal.title": "Sugestão de sonho precisa de revisão", "brief.collapse": "Mostrar menos", "brief.commentPlaceholder": "Compartilhe seu feedback...", "brief.commentSubmit": "Enviar feedback", diff --git a/locales/pt-BR/hotkey.json b/locales/pt-BR/hotkey.json index 5dc229b2fa..0a70caa794 100644 --- a/locales/pt-BR/hotkey.json +++ b/locales/pt-BR/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Adicione a entrada atual como uma mensagem do usuário sem iniciar a geração", "addUserMessage.title": "Adicionar Mensagem do Usuário", - "clearCurrentMessages.desc": "Limpe as mensagens e arquivos enviados da conversa atual", - "clearCurrentMessages.title": "Limpar Mensagens da Conversa", "commandPalette.desc": "Abra o painel de comandos global para acesso rápido às funcionalidades", "commandPalette.title": "Painel de Comandos", "deleteAndRegenerateMessage.desc": "Excluir a última mensagem e gerar novamente", diff --git a/locales/pt-BR/models.json b/locales/pt-BR/models.json index e6833f6073..e974f0a680 100644 --- a/locales/pt-BR/models.json +++ b/locales/pt-BR/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Novo modelo de geração de vídeo com melhorias abrangentes em movimento corporal, realismo físico e seguimento de instruções.", "MiniMax-M1.description": "Um novo modelo de raciocínio interno com 80 mil cadeias de pensamento e 1 milhão de tokens de entrada, oferecendo desempenho comparável aos principais modelos globais.", "MiniMax-M2-Stable.description": "Projetado para fluxos de trabalho de codificação e agentes eficientes, com maior concorrência para uso comercial.", - "MiniMax-M2.1-Lightning.description": "Capacidades poderosas de programação multilíngue com inferência mais rápida e eficiente.", "MiniMax-M2.1-highspeed.description": "Poderosas capacidades de programação multilíngue, experiência de programação amplamente aprimorada. Mais rápido e eficiente.", "MiniMax-M2.1.description": "MiniMax-M2.1 é o principal modelo open-source da MiniMax, focado em resolver tarefas complexas do mundo real. Seus principais pontos fortes são as capacidades de programação multilíngue e a habilidade de atuar como um Agente para resolver tarefas complexas.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: Mesmo desempenho do M2.5 com inferência mais rápida.", @@ -315,7 +314,7 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku é o modelo mais rápido e compacto da Anthropic, projetado para respostas quase instantâneas com desempenho rápido e preciso.", "claude-3-opus-20240229.description": "Claude 3 Opus é o modelo mais poderoso da Anthropic para tarefas altamente complexas, com excelência em desempenho, inteligência, fluência e compreensão.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet equilibra inteligência e velocidade para cargas de trabalho empresariais, oferecendo alta utilidade com menor custo e implantação confiável em larga escala.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 é o modelo Haiku mais rápido e inteligente da Anthropic, com velocidade relâmpago e pensamento ampliado.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 é o modelo Haiku mais rápido e inteligente da Anthropic, com velocidade relâmpago e raciocínio ampliado.", "claude-haiku-4-5.description": "Claude Haiku 4.5 da Anthropic — nova geração do Haiku, com raciocínio e visão aprimorados.", "claude-haiku-4.5.description": "Claude Haiku 4.5 é o modelo Haiku mais rápido e inteligente da Anthropic, com velocidade relâmpago e raciocínio ampliado.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking é uma variante avançada que pode revelar seu processo de raciocínio.", @@ -330,7 +329,7 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 é o modelo mais inteligente da Anthropic para criação de agentes e codificação.", "claude-opus-4.6.description": "Claude Opus 4.6 é o modelo mais inteligente da Anthropic para criação de agentes e codificação.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking pode produzir respostas quase instantâneas ou pensamento passo a passo estendido com processo visível.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 é o modelo mais inteligente da Anthropic até o momento, oferecendo respostas quase instantâneas ou pensamento detalhado passo a passo com controle refinado para usuários de API.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 pode produzir respostas quase instantâneas ou raciocínio passo a passo detalhado com processo visível.", "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 é o modelo mais inteligente da Anthropic até o momento.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 da Anthropic — versão aprimorada do Sonnet com desempenho superior em programação.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 da Anthropic — última geração do Sonnet, com alta qualidade em programação e uso de ferramentas.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "O DeepSeek LLM Chat (67B) é um modelo inovador que oferece compreensão profunda da linguagem e interação.", "deepseek-ai/deepseek-v3.1-terminus.description": "O DeepSeek V3.1 é um modelo de raciocínio de nova geração com raciocínio complexo mais forte e cadeia de pensamento para tarefas de análise profunda.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 é um modelo de raciocínio de próxima geração com capacidades mais fortes de raciocínio complexo e cadeia de pensamento.", - "deepseek-chat.description": "Alias de compatibilidade para o modo sem pensamento do DeepSeek V4 Flash. Programado para descontinuação — use o DeepSeek V4 Flash.", + "deepseek-chat.description": "Um novo modelo de código aberto que combina habilidades gerais e de codificação. Ele preserva o diálogo geral do modelo de chat e a forte capacidade de codificação do modelo de programador, com melhor alinhamento de preferências. O DeepSeek-V2.5 também melhora a escrita e o seguimento de instruções.", "deepseek-coder-33B-instruct.description": "O DeepSeek Coder 33B é um modelo de linguagem para código treinado com 2 trilhões de tokens (87% código, 13% texto em chinês/inglês). Introduz uma janela de contexto de 16K e tarefas de preenchimento intermediário, oferecendo preenchimento de código em nível de projeto e inserção de trechos.", "deepseek-coder-v2.description": "O DeepSeek Coder V2 é um modelo de código MoE open-source com forte desempenho em tarefas de programação, comparável ao GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "O DeepSeek Coder V2 é um modelo de código MoE open-source com forte desempenho em tarefas de programação, comparável ao GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "Versão completa e rápida do DeepSeek R1 com busca em tempo real na web, combinando capacidade de 671B com respostas mais ágeis.", "deepseek-r1-online.description": "Versão completa do DeepSeek R1 com 671B de parâmetros e busca em tempo real na web, oferecendo compreensão e geração mais robustas.", "deepseek-r1.description": "O DeepSeek-R1 usa dados de inicialização a frio antes do RL e apresenta desempenho comparável ao OpenAI-o1 em matemática, programação e raciocínio.", - "deepseek-reasoner.description": "Alias de compatibilidade para o modo de pensamento do DeepSeek V4 Flash. Programado para descontinuação — use o DeepSeek V4 Flash.", + "deepseek-reasoner.description": "Um modelo de raciocínio DeepSeek focado em tarefas complexas de raciocínio lógico.", "deepseek-v2.description": "O DeepSeek V2 é um modelo MoE eficiente para processamento econômico.", "deepseek-v2:236b.description": "O DeepSeek V2 236B é o modelo da DeepSeek focado em código com forte geração de código.", "deepseek-v3-0324.description": "O DeepSeek-V3-0324 é um modelo MoE com 671B de parâmetros, com destaque em programação, capacidade técnica, compreensão de contexto e manipulação de textos longos.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "O Seedream 4.0 é um modelo de geração de imagem da ByteDance Seed, que suporta entradas de texto e imagem com geração de imagem altamente controlável e de alta qualidade. Gera imagens a partir de comandos de texto.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 é o mais recente modelo multimodal de imagem da ByteDance, integrando capacidades de texto-para-imagem, imagem-para-imagem e geração de imagens em lote, enquanto incorpora senso comum e habilidades de raciocínio. Comparado à versão anterior 4.0, oferece qualidade de geração significativamente melhorada, com maior consistência de edição e fusão de múltiplas imagens. Oferece controle mais preciso sobre detalhes visuais, produzindo texto pequeno e rostos pequenos de forma mais natural, além de alcançar layouts e cores mais harmoniosos, melhorando a estética geral.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite é o mais recente modelo de geração de imagens da ByteDance. Pela primeira vez, integra capacidades de recuperação online, permitindo incorporar informações da web em tempo real e melhorar a atualidade das imagens geradas. A inteligência do modelo também foi aprimorada, permitindo interpretação precisa de instruções complexas e conteúdo visual. Além disso, oferece melhor cobertura de conhecimento global, consistência de referência e qualidade de geração em cenários profissionais, atendendo melhor às necessidades de criação visual em nível empresarial.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 da ByteDance é o modelo de geração de vídeo mais poderoso, suportando geração de vídeo multimodal com referência, edição de vídeo, extensão de vídeo, texto para vídeo e imagem para vídeo com áudio sincronizado.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast da ByteDance oferece as mesmas capacidades do Seedance 2.0 com velocidades de geração mais rápidas a um preço mais competitivo.", "emohaa.description": "O Emohaa é um modelo voltado para saúde mental com habilidades profissionais de aconselhamento para ajudar os usuários a compreender questões emocionais.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B é um modelo leve de código aberto para implantação local e personalizada.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview é um modelo de pré-visualização com contexto de 8K para avaliação do ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking é um modelo nativo multimodal de ponta com modelagem unificada de texto, imagem, áudio e vídeo. Oferece amplas melhorias de capacidade para perguntas e respostas complexas, criação e cenários com agentes.", "ernie-5.0-thinking-preview.description": "Pré-visualização do Wenxin 5.0 Thinking, modelo nativo multimodal de ponta com modelagem unificada de texto, imagem, áudio e vídeo. Oferece amplas melhorias de capacidade para perguntas e respostas complexas, criação e cenários com agentes.", "ernie-5.0.description": "ERNIE 5.0, o modelo de nova geração da série ERNIE, é um modelo multimodal nativo. Ele adota uma abordagem unificada de modelagem multimodal, combinando texto, imagens, áudio e vídeo para oferecer capacidades abrangentes. Suas habilidades fundamentais foram significativamente aprimoradas, com forte desempenho em avaliações de benchmark. Destaca-se em compreensão multimodal, seguimento de instruções, escrita criativa, precisão factual, planejamento de agentes e uso de ferramentas.", + "ernie-5.1.description": "ERNIE 5.1 é o modelo mais recente da série ERNIE, com atualizações abrangentes em suas capacidades fundamentais. Ele demonstra melhorias significativas em áreas como agentes, processamento de conhecimento, raciocínio e busca profunda. Esta versão adota uma arquitetura de aprendizado por reforço totalmente assíncrona e desacoplada, projetada especificamente para abordar desafios-chave na evolução de grandes modelos em direção à tomada de decisão autônoma por agentes, incluindo discrepâncias numéricas entre treinamento e inferência, baixa utilização de recursos computacionais heterogêneos e problemas globais causados por efeitos de cauda longa. Além disso, técnicas de pós-treinamento em larga escala para agentes são empregadas para aprimorar ainda mais as capacidades e o desempenho de generalização do modelo. Por meio de uma estrutura colaborativa de três estágios envolvendo processos de ambiente, especialista e fusão, a abordagem não apenas garante eficiência no treinamento, mas também melhora significativamente a estabilidade e o desempenho do modelo em tarefas complexas.", "ernie-char-fiction-8k-preview.description": "Pré-visualização do ERNIE Character Fiction 8K, modelo para criação de personagens e enredos, voltado para avaliação e testes de recursos.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K é um modelo de personagem para romances e criação de enredos, adequado para geração de histórias longas.", "ernie-image-turbo.description": "ERNIE-Image é um modelo de texto-para-imagem de 8B parâmetros desenvolvido pela Baidu. Está entre os melhores em vários benchmarks, alcançando primeiro lugar no SuperCLUE na China e liderança na categoria open-source.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K é um modelo de raciocínio rápido com contexto de 32K para raciocínio complexo e bate-papo de múltiplas interações.", "ernie-x1.1-preview.description": "Pré-visualização do modelo de raciocínio ERNIE X1.1 para avaliação e testes.", "ernie-x1.1.description": "ERNIE X1.1 é um modelo de pensamento em pré-visualização para avaliação e testes.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, desenvolvido pela equipe Seed da ByteDance, suporta edição e composição de múltiplas imagens. Apresenta consistência aprimorada de objetos, seguimento preciso de instruções, compreensão de lógica espacial, expressão estética, layout de pôster e design de logotipo com renderização de texto-imagem de alta precisão.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, desenvolvido pela ByteDance Seed, suporta entradas de texto e imagem para geração altamente controlável e de alta qualidade a partir de prompts.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 é um modelo de geração de imagens da ByteDance Seed, que suporta entradas de texto e imagem com geração de imagens altamente controlável e de alta qualidade. Ele gera imagens a partir de comandos de texto.", "fal-ai/flux-kontext/dev.description": "Modelo FLUX.1 focado em edição de imagens, com suporte a entradas de texto e imagem.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] aceita texto e imagens de referência como entrada, permitindo edições locais direcionadas e transformações complexas de cena.", "fal-ai/flux/krea.description": "Flux Krea [dev] é um modelo de geração de imagens com viés estético para imagens mais realistas e naturais.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Um poderoso modelo multimodal nativo de geração de imagens.", "fal-ai/imagen4/preview.description": "Modelo de geração de imagens de alta qualidade do Google.", "fal-ai/nano-banana.description": "Nano Banana é o modelo multimodal nativo mais novo, rápido e eficiente do Google, permitindo geração e edição de imagens por meio de conversas.", - "fal-ai/qwen-image-edit.description": "Um modelo profissional de edição de imagens da equipe Qwen, suportando edições semânticas e de aparência, edição precisa de texto em chinês/inglês, transferência de estilo, rotação e mais.", - "fal-ai/qwen-image.description": "Um modelo poderoso de geração de imagens da equipe Qwen com forte renderização de texto em chinês e estilos visuais diversificados.", + "fal-ai/qwen-image-edit.description": "Um modelo profissional de edição de imagens da equipe Qwen que suporta edições semânticas e de aparência, edita com precisão textos em chinês e inglês, e permite edições de alta qualidade, como transferência de estilo e rotação de objetos.", + "fal-ai/qwen-image.description": "Um poderoso modelo de geração de imagens da equipe Qwen com impressionante renderização de texto em chinês e estilos visuais diversos.", "flux-1-schnell.description": "Modelo de texto para imagem com 12 bilhões de parâmetros da Black Forest Labs, usando difusão adversarial latente para gerar imagens de alta qualidade em 1 a 4 etapas. Rivaliza com alternativas fechadas e é lançado sob licença Apache-2.0 para uso pessoal, acadêmico e comercial.", "flux-dev.description": "Modelo open-source de geração de imagens para P&D, otimizado de forma eficiente para pesquisa inovadora não comercial.", "flux-kontext-max.description": "Geração e edição de imagens contextuais de última geração, combinando texto e imagens para resultados precisos e coerentes.", @@ -569,7 +566,7 @@ "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) é o modelo de geração de imagens do Google e também suporta chat multimodal.", "gemini-3-pro-preview.description": "Gemini 3 Pro é o agente mais poderoso do Google, com capacidades de codificação emocional e visuais aprimoradas, além de raciocínio de última geração.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) é o modelo de geração de imagens nativo mais rápido do Google, com suporte a raciocínio, geração e edição de imagens conversacionais.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) oferece qualidade de imagem em nível Pro com velocidade Flash e suporte a chat multimodal.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) é o modelo nativo de geração de imagens mais rápido do Google, com suporte a raciocínio, geração e edição de imagens em conversas.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview é o modelo multimodal mais econômico do Google, otimizado para tarefas agentivas de alto volume, tradução e processamento de dados.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite é o modelo multimodal mais econômico do Google, otimizado para tarefas agentivas de alto volume, tradução e processamento de dados.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview melhora o Gemini 3 Pro com capacidades de raciocínio aprimoradas e adiciona suporte a nível médio de pensamento.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Estamos entusiasmados em lançar o Grok 4 Fast, nosso mais recente avanço em modelos de raciocínio com ótimo custo-benefício.", "grok-4.20-0309-non-reasoning.description": "Variante sem raciocínio para casos de uso simples.", "grok-4.20-0309-reasoning.description": "Modelo inteligente e extremamente rápido que raciocina antes de responder.", - "grok-4.20-beta-0309-non-reasoning.description": "Uma variante sem raciocínio para casos de uso simples.", - "grok-4.20-beta-0309-reasoning.description": "Modelo inteligente e extremamente rápido que raciocina antes de responder.", "grok-4.20-multi-agent-0309.description": "Equipe de 4 ou 16 agentes. Excelente para pesquisas, sem suporte atual a ferramentas do lado do cliente. Suporta apenas ferramentas do servidor xAI (como X Search e Web Search) e ferramentas MCP remotas.", "grok-4.3.description": "O modelo de linguagem de grande porte mais comprometido com a verdade no mundo.", "grok-4.description": "O mais recente modelo Grok de ponta com desempenho incomparável em linguagem, matemática e raciocínio — um verdadeiro polivalente. Atualmente aponta para o grok-4-0709; devido a recursos limitados, está temporariamente 10% acima do preço oficial e espera-se que retorne ao preço oficial posteriormente.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ é um modelo de raciocínio da família Qwen. Em comparação com modelos ajustados por instruções padrão, oferece habilidades de pensamento e raciocínio que melhoram significativamente o desempenho em tarefas difíceis. O QwQ-32B é um modelo de porte médio que compete com os principais modelos como DeepSeek-R1 e o1-mini.", "qwq_32b.description": "Modelo de raciocínio de porte médio da família Qwen. Em comparação com modelos ajustados por instruções padrão, as habilidades de pensamento e raciocínio do QwQ aumentam significativamente o desempenho em tarefas difíceis.", "r1-1776.description": "R1-1776 é uma variante pós-treinada do DeepSeek R1 projetada para fornecer informações factuais sem censura e imparciais.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro da ByteDance suporta texto para vídeo, imagem para vídeo (primeiro quadro, primeiro+último quadro) e geração de áudio sincronizado com visuais.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite da BytePlus apresenta geração aumentada por recuperação na web para informações em tempo real, interpretação aprimorada de prompts complexos e consistência melhorada de referências para criação visual profissional.", "solar-mini-ja.description": "Solar Mini (Ja) estende o Solar Mini com foco no japonês, mantendo desempenho eficiente e forte em inglês e coreano.", "solar-mini.description": "Solar Mini é um LLM compacto que supera o GPT-3.5, com forte capacidade multilíngue suportando inglês e coreano, oferecendo uma solução eficiente e de baixo custo.", "solar-pro.description": "Solar Pro é um LLM de alta inteligência da Upstage, focado em seguir instruções em uma única GPU, com pontuações IFEval acima de 80. Atualmente suporta inglês; o lançamento completo está previsto para novembro de 2024 com suporte expandido a idiomas e contexto mais longo.", diff --git a/locales/pt-BR/onboarding.json b/locales/pt-BR/onboarding.json index de3723e2d6..26f263b700 100644 --- a/locales/pt-BR/onboarding.json +++ b/locales/pt-BR/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Pular por enquanto", "agent.layout.skipConfirm.title": "Pular a configuração inicial agora?", "agent.layout.switchMessage": "Não está no clima hoje? Você pode mudar para {{mode}} ou {{skip}}.", + "agent.layout.switchMessageClassic": "Não está gostando hoje? Você pode alternar para {{mode}}.", + "agent.messenger.cta.discord": "Adicionar ao Discord", + "agent.messenger.cta.slack": "Adicionar ao Slack", + "agent.messenger.cta.telegram": "Abrir no Telegram", + "agent.messenger.subtitle": "Converse com seu agente no Telegram, Slack ou Discord", + "agent.messenger.telegramQrCaption": "Escaneie com a câmera do seu celular", + "agent.messenger.title": "Leve-me com você, onde quer que você envie mensagens", "agent.modeSwitch.agent": "Conversacional", "agent.modeSwitch.classic": "Clássico", "agent.modeSwitch.collapse": "Recolher", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "Vou salvar o que vimos até agora. Você sempre pode voltar e conversar mais depois.", "agent.wrapUp.confirm.ok": "Finalizar agora", "agent.wrapUp.confirm.title": "Finalizar o onboarding agora?", + "agentPicker.allCategories": "Todos", + "agentPicker.continue": "Continuar", + "agentPicker.skip": "Pular por enquanto", + "agentPicker.subtitle": "Adicione alguns à sua biblioteca agora — descubra mais a qualquer momento depois.", + "agentPicker.title": "Vamos adicionar alguns agentes à sua biblioteca", + "agentPicker.title2": "Escolha os que combinam com a sua forma de trabalhar", + "agentPicker.title3": "Você sempre pode adicionar mais depois — comece com alguns", "back": "Voltar", "finish": "Começar", "interests.area.business": "Negócios e Estratégia", diff --git a/locales/pt-BR/plugin.json b/locales/pt-BR/plugin.json index a47ef38b6a..73d55ab8ad 100644 --- a/locales/pt-BR/plugin.json +++ b/locales/pt-BR/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} documentos", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} operações", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} operações", - "builtins.lobe-agent-documents.inspector.target.agent": "no agente", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "no tópico", + "builtins.lobe-agent-documents.inspector.scope.agent": "no agente", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "no tópico", "builtins.lobe-agent-documents.title": "Documentos do Agente", "builtins.lobe-agent-management.apiName.callAgent": "Agente de chamada", "builtins.lobe-agent-management.apiName.createAgent": "Criar agente", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Agente Lobe", "builtins.lobe-claude-code.agent.instruction": "Instrução", "builtins.lobe-claude-code.agent.result": "Resultado", + "builtins.lobe-claude-code.task.createLabel": "Criando tarefa: ", + "builtins.lobe-claude-code.task.getLabel": "Inspecionando tarefa #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "Listando tarefas", + "builtins.lobe-claude-code.task.updateCompleted": "Concluído", + "builtins.lobe-claude-code.task.updateDeleted": "Excluído", + "builtins.lobe-claude-code.task.updateInProgress": "Iniciado", + "builtins.lobe-claude-code.task.updateLabel": "Atualizando tarefa #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "Redefinir", "builtins.lobe-claude-code.todoWrite.allDone": "Todas as tarefas concluídas", "builtins.lobe-claude-code.todoWrite.currentStep": "Etapa atual", "builtins.lobe-claude-code.todoWrite.todos": "Tarefas", diff --git a/locales/pt-BR/providers.json b/locales/pt-BR/providers.json index 3df739cec1..e45fb62c70 100644 --- a/locales/pt-BR/providers.json +++ b/locales/pt-BR/providers.json @@ -33,7 +33,6 @@ "jina.description": "Fundada em 2020, a Jina AI é uma empresa líder em busca com IA. Sua pilha de busca inclui modelos vetoriais, reranqueadores e pequenos modelos de linguagem para construir aplicativos generativos e multimodais confiáveis e de alta qualidade.", "kimicodingplan.description": "O Kimi Code da Moonshot AI oferece acesso aos modelos Kimi, incluindo o K2.5, para tarefas de codificação.", "lmstudio.description": "O LM Studio é um aplicativo de desktop para desenvolver e experimentar com LLMs no seu computador.", - "lobehub.description": "O LobeHub Cloud utiliza APIs oficiais para acessar modelos de IA e mede o uso com Créditos vinculados aos tokens dos modelos.", "longcat.description": "LongCat é uma série de grandes modelos de IA generativa desenvolvidos de forma independente pela Meituan. Ele foi projetado para aumentar a produtividade interna da empresa e possibilitar aplicações inovadoras por meio de uma arquitetura computacional eficiente e fortes capacidades multimodais.", "minimax.description": "Fundada em 2021, a MiniMax desenvolve IA de uso geral com modelos fundamentais multimodais, incluindo modelos de texto com trilhões de parâmetros, modelos de fala e visão, além de aplicativos como o Hailuo AI.", "minimaxcodingplan.description": "O Plano de Tokens MiniMax oferece acesso aos modelos MiniMax, incluindo o M2.7, para tarefas de codificação por meio de uma assinatura de taxa fixa.", diff --git a/locales/pt-BR/subscription.json b/locales/pt-BR/subscription.json index 6ede84ffce..cabb0e1a1f 100644 --- a/locales/pt-BR/subscription.json +++ b/locales/pt-BR/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Ativar Recarga Automática", "credits.autoTopUp.upgradeHint": "Assine um plano pago para ativar a recarga automática", "credits.autoTopUp.validation.targetMustExceedThreshold": "O saldo alvo deve ser maior que o limite", + "credits.costEstimateHint.desc": "Exibir um aviso leve antes de enviar quando o custo estimado do modelo atingir seu limite", + "credits.costEstimateHint.saveError": "Falha ao salvar as configurações de alerta de estimativa de custo", + "credits.costEstimateHint.saveSuccess": "Configurações de alerta de estimativa de custo salvas", + "credits.costEstimateHint.threshold": "Limite de Aviso", + "credits.costEstimateHint.title": "Alerta de Estimativa de Custo", + "credits.costEstimateHint.validation.threshold": "O limite deve ser maior ou igual a 0", "credits.packages.auto": "Automático", "credits.packages.charged": "Cobrado R${{amount}}", "credits.packages.expired": "Expirado", diff --git a/locales/pt-BR/tool.json b/locales/pt-BR/tool.json index fc1a858758..52969edb55 100644 --- a/locales/pt-BR/tool.json +++ b/locales/pt-BR/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Já na biblioteca", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} já na biblioteca", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} já na biblioteca", + "claudeCode.askUserQuestion.escape.back": "Voltar para as opções", + "claudeCode.askUserQuestion.escape.enter": "Ou digite diretamente", + "claudeCode.askUserQuestion.escape.placeholder": "Digite sua resposta aqui…", + "claudeCode.askUserQuestion.multiSelectTag": "(seleção múltipla)", + "claudeCode.askUserQuestion.skip": "Pular", + "claudeCode.askUserQuestion.submit": "Enviar", + "claudeCode.askUserQuestion.timeExpired": "Tempo esgotado — usando a opção 1 de cada pergunta.", + "claudeCode.askUserQuestion.timeRemaining": "Tempo restante: {{time}} · perguntas não respondidas serão definidas como a opção 1 ao expirar o tempo.", "codeInterpreter-legacy.error": "Erro de Execução", "codeInterpreter-legacy.executing": "Executando...", "codeInterpreter-legacy.files": "Arquivos:", diff --git a/locales/pt-BR/topic.json b/locales/pt-BR/topic.json index 6b4d4ca155..8eb6986f88 100644 --- a/locales/pt-BR/topic.json +++ b/locales/pt-BR/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Renomear tópico", "searchPlaceholder": "Buscar Tópicos...", "searchResultEmpty": "Nenhum resultado encontrado.", + "sidebar.title": "Tópicos", "taskManager.agent": "Agente de Tarefas", "taskManager.welcome": "Pergunte-me sobre suas tarefas", "temp": "Temporário", diff --git a/locales/ru-RU/chat.json b/locales/ru-RU/chat.json index b1dfb31f2a..ef6e087dc8 100644 --- a/locales/ru-RU/chat.json +++ b/locales/ru-RU/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "Добавить сообщение от ИИ", "input.addUser": "Добавить сообщение пользователя", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} кредитов/М токенов", + "input.costEstimate.hint": "Ориентировочная стоимость: ~{{credits}} кредитов", + "input.costEstimate.inputLabel": "Ввод", + "input.costEstimate.outputLabel": "Вывод", + "input.costEstimate.settingsLink": "Настроить порог предупреждения", + "input.costEstimate.tokenCount": "~{{tokens}} токенов", + "input.costEstimate.tooltip": "Оценка на основе текущего контекста, инструментов и цен модели. Фактическая стоимость может отличаться.", "input.disclaimer": "Агенты могут ошибаться. Используйте собственное суждение для критически важной информации.", "input.errorMsg": "Не удалось отправить: {{errorMsg}}. Повторите попытку позже.", "input.more": "Ещё", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Подготовка фрагментов...", "upload.preview.status.pending": "Подготовка к загрузке...", "upload.preview.status.processing": "Обработка файла...", + "upload.validation.unsupportedFileType": "Неподдерживаемый тип файла: {{files}}. Поддерживаемые изображения: JPG, PNG, GIF, WebP. Поддерживаемые документы: PDF, Word, Excel, PowerPoint, Markdown, текст, CSV, JSON и файлы кода.", "upload.validation.videoSizeExceeded": "Размер видеофайла не должен превышать 20 МБ. Текущий размер: {{actualSize}}.", "viewMode.fullWidth": "Полная ширина", "viewMode.normal": "Стандартный", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Закрыть остальные", "workingPanel.localFile.closeRight": "Закрыть справа", "workingPanel.localFile.error": "Не удалось загрузить этот файл", + "workingPanel.localFile.preview.raw": "Сырой", + "workingPanel.localFile.preview.render": "Предпросмотр", "workingPanel.localFile.truncated": "Предварительный просмотр файла сокращен до {{limit}} символов", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Переключиться на объединенный вид", "workingPanel.review.wordWrap.disable": "Отключить перенос слов", "workingPanel.review.wordWrap.enable": "Включить перенос слов", + "workingPanel.skills.empty": "В этом проекте не найдено навыков", + "workingPanel.skills.title": "Навыки", "workingPanel.space": "Пространство", "workingPanel.title": "Working Panel", "you": "Вы", diff --git a/locales/ru-RU/components.json b/locales/ru-RU/components.json index c9eb481b8f..dcd716a927 100644 --- a/locales/ru-RU/components.json +++ b/locales/ru-RU/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Длина контекста", "ModelSwitchPanel.detail.pricing": "Цены", "ModelSwitchPanel.detail.pricing.cachedInput": "Кэшированный ввод ${{amount}}/М", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Кэшированный ввод {{amount}} кредитов/М токенов", + "ModelSwitchPanel.detail.pricing.credits.image": "кредиты/изображение", + "ModelSwitchPanel.detail.pricing.credits.input": "Ввод {{amount}} кредитов/М токенов", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "кредиты/МП", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "кредиты/М символов", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "кредиты/М токенов", + "ModelSwitchPanel.detail.pricing.credits.output": "Вывод {{amount}} кредитов/М токенов", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} кредитов / изображение", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} кредитов / видео", + "ModelSwitchPanel.detail.pricing.credits.second": "кредиты/с", "ModelSwitchPanel.detail.pricing.group.audio": "Аудио", "ModelSwitchPanel.detail.pricing.group.image": "Изображение", "ModelSwitchPanel.detail.pricing.group.text": "Текст", diff --git a/locales/ru-RU/editor.json b/locales/ru-RU/editor.json index d60cca18dd..98d223b1b0 100644 --- a/locales/ru-RU/editor.json +++ b/locales/ru-RU/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Команда", + "actionTag.category.projectSkill": "Навык проекта", "actionTag.category.skill": "Навык", "actionTag.category.tool": "Инструмент", "actionTag.tooltip.command": "Выполняет клиентскую slash-команду перед отправкой.", + "actionTag.tooltip.projectSkill": "Отправляется как вызов через слэш, чтобы CLI агента запускал соответствующий навык проекта.", "actionTag.tooltip.skill": "Загружает для этого запроса переиспользуемый пакет навыков.", "actionTag.tooltip.tool": "Помечает инструмент, который пользователь явно выбрал для этого запроса.", "actions.expand.off": "Свернуть", diff --git a/locales/ru-RU/home.json b/locales/ru-RU/home.json index 543407b921..ec084e8ce9 100644 --- a/locales/ru-RU/home.json +++ b/locales/ru-RU/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Игнорировать", "brief.action.retry": "Повторить", "brief.addFeedback": "Оставить отзыв", + "brief.agentSignal.selfReview.applied.heading": "Обновлено", + "brief.agentSignal.selfReview.applied.summary": "Применено {{count}} обновление мечты.", + "brief.agentSignal.selfReview.applied.summary_plural": "Применено {{count}} обновлений мечты.", + "brief.agentSignal.selfReview.applied.title": "Обновленные ресурсы мечты", + "brief.agentSignal.selfReview.error.heading": "Проблема", + "brief.agentSignal.selfReview.error.summary": "Некоторая работа не была завершена во время этой мечты.", + "brief.agentSignal.selfReview.error.title": "Мечта столкнулась с проблемой", + "brief.agentSignal.selfReview.ideas.summary": "Сохраненные заметки о мечте для будущего просмотра.", + "brief.agentSignal.selfReview.ideas.title": "Заметки о мечте", + "brief.agentSignal.selfReview.proposal.heading": "Предложение", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} предложение по мечте требует вашего рассмотрения.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} предложений по мечте требуют вашего рассмотрения.", + "brief.agentSignal.selfReview.proposal.title": "Предложение по мечте требует рассмотрения", "brief.collapse": "Показать меньше", "brief.commentPlaceholder": "Поделитесь своим отзывом...", "brief.commentSubmit": "Отправить отзыв", diff --git a/locales/ru-RU/hotkey.json b/locales/ru-RU/hotkey.json index c79050ed84..60783e8841 100644 --- a/locales/ru-RU/hotkey.json +++ b/locales/ru-RU/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Добавить текущий ввод как сообщение пользователя без запуска генерации", "addUserMessage.title": "Добавить сообщение пользователя", - "clearCurrentMessages.desc": "Очистить сообщения и загруженные файлы из текущего разговора", - "clearCurrentMessages.title": "Очистить сообщения разговора", "commandPalette.desc": "Открыть глобальную палитру команд для быстрого доступа к функциям", "commandPalette.title": "Палитра команд", "deleteAndRegenerateMessage.desc": "Удалить последнее сообщение и сгенерировать заново", diff --git a/locales/ru-RU/models.json b/locales/ru-RU/models.json index 101e45b4b2..1268d3d76a 100644 --- a/locales/ru-RU/models.json +++ b/locales/ru-RU/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Совершенно новая модель генерации видео с комплексными улучшениями в движении тела, физическом реализме и следовании инструкциям.", "MiniMax-M1.description": "Новая внутренняя модель рассуждений с поддержкой 80K цепочек размышлений и 1M входных токенов, обеспечивающая производительность на уровне ведущих мировых моделей.", "MiniMax-M2-Stable.description": "Создана для эффективного программирования и работы агентов, с повышенной параллельностью для коммерческого использования.", - "MiniMax-M2.1-Lightning.description": "Мощные многоязычные возможности программирования с более быстрым и эффективным выводом.", "MiniMax-M2.1-highspeed.description": "Мощные многоязычные программные возможности, всесторонне улучшенный опыт программирования. Быстрее и эффективнее.", "MiniMax-M2.1.description": "MiniMax-M2.1 — это флагманская модель с открытым исходным кодом от MiniMax, ориентированная на решение сложных задач из реального мира. Её ключевые преимущества — поддержка многозадачного программирования и способность выступать в роли интеллектуального агента.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: Та же производительность, что и у M2.5, но с ускоренным выводом.", @@ -315,11 +314,11 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku — самая быстрая и компактная модель от Anthropic, предназначенная для мгновенных ответов с высокой точностью и скоростью.", "claude-3-opus-20240229.description": "Claude 3 Opus — самая мощная модель от Anthropic для высокосложных задач, превосходящая по производительности, интеллекту, беглости и пониманию.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet сочетает интеллект и скорость для корпоративных задач, обеспечивая высокую полезность при низкой стоимости и надежное масштабируемое развертывание.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 — самая быстрая и интеллектуальная модель Haiku от Anthropic, с молниеносной скоростью и расширенным мышлением.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 — самая быстрая и умная модель Haiku от Anthropic, с молниеносной скоростью и расширенными возможностями рассуждения.", "claude-haiku-4-5.description": "Claude Haiku 4.5 от Anthropic — модель нового поколения с улучшенными возможностями рассуждения и работы с изображениями.", "claude-haiku-4.5.description": "Claude Haiku 4.5 — это самая быстрая и умная модель Haiku от Anthropic, с молниеносной скоростью и расширенными возможностями рассуждения.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking — продвинутая версия, способная демонстрировать процесс рассуждения.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 — последняя и самая мощная модель Anthropic для выполнения сложных задач, превосходящая в производительности, интеллекте, беглости и понимании.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 — новейшая и самая мощная модель Anthropic для выполнения сложных задач, превосходящая в производительности, интеллекте, беглости и понимании.", "claude-opus-4-1.description": "Claude Opus 4.1 от Anthropic — премиальная модель рассуждения с глубокими аналитическими возможностями.", "claude-opus-4-20250514.description": "Claude Opus 4 — самая мощная модель Anthropic для выполнения сложных задач, превосходящая в производительности, интеллекте, беглости и понимании.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 — флагманская модель от Anthropic, сочетающая выдающийся интеллект с масштабируемой производительностью, идеально подходящая для сложных задач, требующих высококачественных ответов и рассуждений.", @@ -330,7 +329,7 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 — это самая интеллектуальная модель Anthropic для создания агентов и программирования.", "claude-opus-4.6.description": "Claude Opus 4.6 — это самая интеллектуальная модель Anthropic для создания агентов и программирования.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking может выдавать как мгновенные ответы, так и пошаговое рассуждение с видимым процессом.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 — самая интеллектуальная модель Anthropic на сегодняшний день, предлагающая мгновенные ответы или пошаговое мышление с тонкой настройкой для пользователей API.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 может выдавать почти мгновенные ответы или пошаговые рассуждения с видимым процессом.", "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 — самая интеллектуальная модель Anthropic на сегодняшний день.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 от Anthropic — улучшенная модель Sonnet с повышенной производительностью в программировании.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 от Anthropic — последняя версия Sonnet с превосходными возможностями в программировании и использовании инструментов.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) — инновационная модель с глубоким пониманием языка и возможностью взаимодействия.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 — модель нового поколения для рассуждений, обладающая улучшенными возможностями для сложных рассуждений и цепочек размышлений, подходящая для задач глубокого анализа.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 — это модель рассуждений следующего поколения с улучшенными возможностями сложных рассуждений и цепочки размышлений.", - "deepseek-chat.description": "Алиас совместимости для режима без мышления DeepSeek V4 Flash. Планируется к устареванию — используйте DeepSeek V4 Flash.", + "deepseek-chat.description": "Новая модель с открытым исходным кодом, объединяющая общие и кодовые способности. Она сохраняет общий диалоговый стиль чат-модели и сильные навыки кодирования кодовой модели, с улучшенной согласованностью предпочтений. DeepSeek-V2.5 также улучшает навыки письма и следование инструкциям.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B — языковая модель для программирования, обученная на 2 триллионах токенов (87% кода, 13% китайского/английского текста). Поддерживает контекстное окно 16K и задачи заполнения в середине, обеспечивая автодополнение на уровне проекта и вставку фрагментов кода.", "deepseek-coder-v2.description": "DeepSeek Coder V2 — модель кода с открытым исходным кодом, демонстрирующая высокую производительность в задачах программирования, сопоставимую с GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 — модель кода с открытым исходным кодом, демонстрирующая высокую производительность в задачах программирования, сопоставимую с GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "Быстрая полная версия DeepSeek R1 с поиском в интернете в реальном времени, объединяющая возможности масштаба 671B и ускоренный отклик.", "deepseek-r1-online.description": "Полная версия DeepSeek R1 с 671B параметрами и поиском в интернете в реальном времени, обеспечивающая улучшенное понимание и генерацию.", "deepseek-r1.description": "DeepSeek-R1 использует данные холодного старта до этапа RL и демонстрирует сопоставимую с OpenAI-o1 производительность в математике, программировании и логическом мышлении.", - "deepseek-reasoner.description": "Алиас совместимости для режима мышления DeepSeek V4 Flash. Планируется к устареванию — используйте DeepSeek V4 Flash.", + "deepseek-reasoner.description": "Модель DeepSeek, ориентированная на выполнение сложных логических задач.", "deepseek-v2.description": "DeepSeek V2 — эффективная модель MoE для экономичной обработки.", "deepseek-v2:236b.description": "DeepSeek V2 236B — модель DeepSeek, ориентированная на программирование, с высокой способностью к генерации кода.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 — модель MoE с 671B параметрами, выделяющаяся в программировании, технических задачах, понимании контекста и работе с длинными текстами.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 — модель генерации изображений от ByteDance Seed, поддерживающая ввод текста и изображений с высококачественной и управляемой генерацией. Генерирует изображения по текстовым подсказкам.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 — это последняя мультимодальная модель изображений от ByteDance, объединяющая возможности преобразования текста в изображение, изображения в изображение и пакетной генерации изображений, а также включающая здравый смысл и способности к рассуждению. По сравнению с предыдущей версией 4.0, она обеспечивает значительно улучшенное качество генерации, лучшую согласованность редактирования и слияние нескольких изображений. Модель предлагает более точный контроль над визуальными деталями, естественно воспроизводя мелкий текст и лица, а также достигает более гармоничного макета и цветовой палитры, улучшая общую эстетику.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite — это последняя модель генерации изображений от ByteDance. Впервые она интегрирует возможности онлайн-поиска, что позволяет использовать информацию в реальном времени и улучшать актуальность создаваемых изображений. Интеллект модели также был обновлен, что позволяет точно интерпретировать сложные инструкции и визуальный контент. Кроме того, она предлагает улучшенное покрытие глобальных знаний, согласованность ссылок и качество генерации в профессиональных сценариях, лучше удовлетворяя потребности корпоративного визуального творчества.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 от ByteDance — самая мощная модель генерации видео, поддерживающая мультимодальную генерацию видео по ссылке, редактирование видео, расширение видео, текст-видео и изображение-видео с синхронизированным аудио.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast от ByteDance предлагает те же возможности, что и Seedance 2.0, с более высокой скоростью генерации и конкурентной ценой.", "emohaa.description": "Emohaa — модель для поддержки психического здоровья с профессиональными навыками консультирования, помогающая пользователям разобраться в эмоциональных проблемах.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B — легковесная модель с открытым исходным кодом для локального и кастомизированного развертывания.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview — модель с контекстом 8K для предварительной оценки возможностей ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking — флагманская модель с нативной полной мультимодальностью, объединяющая текст, изображение, аудио и видео. Обеспечивает широкие улучшения для сложных задач Вопрос-Ответ, творчества и агентов.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview — предварительная версия флагманской мультимодальной модели с объединением текста, изображения, аудио и видео. Обеспечивает широкие улучшения для сложных задач Вопрос-Ответ, творчества и агентов.", "ernie-5.0.description": "ERNIE 5.0 — модель нового поколения в серии ERNIE, являющаяся изначально мультимодальной. Она использует унифицированный подход к моделированию текста, изображений, аудио и видео, обеспечивая комплексные мультимодальные возможности. Базовые способности значительно улучшены, модель демонстрирует высокие результаты в бенчмарках. Особенно сильна в мультимодальном понимании, следовании инструкциям, творческом письме, фактической точности, планировании и использовании инструментов.", + "ernie-5.1.description": "ERNIE 5.1 — последняя модель серии ERNIE, с комплексными улучшениями базовых возможностей. Она демонстрирует значительные улучшения в таких областях, как агенты, обработка знаний, рассуждение и глубокий поиск. В этом выпуске используется раздельная полностью асинхронная архитектура обучения с подкреплением, специально разработанная для решения ключевых задач в эволюции больших моделей к автономному принятию решений агентами, включая числовые несоответствия между обучением и выводом, низкую эффективность использования гетерогенных вычислительных ресурсов и глобальные проблемы, вызванные эффектами длинного хвоста. Кроме того, применяются методы крупномасштабного пост-обучения агентов для дальнейшего повышения возможностей модели и её способности к обобщению. Благодаря трехэтапной совместной структуре, включающей процессы окружающей среды, экспертов и слияния, подход не только обеспечивает эффективность обучения, но и значительно улучшает стабильность и производительность модели при выполнении сложных задач.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview — предварительная модель для создания персонажей и сюжетов, предназначенная для оценки и тестирования.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K — модель персонажа для написания романов и создания сюжетов, подходит для генерации длинных историй.", "ernie-image-turbo.description": "ERNIE-Image — 8-миллиардная текст‑в‑изображение модель, разработанная Baidu. Она входит в число лучших по многим бенчмаркам, занимая первое место в SuperCLUE в Китае и лидируя в категории открытых моделей.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K — быстрая модель мышления с контекстом 32K для сложного рассуждения и многотурового общения.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview — предварительная версия модели мышления для оценки и тестирования.", "ernie-x1.1.description": "ERNIE X1.1 — это предварительная версия модели мышления для оценки и тестирования.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, созданная командой ByteDance Seed, поддерживает редактирование и композицию нескольких изображений. Обладает улучшенной согласованностью объектов, точным следованием инструкциям, пониманием пространственной логики, эстетическим выражением, дизайном постеров и логотипов с высокоточной генерацией текст-изображений.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, созданная ByteDance Seed, поддерживает текстовые и визуальные входные данные для высококонтролируемой генерации изображений высокого качества на основе подсказок.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 — модель генерации изображений от ByteDance Seed, поддерживающая ввод текста и изображений с высококонтролируемой, качественной генерацией изображений. Она создает изображения на основе текстовых запросов.", "fal-ai/flux-kontext/dev.description": "Модель FLUX.1, ориентированная на редактирование изображений, поддерживает ввод текста и изображений.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] принимает текст и эталонные изображения, позволяя выполнять локальные правки и сложные глобальные трансформации сцены.", "fal-ai/flux/krea.description": "Flux Krea [dev] — модель генерации изображений с эстетическим уклоном в сторону более реалистичных и естественных изображений.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Мощная нативная мультимодальная модель генерации изображений.", "fal-ai/imagen4/preview.description": "Модель генерации изображений высокого качества от Google.", "fal-ai/nano-banana.description": "Nano Banana — новейшая, самая быстрая и эффективная нативная мультимодальная модель от Google, поддерживающая генерацию и редактирование изображений в диалоговом режиме.", - "fal-ai/qwen-image-edit.description": "Профессиональная модель редактирования изображений от команды Qwen, поддерживающая семантические и визуальные изменения, точное редактирование текста на китайском/английском языках, перенос стиля, вращение и многое другое.", - "fal-ai/qwen-image.description": "Мощная модель генерации изображений от команды Qwen с сильной поддержкой китайского текста и разнообразными визуальными стилями.", + "fal-ai/qwen-image-edit.description": "Профессиональная модель редактирования изображений от команды Qwen, поддерживающая семантические и визуальные правки, точное редактирование текста на китайском и английском языках, а также высококачественные правки, такие как перенос стиля и вращение объектов.", + "fal-ai/qwen-image.description": "Мощная модель генерации изображений от команды Qwen с впечатляющим рендерингом текста на китайском языке и разнообразными визуальными стилями.", "flux-1-schnell.description": "Модель преобразования текста в изображение с 12 миллиардами параметров от Black Forest Labs, использующая латентную диффузию с дистилляцией для генерации качественных изображений за 1–4 шага. Конкурирует с закрытыми аналогами и распространяется по лицензии Apache-2.0 для личного, исследовательского и коммерческого использования.", "flux-dev.description": "Открытая исследовательская модель генерации изображений, оптимизированная для некоммерческих инновационных исследований.", "flux-kontext-max.description": "Передовая генерация и редактирование изображений с учётом контекста, объединяющая текст и изображения для точных и согласованных результатов.", @@ -569,7 +566,7 @@ "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) — модель генерации изображений от Google, также поддерживающая мультимодальный чат.", "gemini-3-pro-preview.description": "Gemini 3 Pro — самая мощная агентная модель от Google с поддержкой визуализации и глубокой интерактивности, основанная на передовых возможностях рассуждения.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) — это самая быстрая нативная модель генерации изображений от Google с поддержкой мышления, генерации и редактирования изображений в диалоговом режиме.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) обеспечивает качество изображений уровня Pro с высокой скоростью генерации и поддержкой мультимодального чата.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) — самая быстрая модель генерации изображений от Google с поддержкой размышлений, генерации и редактирования изображений в рамках диалога.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview — самая экономичная мультимодальная модель от Google, оптимизированная для задач с высоким объемом, перевода и обработки данных.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite — самая экономичная мультимодальная модель от Google, оптимизированная для задач с высоким объемом, перевода и обработки данных.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview улучшает Gemini 3 Pro с расширенными возможностями рассуждений и добавляет поддержку среднего уровня мышления.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Мы рады представить Grok 4 Fast — наш последний прогресс в области экономичных моделей рассуждения.", "grok-4.20-0309-non-reasoning.description": "Вариант без рассуждений для простых задач.", "grok-4.20-0309-reasoning.description": "Интеллектуальная, сверхбыстрая модель, которая размышляет перед тем, как ответить.", - "grok-4.20-beta-0309-non-reasoning.description": "Вариант без мышления для простых случаев использования.", - "grok-4.20-beta-0309-reasoning.description": "Интеллектуальная, сверхбыстрая модель, которая размышляет перед ответом.", "grok-4.20-multi-agent-0309.description": "Команда из 4 или 16 агентов. Превосходна для исследовательских задач. Пока не поддерживает клиентские инструменты. Поддерживает только серверные инструменты xAI (например, X Search, Web Search) и удалённые MCP-инструменты.", "grok-4.3.description": "Самая правдолюбивая крупная языковая модель в мире.", "grok-4.description": "Последняя флагманская модель Grok с непревзойденной производительностью в языке, математике и рассуждениях — настоящий универсал. В настоящее время указывает на grok-4-0709; из-за ограниченных ресурсов временно цена на 10% выше официальной и ожидается возвращение к официальной цене позже.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ — модель логического вывода из семейства Qwen. По сравнению со стандартными моделями, обученными на инструкциях, она обладает способностями к мышлению и логике, которые значительно улучшают производительность на сложных задачах. QwQ-32B — среднеразмерная модель, успешно конкурирующая с ведущими моделями, такими как DeepSeek-R1 и o1-mini.", "qwq_32b.description": "Среднеразмерная модель логического вывода из семейства Qwen. По сравнению со стандартными моделями, обученными на инструкциях, способности QwQ к мышлению и логике значительно повышают производительность на сложных задачах.", "r1-1776.description": "R1-1776 — дообученный вариант DeepSeek R1, предназначенный для предоставления нецензурированной, объективной и достоверной информации.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro от ByteDance поддерживает текст-видео, изображение-видео (первый кадр, первый+последний кадр) и генерацию аудио, синхронизированного с визуальными эффектами.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite от BytePlus предлагает генерацию с дополнением веб-поиска для получения актуальной информации, улучшенную интерпретацию сложных подсказок и повышенную согласованность ссылок для профессионального визуального творчества.", "solar-mini-ja.description": "Solar Mini (Ja) расширяет возможности Solar Mini с акцентом на японский язык, сохраняя при этом высокую эффективность и производительность на английском и корейском.", "solar-mini.description": "Solar Mini — компактная LLM-модель, превосходящая GPT-3.5, с мощной многоязычной поддержкой английского и корейского языков, предлагающая эффективное решение с малым объемом.", "solar-pro.description": "Solar Pro — интеллектуальная LLM-модель от Upstage, ориентированная на следование инструкциям на одном GPU, с результатами IFEval выше 80. В настоящее время поддерживает английский язык; полный релиз с расширенной языковой поддержкой и увеличенным контекстом запланирован на ноябрь 2024 года.", diff --git a/locales/ru-RU/onboarding.json b/locales/ru-RU/onboarding.json index 65d7784847..c94e55fd42 100644 --- a/locales/ru-RU/onboarding.json +++ b/locales/ru-RU/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Пропустить пока", "agent.layout.skipConfirm.title": "Пропустить вводный этап сейчас?", "agent.layout.switchMessage": "Не в настроении сегодня? Можно переключиться на {{mode}} или {{skip}}.", + "agent.layout.switchMessageClassic": "Не нравится сегодня? Вы можете переключиться на {{mode}}.", + "agent.messenger.cta.discord": "Добавить в Discord", + "agent.messenger.cta.slack": "Добавить в Slack", + "agent.messenger.cta.telegram": "Открыть в Telegram", + "agent.messenger.subtitle": "Общайтесь с вашим агентом в Telegram, Slack или Discord", + "agent.messenger.telegramQrCaption": "Сканируйте камерой телефона", + "agent.messenger.title": "Держите меня рядом, где бы вы ни общались", "agent.modeSwitch.agent": "Разговорный", "agent.modeSwitch.classic": "Классический", "agent.modeSwitch.collapse": "Свернуть", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "Я сохраню всё, что мы обсудили. Вы всегда можете вернуться и продолжить разговор позже.", "agent.wrapUp.confirm.ok": "Завершить сейчас", "agent.wrapUp.confirm.title": "Завершить ознакомление сейчас?", + "agentPicker.allCategories": "Все", + "agentPicker.continue": "Продолжить", + "agentPicker.skip": "Пропустить на сейчас", + "agentPicker.subtitle": "Добавьте несколько в свою библиотеку сейчас — откройте больше в любое время позже.", + "agentPicker.title": "Давайте добавим несколько агентов в вашу библиотеку", + "agentPicker.title2": "Выберите тех, кто соответствует вашему стилю работы", + "agentPicker.title3": "Вы всегда можете добавить больше позже — начните с нескольких", "back": "Назад", "finish": "Начать", "interests.area.business": "Бизнес и стратегия", diff --git a/locales/ru-RU/plugin.json b/locales/ru-RU/plugin.json index 233db06c6b..f2c4f974b4 100644 --- a/locales/ru-RU/plugin.json +++ b/locales/ru-RU/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} документов", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} операций", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} операций", - "builtins.lobe-agent-documents.inspector.target.agent": "в агенте", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "в теме", + "builtins.lobe-agent-documents.inspector.scope.agent": "в агенте", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "в теме", "builtins.lobe-agent-documents.title": "Документы агента", "builtins.lobe-agent-management.apiName.callAgent": "Вызвать агента", "builtins.lobe-agent-management.apiName.createAgent": "Создать агента", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Агент Lobe", "builtins.lobe-claude-code.agent.instruction": "Инструкция", "builtins.lobe-claude-code.agent.result": "Результат", + "builtins.lobe-claude-code.task.createLabel": "Создание задачи: ", + "builtins.lobe-claude-code.task.getLabel": "Просмотр задачи #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "Список задач", + "builtins.lobe-claude-code.task.updateCompleted": "Завершено", + "builtins.lobe-claude-code.task.updateDeleted": "Удалено", + "builtins.lobe-claude-code.task.updateInProgress": "Начато", + "builtins.lobe-claude-code.task.updateLabel": "Обновление задачи #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "Сброс", "builtins.lobe-claude-code.todoWrite.allDone": "Все задачи выполнены", "builtins.lobe-claude-code.todoWrite.currentStep": "Текущий шаг", "builtins.lobe-claude-code.todoWrite.todos": "Задачи", diff --git a/locales/ru-RU/providers.json b/locales/ru-RU/providers.json index d61fd0b5d4..14c784b315 100644 --- a/locales/ru-RU/providers.json +++ b/locales/ru-RU/providers.json @@ -33,7 +33,6 @@ "jina.description": "Основанная в 2020 году, Jina AI — ведущая компания в области поискового ИИ. Её стек включает векторные модели, переоценщики и малые языковые модели для создания надежных генеративных и мультимодальных поисковых приложений.", "kimicodingplan.description": "Kimi Code от Moonshot AI предоставляет доступ к моделям Kimi, включая K2.5, для выполнения задач кодирования.", "lmstudio.description": "LM Studio — это настольное приложение для разработки и экспериментов с LLM на вашем компьютере.", - "lobehub.description": "LobeHub Cloud использует официальные API для доступа к моделям ИИ и измеряет использование с помощью Кредитов, связанных с токенами моделей.", "longcat.description": "LongCat — это серия больших моделей генеративного ИИ, разработанных Meituan. Она предназначена для повышения внутренней производительности предприятия и создания инновационных приложений благодаря эффективной вычислительной архитектуре и мощным мультимодальным возможностям.", "minimax.description": "Основанная в 2021 году, MiniMax разрабатывает универсальные ИИ-модели на базе мультимодальных основ, включая текстовые модели с триллионами параметров, речевые и визуальные модели, а также приложения, такие как Hailuo AI.", "minimaxcodingplan.description": "План токенов MiniMax предоставляет доступ к моделям MiniMax, включая M2.7, для выполнения задач кодирования по подписке с фиксированной оплатой.", diff --git a/locales/ru-RU/subscription.json b/locales/ru-RU/subscription.json index 86a8054040..94e8f6573c 100644 --- a/locales/ru-RU/subscription.json +++ b/locales/ru-RU/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Включить автоматическое пополнение", "credits.autoTopUp.upgradeHint": "Подпишитесь на платный план, чтобы включить автоматическое пополнение", "credits.autoTopUp.validation.targetMustExceedThreshold": "Целевой баланс должен быть больше порога", + "credits.costEstimateHint.desc": "Показывать легкое предупреждение перед отправкой, когда предполагаемая стоимость модели достигает вашего порога", + "credits.costEstimateHint.saveError": "Не удалось сохранить настройки предупреждения о предполагаемой стоимости", + "credits.costEstimateHint.saveSuccess": "Настройки предупреждения о предполагаемой стоимости сохранены", + "credits.costEstimateHint.threshold": "Порог предупреждения", + "credits.costEstimateHint.title": "Предупреждение о предполагаемой стоимости", + "credits.costEstimateHint.validation.threshold": "Порог должен быть больше или равен 0", "credits.packages.auto": "Авто", "credits.packages.charged": "Списано ${{amount}}", "credits.packages.expired": "Истёк", diff --git a/locales/ru-RU/tool.json b/locales/ru-RU/tool.json index b215b6e31e..4bd5566bcf 100644 --- a/locales/ru-RU/tool.json +++ b/locales/ru-RU/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Уже в библиотеке", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} уже в библиотеке", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} уже в библиотеке", + "claudeCode.askUserQuestion.escape.back": "Вернуться к вариантам", + "claudeCode.askUserQuestion.escape.enter": "Или введите напрямую", + "claudeCode.askUserQuestion.escape.placeholder": "Введите ваш ответ здесь…", + "claudeCode.askUserQuestion.multiSelectTag": "(множественный выбор)", + "claudeCode.askUserQuestion.skip": "Пропустить", + "claudeCode.askUserQuestion.submit": "Отправить", + "claudeCode.askUserQuestion.timeExpired": "Время истекло — используется вариант 1 для каждого вопроса.", + "claudeCode.askUserQuestion.timeRemaining": "Оставшееся время: {{time}} · на вопросы без ответа по истечении времени будет выбран вариант 1.", "codeInterpreter-legacy.error": "Ошибка выполнения", "codeInterpreter-legacy.executing": "Выполнение...", "codeInterpreter-legacy.files": "Файлы:", diff --git a/locales/ru-RU/topic.json b/locales/ru-RU/topic.json index 473d49c94c..c8aedb8759 100644 --- a/locales/ru-RU/topic.json +++ b/locales/ru-RU/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Переименовать тему", "searchPlaceholder": "Поиск тем...", "searchResultEmpty": "Результаты не найдены.", + "sidebar.title": "Темы", "taskManager.agent": "Агент задач", "taskManager.welcome": "Спросите меня о ваших задачах", "temp": "Временный", diff --git a/locales/tr-TR/chat.json b/locales/tr-TR/chat.json index 7595afb7bb..5a99e75d9c 100644 --- a/locales/tr-TR/chat.json +++ b/locales/tr-TR/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "Yapay Zeka mesajı ekle", "input.addUser": "Kullanıcı mesajı ekle", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} kredi/M token", + "input.costEstimate.hint": "Tahmini maliyet: ~{{credits}} kredi", + "input.costEstimate.inputLabel": "Girdi", + "input.costEstimate.outputLabel": "Çıktı", + "input.costEstimate.settingsLink": "Uyarı eşiğini ayarla", + "input.costEstimate.tokenCount": "~{{tokens}} token", + "input.costEstimate.tooltip": "Mevcut bağlam, araçlar ve model fiyatlandırmasına göre tahmin edilmiştir. Gerçek maliyet değişebilir.", "input.disclaimer": "Ajanlar hata yapabilir. Kritik bilgiler için kendi yargınızı kullanın.", "input.errorMsg": "Gönderme başarısız: {{errorMsg}}. Tekrar deneyin veya daha sonra yeniden gönderin.", "input.more": "Daha Fazla", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Parçalara ayrılıyor...", "upload.preview.status.pending": "Yüklemeye hazırlanıyor...", "upload.preview.status.processing": "Dosya işleniyor...", + "upload.validation.unsupportedFileType": "Desteklenmeyen dosya türü: {{files}}. Desteklenen görseller: JPG, PNG, GIF, WebP. Desteklenen belgeler: PDF, Word, Excel, PowerPoint, Markdown, metin, CSV, JSON ve kod dosyaları.", "upload.validation.videoSizeExceeded": "Video dosya boyutu 20MB'ı geçmemelidir. Mevcut dosya boyutu {{actualSize}}.", "viewMode.fullWidth": "Tam Genişlik", "viewMode.normal": "Standart", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Diğerlerini Kapat", "workingPanel.localFile.closeRight": "Sağdakileri Kapat", "workingPanel.localFile.error": "Bu dosya yüklenemedi", + "workingPanel.localFile.preview.raw": "Ham", + "workingPanel.localFile.preview.render": "Önizleme", "workingPanel.localFile.truncated": "Dosya önizlemesi {{limit}} karakterle sınırlandırıldı", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Birleşik görünüme geç", "workingPanel.review.wordWrap.disable": "Kelime kaydırmayı devre dışı bırak", "workingPanel.review.wordWrap.enable": "Kelime kaydırmayı etkinleştir", + "workingPanel.skills.empty": "Bu projede beceri bulunamadı", + "workingPanel.skills.title": "Beceriler", "workingPanel.space": "Boşluk", "workingPanel.title": "Working Panel", "you": "Sen", diff --git a/locales/tr-TR/components.json b/locales/tr-TR/components.json index e7ff131cb0..f97bf7e6e6 100644 --- a/locales/tr-TR/components.json +++ b/locales/tr-TR/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Bağlam Uzunluğu", "ModelSwitchPanel.detail.pricing": "Fiyatlandırma", "ModelSwitchPanel.detail.pricing.cachedInput": "Önbelleğe Alınmış Girdi ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Önbelleğe alınmış giriş {{amount}} kredi/M jeton", + "ModelSwitchPanel.detail.pricing.credits.image": "kredi/img", + "ModelSwitchPanel.detail.pricing.credits.input": "Giriş {{amount}} kredi/M jeton", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "kredi/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "kredi/M karakter", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "kredi/M jeton", + "ModelSwitchPanel.detail.pricing.credits.output": "Çıkış {{amount}} kredi/M jeton", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} kredi / resim", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} kredi / video", + "ModelSwitchPanel.detail.pricing.credits.second": "kredi/sn", "ModelSwitchPanel.detail.pricing.group.audio": "Ses", "ModelSwitchPanel.detail.pricing.group.image": "Görsel", "ModelSwitchPanel.detail.pricing.group.text": "Metin", diff --git a/locales/tr-TR/editor.json b/locales/tr-TR/editor.json index 9626b865c2..8314f01de4 100644 --- a/locales/tr-TR/editor.json +++ b/locales/tr-TR/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Komut", + "actionTag.category.projectSkill": "Proje becerisi", "actionTag.category.skill": "Beceri", "actionTag.category.tool": "Araç", "actionTag.tooltip.command": "Göndermeden önce istemci tarafında bir slash komutu çalıştırır.", + "actionTag.tooltip.projectSkill": "Ajanın CLI'sinin eşleşen proje becerisini çalıştırması için bir eğik çizgi çağrısı olarak gönderilir.", "actionTag.tooltip.skill": "Bu istek için yeniden kullanılabilir bir beceri paketini yükler.", "actionTag.tooltip.tool": "Kullanıcının bu istek için açıkça seçtiği bir aracı işaretler.", "actions.expand.off": "Daralt", diff --git a/locales/tr-TR/home.json b/locales/tr-TR/home.json index 8f97503187..ebbb5fcdf7 100644 --- a/locales/tr-TR/home.json +++ b/locales/tr-TR/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Yoksay", "brief.action.retry": "Yeniden dene", "brief.addFeedback": "Geri bildirim paylaş", + "brief.agentSignal.selfReview.applied.heading": "Güncellendi", + "brief.agentSignal.selfReview.applied.summary": "{{count}} rüya güncellemesi uygulandı.", + "brief.agentSignal.selfReview.applied.summary_plural": "{{count}} rüya güncellemesi uygulandı.", + "brief.agentSignal.selfReview.applied.title": "Rüya güncellenmiş kaynaklar", + "brief.agentSignal.selfReview.error.heading": "Sorun", + "brief.agentSignal.selfReview.error.summary": "Bu rüya sırasında bazı işler tamamlanamadı.", + "brief.agentSignal.selfReview.error.title": "Rüya bir sorunla karşılaştı", + "brief.agentSignal.selfReview.ideas.summary": "Gelecekteki inceleme için rüya notları kaydedildi.", + "brief.agentSignal.selfReview.ideas.title": "Rüya notları", + "brief.agentSignal.selfReview.proposal.heading": "Öneri", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} rüya önerisi incelemenizi bekliyor.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} rüya önerisi incelemenizi bekliyor.", + "brief.agentSignal.selfReview.proposal.title": "Rüya önerisi inceleme bekliyor", "brief.collapse": "Daha az göster", "brief.commentPlaceholder": "Geri bildiriminizi paylaşın...", "brief.commentSubmit": "Geri bildirimi gönder", diff --git a/locales/tr-TR/hotkey.json b/locales/tr-TR/hotkey.json index b1479a67e6..e787f720ee 100644 --- a/locales/tr-TR/hotkey.json +++ b/locales/tr-TR/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Mevcut girdiyi kullanıcı mesajı olarak ekle, ancak oluşturmayı tetikleme", "addUserMessage.title": "Kullanıcı Mesajı Ekle", - "clearCurrentMessages.desc": "Geçerli konuşmadaki mesajları ve yüklenen dosyaları temizle", - "clearCurrentMessages.title": "Konuşma Mesajlarını Temizle", "commandPalette.desc": "Özelliklere hızlı erişim için genel komut paletini aç", "commandPalette.title": "Komut Paleti", "deleteAndRegenerateMessage.desc": "Son mesajı sil ve yeniden oluştur", diff --git a/locales/tr-TR/models.json b/locales/tr-TR/models.json index e763c6a197..564ec6e173 100644 --- a/locales/tr-TR/models.json +++ b/locales/tr-TR/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Vücut hareketi, fiziksel gerçekçilik ve talimat takibinde kapsamlı yükseltmelerle yepyeni bir video üretim modeli.", "MiniMax-M1.description": "80K düşünce zinciri ve 1M giriş desteğiyle üst düzey modellerle karşılaştırılabilir performans sunan yeni bir yerli akıl yürütme modeli.", "MiniMax-M2-Stable.description": "Ticari kullanım için daha yüksek eşzamanlılık sunan, verimli kodlama ve ajan iş akışları için tasarlanmıştır.", - "MiniMax-M2.1-Lightning.description": "Güçlü çok dilli programlama yetenekleriyle daha hızlı ve daha verimli çıkarım.", "MiniMax-M2.1-highspeed.description": "Güçlü çok dilli programlama yetenekleri, kapsamlı olarak geliştirilmiş bir programlama deneyimi. Daha hızlı ve daha verimli.", "MiniMax-M2.1.description": "MiniMax-M2.1, MiniMax tarafından geliştirilen amiral gemisi açık kaynak büyük modeldir ve karmaşık gerçek dünya görevlerini çözmeye odaklanır. Temel güçlü yönleri çok dilli programlama yetenekleri ve bir Ajan olarak karmaşık görevleri çözme becerisidir.", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: M2.5 ile aynı performans, ancak daha hızlı çıkarım.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku, Anthropic’in en hızlı ve en kompakt modelidir; anında yanıtlar için hızlı ve doğru performans sunar.", "claude-3-opus-20240229.description": "Claude 3 Opus, karmaşık görevler için Anthropic’in en güçlü modelidir; performans, zeka, akıcılık ve anlama konularında üstündür.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet, kurumsal iş yükleri için zeka ve hızı dengeler; düşük maliyetle yüksek fayda ve güvenilir büyük ölçekli dağıtım sunar.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5, Anthropic'in en hızlı ve en akıllı Haiku modeli olup, yıldırım hızında ve genişletilmiş düşünme yeteneğine sahiptir.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5, Anthropic'in en hızlı ve en akıllı Haiku modeli olup, yıldırım hızında ve gelişmiş akıl yürütme yeteneklerine sahiptir.", "claude-haiku-4-5.description": "Anthropic’in Claude Haiku 4.5 modeli — gelişmiş akıl yürütme ve görsel yeteneklere sahip yeni nesil Haiku.", "claude-haiku-4.5.description": "Claude Haiku 4.5, Anthropic'in en hızlı ve en akıllı Haiku modeli olup, yıldırım hızında ve gelişmiş akıl yürütme yeteneklerine sahiptir.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking, akıl yürütme sürecini görünür şekilde ortaya koyabilen gelişmiş bir varyanttır.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1, Anthropic'in en yeni ve en yetenekli modeli olup, performans, zeka, akıcılık ve anlama konularında üstün başarı sağlar.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1, Anthropic'in en yeni ve en yetenekli modeli olup, son derece karmaşık görevlerde performans, zeka, akıcılık ve anlayış açısından üstünlük sağlar.", "claude-opus-4-1.description": "Anthropic’in Claude Opus 4.1 modeli — derin analiz yeteneklerine sahip üst seviye akıl yürütme modeli.", - "claude-opus-4-20250514.description": "Claude Opus 4, Anthropic'in en güçlü modeli olup, performans, zeka, akıcılık ve anlama konularında üstün başarı sağlar.", + "claude-opus-4-20250514.description": "Claude Opus 4, Anthropic'in son derece karmaşık görevler için en güçlü modeli olup, performans, zeka, akıcılık ve kavrama açısından üstünlük sağlar.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5, Anthropic’in amiral gemisi modelidir; olağanüstü zeka ile ölçeklenebilir performansı birleştirir. En yüksek kaliteli yanıtlar ve akıl yürütme gerektiren karmaşık görevler için idealdir.", "claude-opus-4-5.description": "Anthropic’in Claude Opus 4.5 modeli — üst düzey akıl yürütme ve kodlama yeteneklerine sahip amiral gemisi model.", "claude-opus-4-6.description": "Anthropic’in Claude Opus 4.6 modeli — 1M bağlam penceresi ve gelişmiş akıl yürütme yetenekleriyle amiral gemisi sürümü.", @@ -330,7 +329,7 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6, Anthropic'in ajanlar oluşturma ve kodlama için en akıllı modelidir.", "claude-opus-4.6.description": "Claude Opus 4.6, Anthropic'in ajanlar oluşturma ve kodlama için en akıllı modelidir.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking, anında yanıtlar veya adım adım düşünme süreçleri üretebilir.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4, Anthropic'in bugüne kadarki en akıllı modeli olup, API kullanıcıları için ince ayarlı kontrol ile anında yanıtlar veya adım adım genişletilmiş düşünme sunar.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4, anında yanıtlar veya görünür bir süreçle adım adım düşünme yeteneği sunabilir.", "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5, Anthropic'in bugüne kadarki en akıllı modelidir.", "claude-sonnet-4-5.description": "Anthropic’in Claude Sonnet 4.5 modeli — geliştirilmiş kodlama performansıyla güçlendirilmiş Sonnet sürümü.", "claude-sonnet-4-6.description": "Anthropic’in Claude Sonnet 4.6 modeli — üstün kodlama ve araç kullanımıyla en yeni Sonnet.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B), derin dil anlama ve etkileşim sunan yenilikçi bir modeldir.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1, karmaşık akıl yürütme ve düşünce zinciriyle derin analiz görevleri için geliştirilmiş yeni nesil bir modeldir.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2, daha güçlü karmaşık akıl yürütme ve düşünce zinciri yeteneklerine sahip yeni nesil bir akıl yürütme modelidir.", - "deepseek-chat.description": "DeepSeek V4 Flash düşünme modu için uyumluluk takma adı. Kullanımdan kaldırılması planlanıyor — bunun yerine DeepSeek V4 Flash kullanın.", + "deepseek-chat.description": "Genel ve kod yeteneklerini birleştiren yeni bir açık kaynak modeli. Sohbet modelinin genel diyaloğunu ve kodlayıcı modelinin güçlü kodlama yeteneklerini korur, daha iyi tercih uyumu sağlar. DeepSeek-V2.5 ayrıca yazma ve talimatları takip etme yeteneklerini geliştirir.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B, 2T token (%%87 kod, %%13 Çince/İngilizce metin) ile eğitilmiş bir kodlama dil modelidir. 16K bağlam penceresi ve ortadan doldurma görevleri sunar; proje düzeyinde kod tamamlama ve kod parçacığı doldurma sağlar.", "deepseek-coder-v2.description": "DeepSeek Coder V2, GPT-4 Turbo ile karşılaştırılabilir güçlü performansa sahip açık kaynaklı bir MoE kod modeli.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2, GPT-4 Turbo ile karşılaştırılabilir güçlü performansa sahip açık kaynaklı bir MoE kod modeli.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "Gerçek zamanlı web aramasıyla 671B ölçekli yetenek ve hızlı yanıtları birleştiren DeepSeek R1 hızlı tam sürüm.", "deepseek-r1-online.description": "671B parametreli ve gerçek zamanlı web aramasına sahip DeepSeek R1 tam sürüm; güçlü anlama ve üretim sunar.", "deepseek-r1.description": "DeepSeek-R1, RL öncesi soğuk başlangıç verileri kullanır ve matematik, kodlama ve akıl yürütmede OpenAI-o1 ile karşılaştırılabilir performans sunar.", - "deepseek-reasoner.description": "DeepSeek V4 Flash düşünme modu için uyumluluk takma adı. Kullanımdan kaldırılması planlanıyor — bunun yerine DeepSeek V4 Flash kullanın.", + "deepseek-reasoner.description": "Karmaşık mantıksal akıl yürütme görevlerine odaklanan bir DeepSeek akıl yürütme modeli.", "deepseek-v2.description": "DeepSeek V2, maliyet etkin işlem için verimli bir MoE modelidir.", "deepseek-v2:236b.description": "DeepSeek V2 236B, güçlü kod üretimi sunan DeepSeek’in kod odaklı modelidir.", "deepseek-v3-0324.description": "DeepSeek-V3-0324, programlama ve teknik yetenek, bağlam anlama ve uzun metin işleme konularında öne çıkan 671B parametreli bir MoE modelidir.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0, ByteDance Seed tarafından geliştirilen bir görsel üretim modelidir; metin ve görsel girişlerini destekler, yüksek kaliteli ve kontrol edilebilir görseller üretir. Metin istemlerinden görseller oluşturur.", "doubao-seedream-4-5-251128.description": "Seedream 4.5, ByteDance'in en son çok modlu görüntü modelidir. Metinden görüntüye, görüntüden görüntüye ve toplu görüntü oluşturma yeteneklerini entegre ederken, sağduyu ve akıl yürütme yeteneklerini içerir. Önceki 4.0 sürümüne kıyasla, daha iyi düzenleme tutarlılığı ve çoklu görüntü birleştirme ile önemli ölçüde geliştirilmiş üretim kalitesi sunar. Görsel detaylar üzerinde daha hassas kontrol sağlar, küçük metin ve küçük yüzleri daha doğal bir şekilde üretir ve daha uyumlu düzen ve renk elde ederek genel estetiği artırır.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite, ByteDance'in en son görüntü oluşturma modelidir. İlk kez çevrimiçi bilgi alma yeteneklerini entegre ederek gerçek zamanlı web bilgilerini dahil etmesine ve oluşturulan görüntülerin zamanlamasını artırmasına olanak tanır. Modelin zekası da yükseltilmiş, karmaşık talimatları ve görsel içeriği hassas bir şekilde yorumlama yeteneği kazandırılmıştır. Ayrıca, profesyonel senaryolarda daha iyi küresel bilgi kapsamı, referans tutarlılığı ve üretim kalitesi sunarak kurumsal düzeyde görsel yaratım ihtiyaçlarını daha iyi karşılar.", - "dreamina-seedance-2-0-260128.description": "ByteDance tarafından geliştirilen Seedance 2.0, en güçlü video üretim modeli olup, çok modlu referans video üretimi, video düzenleme, video genişletme, metinden videoya ve görüntüden videoya senkronize ses ile destek sağlar.", - "dreamina-seedance-2-0-fast-260128.description": "ByteDance tarafından geliştirilen Seedance 2.0 Fast, Seedance 2.0 ile aynı yetenekleri daha hızlı üretim hızları ve daha rekabetçi fiyatlarla sunar.", "emohaa.description": "Emohaa, kullanıcıların duygusal sorunları anlamalarına yardımcı olmak için profesyonel danışmanlık yeteneklerine sahip bir ruh sağlığı modelidir.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B, yerel ve özelleştirilmiş dağıtım için açık kaynaklı hafif bir modeldir.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Önizleme, ERNIE 4.5'in değerlendirilmesi için 8K bağlam önizleme modelidir.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking, metin, görsel, ses ve video modellemesini birleştiren yerel tam modlu amiral gemisi modelidir. Karmaşık QA, içerik üretimi ve ajan senaryoları için kapsamlı yetenek geliştirmeleri sunar.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Önizleme, metin, görsel, ses ve video modellemesini birleştiren yerel tam modlu amiral gemisi modelidir. Karmaşık QA, içerik üretimi ve ajan senaryoları için kapsamlı yetenek geliştirmeleri sunar.", "ernie-5.0.description": "ERNIE 5.0, ERNIE serisinin yeni nesil modelidir ve doğal olarak çok modludur. Metin, görüntü, ses ve videoyu tek bir birleşik çok modlu modelleme yaklaşımıyla işler. Temel yetenekleri önemli ölçüde geliştirilmiş olup çok yönlü kıyaslamalarda güçlü performans sergiler. Özellikle çok modlu anlama, talimat takip etme, yaratıcı yazma, gerçeklik doğruluğu, aracı planlama ve araç kullanımı konularında üstündür.", + "ernie-5.1.description": "ERNIE 5.1, ERNIE serisinin en son modeli olup, temel yeteneklerinde kapsamlı iyileştirmeler sunar. Ajanlar, bilgi işleme, akıl yürütme ve derin arama gibi alanlarda önemli gelişmeler gösterir. Bu sürüm, büyük modellerin otonom ajan karar verme evrimiyle ilgili temel zorlukları ele almak için özel olarak tasarlanmış, ayrık tam asenkron pekiştirmeli öğrenme mimarisini benimser. Eğitim–çıkarım sayısal tutarsızlıkları, heterojen bilgi işlem kaynaklarının düşük kullanımı ve uzun kuyruk etkilerinden kaynaklanan küresel sorunlar gibi zorlukları ele alır. Ayrıca, büyük ölçekli ajan sonrası eğitim teknikleri kullanılarak modelin yetenekleri ve genelleme performansı daha da geliştirilir. Çevre, uzman ve füzyon süreçlerini içeren üç aşamalı işbirlikçi bir çerçeve aracılığıyla yaklaşım, yalnızca eğitim verimliliğini sağlamakla kalmaz, aynı zamanda karmaşık görevlerde modelin kararlılığını ve performansını önemli ölçüde artırır.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Önizleme, karakter ve hikâye oluşturma özelliklerinin değerlendirilmesi ve test edilmesi için bir önizleme modelidir.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K, romanlar ve hikâye kurgusu için kişilik odaklı bir modeldir; uzun biçimli hikâye üretimi için uygundur.", "ernie-image-turbo.description": "ERNIE-Image, Baidu tarafından geliştirilen 8B parametreli bir metinden görüntüye modelidir. Çin’de SuperCLUE dahil birçok kıyaslamada üst sıralarda yer almakta ve açık kaynak kategorisinde lider konumdadır.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K, karmaşık akıl yürütme ve çoklu dönüşlü sohbetler için 32K bağlamlı hızlı düşünme modelidir.", "ernie-x1.1-preview.description": "ERNIE X1.1 Önizleme, değerlendirme ve test için bir düşünme modeli önizlemesidir.", "ernie-x1.1.description": "ERNIE X1.1, değerlendirme ve test için bir düşünme-modeli önizlemesidir.", - "fal-ai/bytedance/seedream/v4.5.description": "ByteDance Seed ekibi tarafından geliştirilen Seedream 4.5, çoklu görüntü düzenleme ve kompozisyonu destekler. Geliştirilmiş konu tutarlılığı, hassas talimat takibi, mekansal mantık anlayışı, estetik ifade, poster düzeni ve logo tasarımı ile yüksek hassasiyetli metin-görüntü oluşturma özelliklerine sahiptir.", - "fal-ai/bytedance/seedream/v4.description": "ByteDance Seed tarafından geliştirilen Seedream 4.0, metin ve görüntü girdilerini destekleyerek, istemlerden yüksek kaliteli ve kontrol edilebilir görüntü üretimi sağlar.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, ByteDance Seed'in bir görüntü oluşturma modeli olup, metin ve görüntü girdilerini destekler ve son derece kontrol edilebilir, yüksek kaliteli görüntü oluşturma sağlar. Metin istemlerinden görüntüler oluşturur.", "fal-ai/flux-kontext/dev.description": "FLUX.1 modeli, metin ve görsel girdileri destekleyen görsel düzenleme odaklı bir modeldir.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro], metin ve referans görselleri girdi olarak alarak hedefe yönelik yerel düzenlemeler ve karmaşık sahne dönüşümleri sağlar.", "fal-ai/flux/krea.description": "Flux Krea [dev], daha gerçekçi ve doğal görseller üretmeye eğilimli estetik önyargıya sahip bir görsel üretim modelidir.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Güçlü bir yerel çok modlu görsel üretim modelidir.", "fal-ai/imagen4/preview.description": "Google tarafından geliştirilen yüksek kaliteli görsel üretim modeli.", "fal-ai/nano-banana.description": "Nano Banana, Google’ın en yeni, en hızlı ve en verimli yerel çok modlu modelidir. Konuşma yoluyla görsel üretim ve düzenleme sağlar.", - "fal-ai/qwen-image-edit.description": "Qwen ekibinden profesyonel bir görüntü düzenleme modeli olup, semantik ve görünüm düzenlemeleri, hassas Çince/İngilizce metin düzenleme, stil transferi, döndürme ve daha fazlasını destekler.", - "fal-ai/qwen-image.description": "Qwen ekibinden güçlü bir görüntü üretim modeli olup, güçlü Çince metin işleme ve çeşitli görsel stiller sunar.", + "fal-ai/qwen-image-edit.description": "Qwen ekibinden profesyonel bir görüntü düzenleme modeli olup, semantik ve görünüm düzenlemelerini destekler, Çince ve İngilizce metni hassas bir şekilde düzenler ve stil transferi ve nesne döndürme gibi yüksek kaliteli düzenlemeler sağlar.", + "fal-ai/qwen-image.description": "Qwen ekibinden güçlü bir görüntü oluşturma modeli olup, etkileyici Çince metin işleme ve çeşitli görsel stiller sunar.", "flux-1-schnell.description": "Black Forest Labs tarafından geliştirilen 12 milyar parametreli metinden görsele model. Latent adversarial diffusion distillation yöntemiyle 1-4 adımda yüksek kaliteli görseller üretir. Kapalı kaynaklı alternatiflerle rekabet eder ve kişisel, araştırma ve ticari kullanım için Apache-2.0 lisansı ile sunulur.", "flux-dev.description": "Açık kaynaklı Ar-Ge görsel üretim modelidir; ticari olmayan yenilikçi araştırmalar için verimli şekilde optimize edilmiştir.", "flux-kontext-max.description": "Metin ve görselleri birleştirerek hassas ve tutarlı sonuçlar sunan son teknoloji bağlamsal görsel üretim ve düzenleme.", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash, hız için tasarlanmış en akıllı modeldir. En son yapay zeka zekasını mükemmel arama temellendirmesiyle birleştirir.", "gemini-3-flash.description": "Google’ın Gemini 3 Flash modeli — çok hızlı ve çok modlu giriş desteğine sahiptir.", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image (Nano Banana Pro), Google'ın çok modlu diyaloğu da destekleyen görüntü oluşturma modelidir.", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro), Google'ın görüntü üretim modeli olup, çok modlu sohbeti de destekler.", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro), Google'ın görüntü oluşturma modeli olup, çok modlu sohbeti de destekler.", "gemini-3-pro-preview.description": "Gemini 3 Pro, Google’ın en güçlü ajan ve vibe-coding modelidir. En yeni akıl yürütme yeteneklerinin üzerine zengin görseller ve derin etkileşim sunar.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2), Google'ın düşünme desteği, konuşmalı görüntü oluşturma ve düzenleme özelliklerine sahip en hızlı yerel görüntü oluşturma modelidir.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2), Flash hızında Pro seviyesinde görüntü kalitesi sunar ve çok modlu sohbeti destekler.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2), Google'ın düşünme desteği, sohbet tabanlı görüntü oluşturma ve düzenleme özellikleriyle en hızlı yerel görüntü oluşturma modelidir.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview, Google'ın en maliyet etkin çok modlu modeli olup, yüksek hacimli ajan görevleri, çeviri ve veri işleme için optimize edilmiştir.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite, Google'ın en maliyet etkin çok modlu modelidir ve yüksek hacimli ajan görevleri, çeviri ve veri işleme için optimize edilmiştir.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview, Gemini 3 Pro'ya kıyasla geliştirilmiş akıl yürütme yetenekleri sunar ve orta düzey düşünme desteği ekler.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Grok 4 Fast modelimizi sunmaktan heyecan duyuyoruz; uygun maliyetli akıl yürütme modellerinde en son gelişmemizdir.", "grok-4.20-0309-non-reasoning.description": "Basit kullanım senaryoları için akıl yürütme içermeyen varyant.", "grok-4.20-0309-reasoning.description": "Yanıt vermeden önce akıl yürüten, son derece hızlı ve akıllı model.", - "grok-4.20-beta-0309-non-reasoning.description": "Basit kullanım durumları için düşünme gerektirmeyen bir varyant.", - "grok-4.20-beta-0309-reasoning.description": "Yanıt vermeden önce düşünen, son derece hızlı ve akıllı model.", "grok-4.20-multi-agent-0309.description": "4 veya 16 ajanlık bir ekip; araştırma senaryolarında üstündür. Şu anda istemci tarafı araçları desteklemez. Yalnızca xAI sunucu tarafı araçlarını (örn. X Search, Web Search araçları) ve uzak MCP araçlarını destekler.", "grok-4.3.description": "Dünyanın en doğruyu arayan büyük dil modeli", "grok-4.description": "Dil, matematik ve akıl yürütme konularında rakipsiz performansa sahip en son Grok amiral gemisi — gerçek bir çok yönlü model. Şu anda grok-4-0709'a işaret ediyor; sınırlı kaynaklar nedeniyle geçici olarak resmi fiyatlandırmadan %10 daha yüksek ve daha sonra resmi fiyatına dönmesi bekleniyor.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ, Qwen ailesine ait bir akıl yürütme modelidir. Standart talimatla eğitilmiş modellere kıyasla düşünme ve akıl yürütme yetenekleriyle özellikle zor problemler üzerinde performansı önemli ölçüde artırır. QwQ-32B, DeepSeek-R1 ve o1-mini gibi üst düzey modellerle rekabet eden orta boyutlu bir modeldir.", "qwq_32b.description": "Qwen ailesine ait orta boyutlu bir akıl yürütme modelidir. Standart talimatla eğitilmiş modellere kıyasla QwQ’nun düşünme ve akıl yürütme yetenekleri, özellikle zor problemler üzerinde performansı önemli ölçüde artırır.", "r1-1776.description": "R1-1776, sansürsüz ve tarafsız gerçek bilgi sunmak üzere DeepSeek R1 üzerine eğitilmiş bir varyanttır.", - "seedance-1-5-pro-251215.description": "ByteDance tarafından geliştirilen Seedance 1.5 Pro, metinden videoya, görüntüden videoya (ilk kare, ilk+son kare) ve görsellerle senkronize ses üretimini destekler.", - "seedream-5-0-260128.description": "BytePlus tarafından geliştirilen ByteDance-Seedream-5.0-lite, gerçek zamanlı bilgi için web arama ile zenginleştirilmiş üretim, karmaşık istem yorumlama ve profesyonel görsel oluşturma için geliştirilmiş referans tutarlılığı sağlar.", "solar-mini-ja.description": "Solar Mini (Ja), Japonca odaklı geliştirilmiş Solar Mini modelidir; İngilizce ve Korece'de de verimli ve güçlü performans sunar.", "solar-mini.description": "Solar Mini, GPT-3.5'i geride bırakan kompakt bir LLM'dir. İngilizce ve Korece destekli çok dilli yetenekleriyle verimli ve küçük boyutlu bir çözüm sunar.", "solar-pro.description": "Solar Pro, Upstage tarafından geliştirilen yüksek zekaya sahip bir LLM'dir. Tek bir GPU üzerinde talimat izleme odaklıdır ve IFEval skorları 80'in üzerindedir. Şu anda İngilizce desteklidir; tam sürüm Kasım 2024'te daha fazla dil desteği ve uzun bağlamla planlanmıştır.", diff --git a/locales/tr-TR/onboarding.json b/locales/tr-TR/onboarding.json index 52d493d1db..4e52e2d5aa 100644 --- a/locales/tr-TR/onboarding.json +++ b/locales/tr-TR/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Şimdilik atla", "agent.layout.skipConfirm.title": "Şimdilik başlangıcı atlamak istiyor musun?", "agent.layout.switchMessage": "Bugün modunda değil misin? {{mode}} ya da {{skip}} seçebilirsin.", + "agent.layout.switchMessageClassic": "Bugün böyle hissetmiyor musunuz? {{mode}} moduna geçebilirsiniz.", + "agent.messenger.cta.discord": "Discord'a Ekle", + "agent.messenger.cta.slack": "Slack'e Ekle", + "agent.messenger.cta.telegram": "Telegram'da Aç", + "agent.messenger.subtitle": "Ajanınızla Telegram, Slack veya Discord üzerinden sohbet edin", + "agent.messenger.telegramQrCaption": "Telefon kameranızla tarayın", + "agent.messenger.title": "Mesajlaştığınız her yerde beni yanınızda tutun", "agent.modeSwitch.agent": "Sohbet Odaklı", "agent.modeSwitch.classic": "Klasik", "agent.modeSwitch.collapse": "Daralt", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "Şimdiye kadar konuştuklarımızı kaydedeceğim. Daha sonra her zaman geri dönüp sohbet edebilirsiniz.", "agent.wrapUp.confirm.ok": "Şimdi bitir", "agent.wrapUp.confirm.title": "Başlatmayı şimdi bitirmek istiyor musunuz?", + "agentPicker.allCategories": "Tümü", + "agentPicker.continue": "Devam Et", + "agentPicker.skip": "Şimdilik Atla", + "agentPicker.subtitle": "Şimdi kütüphanenize birkaç tane ekleyin — daha sonra istediğiniz zaman keşfedebilirsiniz.", + "agentPicker.title": "Kütüphanenize birkaç ajan ekleyelim", + "agentPicker.title2": "Çalışma şeklinize uygun olanları seçin", + "agentPicker.title3": "Her zaman daha fazlasını ekleyebilirsiniz — birkaçıyla başlayın", "back": "Geri", "finish": "Başlayalım", "interests.area.business": "İş ve Strateji", diff --git a/locales/tr-TR/plugin.json b/locales/tr-TR/plugin.json index 498dc98c7d..9701013994 100644 --- a/locales/tr-TR/plugin.json +++ b/locales/tr-TR/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} belge", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} işlem", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} işlem", - "builtins.lobe-agent-documents.inspector.target.agent": "ajan içinde", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "konu içinde", + "builtins.lobe-agent-documents.inspector.scope.agent": "ajan içinde", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "konu içinde", "builtins.lobe-agent-documents.title": "Aracı Belgeleri", "builtins.lobe-agent-management.apiName.callAgent": "Çağrı temsilcisi", "builtins.lobe-agent-management.apiName.createAgent": "Temsilci oluştur", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Lobe Ajanı", "builtins.lobe-claude-code.agent.instruction": "Talimat", "builtins.lobe-claude-code.agent.result": "Sonuç", + "builtins.lobe-claude-code.task.createLabel": "Görev oluşturuluyor: ", + "builtins.lobe-claude-code.task.getLabel": "Görev inceleniyor #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "Görevler listeleniyor", + "builtins.lobe-claude-code.task.updateCompleted": "Tamamlandı", + "builtins.lobe-claude-code.task.updateDeleted": "Silindi", + "builtins.lobe-claude-code.task.updateInProgress": "Başlatıldı", + "builtins.lobe-claude-code.task.updateLabel": "Görev güncelleniyor #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "Sıfırla", "builtins.lobe-claude-code.todoWrite.allDone": "Tüm görevler tamamlandı", "builtins.lobe-claude-code.todoWrite.currentStep": "Geçerli adım", "builtins.lobe-claude-code.todoWrite.todos": "Yapılacaklar", diff --git a/locales/tr-TR/providers.json b/locales/tr-TR/providers.json index 7548148d43..02005f3045 100644 --- a/locales/tr-TR/providers.json +++ b/locales/tr-TR/providers.json @@ -33,7 +33,6 @@ "jina.description": "2020 yılında kurulan Jina AI, önde gelen bir arama yapay zekası şirketidir. Vektör modelleri, yeniden sıralayıcılar ve küçük dil modelleri içeren arama yığını ile güvenilir ve yüksek kaliteli üretken ve çok modlu arama uygulamaları geliştirir.", "kimicodingplan.description": "Moonshot AI'den Kimi Code, kodlama görevleri için K2.5 dahil olmak üzere Kimi modellerine erişim sağlar.", "lmstudio.description": "LM Studio, bilgisayarınızda büyük dil modelleriyle geliştirme ve denemeler yapmanızı sağlayan bir masaüstü uygulamasıdır.", - "lobehub.description": "LobeHub Cloud, resmi API'leri kullanarak yapay zeka modellerine erişir ve kullanımını model jetonlarına bağlı Kredilerle ölçer.", "longcat.description": "LongCat, Meituan tarafından bağımsız olarak geliştirilen bir dizi üretken yapay zeka büyük modelidir. Verimli bir hesaplama mimarisi ve güçlü çok modlu yetenekler aracılığıyla kurumsal iç verimliliği artırmak ve yenilikçi uygulamaları mümkün kılmak için tasarlanmıştır.", "minimax.description": "2021 yılında kurulan MiniMax, çok modlu temel modellerle genel amaçlı yapay zeka geliştirir. Trilyon parametreli MoE metin modelleri, ses ve görsel modellerin yanı sıra Hailuo AI gibi uygulamalar sunar.", "minimaxcodingplan.description": "MiniMax Token Planı, sabit ücretli bir abonelik aracılığıyla kodlama görevleri için M2.7 dahil olmak üzere MiniMax modellerine erişim sağlar.", diff --git a/locales/tr-TR/subscription.json b/locales/tr-TR/subscription.json index 82ed2c5573..846ed937ed 100644 --- a/locales/tr-TR/subscription.json +++ b/locales/tr-TR/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Otomatik Yüklemeyi Etkinleştir", "credits.autoTopUp.upgradeHint": "Otomatik yüklemeyi etkinleştirmek için ücretli bir plana abone olun", "credits.autoTopUp.validation.targetMustExceedThreshold": "Hedef bakiye eşik değerinden büyük olmalıdır", + "credits.costEstimateHint.desc": "Tahmini model maliyeti belirlediğiniz eşiğe ulaştığında gönderimden önce hafif bir uyarı göster", + "credits.costEstimateHint.saveError": "Maliyet tahmini uyarı ayarları kaydedilemedi", + "credits.costEstimateHint.saveSuccess": "Maliyet tahmini uyarı ayarları kaydedildi", + "credits.costEstimateHint.threshold": "Uyarı Eşiği", + "credits.costEstimateHint.title": "Maliyet Tahmini Uyarısı", + "credits.costEstimateHint.validation.threshold": "Eşik 0'a eşit veya daha büyük olmalıdır", "credits.packages.auto": "Otomatik", "credits.packages.charged": "${{amount}} tutarında ücret alındı", "credits.packages.expired": "Süresi Doldu", diff --git a/locales/tr-TR/tool.json b/locales/tr-TR/tool.json index 5d012c0d09..da12c7c6e3 100644 --- a/locales/tr-TR/tool.json +++ b/locales/tr-TR/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Zaten kütüphanede", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} zaten kütüphanede", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} zaten kütüphanede", + "claudeCode.askUserQuestion.escape.back": "Seçeneklere geri dön", + "claudeCode.askUserQuestion.escape.enter": "Ya da doğrudan yazın", + "claudeCode.askUserQuestion.escape.placeholder": "Cevabınızı buraya yazın…", + "claudeCode.askUserQuestion.multiSelectTag": "(çoklu seçim)", + "claudeCode.askUserQuestion.skip": "Atla", + "claudeCode.askUserQuestion.submit": "Gönder", + "claudeCode.askUserQuestion.timeExpired": "Süre doldu — her sorunun 1. seçeneği kullanılıyor.", + "claudeCode.askUserQuestion.timeRemaining": "Kalan süre: {{time}} · cevaplanmayan sorular zaman aşımında 1. seçeneğe varsayılan olarak ayarlanır.", "codeInterpreter-legacy.error": "Yürütme Hatası", "codeInterpreter-legacy.executing": "Yürütülüyor...", "codeInterpreter-legacy.files": "Dosyalar:", diff --git a/locales/tr-TR/topic.json b/locales/tr-TR/topic.json index 2a9f7afbbf..c0e3f082b9 100644 --- a/locales/tr-TR/topic.json +++ b/locales/tr-TR/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Konuyu Yeniden Adlandır", "searchPlaceholder": "Konularda Ara...", "searchResultEmpty": "Arama sonucu bulunamadı.", + "sidebar.title": "Konular", "taskManager.agent": "Görev Aracısı", "taskManager.welcome": "Görevlerin hakkında bana soru sor", "temp": "Geçici", diff --git a/locales/vi-VN/chat.json b/locales/vi-VN/chat.json index 86798dc8fa..a321d940a7 100644 --- a/locales/vi-VN/chat.json +++ b/locales/vi-VN/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "Thêm tin nhắn AI", "input.addUser": "Thêm tin nhắn người dùng", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} tín dụng/M token", + "input.costEstimate.hint": "Chi phí ước tính: ~{{credits}} tín dụng", + "input.costEstimate.inputLabel": "Đầu vào", + "input.costEstimate.outputLabel": "Đầu ra", + "input.costEstimate.settingsLink": "Điều chỉnh ngưỡng cảnh báo", + "input.costEstimate.tokenCount": "~{{tokens}} token", + "input.costEstimate.tooltip": "Ước tính từ ngữ cảnh hiện tại, công cụ và giá mô hình. Chi phí thực tế có thể thay đổi.", "input.disclaimer": "Tác nhân có thể mắc lỗi. Hãy sử dụng phán đoán của bạn với thông tin quan trọng.", "input.errorMsg": "Gửi thất bại: {{errorMsg}}. Vui lòng thử lại hoặc gửi sau.", "input.more": "Thêm", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "Đang chuẩn bị phân đoạn...", "upload.preview.status.pending": "Đang chuẩn bị tải lên...", "upload.preview.status.processing": "Đang xử lý tệp...", + "upload.validation.unsupportedFileType": "Loại tệp không được hỗ trợ: {{files}}. Hình ảnh được hỗ trợ: JPG, PNG, GIF, WebP. Các tài liệu được hỗ trợ bao gồm PDF, Word, Excel, PowerPoint, Markdown, văn bản, CSV, JSON và tệp mã.", "upload.validation.videoSizeExceeded": "Kích thước tệp video không được vượt quá 20MB. Kích thước hiện tại là {{actualSize}}.", "viewMode.fullWidth": "Toàn chiều rộng", "viewMode.normal": "Chuẩn", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "Đóng Khác", "workingPanel.localFile.closeRight": "Đóng bên Phải", "workingPanel.localFile.error": "Không thể tải tệp này", + "workingPanel.localFile.preview.raw": "Thô", + "workingPanel.localFile.preview.render": "Xem trước", "workingPanel.localFile.truncated": "Xem trước tệp bị cắt ngắn đến {{limit}} ký tự", "workingPanel.progress": "Progress", "workingPanel.progress.allCompleted": "All tasks completed", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "Chuyển sang chế độ xem hợp nhất", "workingPanel.review.wordWrap.disable": "Tắt ngắt dòng", "workingPanel.review.wordWrap.enable": "Bật ngắt dòng", + "workingPanel.skills.empty": "Không tìm thấy kỹ năng nào trong dự án này", + "workingPanel.skills.title": "Kỹ năng", "workingPanel.space": "Khoảng trống", "workingPanel.title": "Working Panel", "you": "Bạn", diff --git a/locales/vi-VN/components.json b/locales/vi-VN/components.json index eba180eec4..b5058b5389 100644 --- a/locales/vi-VN/components.json +++ b/locales/vi-VN/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "Độ dài ngữ cảnh", "ModelSwitchPanel.detail.pricing": "Giá cả", "ModelSwitchPanel.detail.pricing.cachedInput": "Đầu vào đã lưu ${{amount}}/M", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "Đầu vào được lưu trữ {{amount}} tín dụng/M tokens", + "ModelSwitchPanel.detail.pricing.credits.image": "tín dụng/hình ảnh", + "ModelSwitchPanel.detail.pricing.credits.input": "Đầu vào {{amount}} tín dụng/M tokens", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "tín dụng/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "tín dụng/M ký tự", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "tín dụng/M tokens", + "ModelSwitchPanel.detail.pricing.credits.output": "Đầu ra {{amount}} tín dụng/M tokens", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} tín dụng / hình ảnh", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} tín dụng / video", + "ModelSwitchPanel.detail.pricing.credits.second": "tín dụng/giây", "ModelSwitchPanel.detail.pricing.group.audio": "Âm thanh", "ModelSwitchPanel.detail.pricing.group.image": "Hình ảnh", "ModelSwitchPanel.detail.pricing.group.text": "Văn bản", diff --git a/locales/vi-VN/editor.json b/locales/vi-VN/editor.json index 58ddfde407..acabfe9099 100644 --- a/locales/vi-VN/editor.json +++ b/locales/vi-VN/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "Lệnh", + "actionTag.category.projectSkill": "Kỹ năng dự án", "actionTag.category.skill": "Kỹ năng", "actionTag.category.tool": "Công cụ", "actionTag.tooltip.command": "Chạy lệnh slash phía client trước khi gửi.", + "actionTag.tooltip.projectSkill": "Được gửi dưới dạng lệnh gạch chéo để CLI của tác nhân chạy kỹ năng dự án tương ứng.", "actionTag.tooltip.skill": "Tải gói kỹ năng có thể tái sử dụng cho yêu cầu này.", "actionTag.tooltip.tool": "Đánh dấu công cụ mà người dùng đã chọn rõ ràng cho yêu cầu này.", "actions.expand.off": "Thu gọn", diff --git a/locales/vi-VN/home.json b/locales/vi-VN/home.json index acda768800..53e61bd315 100644 --- a/locales/vi-VN/home.json +++ b/locales/vi-VN/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "Bỏ qua", "brief.action.retry": "Thử lại", "brief.addFeedback": "Gửi phản hồi", + "brief.agentSignal.selfReview.applied.heading": "Đã cập nhật", + "brief.agentSignal.selfReview.applied.summary": "Đã áp dụng {{count}} cập nhật giấc mơ.", + "brief.agentSignal.selfReview.applied.summary_plural": "Đã áp dụng {{count}} cập nhật giấc mơ.", + "brief.agentSignal.selfReview.applied.title": "Tài nguyên giấc mơ đã được cập nhật", + "brief.agentSignal.selfReview.error.heading": "Vấn đề", + "brief.agentSignal.selfReview.error.summary": "Một số công việc không thể hoàn thành trong giấc mơ này.", + "brief.agentSignal.selfReview.error.title": "Giấc mơ gặp vấn đề", + "brief.agentSignal.selfReview.ideas.summary": "Đã lưu ghi chú giấc mơ để xem lại sau.", + "brief.agentSignal.selfReview.ideas.title": "Ghi chú giấc mơ", + "brief.agentSignal.selfReview.proposal.heading": "Đề xuất", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} đề xuất giấc mơ cần bạn xem xét.", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} đề xuất giấc mơ cần bạn xem xét.", + "brief.agentSignal.selfReview.proposal.title": "Đề xuất giấc mơ cần được xem xét", "brief.collapse": "Thu gọn", "brief.commentPlaceholder": "Chia sẻ phản hồi của bạn...", "brief.commentSubmit": "Gửi phản hồi", diff --git a/locales/vi-VN/hotkey.json b/locales/vi-VN/hotkey.json index e3209c940f..02fb2c468a 100644 --- a/locales/vi-VN/hotkey.json +++ b/locales/vi-VN/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "Thêm nội dung hiện tại dưới dạng tin nhắn người dùng mà không kích hoạt tạo phản hồi", "addUserMessage.title": "Thêm Tin Nhắn Người Dùng", - "clearCurrentMessages.desc": "Xóa các tin nhắn và tệp đã tải lên trong cuộc trò chuyện hiện tại", - "clearCurrentMessages.title": "Xóa Tin Nhắn Cuộc Trò Chuyện", "commandPalette.desc": "Mở bảng lệnh toàn cục để truy cập nhanh các tính năng", "commandPalette.title": "Bảng Lệnh", "deleteAndRegenerateMessage.desc": "Xóa tin nhắn cuối cùng và tạo lại", diff --git a/locales/vi-VN/models.json b/locales/vi-VN/models.json index 7669a8cae8..6d0d37f5d5 100644 --- a/locales/vi-VN/models.json +++ b/locales/vi-VN/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "Mô hình tạo video hoàn toàn mới với các nâng cấp toàn diện về chuyển động cơ thể, tính hiện thực vật lý và tuân thủ hướng dẫn.", "MiniMax-M1.description": "Mô hình suy luận nội bộ mới với 80K chuỗi suy nghĩ và đầu vào 1M, đạt hiệu suất tương đương các mô hình hàng đầu toàn cầu.", "MiniMax-M2-Stable.description": "Được xây dựng cho lập trình hiệu quả và quy trình tác tử, với khả năng đồng thời cao hơn cho mục đích thương mại.", - "MiniMax-M2.1-Lightning.description": "Khả năng lập trình đa ngôn ngữ mạnh mẽ với suy luận nhanh hơn và hiệu quả hơn.", "MiniMax-M2.1-highspeed.description": "Khả năng lập trình đa ngôn ngữ mạnh mẽ, trải nghiệm lập trình được nâng cấp toàn diện. Nhanh hơn và hiệu quả hơn.", "MiniMax-M2.1.description": "Khả năng lập trình đa ngôn ngữ mạnh mẽ, trải nghiệm lập trình được nâng cấp toàn diện", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed: Hiệu suất tương tự như M2.5 với suy luận nhanh hơn.", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku là mô hình nhanh nhất và nhỏ gọn nhất của Anthropic, được thiết kế cho phản hồi gần như tức thì với hiệu suất nhanh và chính xác.", "claude-3-opus-20240229.description": "Claude 3 Opus là mô hình mạnh mẽ nhất của Anthropic cho các tác vụ phức tạp, xuất sắc về hiệu suất, trí tuệ, lưu loát và hiểu biết.", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet cân bằng giữa trí tuệ và tốc độ cho khối lượng công việc doanh nghiệp, mang lại giá trị cao với chi phí thấp hơn và triển khai quy mô lớn đáng tin cậy.", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 là mô hình Haiku nhanh nhất và thông minh nhất của Anthropic, với tốc độ vượt trội và khả năng tư duy mở rộng.", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 là mô hình Haiku nhanh nhất và thông minh nhất của Anthropic, với tốc độ cực nhanh và khả năng suy luận mở rộng.", "claude-haiku-4-5.description": "Claude Haiku 4.5 của Anthropic — Haiku thế hệ mới với khả năng lý luận và thị giác nâng cao.", "claude-haiku-4.5.description": "Claude Haiku 4.5 là mô hình Haiku nhanh nhất và thông minh nhất của Anthropic, với tốc độ vượt trội và khả năng suy luận mở rộng.", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking là biến thể nâng cao có thể hiển thị quá trình suy luận của nó.", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 là mô hình mới nhất và mạnh mẽ nhất của Anthropic dành cho các nhiệm vụ phức tạp, vượt trội về hiệu suất, trí tuệ, sự lưu loát và khả năng hiểu biết.", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 là mô hình mới nhất và mạnh mẽ nhất của Anthropic dành cho các nhiệm vụ phức tạp cao, vượt trội về hiệu suất, trí thông minh, sự lưu loát và khả năng hiểu biết.", "claude-opus-4-1.description": "Claude Opus 4.1 của Anthropic — mô hình lý luận cao cấp với khả năng phân tích sâu.", - "claude-opus-4-20250514.description": "Claude Opus 4 là mô hình mạnh mẽ nhất của Anthropic dành cho các nhiệm vụ phức tạp, vượt trội về hiệu suất, trí tuệ, sự lưu loát và khả năng hiểu biết.", + "claude-opus-4-20250514.description": "Claude Opus 4 là mô hình mạnh mẽ nhất của Anthropic dành cho các nhiệm vụ phức tạp cao, vượt trội về hiệu suất, trí thông minh, sự lưu loát và khả năng hiểu.", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 là mô hình hàng đầu của Anthropic, kết hợp trí tuệ vượt trội với hiệu suất có thể mở rộng, lý tưởng cho các tác vụ phức tạp đòi hỏi phản hồi và suy luận chất lượng cao nhất.", "claude-opus-4-5.description": "Claude Opus 4.5 của Anthropic — mô hình hàng đầu với khả năng lý luận và mã hóa đỉnh cao.", "claude-opus-4-6.description": "Claude Opus 4.6 của Anthropic — mô hình hàng đầu với cửa sổ ngữ cảnh 1 triệu và khả năng lý luận nâng cao.", @@ -330,7 +329,7 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 là mô hình thông minh nhất của Anthropic dành cho việc xây dựng các tác nhân và lập trình.", "claude-opus-4.6.description": "Claude Opus 4.6 là mô hình thông minh nhất của Anthropic dành cho việc xây dựng các tác nhân và lập trình.", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking có thể tạo phản hồi gần như tức thì hoặc suy luận từng bước mở rộng với quy trình hiển thị.", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 là mô hình thông minh nhất của Anthropic cho đến nay, cung cấp phản hồi gần như tức thì hoặc tư duy từng bước mở rộng với khả năng kiểm soát chi tiết cho người dùng API.", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 có thể tạo ra các phản hồi gần như tức thì hoặc suy nghĩ từng bước mở rộng với quy trình hiển thị rõ ràng.", "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 là mô hình thông minh nhất của Anthropic cho đến nay.", "claude-sonnet-4-5.description": "Claude Sonnet 4.5 của Anthropic — Sonnet được cải tiến với hiệu suất mã hóa nâng cao.", "claude-sonnet-4-6.description": "Claude Sonnet 4.6 của Anthropic — Sonnet mới nhất với khả năng mã hóa và sử dụng công cụ vượt trội.", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat (67B) là một mô hình sáng tạo cung cấp khả năng hiểu và tương tác ngôn ngữ sâu sắc.", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 là mô hình suy luận thế hệ mới với khả năng suy luận phức tạp mạnh mẽ và chuỗi suy nghĩ cho các tác vụ phân tích chuyên sâu.", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 là mô hình suy luận thế hệ mới với khả năng suy luận phức tạp mạnh mẽ và tư duy chuỗi.", - "deepseek-chat.description": "Tên thay thế tương thích cho chế độ không tư duy của DeepSeek V4 Flash. Dự kiến sẽ bị loại bỏ — hãy sử dụng DeepSeek V4 Flash thay thế.", + "deepseek-chat.description": "Một mô hình mã nguồn mở mới kết hợp khả năng tổng quát và mã hóa. Nó duy trì đối thoại tổng quát của mô hình trò chuyện và khả năng mã hóa mạnh mẽ của mô hình lập trình, với sự căn chỉnh sở thích tốt hơn. DeepSeek-V2.5 cũng cải thiện khả năng viết và tuân thủ hướng dẫn.", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B là mô hình ngôn ngữ lập trình được huấn luyện trên 2 nghìn tỷ token (87% mã nguồn, 13% văn bản tiếng Trung/Anh). Mô hình này hỗ trợ cửa sổ ngữ cảnh 16K và nhiệm vụ điền vào giữa đoạn mã, cung cấp khả năng hoàn thành mã ở cấp độ dự án và chèn đoạn mã chính xác.", "deepseek-coder-v2.description": "DeepSeek Coder V2 là mô hình mã nguồn MoE mã nguồn mở với hiệu suất mạnh mẽ trong các tác vụ lập trình, có thể so sánh với GPT-4 Turbo.", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 là mô hình mã nguồn MoE mã nguồn mở với hiệu suất mạnh mẽ trong các tác vụ lập trình, có thể so sánh với GPT-4 Turbo.", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "Phiên bản đầy đủ DeepSeek R1 nhanh với tìm kiếm web thời gian thực, kết hợp khả năng 671B và phản hồi nhanh hơn.", "deepseek-r1-online.description": "Phiên bản đầy đủ DeepSeek R1 với 671B tham số và tìm kiếm web thời gian thực, mang lại khả năng hiểu và tạo nội dung mạnh mẽ hơn.", "deepseek-r1.description": "DeepSeek-R1 sử dụng dữ liệu khởi động lạnh trước khi áp dụng học tăng cường và đạt hiệu suất tương đương OpenAI-o1 trong các tác vụ toán học, lập trình và suy luận.", - "deepseek-reasoner.description": "Tên thay thế tương thích cho chế độ tư duy của DeepSeek V4 Flash. Dự kiến sẽ bị loại bỏ — hãy sử dụng DeepSeek V4 Flash thay thế.", + "deepseek-reasoner.description": "Một mô hình suy luận DeepSeek tập trung vào các nhiệm vụ suy luận logic phức tạp.", "deepseek-v2.description": "DeepSeek V2 là mô hình MoE hiệu quả cho xử lý tiết kiệm chi phí.", "deepseek-v2:236b.description": "DeepSeek V2 236B là mô hình tập trung vào mã nguồn của DeepSeek với khả năng tạo mã mạnh mẽ.", "deepseek-v3-0324.description": "DeepSeek-V3-0324 là mô hình MoE với 671B tham số, nổi bật về lập trình, khả năng kỹ thuật, hiểu ngữ cảnh và xử lý văn bản dài.", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 là mô hình tạo hình ảnh từ ByteDance Seed, hỗ trợ đầu vào văn bản và hình ảnh với khả năng tạo hình ảnh chất lượng cao, dễ kiểm soát. Mô hình tạo hình ảnh từ văn bản gợi ý.", "doubao-seedream-4-5-251128.description": "Seedream 4.5 là mô hình hình ảnh đa phương thức mới nhất của ByteDance, tích hợp khả năng tạo hình ảnh từ văn bản, chỉnh sửa hình ảnh và tạo hình ảnh hàng loạt, đồng thời kết hợp khả năng suy luận và kiến thức thông thường. So với phiên bản 4.0 trước đó, nó mang lại chất lượng tạo hình ảnh được cải thiện đáng kể, với sự nhất quán chỉnh sửa tốt hơn và khả năng hợp nhất nhiều hình ảnh. Nó cung cấp khả năng kiểm soát chi tiết hình ảnh chính xác hơn, tạo ra văn bản nhỏ và khuôn mặt nhỏ một cách tự nhiên hơn, và đạt được bố cục và màu sắc hài hòa hơn, nâng cao tính thẩm mỹ tổng thể.", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite là mô hình tạo hình ảnh mới nhất của ByteDance. Lần đầu tiên, nó tích hợp khả năng truy xuất trực tuyến, cho phép kết hợp thông tin web theo thời gian thực và nâng cao tính kịp thời của hình ảnh được tạo. Trí tuệ của mô hình cũng được nâng cấp, cho phép diễn giải chính xác các hướng dẫn phức tạp và nội dung hình ảnh. Ngoài ra, nó cung cấp phạm vi kiến thức toàn cầu được cải thiện, tính nhất quán tham chiếu và chất lượng tạo hình ảnh trong các tình huống chuyên nghiệp, đáp ứng tốt hơn nhu cầu sáng tạo hình ảnh ở cấp độ doanh nghiệp.", - "dreamina-seedance-2-0-260128.description": "Seedance 2.0 của ByteDance là mô hình tạo video mạnh mẽ nhất, hỗ trợ tạo video tham chiếu đa phương thức, chỉnh sửa video, mở rộng video, chuyển văn bản thành video và chuyển hình ảnh thành video với âm thanh đồng bộ.", - "dreamina-seedance-2-0-fast-260128.description": "Seedance 2.0 Fast của ByteDance cung cấp các khả năng tương tự như Seedance 2.0 với tốc độ tạo nhanh hơn và giá cả cạnh tranh hơn.", "emohaa.description": "Emohaa là mô hình hỗ trợ sức khỏe tinh thần với khả năng tư vấn chuyên nghiệp, giúp người dùng hiểu rõ các vấn đề cảm xúc.", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B là mô hình nhẹ mã nguồn mở, phù hợp để triển khai cục bộ và tùy chỉnh.", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview là mô hình xem trước với ngữ cảnh 8K để đánh giá ERNIE 4.5.", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "Wenxin 5.0 Thinking là mô hình chủ lực toàn phương thức bản địa với khả năng mô hình hóa văn bản, hình ảnh, âm thanh và video thống nhất. Nó mang lại nâng cấp toàn diện cho các tình huống hỏi đáp phức tạp, sáng tạo và đại lý.", "ernie-5.0-thinking-preview.description": "Wenxin 5.0 Thinking Preview là mô hình chủ lực toàn phương thức bản địa với khả năng mô hình hóa văn bản, hình ảnh, âm thanh và video thống nhất. Nó mang lại nâng cấp toàn diện cho các tình huống hỏi đáp phức tạp, sáng tạo và đại lý.", "ernie-5.0.description": "ERNIE 5.0, mô hình thế hệ mới trong dòng ERNIE, là một mô hình lớn đa phương thức bản địa. Nó áp dụng cách tiếp cận mô hình hóa đa phương thức thống nhất, kết hợp văn bản, hình ảnh, âm thanh và video để cung cấp khả năng đa phương thức toàn diện. Các khả năng nền tảng của nó đã được nâng cấp đáng kể, đạt hiệu suất mạnh mẽ trong các đánh giá chuẩn. Đặc biệt xuất sắc trong việc hiểu đa phương thức, tuân theo hướng dẫn, viết sáng tạo, độ chính xác thực tế, lập kế hoạch tác nhân và sử dụng công cụ.", + "ernie-5.1.description": "ERNIE 5.1 là mô hình mới nhất trong dòng ERNIE, với các nâng cấp toàn diện về khả năng nền tảng. Nó thể hiện sự cải thiện đáng kể trong các lĩnh vực như tác nhân, xử lý kiến thức, suy luận và tìm kiếm sâu. Phiên bản này áp dụng kiến trúc học tăng cường không đồng bộ hoàn toàn, được thiết kế đặc biệt để giải quyết các thách thức chính trong việc phát triển các mô hình lớn hướng tới ra quyết định tự động của tác nhân, bao gồm sự khác biệt số học giữa huấn luyện và suy luận, việc sử dụng thấp tài nguyên tính toán không đồng nhất, và các vấn đề toàn cầu do hiệu ứng đuôi dài gây ra. Ngoài ra, các kỹ thuật huấn luyện sau quy mô lớn dành cho tác nhân được áp dụng để tăng cường hơn nữa khả năng và hiệu suất tổng quát của mô hình. Thông qua khung hợp tác ba giai đoạn bao gồm môi trường, chuyên gia và quy trình hợp nhất, cách tiếp cận này không chỉ đảm bảo hiệu quả huấn luyện mà còn cải thiện đáng kể sự ổn định và hiệu suất của mô hình trong các nhiệm vụ phức tạp.", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K Preview là bản xem trước mô hình tạo nhân vật và cốt truyện để đánh giá và thử nghiệm tính năng.", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K là mô hình nhân vật dành cho tiểu thuyết và sáng tạo cốt truyện, phù hợp để tạo truyện dài.", "ernie-image-turbo.description": "ERNIE-Image là mô hình chuyển văn bản thành hình ảnh với 8 tỷ tham số được phát triển bởi Baidu. Nó nằm trong số những mô hình hàng đầu trên nhiều tiêu chuẩn, đạt vị trí đầu tiên trong SuperCLUE tại Trung Quốc và dẫn đầu trong lĩnh vực mã nguồn mở.", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K là mô hình tư duy nhanh với ngữ cảnh 32K dành cho lý luận phức tạp và trò chuyện nhiều lượt.", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview là bản xem trước mô hình tư duy để đánh giá và thử nghiệm.", "ernie-x1.1.description": "ERNIE X1.1 là mô hình suy nghĩ thử nghiệm dành cho đánh giá và kiểm tra.", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5, được phát triển bởi đội ngũ Seed của ByteDance, hỗ trợ chỉnh sửa và ghép nhiều hình ảnh. Tính năng bao gồm cải thiện tính nhất quán của chủ thể, tuân thủ hướng dẫn chính xác, hiểu biết logic không gian, biểu đạt thẩm mỹ, bố cục poster và thiết kế logo với khả năng kết xuất văn bản-hình ảnh chính xác cao.", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0, được phát triển bởi ByteDance Seed, hỗ trợ đầu vào văn bản và hình ảnh để tạo hình ảnh chất lượng cao, có khả năng kiểm soát cao từ các gợi ý.", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 là mô hình tạo hình ảnh từ ByteDance Seed, hỗ trợ đầu vào văn bản và hình ảnh với khả năng tạo hình ảnh chất lượng cao, có tính kiểm soát cao. Nó tạo ra hình ảnh từ các gợi ý văn bản.", "fal-ai/flux-kontext/dev.description": "Mô hình FLUX.1 tập trung vào chỉnh sửa hình ảnh, hỗ trợ đầu vào văn bản và hình ảnh.", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] chấp nhận đầu vào là văn bản và hình ảnh tham chiếu, cho phép chỉnh sửa cục bộ chính xác và biến đổi toàn cảnh phức tạp.", "fal-ai/flux/krea.description": "Flux Krea [dev] là mô hình tạo hình ảnh với thiên hướng thẩm mỹ hướng đến hình ảnh chân thực và tự nhiên hơn.", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "Mô hình tạo hình ảnh đa phương thức mạnh mẽ bản địa.", "fal-ai/imagen4/preview.description": "Mô hình tạo hình ảnh chất lượng cao từ Google.", "fal-ai/nano-banana.description": "Nano Banana là mô hình đa phương thức bản địa mới nhất, nhanh nhất và hiệu quả nhất của Google, cho phép tạo và chỉnh sửa hình ảnh thông qua hội thoại.", - "fal-ai/qwen-image-edit.description": "Mô hình chỉnh sửa hình ảnh chuyên nghiệp từ đội ngũ Qwen, hỗ trợ chỉnh sửa ngữ nghĩa và ngoại hình, chỉnh sửa văn bản tiếng Trung/Anh chính xác, chuyển đổi phong cách, xoay hình và nhiều hơn nữa.", - "fal-ai/qwen-image.description": "Mô hình tạo hình ảnh mạnh mẽ từ đội ngũ Qwen với khả năng kết xuất văn bản tiếng Trung mạnh mẽ và phong cách hình ảnh đa dạng.", + "fal-ai/qwen-image-edit.description": "Một mô hình chỉnh sửa hình ảnh chuyên nghiệp từ đội ngũ Qwen, hỗ trợ chỉnh sửa ngữ nghĩa và hình thức, chỉnh sửa chính xác văn bản tiếng Trung và tiếng Anh, và cho phép các chỉnh sửa chất lượng cao như chuyển đổi phong cách và xoay đối tượng.", + "fal-ai/qwen-image.description": "Một mô hình tạo hình ảnh mạnh mẽ từ đội ngũ Qwen với khả năng hiển thị văn bản tiếng Trung ấn tượng và các phong cách hình ảnh đa dạng.", "flux-1-schnell.description": "Mô hình chuyển văn bản thành hình ảnh với 12 tỷ tham số từ Black Forest Labs, sử dụng phương pháp khuếch tán đối kháng tiềm ẩn để tạo hình ảnh chất lượng cao chỉ trong 1–4 bước. Mô hình cạnh tranh với các lựa chọn đóng và được phát hành theo giấy phép Apache-2.0 cho mục đích cá nhân, nghiên cứu và thương mại.", "flux-dev.description": "Mô hình tạo ảnh R&D mã nguồn mở, tối ưu hiệu quả cho nghiên cứu sáng tạo phi thương mại.", "flux-kontext-max.description": "Tạo và chỉnh sửa hình ảnh theo ngữ cảnh tiên tiến, kết hợp văn bản và hình ảnh để tạo ra kết quả chính xác và mạch lạc.", @@ -569,7 +566,7 @@ "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image (Nano Banana Pro) là mô hình tạo hình ảnh của Google và cũng hỗ trợ trò chuyện đa phương thức.", "gemini-3-pro-preview.description": "Gemini 3 Pro là mô hình mạnh mẽ nhất của Google, kết hợp khả năng mã hóa cảm xúc và suy luận tiên tiến, mang đến hình ảnh phong phú và tương tác sâu sắc.", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) là mô hình tạo hình ảnh bản địa nhanh nhất của Google với hỗ trợ suy nghĩ, tạo hình ảnh đối thoại và chỉnh sửa.", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) cung cấp chất lượng hình ảnh cấp độ Pro với tốc độ Flash và hỗ trợ trò chuyện đa phương thức.", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image (Nano Banana 2) là mô hình tạo hình ảnh nhanh nhất của Google với hỗ trợ tư duy, tạo và chỉnh sửa hình ảnh trong hội thoại.", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview là mô hình đa phương thức tiết kiệm chi phí nhất của Google, được tối ưu hóa cho các nhiệm vụ tác nhân khối lượng lớn, dịch thuật và xử lý dữ liệu.", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite là mô hình đa phương thức tiết kiệm chi phí nhất của Google, được tối ưu hóa cho các nhiệm vụ đại lý khối lượng lớn, dịch thuật và xử lý dữ liệu.", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview cải tiến Gemini 3 Pro với khả năng suy luận nâng cao và bổ sung hỗ trợ mức suy nghĩ trung bình.", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "Chúng tôi rất vui mừng ra mắt Grok 4 Fast, bước tiến mới nhất trong các mô hình suy luận tiết kiệm chi phí.", "grok-4.20-0309-non-reasoning.description": "Biến thể không lý luận dành cho các trường hợp sử dụng đơn giản.", "grok-4.20-0309-reasoning.description": "Mô hình thông minh, siêu nhanh, lý luận trước khi phản hồi.", - "grok-4.20-beta-0309-non-reasoning.description": "Biến thể không tư duy dành cho các trường hợp sử dụng đơn giản.", - "grok-4.20-beta-0309-reasoning.description": "Mô hình thông minh, cực nhanh, có khả năng tư duy trước khi phản hồi.", "grok-4.20-multi-agent-0309.description": "Một nhóm gồm 4 hoặc 16 tác nhân, xuất sắc trong các trường hợp nghiên cứu. Hiện không hỗ trợ công cụ phía khách hàng. Chỉ hỗ trợ công cụ phía máy chủ xAI (ví dụ: X Search, công cụ tìm kiếm web) và công cụ MCP từ xa.", "grok-4.3.description": "Mô hình ngôn ngữ lớn tìm kiếm sự thật nhất trên thế giới", "grok-4.description": "Mô hình Grok hàng đầu mới nhất với hiệu suất vượt trội trong ngôn ngữ, toán học và suy luận — một mô hình toàn diện thực sự. Hiện tại đang trỏ đến grok-4-0709; do nguồn lực hạn chế, giá tạm thời cao hơn 10% so với giá chính thức và dự kiến sẽ trở lại giá chính thức sau.", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ là mô hình lập luận trong họ Qwen. So với các mô hình điều chỉnh theo hướng dẫn tiêu chuẩn, nó mang lại khả năng tư duy và lập luận giúp cải thiện đáng kể hiệu suất các tác vụ phía sau, đặc biệt là các vấn đề khó. QwQ-32B là mô hình lập luận tầm trung có thể cạnh tranh với các mô hình hàng đầu như DeepSeek-R1 và o1-mini.", "qwq_32b.description": "Mô hình lập luận tầm trung trong họ Qwen. So với các mô hình điều chỉnh theo hướng dẫn tiêu chuẩn, khả năng tư duy và lập luận của QwQ giúp cải thiện đáng kể hiệu suất các tác vụ phía sau, đặc biệt là các vấn đề khó.", "r1-1776.description": "R1-1776 là biến thể hậu huấn luyện của DeepSeek R1 được thiết kế để cung cấp thông tin thực tế không kiểm duyệt, không thiên lệch.", - "seedance-1-5-pro-251215.description": "Seedance 1.5 Pro của ByteDance hỗ trợ chuyển văn bản thành video, chuyển hình ảnh thành video (khung đầu tiên, khung đầu tiên + khung cuối cùng) và tạo âm thanh đồng bộ với hình ảnh.", - "seedream-5-0-260128.description": "ByteDance-Seedream-5.0-lite của BytePlus có tính năng tạo nội dung tăng cường truy xuất web để cung cấp thông tin theo thời gian thực, cải thiện diễn giải gợi ý phức tạp và tăng cường tính nhất quán tham chiếu cho sáng tạo hình ảnh chuyên nghiệp.", "solar-mini-ja.description": "Solar Mini (Ja) mở rộng Solar Mini với trọng tâm vào tiếng Nhật trong khi vẫn duy trì hiệu suất mạnh mẽ và hiệu quả với tiếng Anh và tiếng Hàn.", "solar-mini.description": "Solar Mini là mô hình ngôn ngữ nhỏ gọn vượt trội hơn GPT-3.5, với khả năng đa ngôn ngữ mạnh mẽ hỗ trợ tiếng Anh và tiếng Hàn, mang lại giải pháp hiệu quả với dung lượng nhỏ.", "solar-pro.description": "Solar Pro là mô hình ngôn ngữ thông minh cao từ Upstage, tập trung vào tuân thủ hướng dẫn trên một GPU duy nhất, với điểm IFEval trên 80. Hiện hỗ trợ tiếng Anh; bản phát hành đầy đủ dự kiến vào tháng 11 năm 2024 với hỗ trợ ngôn ngữ mở rộng và ngữ cảnh dài hơn.", diff --git a/locales/vi-VN/onboarding.json b/locales/vi-VN/onboarding.json index 5fff6b171c..12d6843534 100644 --- a/locales/vi-VN/onboarding.json +++ b/locales/vi-VN/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "Tạm thời bỏ qua", "agent.layout.skipConfirm.title": "Bỏ qua phần giới thiệu chứ?", "agent.layout.switchMessage": "Hôm nay không thoải mái à? Bạn có thể chuyển sang {{mode}} hoặc {{skip}}.", + "agent.layout.switchMessageClassic": "Không cảm thấy phù hợp hôm nay? Bạn có thể chuyển sang {{mode}}.", + "agent.messenger.cta.discord": "Thêm vào Discord", + "agent.messenger.cta.slack": "Thêm vào Slack", + "agent.messenger.cta.telegram": "Mở trong Telegram", + "agent.messenger.subtitle": "Trò chuyện với trợ lý của bạn trên Telegram, Slack hoặc Discord", + "agent.messenger.telegramQrCaption": "Quét bằng camera điện thoại của bạn", + "agent.messenger.title": "Giữ tôi bên bạn, bất cứ nơi nào bạn nhắn tin", "agent.modeSwitch.agent": "Hội thoại", "agent.modeSwitch.classic": "Cổ điển", "agent.modeSwitch.collapse": "Thu gọn", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "Tôi sẽ lưu lại những gì chúng ta đã trao đổi. Bạn luôn có thể quay lại trò chuyện thêm sau.", "agent.wrapUp.confirm.ok": "Kết thúc ngay", "agent.wrapUp.confirm.title": "Kết thúc onboarding bây giờ?", + "agentPicker.allCategories": "Tất cả", + "agentPicker.continue": "Tiếp tục", + "agentPicker.skip": "Bỏ qua bây giờ", + "agentPicker.subtitle": "Thêm một vài vào thư viện của bạn ngay bây giờ — khám phá thêm bất cứ lúc nào sau này.", + "agentPicker.title": "Hãy thêm một vài trợ lý vào thư viện của bạn", + "agentPicker.title2": "Chọn những cái phù hợp với cách bạn làm việc", + "agentPicker.title3": "Bạn luôn có thể thêm nhiều hơn sau này — bắt đầu với một vài cái", "back": "Quay lại", "finish": "Bắt đầu ngay", "interests.area.business": "Kinh doanh & Chiến lược", diff --git a/locales/vi-VN/plugin.json b/locales/vi-VN/plugin.json index c63cd6c7ea..d932bec025 100644 --- a/locales/vi-VN/plugin.json +++ b/locales/vi-VN/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} tài liệu", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} thao tác", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} thao tác", - "builtins.lobe-agent-documents.inspector.target.agent": "trong tác nhân", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "trong chủ đề", + "builtins.lobe-agent-documents.inspector.scope.agent": "trong tác nhân", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "trong chủ đề", "builtins.lobe-agent-documents.title": "Tài liệu của Agent", "builtins.lobe-agent-management.apiName.callAgent": "Gọi đại lý", "builtins.lobe-agent-management.apiName.createAgent": "Tạo đại lý", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Tác nhân Lobe", "builtins.lobe-claude-code.agent.instruction": "Hướng dẫn", "builtins.lobe-claude-code.agent.result": "Kết quả", + "builtins.lobe-claude-code.task.createLabel": "Đang tạo nhiệm vụ: ", + "builtins.lobe-claude-code.task.getLabel": "Đang kiểm tra nhiệm vụ #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "Đang liệt kê các nhiệm vụ", + "builtins.lobe-claude-code.task.updateCompleted": "Hoàn thành", + "builtins.lobe-claude-code.task.updateDeleted": "Đã xóa", + "builtins.lobe-claude-code.task.updateInProgress": "Đã bắt đầu", + "builtins.lobe-claude-code.task.updateLabel": "Đang cập nhật nhiệm vụ #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "Đặt lại", "builtins.lobe-claude-code.todoWrite.allDone": "Tất cả nhiệm vụ đã hoàn thành", "builtins.lobe-claude-code.todoWrite.currentStep": "Bước hiện tại", "builtins.lobe-claude-code.todoWrite.todos": "Công việc cần làm", diff --git a/locales/vi-VN/providers.json b/locales/vi-VN/providers.json index 26790e7dda..f02a27c541 100644 --- a/locales/vi-VN/providers.json +++ b/locales/vi-VN/providers.json @@ -33,7 +33,6 @@ "jina.description": "Thành lập năm 2020, Jina AI là công ty hàng đầu về AI tìm kiếm. Bộ công cụ tìm kiếm của họ bao gồm mô hình vector, bộ xếp hạng lại và mô hình ngôn ngữ nhỏ để xây dựng ứng dụng tìm kiếm sinh và đa phương thức chất lượng cao.", "kimicodingplan.description": "Kimi Code từ Moonshot AI cung cấp quyền truy cập vào các mô hình Kimi bao gồm K2.5 cho các nhiệm vụ lập trình.", "lmstudio.description": "LM Studio là ứng dụng máy tính để phát triển và thử nghiệm LLM ngay trên máy của bạn.", - "lobehub.description": "LobeHub Cloud sử dụng các API chính thức để truy cập các mô hình AI và đo lường việc sử dụng bằng Tín dụng gắn liền với các token của mô hình.", "longcat.description": "LongCat là một loạt các mô hình AI tạo sinh lớn được phát triển độc lập bởi Meituan. Nó được thiết kế để nâng cao năng suất nội bộ của doanh nghiệp và thúc đẩy các ứng dụng sáng tạo thông qua kiến trúc tính toán hiệu quả và khả năng đa phương thức mạnh mẽ.", "minimax.description": "Thành lập năm 2021, MiniMax xây dựng AI đa năng với các mô hình nền tảng đa phương thức, bao gồm mô hình văn bản MoE hàng nghìn tỷ tham số, mô hình giọng nói và thị giác, cùng các ứng dụng như Hailuo AI.", "minimaxcodingplan.description": "MiniMax Token Plan cung cấp quyền truy cập vào các mô hình MiniMax bao gồm M2.7 cho các nhiệm vụ lập trình thông qua gói đăng ký cố định.", diff --git a/locales/vi-VN/subscription.json b/locales/vi-VN/subscription.json index 8285dc7f70..06a95bf15b 100644 --- a/locales/vi-VN/subscription.json +++ b/locales/vi-VN/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "Bật tự động nạp tiền", "credits.autoTopUp.upgradeHint": "Đăng ký gói trả phí để bật tự động nạp tiền", "credits.autoTopUp.validation.targetMustExceedThreshold": "Số dư mục tiêu phải lớn hơn ngưỡng", + "credits.costEstimateHint.desc": "Hiển thị cảnh báo nhẹ trước khi gửi khi chi phí ước tính của mô hình đạt ngưỡng của bạn", + "credits.costEstimateHint.saveError": "Không thể lưu cài đặt cảnh báo ước tính chi phí", + "credits.costEstimateHint.saveSuccess": "Đã lưu cài đặt cảnh báo ước tính chi phí", + "credits.costEstimateHint.threshold": "Ngưỡng Cảnh Báo", + "credits.costEstimateHint.title": "Cảnh Báo Ước Tính Chi Phí", + "credits.costEstimateHint.validation.threshold": "Ngưỡng phải lớn hơn hoặc bằng 0", "credits.packages.auto": "Tự động", "credits.packages.charged": "Đã tính phí ${{amount}}", "credits.packages.expired": "Đã hết hạn", diff --git a/locales/vi-VN/tool.json b/locales/vi-VN/tool.json index 4619abd024..fb4555329b 100644 --- a/locales/vi-VN/tool.json +++ b/locales/vi-VN/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "Đã có trong thư viện", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} đã có trong thư viện", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} đã có trong thư viện", + "claudeCode.askUserQuestion.escape.back": "Quay lại các tùy chọn", + "claudeCode.askUserQuestion.escape.enter": "Hoặc nhập trực tiếp", + "claudeCode.askUserQuestion.escape.placeholder": "Nhập câu trả lời của bạn tại đây…", + "claudeCode.askUserQuestion.multiSelectTag": "(chọn nhiều)", + "claudeCode.askUserQuestion.skip": "Bỏ qua", + "claudeCode.askUserQuestion.submit": "Gửi", + "claudeCode.askUserQuestion.timeExpired": "Hết thời gian — sử dụng tùy chọn 1 cho mỗi câu hỏi.", + "claudeCode.askUserQuestion.timeRemaining": "Thời gian còn lại: {{time}} · các câu hỏi chưa trả lời sẽ mặc định chọn tùy chọn 1 khi hết giờ.", "codeInterpreter-legacy.error": "Lỗi thực thi", "codeInterpreter-legacy.executing": "Đang thực thi...", "codeInterpreter-legacy.files": "Tệp:", diff --git a/locales/vi-VN/topic.json b/locales/vi-VN/topic.json index 94a1763e16..4ad0ce4b6e 100644 --- a/locales/vi-VN/topic.json +++ b/locales/vi-VN/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "Đổi tên chủ đề", "searchPlaceholder": "Tìm kiếm chủ đề...", "searchResultEmpty": "Không tìm thấy kết quả tìm kiếm.", + "sidebar.title": "Chủ đề", "taskManager.agent": "Tác vụ Agent", "taskManager.welcome": "Hãy hỏi tôi về các công việc của bạn", "temp": "Tạm thời", diff --git a/locales/zh-CN/chat.json b/locales/zh-CN/chat.json index 7b8dd3fd98..69e71dcc36 100644 --- a/locales/zh-CN/chat.json +++ b/locales/zh-CN/chat.json @@ -220,13 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "添加一条助理消息", "input.addUser": "添加一条用户消息", - "input.costEstimate.creditsPerMillionTokens": "{{credits}} 积分/M tokens", - "input.costEstimate.hint": "预估费用:约 {{credits}} 积分", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} 积分/百万标记", + "input.costEstimate.hint": "预计费用:约{{credits}}积分", "input.costEstimate.inputLabel": "输入", "input.costEstimate.outputLabel": "输出", - "input.costEstimate.settingsLink": "调整提醒阈值", - "input.costEstimate.tokenCount": "约 {{tokens}} tokens", - "input.costEstimate.tooltip": "基于当前上下文、工具和模型定价估算。实际费用可能不同。", + "input.costEstimate.settingsLink": "调整警告阈值", + "input.costEstimate.tokenCount": "约{{tokens}}标记", + "input.costEstimate.tooltip": "根据当前上下文、工具和模型定价估算。实际费用可能有所不同。", "input.disclaimer": "助理也可能出错。关键信息请以你的判断为准", "input.errorMsg": "发送遇到了问题:{{errorMsg}}。你可以重试,或稍后再发", "input.more": "更多", @@ -786,6 +786,7 @@ "upload.preview.prepareTasks": "正在准备分块…", "upload.preview.status.pending": "准备上传…", "upload.preview.status.processing": "文件处理中…", + "upload.validation.unsupportedFileType": "不支持的文件类型:{{files}}。支持的图片格式:JPG、PNG、GIF、WebP。支持的文档包括PDF、Word、Excel、PowerPoint、Markdown、文本、CSV、JSON和代码文件。", "upload.validation.videoSizeExceeded": "视频文件不能超过 20MB。当前为 {{actualSize}}", "viewMode.fullWidth": "全宽显示", "viewMode.normal": "普通", diff --git a/locales/zh-CN/components.json b/locales/zh-CN/components.json index d00fbea2ef..9470e31cae 100644 --- a/locales/zh-CN/components.json +++ b/locales/zh-CN/components.json @@ -121,16 +121,16 @@ "ModelSwitchPanel.detail.context": "上下文长度", "ModelSwitchPanel.detail.pricing": "价格", "ModelSwitchPanel.detail.pricing.cachedInput": "缓存输入 ${{amount}}/百万", - "ModelSwitchPanel.detail.pricing.credits.cachedInput": "缓存输入 {{amount}} 积分/M tokens", - "ModelSwitchPanel.detail.pricing.credits.image": "积分/张", - "ModelSwitchPanel.detail.pricing.credits.input": "输入 {{amount}} 积分/M tokens", - "ModelSwitchPanel.detail.pricing.credits.megapixel": "积分/MP", - "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "积分/M chars", - "ModelSwitchPanel.detail.pricing.credits.millionTokens": "积分/M tokens", - "ModelSwitchPanel.detail.pricing.credits.output": "输出 {{amount}} 积分/M tokens", - "ModelSwitchPanel.detail.pricing.credits.perImage": "约 {{amount}} 积分/张", - "ModelSwitchPanel.detail.pricing.credits.perVideo": "约 {{amount}} 积分/条", - "ModelSwitchPanel.detail.pricing.credits.second": "积分/s", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "缓存输入 {{amount}} 积分/M 令牌", + "ModelSwitchPanel.detail.pricing.credits.image": "积分/图片", + "ModelSwitchPanel.detail.pricing.credits.input": "输入 {{amount}} 积分/M 令牌", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "积分/百万像素", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "积分/百万字符", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "积分/百万令牌", + "ModelSwitchPanel.detail.pricing.credits.output": "输出 {{amount}} 积分/M 令牌", + "ModelSwitchPanel.detail.pricing.credits.perImage": "约 {{amount}} 积分 / 图片", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "约 {{amount}} 积分 / 视频", + "ModelSwitchPanel.detail.pricing.credits.second": "积分/秒", "ModelSwitchPanel.detail.pricing.group.audio": "音频", "ModelSwitchPanel.detail.pricing.group.image": "图像", "ModelSwitchPanel.detail.pricing.group.text": "文本", diff --git a/locales/zh-CN/hotkey.json b/locales/zh-CN/hotkey.json index 1a6bd64708..6ac063772e 100644 --- a/locales/zh-CN/hotkey.json +++ b/locales/zh-CN/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "将当前输入内容添加为用户消息,但不触发生成", "addUserMessage.title": "添加一条用户消息", - "clearCurrentMessages.desc": "清空当前会话的消息和上传的文件", - "clearCurrentMessages.title": "清空会话消息", "commandPalette.desc": "打开全局命令面板快速访问功能", "commandPalette.title": "命令面板", "deleteAndRegenerateMessage.desc": "删除最后一条消息并重新生成", diff --git a/locales/zh-CN/models.json b/locales/zh-CN/models.json index 8319380d37..f3343819cc 100644 --- a/locales/zh-CN/models.json +++ b/locales/zh-CN/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "全新视频生成模型,在身体动作、物理真实感和指令遵循性方面全面升级。", "MiniMax-M1.description": "一款全新自研推理模型,支持 80K 思维链和 100 万输入,性能媲美全球顶尖模型。", "MiniMax-M2-Stable.description": "专为高效编程与智能体工作流打造,具备更高并发能力,适用于商业场景。", - "MiniMax-M2.1-Lightning.description": "强大的多语言编程能力,推理速度更快、更高效。", "MiniMax-M2.1-highspeed.description": "强大的多语言编程能力,全面升级的编程体验。更快、更高效。", "MiniMax-M2.1.description": "MiniMax-M2.1 是 MiniMax 推出的旗舰开源大模型,专注于解决复杂的现实世界任务。其核心优势在于多语言编程能力以及作为智能体解决复杂任务的能力。", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 Highspeed:与M2.5性能相同,但推理速度更快。", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku 是 Anthropic 推出的最快、最紧凑的模型,专为近乎即时响应而设计,具备快速且准确的性能。", "claude-3-opus-20240229.description": "Claude 3 Opus 是 Anthropic 最强大的模型,适用于高度复杂的任务,在性能、智能、流畅性和理解力方面表现卓越。", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet 在智能与速度之间取得平衡,适用于企业级工作负载,提供高效能与低成本的可靠部署。", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 是 Anthropic 最快、最智能的 Haiku 模型,具有闪电般的速度和扩展的思维能力。", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 是 Anthropic 最快速、最智能的 Haiku 模型,具有闪电般的速度和扩展的推理能力。", "claude-haiku-4-5.description": "Anthropic 的 Claude Haiku 4.5 —— 新一代 Haiku,具备更强推理与视觉能力。", "claude-haiku-4.5.description": "Claude Haiku 4.5 是 Anthropic 最快速、最智能的 Haiku 模型,具有闪电般的速度和扩展的推理能力。", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking 是一款高级变体,能够展示其推理过程。", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 是 Anthropic 最新且最强大的模型,专为处理高度复杂的任务而设计,表现卓越,智能、流畅性和理解力均出类拔萃。", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 是 Anthropic 最新且最强大的模型,专为高度复杂的任务设计,表现出卓越的性能、智能、流畅性和理解力。", "claude-opus-4-1.description": "Anthropic 的 Claude Opus 4.1 —— 高端推理模型,具备深度分析能力。", - "claude-opus-4-20250514.description": "Claude Opus 4 是 Anthropic 最强大的模型,专为处理高度复杂的任务而设计,表现卓越,智能、流畅性和理解力均出类拔萃。", + "claude-opus-4-20250514.description": "Claude Opus 4 是 Anthropic 最强大的模型,专为高度复杂的任务设计,表现出卓越的性能、智能、流畅性和理解力。", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 是 Anthropic 的旗舰模型,结合卓越智能与可扩展性能,适用于需要最高质量响应与推理的复杂任务。", "claude-opus-4-5.description": "Anthropic 的 Claude Opus 4.5 —— 旗舰模型,具备顶级推理与编码能力。", "claude-opus-4-6.description": "Anthropic 的 Claude Opus 4.6 —— 具备 100 万上下文窗口的旗舰模型,拥有先进推理能力。", @@ -330,7 +329,7 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 是 Anthropic 最智能的模型,用于构建代理和编程。", "claude-opus-4.6.description": "Claude Opus 4.6 是 Anthropic 最智能的模型,用于构建代理和编程。", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking 可生成近乎即时的响应或可视化的逐步推理过程。", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 是迄今为止 Anthropic 最智能的模型,提供近乎即时的响应或扩展的逐步思考,并为 API 用户提供精细化控制。", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 能够生成几乎即时的响应,或通过可见的过程进行逐步推理。", "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 是迄今为止 Anthropic 最智能的模型。", "claude-sonnet-4-5.description": "Anthropic 的 Claude Sonnet 4.5 —— 性能增强的新一代 Sonnet,具备更强编码能力。", "claude-sonnet-4-6.description": "Anthropic 的 Claude Sonnet 4.6 —— 最新 Sonnet 模型,在编码与工具使用方面表现更强。", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat(67B)是一款创新模型,具备深度语言理解与交互能力。", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 是下一代推理模型,具备更强的复杂推理与链式思维能力,适用于深度分析任务。", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2是下一代推理模型,具备更强的复杂推理和链式思维能力。", - "deepseek-chat.description": "DeepSeek V4 Flash 非思考模式的兼容别名。计划弃用——请改用 DeepSeek V4 Flash。", + "deepseek-chat.description": "一个结合了通用能力和代码能力的新开源模型。它保留了聊天模型的通用对话能力和编码模型的强大编程能力,并具有更好的偏好对齐。DeepSeek-V2.5 还改进了写作和指令遵循能力。", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B 是一款代码语言模型,训练于 2T 数据(87% 代码,13% 中英文文本)。支持 16K 上下文窗口与中间填充任务,提供项目级代码补全与片段填充。", "deepseek-coder-v2.description": "DeepSeek Coder V2 是一款开源 MoE 编程模型,在编程任务中表现强劲,可媲美 GPT-4 Turbo。", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 是一款开源 MoE 编程模型,在编程任务中表现强劲,可媲美 GPT-4 Turbo。", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "DeepSeek R1 快速全量版本,支持实时网页搜索,结合 671B 规模能力与更快响应。", "deepseek-r1-online.description": "DeepSeek R1 全量版本,具备 671B 参数与实时网页搜索,提供更强理解与生成能力。", "deepseek-r1.description": "DeepSeek-R1 在强化学习前使用冷启动数据,在数学、编程和推理任务中表现可与 OpenAI-o1 相媲美。", - "deepseek-reasoner.description": "DeepSeek V4 Flash 思考模式的兼容别名。计划弃用——请改用 DeepSeek V4 Flash。", + "deepseek-reasoner.description": "一个专注于复杂逻辑推理任务的 DeepSeek 推理模型。", "deepseek-v2.description": "DeepSeek V2 是一款高效的 MoE 模型,适用于成本敏感型处理任务。", "deepseek-v2:236b.description": "DeepSeek V2 236B 是 DeepSeek 推出的代码专用模型,具备强大代码生成能力。", "deepseek-v3-0324.description": "DeepSeek-V3-0324 是一款拥有 671B 参数的 MoE 模型,在编程与技术能力、上下文理解和长文本处理方面表现突出。", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 是字节跳动 Seed 推出的图像生成模型,支持文本与图像输入,具备高度可控的高质量图像生成能力。可根据文本提示生成图像。", "doubao-seedream-4-5-251128.description": "Seedream 4.5是字节跳动最新的多模态图像模型,集成了文本生成图像、图像生成图像和批量图像生成功能,同时具备常识和推理能力。与之前的4.0版本相比,生成质量显著提升,编辑一致性和多图融合效果更好。它对视觉细节的控制更加精确,能够更自然地生成小文字和小面部,并实现更和谐的布局和色彩,提升整体美感。", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite是字节跳动最新的图像生成模型。首次集成在线检索功能,能够结合实时网络信息,提升生成图像的时效性。模型智能性也得到升级,能够精确解析复杂指令和视觉内容。此外,它在专业场景中的全球知识覆盖、参考一致性和生成质量方面均有提升,更好地满足企业级视觉创作需求。", - "dreamina-seedance-2-0-260128.description": "字节跳动推出的 Seedance 2.0 是最强大的视频生成模型,支持多模态参考视频生成、视频编辑、视频扩展、文本生成视频以及图像生成视频,并同步音频。", - "dreamina-seedance-2-0-fast-260128.description": "字节跳动推出的 Seedance 2.0 Fast 提供与 Seedance 2.0 相同的功能,但生成速度更快,价格更具竞争力。", "emohaa.description": "Emohaa 是一款心理健康模型,具备专业咨询能力,帮助用户理解情绪问题。", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B 是一款开源轻量级模型,适用于本地和定制化部署。", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview 是一款用于评估 ERNIE 4.5 的 8K 上下文预览模型。", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "文心 5.0 Thinking 是一款原生全模态旗舰模型,统一建模文本、图像、音频与视频,在复杂问答、创作与智能体场景中实现全面能力升级。", "ernie-5.0-thinking-preview.description": "文心 5.0 Thinking Preview 是一款原生全模态旗舰模型,统一建模文本、图像、音频与视频,在复杂问答、创作与智能体场景中实现全面能力升级。", "ernie-5.0.description": "ERNIE 5.0 是 ERNIE 系列的新一代原生多模态大模型。通过统一多模态建模方法,对文本、图像、音频和视频进行联合建模,提供全面的多模态能力。其基础能力全面升级,在多项基准测试中取得强劲表现,尤其在多模态理解、指令跟随、创意写作、事实准确性、Agent 规划和工具调用方面表现突出。", + "ernie-5.1.description": "ERNIE 5.1 是 ERNIE 系列的最新模型,其基础能力全面升级。在代理、知识处理、推理和深度搜索等领域表现出显著改进。本次发布采用了解耦的全异步强化学习架构,专为解决大模型向自主代理决策演进中的关键挑战而设计,包括训练与推理数值差异、异构计算资源利用率低以及长尾效应引发的全局问题。此外,还采用了大规模代理后训练技术,进一步增强了模型的能力和泛化性能。通过环境、专家和融合过程的三阶段协作框架,这种方法不仅确保了训练效率,还显著提升了模型在复杂任务中的稳定性和表现。", "ernie-char-fiction-8k-preview.description": "ERNIE Character Fiction 8K 预览版是一款用于角色与情节创作的模型预览,适用于功能评估与测试。", "ernie-char-fiction-8k.description": "ERNIE Character Fiction 8K 是一款面向小说与情节创作的角色模型,适合长篇故事生成。", "ernie-image-turbo.description": "ERNIE-Image 是百度推出的 80 亿参数文生图模型,在多项评测中名列前茅,在中国 SuperCLUE 上并列第一,并在开源赛道保持领先。", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K 是一款快速思考模型,具备 32K 上下文能力,适合复杂推理与多轮对话。", "ernie-x1.1-preview.description": "ERNIE X1.1 Preview 是一款用于评估与测试的思考模型预览版。", "ernie-x1.1.description": "ERNIE X1.1是一个用于评估和测试的思维模型预览版。", - "fal-ai/bytedance/seedream/v4.5.description": "字节跳动 Seed 团队打造的 Seedream 4.5 支持多图编辑与合成,具备增强的主体一致性、精准的指令执行、空间逻辑理解、美学表达、海报布局和标志设计,并提供高精度的图文渲染。", - "fal-ai/bytedance/seedream/v4.description": "字节跳动 Seed 团队打造的 Seedream 4.0 支持文本和图像输入,可根据提示生成高质量、可控性强的图像。", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 是字节跳动 Seed 的图像生成模型,支持文本和图像输入,能够生成高度可控、高质量的图像。它可以根据文本提示生成图像。", "fal-ai/flux-kontext/dev.description": "FLUX.1 模型专注于图像编辑,支持文本与图像输入。", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] 接受文本与参考图像输入,支持局部精准编辑与复杂全局场景变换。", "fal-ai/flux/krea.description": "Flux Krea [dev] 是一款图像生成模型,偏好更真实自然的美学风格。", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "一款强大的原生多模态图像生成模型。", "fal-ai/imagen4/preview.description": "来自 Google 的高质量图像生成模型。", "fal-ai/nano-banana.description": "Nano Banana 是 Google 最新、最快、最高效的原生多模态模型,支持通过对话生成与编辑图像。", - "fal-ai/qwen-image-edit.description": "Qwen 团队推出的专业图像编辑模型,支持语义和外观编辑、精准的中英文文本编辑、风格转换、旋转等功能。", - "fal-ai/qwen-image.description": "Qwen 团队推出的强大图像生成模型,具备优秀的中文文本渲染能力和多样化的视觉风格。", + "fal-ai/qwen-image-edit.description": "Qwen 团队推出的专业图像编辑模型,支持语义和外观编辑,能够精准编辑中英文文本,并实现高质量的编辑效果,如风格迁移和物体旋转。", + "fal-ai/qwen-image.description": "Qwen 团队推出的强大图像生成模型,具有令人印象深刻的中文文本渲染能力和多样化的视觉风格。", "flux-1-schnell.description": "来自 Black Forest Labs 的 120 亿参数文本转图像模型,采用潜在对抗扩散蒸馏技术,可在 1-4 步内生成高质量图像。性能媲美闭源模型,采用 Apache-2.0 许可,适用于个人、研究与商业用途。", "flux-dev.description": "开源研发图像生成模型,专为非商业创新研究进行高效优化。", "flux-kontext-max.description": "最先进的上下文图像生成与编辑模型,结合文本与图像输入,实现精准一致的结果。", @@ -566,10 +563,10 @@ "gemini-3-flash-preview.description": "Gemini 3 Flash 是一款以速度为核心的智能模型,融合前沿智能与卓越的搜索能力。", "gemini-3-flash.description": "Google 的 Gemini 3 Flash —— 超高速模型,支持多模态输入。", "gemini-3-pro-image-preview.description": "Gemini 3 Pro Image(Nano Banana Pro)是 Google 的图像生成模型,同时支持多模态对话。", - "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image(Nano Banana Pro)是谷歌的图像生成模型,同时支持多模态聊天。", + "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image(Nano Banana Pro)是 Google 的图像生成模型,同时支持多模态聊天。", "gemini-3-pro-preview.description": "Gemini 3 Pro 是 Google 最强大的智能体与编程模型,在最先进推理基础上提供更丰富的视觉效果与更深入的交互体验。", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image(Nano Banana 2)是 Google 最快的原生图像生成模型,支持思考、对话式图像生成和编辑。", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image(Nano Banana 2)以闪电速度提供专业级图像质量,并支持多模态聊天。", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image(Nano Banana 2)是 Google 最快速的原生图像生成模型,支持思维能力、对话式图像生成和编辑功能。", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview是谷歌最具成本效益的多模态模型,专为高容量代理任务、翻译和数据处理优化。", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite 是谷歌最具成本效益的多模态模型,优化用于高容量代理任务、翻译和数据处理。", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview在Gemini 3 Pro的基础上增强了推理能力,并增加了中等思维水平支持。", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "我们很高兴发布 Grok 4 Fast,这是我们在高性价比推理模型方面的最新进展。", "grok-4.20-0309-non-reasoning.description": "无推理模式版本,适用于简单场景。", "grok-4.20-0309-reasoning.description": "智能、高速的推理模型,先思考后回答。", - "grok-4.20-beta-0309-non-reasoning.description": "适用于简单用例的非推理版本。", - "grok-4.20-beta-0309-reasoning.description": "智能且极快的模型,在响应前进行推理。", "grok-4.20-multi-agent-0309.description": "由 4 至 16 个 Agent 组成的团队,擅长科研类任务。目前不支持客户端工具,只支持 xAI 服务器端工具(如 X Search、Web Search)及远程 MCP 工具。", "grok-4.3.description": "世界上最追求真理的大型语言模型", "grok-4.description": "最新的 Grok 旗舰模型,在语言、数学和推理方面表现无与伦比——真正的全能选手。目前指向 grok-4-0709;由于资源有限,价格暂时比官方定价高 10%,预计稍后会恢复到官方价格。", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ 是 Qwen 系列中的推理模型。相比标准指令微调模型,具备更强的思维与推理能力,显著提升下游复杂任务表现。QwQ-32B 是一款中型推理模型,性能可媲美 DeepSeek-R1 和 o1-mini 等顶级模型。", "qwq_32b.description": "Qwen 系列中的中型推理模型。相比标准指令微调模型,QwQ 的思维与推理能力显著提升下游复杂任务表现。", "r1-1776.description": "R1-1776 是 DeepSeek R1 的后训练版本,旨在提供无审查、无偏见的真实信息。", - "seedance-1-5-pro-251215.description": "字节跳动推出的 Seedance 1.5 Pro 支持文本生成视频、图像生成视频(首帧、首帧+尾帧)以及与视觉同步的音频生成。", - "seedream-5-0-260128.description": "字节跳动 BytePlus 推出的 Seedream 5.0 Lite,支持基于网页检索增强的实时信息生成,复杂提示解释能力提升,并改进参考一致性,适用于专业视觉创作。", "solar-mini-ja.description": "Solar Mini (Ja) 是 Solar Mini 的日语增强版本,同时保持在英语和韩语中的高效强性能。", "solar-mini.description": "Solar Mini 是一款紧凑型大语言模型,性能超越 GPT-3.5,具备强大的多语言能力,支持英语和韩语,提供高效的小体积解决方案。", "solar-pro.description": "Solar Pro 是 Upstage 推出的高智能大语言模型,专注于单 GPU 上的指令跟随任务,IFEval 得分超过 80。目前支持英语,完整版本计划于 2024 年 11 月发布,届时将扩展语言支持并提升上下文长度。", diff --git a/locales/zh-CN/onboarding.json b/locales/zh-CN/onboarding.json index 959e4f09ef..417caee33d 100644 --- a/locales/zh-CN/onboarding.json +++ b/locales/zh-CN/onboarding.json @@ -28,6 +28,12 @@ "agent.layout.skipConfirm.title": "暂时跳过入门引导?", "agent.layout.switchMessage": "暂时不想继续?可以切换到 {{mode}}{{skip}}。", "agent.layout.switchMessageClassic": "暂时不想继续?可以切换到 {{mode}}。", + "agent.messenger.cta.discord": "添加到 Discord", + "agent.messenger.cta.slack": "添加到 Slack", + "agent.messenger.cta.telegram": "在 Telegram 中打开", + "agent.messenger.subtitle": "在 Telegram、Slack 或 Discord 上继续和我聊天", + "agent.messenger.telegramQrCaption": "用手机相机扫码打开", + "agent.messenger.title": "在你常用的聊天平台继续找到我", "agent.modeSwitch.agent": "对话模式", "agent.modeSwitch.classic": "经典模式", "agent.modeSwitch.collapse": "收起", diff --git a/locales/zh-CN/plugin.json b/locales/zh-CN/plugin.json index 6dedd09130..06ce66082e 100644 --- a/locales/zh-CN/plugin.json +++ b/locales/zh-CN/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} 篇", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} 项操作", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} 项", - "builtins.lobe-agent-documents.inspector.target.agent": "Agent 范围", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "当前话题", + "builtins.lobe-agent-documents.inspector.scope.agent": "在代理中", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "在主题中", "builtins.lobe-agent-documents.title": "Agent 文档", "builtins.lobe-agent-management.apiName.callAgent": "呼叫代理", "builtins.lobe-agent-management.apiName.createAgent": "创建代理", diff --git a/locales/zh-CN/providers.json b/locales/zh-CN/providers.json index 3d00f55a6e..52bcd46109 100644 --- a/locales/zh-CN/providers.json +++ b/locales/zh-CN/providers.json @@ -33,7 +33,6 @@ "jina.description": "Jina AI 成立于 2020 年,是领先的搜索 AI 公司,其搜索技术栈包括向量模型、重排序器与小型语言模型,支持构建高质量的生成式与多模态搜索应用。", "kimicodingplan.description": "Kimi Code Plan 由 Moonshot AI 提供,通过固定月费订阅方式访问 Kimi 模型(包括 K2.5)用于编程任务。", "lmstudio.description": "LM Studio 是一款桌面应用,支持在本地开发与实验大语言模型。", - "lobehub.description": "LobeHub Cloud 使用官方 API 访问 AI 模型,并通过与模型令牌相关的积分来衡量使用情况。", "longcat.description": "LongCat 是由美团自主研发的生成式 AI 大模型系列,旨在通过高效的计算架构和强大的多模态能力,提升企业内部工作效率并推动创新应用的发展。", "minimax.description": "MiniMax 成立于 2021 年,致力于构建通用 AI,拥有多模态基础模型,包括万亿参数的 MoE 文本模型、语音模型与视觉模型,并推出海螺 AI 等应用。", "minimaxcodingplan.description": "MiniMax Token Plan 提供对 MiniMax 模型(包括 M2.7)的访问,适用于编程任务,采用固定月费订阅模式。", diff --git a/locales/zh-CN/subscription.json b/locales/zh-CN/subscription.json index 928a8b1757..9711fa26ef 100644 --- a/locales/zh-CN/subscription.json +++ b/locales/zh-CN/subscription.json @@ -55,12 +55,12 @@ "credits.autoTopUp.toggle": "启用自动充值", "credits.autoTopUp.upgradeHint": "订阅付费计划以启用自动充值", "credits.autoTopUp.validation.targetMustExceedThreshold": "目标余额必须大于触发阈值", - "credits.costEstimateHint.desc": "当下一次模型调用的预估费用达到阈值时,在发送前显示轻量提醒", - "credits.costEstimateHint.saveError": "保存费用预估提醒设置失败", - "credits.costEstimateHint.saveSuccess": "费用预估提醒设置已保存", - "credits.costEstimateHint.threshold": "提醒阈值", - "credits.costEstimateHint.title": "费用预估提醒", - "credits.costEstimateHint.validation.threshold": "阈值必须大于或等于 0", + "credits.costEstimateHint.desc": "当估算的模型成本达到您的阈值时,发送前显示一个轻量级警告", + "credits.costEstimateHint.saveError": "无法保存成本估算警报设置", + "credits.costEstimateHint.saveSuccess": "成本估算警报设置已保存", + "credits.costEstimateHint.threshold": "警告阈值", + "credits.costEstimateHint.title": "成本估算警报", + "credits.costEstimateHint.validation.threshold": "阈值必须大于或等于0", "credits.packages.auto": "自动", "credits.packages.charged": "已扣费 ${{amount}}", "credits.packages.expired": "已过期", diff --git a/locales/zh-TW/chat.json b/locales/zh-TW/chat.json index 90a0f4d4e9..d9bccb13e9 100644 --- a/locales/zh-TW/chat.json +++ b/locales/zh-TW/chat.json @@ -220,6 +220,13 @@ "inbox.title": "Lobe AI", "input.addAi": "新增一條 AI 訊息", "input.addUser": "新增一條使用者訊息", + "input.costEstimate.creditsPerMillionTokens": "{{credits}} 點數/M 個標記", + "input.costEstimate.hint": "預估成本:~{{credits}} 點數", + "input.costEstimate.inputLabel": "輸入", + "input.costEstimate.outputLabel": "輸出", + "input.costEstimate.settingsLink": "調整警告閾值", + "input.costEstimate.tokenCount": "~{{tokens}} 個標記", + "input.costEstimate.tooltip": "根據當前上下文、工具和模型定價估算。實際成本可能有所不同。", "input.disclaimer": "AI 也可能會犯錯,請檢查重要資訊", "input.errorMsg": "訊息發送失敗,請檢查網路後重試:{{errorMsg}}", "input.more": "更多", @@ -779,6 +786,7 @@ "upload.preview.prepareTasks": "準備分塊...", "upload.preview.status.pending": "準備上傳...", "upload.preview.status.processing": "檔案處理中...", + "upload.validation.unsupportedFileType": "不支援的檔案類型:{{files}}。支援的圖片格式:JPG、PNG、GIF、WebP。支援的文件包括 PDF、Word、Excel、PowerPoint、Markdown、文字檔、CSV、JSON 和程式碼檔案。", "upload.validation.videoSizeExceeded": "影片檔案大小不能超過 20MB,當前檔案大小為 {{actualSize}}", "viewMode.fullWidth": "全寬顯示", "viewMode.normal": "一般", @@ -894,6 +902,8 @@ "workingPanel.localFile.closeOther": "關閉其他", "workingPanel.localFile.closeRight": "關閉右側", "workingPanel.localFile.error": "無法載入此檔案", + "workingPanel.localFile.preview.raw": "原始檔案", + "workingPanel.localFile.preview.render": "預覽", "workingPanel.localFile.truncated": "檔案預覽已截斷至 {{limit}} 個字元", "workingPanel.progress": "進度", "workingPanel.progress.allCompleted": "所有任務已完成", @@ -959,6 +969,8 @@ "workingPanel.review.viewMode.unified": "切換至統一檢視", "workingPanel.review.wordWrap.disable": "停用自動換行", "workingPanel.review.wordWrap.enable": "啟用自動換行", + "workingPanel.skills.empty": "此專案中未找到技能", + "workingPanel.skills.title": "技能", "workingPanel.space": "空間", "workingPanel.title": "Working Panel", "you": "你", diff --git a/locales/zh-TW/components.json b/locales/zh-TW/components.json index 252c3ec8c0..b4adb6d659 100644 --- a/locales/zh-TW/components.json +++ b/locales/zh-TW/components.json @@ -121,6 +121,16 @@ "ModelSwitchPanel.detail.context": "上下文長度", "ModelSwitchPanel.detail.pricing": "價格", "ModelSwitchPanel.detail.pricing.cachedInput": "快取輸入 ${{amount}}/百萬", + "ModelSwitchPanel.detail.pricing.credits.cachedInput": "快取輸入 {{amount}} 點數/M tokens", + "ModelSwitchPanel.detail.pricing.credits.image": "點數/圖片", + "ModelSwitchPanel.detail.pricing.credits.input": "輸入 {{amount}} 點數/M tokens", + "ModelSwitchPanel.detail.pricing.credits.megapixel": "點數/MP", + "ModelSwitchPanel.detail.pricing.credits.millionCharacters": "點數/M 字元", + "ModelSwitchPanel.detail.pricing.credits.millionTokens": "點數/M tokens", + "ModelSwitchPanel.detail.pricing.credits.output": "輸出 {{amount}} 點數/M tokens", + "ModelSwitchPanel.detail.pricing.credits.perImage": "~ {{amount}} 點數 / 圖片", + "ModelSwitchPanel.detail.pricing.credits.perVideo": "~ {{amount}} 點數 / 影片", + "ModelSwitchPanel.detail.pricing.credits.second": "點數/秒", "ModelSwitchPanel.detail.pricing.group.audio": "音訊", "ModelSwitchPanel.detail.pricing.group.image": "圖像", "ModelSwitchPanel.detail.pricing.group.text": "文字", diff --git a/locales/zh-TW/editor.json b/locales/zh-TW/editor.json index 3b102e6266..7519090c34 100644 --- a/locales/zh-TW/editor.json +++ b/locales/zh-TW/editor.json @@ -1,8 +1,10 @@ { "actionTag.category.command": "命令", + "actionTag.category.projectSkill": "專案技能", "actionTag.category.skill": "技能", "actionTag.category.tool": "工具", "actionTag.tooltip.command": "在發送前執行客戶端斜線命令。", + "actionTag.tooltip.projectSkill": "以斜線調用的方式發送,讓代理的 CLI 執行匹配的專案技能。", "actionTag.tooltip.skill": "為此次請求載入可重用的技能包。", "actionTag.tooltip.tool": "標記使用者在此次請求中明確選擇的工具。", "actions.expand.off": "收合", diff --git a/locales/zh-TW/home.json b/locales/zh-TW/home.json index 2bacf0ca89..87eb4e9d4e 100644 --- a/locales/zh-TW/home.json +++ b/locales/zh-TW/home.json @@ -11,6 +11,19 @@ "brief.action.ignore": "忽略", "brief.action.retry": "重試", "brief.addFeedback": "分享意見回饋", + "brief.agentSignal.selfReview.applied.heading": "已更新", + "brief.agentSignal.selfReview.applied.summary": "已套用 {{count}} 個夢境更新。", + "brief.agentSignal.selfReview.applied.summary_plural": "已套用 {{count}} 個夢境更新。", + "brief.agentSignal.selfReview.applied.title": "夢境更新的資源", + "brief.agentSignal.selfReview.error.heading": "問題", + "brief.agentSignal.selfReview.error.summary": "在此夢境中有些工作未能完成。", + "brief.agentSignal.selfReview.error.title": "夢境遇到問題", + "brief.agentSignal.selfReview.ideas.summary": "已保存夢境筆記以供日後檢視。", + "brief.agentSignal.selfReview.ideas.title": "夢境筆記", + "brief.agentSignal.selfReview.proposal.heading": "建議", + "brief.agentSignal.selfReview.proposal.summary": "{{count}} 個夢境建議需要您的檢視。", + "brief.agentSignal.selfReview.proposal.summary_plural": "{{count}} 個夢境建議需要您的檢視。", + "brief.agentSignal.selfReview.proposal.title": "夢境建議需要檢視", "brief.collapse": "顯示較少", "brief.commentPlaceholder": "分享您的意見回饋...", "brief.commentSubmit": "提交意見回饋", diff --git a/locales/zh-TW/hotkey.json b/locales/zh-TW/hotkey.json index 752b6babbf..85b77a47f4 100644 --- a/locales/zh-TW/hotkey.json +++ b/locales/zh-TW/hotkey.json @@ -1,8 +1,6 @@ { "addUserMessage.desc": "將當前輸入內容添加為使用者消息,但不觸發生成", "addUserMessage.title": "添加一條使用者消息", - "clearCurrentMessages.desc": "清空當前會話的消息和上傳的檔案", - "clearCurrentMessages.title": "清空會話消息", "commandPalette.desc": "開啟全域指令面板以快速存取功能", "commandPalette.title": "指令面板", "deleteAndRegenerateMessage.desc": "刪除最後一則訊息並重新產生", diff --git a/locales/zh-TW/models.json b/locales/zh-TW/models.json index 3da71550e0..9ed75d857d 100644 --- a/locales/zh-TW/models.json +++ b/locales/zh-TW/models.json @@ -106,7 +106,6 @@ "MiniMax-Hailuo-2.3.description": "全新影像生成模型,全面升級身體動作、物理真實性及指令遵循性。", "MiniMax-M1.description": "一款內部開發的推理模型,具備 80K 思路鏈與 100 萬輸入,效能媲美全球頂尖模型。", "MiniMax-M2-Stable.description": "專為高效編碼與代理流程設計,具備更高併發能力,適用於商業應用。", - "MiniMax-M2.1-Lightning.description": "強大的多語言編程能力,具有更快、更高效的推理性能。", "MiniMax-M2.1-highspeed.description": "強大的多語言編程能力,全面升級的編程體驗。速度更快,效率更高。", "MiniMax-M2.1.description": "MiniMax-M2.1 是 MiniMax 推出的旗艦開源大型模型,專注於解決複雜的真實世界任務。其核心優勢在於多語言程式設計能力與作為智能代理執行複雜任務的能力。", "MiniMax-M2.5-highspeed.description": "MiniMax M2.5 高速版:與 M2.5 性能相同,但推理速度更快。", @@ -315,13 +314,13 @@ "claude-3-haiku-20240307.description": "Claude 3 Haiku 是 Anthropic 推出的最快速且最精簡的模型,設計用於即時回應,具備快速且準確的表現。", "claude-3-opus-20240229.description": "Claude 3 Opus 是 Anthropic 最強大的模型,適用於高度複雜任務,具備卓越的效能、智慧、流暢度與理解力。", "claude-3-sonnet-20240229.description": "Claude 3 Sonnet 在智慧與速度之間取得平衡,適合企業工作負載,提供高效能與低成本的大規模部署。", - "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 是 Anthropic 最快且最智能的 Haiku 模型,擁有閃電般的速度和延展性思維。", + "claude-haiku-4-5-20251001.description": "Claude Haiku 4.5 是 Anthropic 最快速且最智能的 Haiku 模型,擁有閃電般的速度和延展的推理能力。", "claude-haiku-4-5.description": "Anthropic 的 Claude Haiku 4.5 —— 新一代 Haiku,具備更強推理與視覺能力。", "claude-haiku-4.5.description": "Claude Haiku 4.5 是 Anthropic 最快速且最聰明的 Haiku 模型,具備閃電般的速度和延展的推理能力。", "claude-opus-4-1-20250805-thinking.description": "Claude Opus 4.1 Thinking 是一個進階版本,能夠揭示其推理過程。", - "claude-opus-4-1-20250805.description": "Claude Opus 4.1 是 Anthropic 最新且最強大的模型,專為高度複雜的任務設計,表現卓越,智能、流暢性和理解力均出色。", + "claude-opus-4-1-20250805.description": "Claude Opus 4.1 是 Anthropic 最新且最強大的模型,專為高度複雜的任務設計,表現卓越,展現出色的智能、流暢性和理解力。", "claude-opus-4-1.description": "Anthropic 的 Claude Opus 4.1 —— 旗艦級推理模型,擅長深度分析。", - "claude-opus-4-20250514.description": "Claude Opus 4 是 Anthropic 最強大的模型,專為高度複雜的任務設計,表現卓越,智能、流暢性和理解力均出色。", + "claude-opus-4-20250514.description": "Claude Opus 4 是 Anthropic 最強大的模型,專為高度複雜的任務設計,表現卓越,展現出色的智能、流暢性和理解力。", "claude-opus-4-5-20251101.description": "Claude Opus 4.5 是 Anthropic 的旗艦模型,結合卓越智慧與可擴展效能,適合需要最高品質回應與推理的複雜任務。", "claude-opus-4-5.description": "Anthropic 的 Claude Opus 4.5 —— 旗艦模型,具備頂級推理與程式能力。", "claude-opus-4-6.description": "Anthropic 的 Claude Opus 4.6 —— 支援 100 萬上下文的旗艦模型,擁有先進推理能力。", @@ -330,8 +329,8 @@ "claude-opus-4.6-fast.description": "Claude Opus 4.6 是 Anthropic 最智能的模型,用於構建代理和編碼。", "claude-opus-4.6.description": "Claude Opus 4.6 是 Anthropic 最智能的模型,用於構建代理和編碼。", "claude-sonnet-4-20250514-thinking.description": "Claude Sonnet 4 Thinking 可產生即時回應或延伸的逐步思考,並顯示其推理過程。", - "claude-sonnet-4-20250514.description": "Claude Sonnet 4 是 Anthropic 至今最智能的模型,提供近乎即時的回應或延展的逐步思考,為 API 使用者提供精細的控制。", - "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 是 Anthropic 至今最智能的模型。", + "claude-sonnet-4-20250514.description": "Claude Sonnet 4 能夠生成近乎即時的回應或提供可見過程的逐步推理。", + "claude-sonnet-4-5-20250929.description": "Claude Sonnet 4.5 是迄今為止 Anthropic 最智能的模型。", "claude-sonnet-4-5.description": "Anthropic 的 Claude Sonnet 4.5 —— 強化版 Sonnet,提升程式能力。", "claude-sonnet-4-6.description": "Anthropic 的 Claude Sonnet 4.6 —— 最新 Sonnet,具備更卓越的程式與工具使用能力。", "claude-sonnet-4.5.description": "Claude Sonnet 4.5 是 Anthropic 迄今為止最智能的模型。", @@ -404,7 +403,7 @@ "deepseek-ai/deepseek-llm-67b-chat.description": "DeepSeek LLM Chat(67B)是一款創新模型,具備深層語言理解與互動能力。", "deepseek-ai/deepseek-v3.1-terminus.description": "DeepSeek V3.1 是新一代推理模型,具備更強的複雜推理與思維鏈能力,適用於深度分析任務。", "deepseek-ai/deepseek-v3.2.description": "DeepSeek V3.2 是下一代推理模型,具備更強的複雜推理和連鎖思維能力。", - "deepseek-chat.description": "DeepSeek V4 Flash 非思考模式的兼容別名。計劃淘汰 — 請改用 DeepSeek V4 Flash。", + "deepseek-chat.description": "一款結合通用能力與程式能力的開源模型。它保留了聊天模型的通用對話能力和程式模型的強大編程能力,並且在偏好對齊方面表現更佳。DeepSeek-V2.5 還改進了寫作和指令遵循能力。", "deepseek-coder-33B-instruct.description": "DeepSeek Coder 33B 是一款程式語言模型,訓練於 2T token(87% 程式碼,13% 中英文文本),支援 16K 上下文視窗與中間填充任務,提供專案級程式補全與片段填充功能。", "deepseek-coder-v2.description": "DeepSeek Coder V2 是一款開源 MoE 程式模型,在程式任務中表現強勁,媲美 GPT-4 Turbo。", "deepseek-coder-v2:236b.description": "DeepSeek Coder V2 是一款開源 MoE 程式模型,在程式任務中表現強勁,媲美 GPT-4 Turbo。", @@ -426,7 +425,7 @@ "deepseek-r1-fast-online.description": "DeepSeek R1 快速全量版,支援即時網頁搜尋,結合 671B 規模能力與快速回應。", "deepseek-r1-online.description": "DeepSeek R1 全量版擁有 671B 參數與即時網頁搜尋功能,提供更強的理解與生成能力。", "deepseek-r1.description": "DeepSeek-R1 在強化學習前使用冷啟動資料,於數學、程式碼與推理任務中表現可媲美 OpenAI-o1。", - "deepseek-reasoner.description": "DeepSeek V4 Flash 思考模式的兼容別名。計劃淘汰 — 請改用 DeepSeek V4 Flash。", + "deepseek-reasoner.description": "一款專注於複雜邏輯推理任務的 DeepSeek 推理模型。", "deepseek-v2.description": "DeepSeek V2 是一款高效的 MoE 模型,適用於具成本效益的處理任務。", "deepseek-v2:236b.description": "DeepSeek V2 236B 是 DeepSeek 專注於程式碼生成的模型,具備強大能力。", "deepseek-v3-0324.description": "DeepSeek-V3-0324 是一款擁有 671B 參數的 MoE 模型,在程式設計、技術能力、語境理解與長文本處理方面表現出色。", @@ -491,8 +490,6 @@ "doubao-seedream-4-0-250828.description": "Seedream 4.0 是字節跳動 Seed 團隊推出的圖像生成模型,支援文字與圖像輸入,實現高度可控、高品質的圖像生成。可根據文字提示生成圖像。", "doubao-seedream-4-5-251128.description": "Seedream 4.5 是字節跳動最新的多模態圖像模型,整合了文本生成圖像、圖像生成圖像和批量圖像生成功能,同時融入了常識和推理能力。與之前的 4.0 版本相比,生成質量顯著提升,編輯一致性和多圖融合效果更好。它對視覺細節的控制更加精確,能更自然地生成小字和小臉,並實現更和諧的佈局和色彩,提升整體美感。", "doubao-seedream-5-0-260128.description": "Doubao-Seedream-5.0-lite 是字節跳動最新的圖像生成模型。首次整合了在線檢索功能,能夠結合實時網絡信息,提升生成圖像的時效性。模型的智能性也得到了升級,能夠精確解讀複雜指令和視覺內容。此外,它在專業場景中的全球知識覆蓋、參考一致性和生成質量方面均有改進,更好地滿足企業級視覺創作需求。", - "dreamina-seedance-2-0-260128.description": "字節跳動的 Seedance 2.0 是最強大的視頻生成模型,支持多模態參考視頻生成、視頻編輯、視頻擴展、文本生成視頻以及圖像生成視頻,並同步音頻。", - "dreamina-seedance-2-0-fast-260128.description": "字節跳動的 Seedance 2.0 Fast 提供與 Seedance 2.0 相同的功能,但生成速度更快,價格更具競爭力。", "emohaa.description": "Emohaa 是一款心理健康模型,具備專業諮詢能力,協助使用者理解情緒問題。", "ernie-4.5-0.3b.description": "ERNIE 4.5 0.3B 是一款開源輕量級模型,適合本地與客製化部署。", "ernie-4.5-8k-preview.description": "ERNIE 4.5 8K Preview 是一款 8K 上下文預覽模型,用於評估 ERNIE 4.5。", @@ -506,6 +503,7 @@ "ernie-5.0-thinking-latest.description": "文心 5.0 思考版是一款原生全模態旗艦模型,整合文字、圖像、音訊與影片建模,全面升級複雜問答、創作與智能體場景的能力。", "ernie-5.0-thinking-preview.description": "文心 5.0 思考預覽版是一款原生全模態旗艦模型,整合文字、圖像、音訊與影片建模,全面升級複雜問答、創作與智能體場景的能力。", "ernie-5.0.description": "ERNIE 5.0 是 ERNIE 系列新世代模型,屬於原生多模態大型模型。採用統一多模態建模方法,可同時建模文本、圖片、音訊與影片,具備全面的多模態能力。基礎能力大幅升級,在基準測試中表現亮眼,特別擅長多模態理解、指令遵循、創作寫作、事實準確性、代理規劃與工具使用。", + "ernie-5.1.description": "ERNIE 5.1 是 ERNIE 系列的最新模型,基礎能力全面升級。在代理、知識處理、推理和深度搜索等領域展現了顯著的改進。本次版本採用了解耦的全異步強化學習架構,專門針對大型模型向自主代理決策演進過程中的關鍵挑戰進行設計,包括訓練與推理數值差異、異構計算資源利用率低以及由長尾效應引發的全局問題。此外,還採用了大規模代理後訓練技術,進一步提升模型的能力和泛化性能。通過環境、專家和融合三階段協作框架,此方法不僅確保了訓練效率,還顯著提升了模型在複雜任務中的穩定性和表現。", "ernie-char-fiction-8k-preview.description": "ERNIE 角色小說 8K 預覽版是一款面向角色與情節創作的模型預覽,用於功能評估與測試。", "ernie-char-fiction-8k.description": "ERNIE 角色小說 8K 是一款面向小說與情節創作的角色模型,適合長篇故事生成。", "ernie-image-turbo.description": "ERNIE-Image 是百度推出的 80 億參數文生圖模型,在多項基準測試中名列前茅,在中國 SuperCLUE 中獲得並列第一,並在開源賽道領先。", @@ -517,8 +515,7 @@ "ernie-x1-turbo-32k.description": "ERNIE X1 Turbo 32K 是一款快速思考模型,具備 32K 上下文,適合複雜推理與多輪對話。", "ernie-x1.1-preview.description": "ERNIE X1.1 預覽版是一款思考模型預覽,用於評估與測試。", "ernie-x1.1.description": "ERNIE X1.1 是一個用於評估和測試的思考模型預覽版。", - "fal-ai/bytedance/seedream/v4.5.description": "Seedream 4.5,由字節跳動 Seed 團隊打造,支持多圖像編輯和合成。特點包括增強的主題一致性、精確的指令執行、空間邏輯理解、美學表達、海報佈局和標誌設計,以及高精度的文字圖像渲染。", - "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0,由字節跳動 Seed 團隊打造,支持文本和圖像輸入,能從提示中生成高度可控、高質量的圖像。", + "fal-ai/bytedance/seedream/v4.description": "Seedream 4.0 是來自字節跳動 Seed 的圖像生成模型,支持文本和圖像輸入,能夠生成高度可控且高品質的圖像。它可以根據文本提示生成圖像。", "fal-ai/flux-kontext/dev.description": "FLUX.1 模型專注於圖像編輯,支援文字與圖像輸入。", "fal-ai/flux-pro/kontext.description": "FLUX.1 Kontext [pro] 接受文字與參考圖像輸入,實現目標區域編輯與複雜場景轉換。", "fal-ai/flux/krea.description": "Flux Krea [dev] 是一款圖像生成模型,偏好更真實自然的美學風格。", @@ -526,8 +523,8 @@ "fal-ai/hunyuan-image/v3.description": "一款強大的原生多模態圖像生成模型。", "fal-ai/imagen4/preview.description": "來自 Google 的高品質圖像生成模型。", "fal-ai/nano-banana.description": "Nano Banana 是 Google 最新、最快且最高效的原生多模態模型,支援透過對話進行圖像生成與編輯。", - "fal-ai/qwen-image-edit.description": "Qwen 團隊的專業圖像編輯模型,支持語義和外觀編輯、精確的中英文文字編輯、風格轉換、旋轉等功能。", - "fal-ai/qwen-image.description": "Qwen 團隊的強大圖像生成模型,具有強大的中文文字渲染能力和多樣化的視覺風格。", + "fal-ai/qwen-image-edit.description": "Qwen 團隊推出的專業圖像編輯模型,支持語義和外觀編輯,精確編輯中英文文本,並能進行高品質的編輯,例如風格轉換和物體旋轉。", + "fal-ai/qwen-image.description": "Qwen 團隊推出的強大圖像生成模型,擁有令人印象深刻的中文文本渲染能力和多樣化的視覺風格。", "flux-1-schnell.description": "來自黑森林實驗室的 12B 參數文字轉圖像模型,透過潛在對抗擴散蒸餾技術,在 1 至 4 步內生成高品質圖像。其表現媲美封閉式替代方案,並以 Apache-2.0 授權釋出,供個人、研究與商業用途。", "flux-dev.description": "開源研發導向的影像生成模型,針對非商業創新研究進行高效優化。", "flux-kontext-max.description": "最先進的語境圖像生成與編輯技術,結合文字與圖像輸入,實現精準且一致的結果。", @@ -569,7 +566,7 @@ "gemini-3-pro-image-preview:image.description": "Gemini 3 Pro Image(Nano Banana Pro)是 Google 的圖像生成模型,並支持多模態聊天。", "gemini-3-pro-preview.description": "Gemini 3 Pro 是 Google 最強大的智能代理與情境編碼模型,具備頂尖推理能力、豐富視覺表現與深度互動。", "gemini-3.1-flash-image-preview.description": "Gemini 3.1 Flash Image (Nano Banana 2) 是 Google 最快的原生影像生成模型,支持思考、對話式影像生成與編輯。", - "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image(Nano Banana 2)以閃電速度提供專業級圖像質量,並支持多模態聊天。", + "gemini-3.1-flash-image-preview:image.description": "Gemini 3.1 Flash Image(Nano Banana 2)是 Google 最快速的原生圖像生成模型,支持思維能力、對話式圖像生成和編輯。", "gemini-3.1-flash-lite-preview.description": "Gemini 3.1 Flash-Lite Preview 是 Google 最具成本效益的多模態模型,專為高容量代理任務、翻譯和數據處理而優化。", "gemini-3.1-flash-lite.description": "Gemini 3.1 Flash-Lite 是 Google 最具成本效益的多模態模型,專為高容量代理任務、翻譯和數據處理而優化。", "gemini-3.1-pro-preview.description": "Gemini 3.1 Pro Preview 在 Gemini 3 Pro 的基礎上增強了推理能力,並新增了中等思考層級支持。", @@ -734,8 +731,6 @@ "grok-4-fast-reasoning.description": "我們很高興推出 Grok 4 Fast,這是我們在高性價比推理模型上的最新進展。", "grok-4.20-0309-non-reasoning.description": "不具推理功能的版本,適用於簡單使用情境。", "grok-4.20-0309-reasoning.description": "智慧、極速的模型,會先思考再作答。", - "grok-4.20-beta-0309-non-reasoning.description": "適用於簡單使用場景的非推理變體。", - "grok-4.20-beta-0309-reasoning.description": "智能且極速的模型,在回應前進行推理。", "grok-4.20-multi-agent-0309.description": "由 4 或 16 個代理組成的團隊,擅長研究類任務。目前不支援客戶端工具,只支援 xAI 伺服器端工具(如 X Search、Web Search)及遠端 MCP 工具。", "grok-4.3.description": "世界上最追求真理的大型語言模型", "grok-4.description": "最新的 Grok 旗艦模型,擁有無與倫比的語言、數學和推理能力 — 真正的全能型模型。目前指向 grok-4-0709;由於資源有限,暫時比官方定價高 10%,預計稍後會恢復至官方價格。", @@ -1220,8 +1215,6 @@ "qwq.description": "QwQ 是 Qwen 系列中的推理模型。相較於標準指令微調模型,它具備更強的思考與推理能力,顯著提升下游任務表現,特別是在處理困難問題時。QwQ-32B 是中型推理模型,表現可媲美 DeepSeek-R1 與 o1-mini 等頂尖模型。", "qwq_32b.description": "Qwen 系列中的中型推理模型。相較於標準指令微調模型,QwQ 的思考與推理能力顯著提升下游任務表現,特別是在處理困難問題時。", "r1-1776.description": "R1-1776 是 DeepSeek R1 的後訓練版本,旨在提供未經審查、無偏見的事實資訊。", - "seedance-1-5-pro-251215.description": "字節跳動的 Seedance 1.5 Pro 支持文本生成視頻、圖像生成視頻(首幀、首幀+尾幀)以及與視覺同步的音頻生成。", - "seedream-5-0-260128.description": "字節跳動 BytePlus 的 Seedream 5.0 Lite,支持基於網絡檢索的增強生成,提供即時信息、複雜提示解釋增強,以及改進的參考一致性,用於專業視覺創作。", "solar-mini-ja.description": "Solar Mini (Ja) 是 Solar Mini 的日文強化版本,同時維持在英文與韓文上的高效能表現。", "solar-mini.description": "Solar Mini 是一款緊湊型大型語言模型,效能超越 GPT-3.5,具備強大的多語言能力,支援英文與韓文,提供高效能且佔用資源小的解決方案。", "solar-pro.description": "Solar Pro 是 Upstage 推出的高智慧大型語言模型,專注於單 GPU 上的指令遵循任務,IFEval 分數超過 80。目前支援英文,完整版本預計於 2024 年 11 月推出,將擴展語言支援與上下文長度。", diff --git a/locales/zh-TW/onboarding.json b/locales/zh-TW/onboarding.json index 7040b96ad4..9c569b181e 100644 --- a/locales/zh-TW/onboarding.json +++ b/locales/zh-TW/onboarding.json @@ -27,6 +27,13 @@ "agent.layout.skipConfirm.ok": "先跳過", "agent.layout.skipConfirm.title": "要先跳過新手引導嗎?", "agent.layout.switchMessage": "暫時不想繼續?可以切換到 {{mode}}{{skip}}。", + "agent.layout.switchMessageClassic": "今天不想用這個嗎?您可以切換到{{mode}}。", + "agent.messenger.cta.discord": "添加到 Discord", + "agent.messenger.cta.slack": "添加到 Slack", + "agent.messenger.cta.telegram": "在 Telegram 中開啟", + "agent.messenger.subtitle": "在 Telegram、Slack 或 Discord 上與您的代理聊天", + "agent.messenger.telegramQrCaption": "用手機相機掃描", + "agent.messenger.title": "無論您在哪裡聊天,都帶上我", "agent.modeSwitch.agent": "對話模式", "agent.modeSwitch.classic": "經典模式", "agent.modeSwitch.collapse": "收合", @@ -68,6 +75,13 @@ "agent.wrapUp.confirm.content": "我會先儲存我們目前的內容。之後您隨時都能再回來聊天。", "agent.wrapUp.confirm.ok": "現在結束", "agent.wrapUp.confirm.title": "要現在結束使用引導嗎?", + "agentPicker.allCategories": "全部", + "agentPicker.continue": "繼續", + "agentPicker.skip": "暫時跳過", + "agentPicker.subtitle": "現在就添加一些到您的庫中 — 隨時探索更多。", + "agentPicker.title": "讓我們為您的庫添加一些代理", + "agentPicker.title2": "選擇符合您工作方式的代理", + "agentPicker.title3": "您隨時可以添加更多 — 先從幾個開始", "back": "上一步", "finish": "開始使用", "interests.area.business": "商業與策略", diff --git a/locales/zh-TW/plugin.json b/locales/zh-TW/plugin.json index c2fedd38b5..96369f7dde 100644 --- a/locales/zh-TW/plugin.json +++ b/locales/zh-TW/plugin.json @@ -39,8 +39,8 @@ "builtins.lobe-agent-documents.inspector.docCount": "{{count}} 文件", "builtins.lobe-agent-documents.inspector.opsCount": "{{count}} 操作", "builtins.lobe-agent-documents.inspector.opsResult": "{{success}}/{{total}} 操作", - "builtins.lobe-agent-documents.inspector.target.agent": "在代理中", - "builtins.lobe-agent-documents.inspector.target.currentTopic": "在主題中", + "builtins.lobe-agent-documents.inspector.scope.agent": "在代理中", + "builtins.lobe-agent-documents.inspector.scope.currentTopic": "在主題中", "builtins.lobe-agent-documents.title": "代理文件", "builtins.lobe-agent-management.apiName.callAgent": "呼叫代理", "builtins.lobe-agent-management.apiName.createAgent": "建立代理", @@ -90,6 +90,14 @@ "builtins.lobe-agent.title": "Lobe 代理", "builtins.lobe-claude-code.agent.instruction": "指令", "builtins.lobe-claude-code.agent.result": "結果", + "builtins.lobe-claude-code.task.createLabel": "建立任務:", + "builtins.lobe-claude-code.task.getLabel": "檢查任務 #{{taskId}}", + "builtins.lobe-claude-code.task.listLabel": "列出任務", + "builtins.lobe-claude-code.task.updateCompleted": "已完成", + "builtins.lobe-claude-code.task.updateDeleted": "已刪除", + "builtins.lobe-claude-code.task.updateInProgress": "已開始", + "builtins.lobe-claude-code.task.updateLabel": "更新任務 #{{taskId}}", + "builtins.lobe-claude-code.task.updatePending": "重置", "builtins.lobe-claude-code.todoWrite.allDone": "所有任務皆已完成", "builtins.lobe-claude-code.todoWrite.currentStep": "目前步驟", "builtins.lobe-claude-code.todoWrite.todos": "待辦項目", diff --git a/locales/zh-TW/providers.json b/locales/zh-TW/providers.json index 68348ea3ce..41054f2aa6 100644 --- a/locales/zh-TW/providers.json +++ b/locales/zh-TW/providers.json @@ -33,7 +33,6 @@ "jina.description": "Jina AI 成立於 2020 年,是領先的搜尋 AI 公司。其搜尋技術堆疊包含向量模型、重排序器與小型語言模型,打造可靠且高品質的生成式與多模態搜尋應用。", "kimicodingplan.description": "來自 Moonshot AI 的 Kimi Code 提供對 Kimi 模型(包括 K2.5)的訪問,用於編碼任務。", "lmstudio.description": "LM Studio 是一款桌面應用程式,可在本機開發與實驗大型語言模型。", - "lobehub.description": "LobeHub Cloud 使用官方 API 存取 AI 模型,並以與模型代幣相關的點數來計算使用量。", "longcat.description": "LongCat 是美團自主研發的一系列生成式 AI 大模型。其設計旨在通過高效的計算架構和強大的多模態能力,提升企業內部生產力並實現創新應用。", "minimax.description": "MiniMax 成立於 2021 年,致力於打造通用 AI,擁有多模態基礎模型,包括兆級參數的 MoE 文本模型、語音模型與視覺模型,並推出如海螺 AI 等應用。", "minimaxcodingplan.description": "MiniMax 代幣計劃通過固定費用訂閱提供對 MiniMax 模型(包括 M2.7)的訪問,用於編碼任務。", diff --git a/locales/zh-TW/subscription.json b/locales/zh-TW/subscription.json index 687ba12858..66a92efae6 100644 --- a/locales/zh-TW/subscription.json +++ b/locales/zh-TW/subscription.json @@ -55,6 +55,12 @@ "credits.autoTopUp.toggle": "啟用自動加值", "credits.autoTopUp.upgradeHint": "訂閱付費方案以啟用自動加值", "credits.autoTopUp.validation.targetMustExceedThreshold": "目標餘額必須大於觸發門檻", + "credits.costEstimateHint.desc": "當預估模型成本達到您的門檻時,顯示輕量級警告提示", + "credits.costEstimateHint.saveError": "無法保存成本預估警報設置", + "credits.costEstimateHint.saveSuccess": "成本預估警報設置已保存", + "credits.costEstimateHint.threshold": "警告門檻", + "credits.costEstimateHint.title": "成本預估警報", + "credits.costEstimateHint.validation.threshold": "門檻必須大於或等於 0", "credits.packages.auto": "自動", "credits.packages.charged": "已收取 ${{amount}}", "credits.packages.expired": "已過期", diff --git a/locales/zh-TW/tool.json b/locales/zh-TW/tool.json index c044d08e7d..d76b71d33a 100644 --- a/locales/zh-TW/tool.json +++ b/locales/zh-TW/tool.json @@ -40,6 +40,14 @@ "agentMarketplace.render.alreadyInLibraryTag": "已在資料庫中", "agentMarketplace.render.alreadyInLibrary_one": "{{count}} 已在資料庫中", "agentMarketplace.render.alreadyInLibrary_other": "{{count}} 已在資料庫中", + "claudeCode.askUserQuestion.escape.back": "返回選項", + "claudeCode.askUserQuestion.escape.enter": "或直接輸入", + "claudeCode.askUserQuestion.escape.placeholder": "在此輸入您的答案…", + "claudeCode.askUserQuestion.multiSelectTag": "(多選)", + "claudeCode.askUserQuestion.skip": "跳過", + "claudeCode.askUserQuestion.submit": "提交", + "claudeCode.askUserQuestion.timeExpired": "時間已到 — 每個問題使用選項 1。", + "claudeCode.askUserQuestion.timeRemaining": "剩餘時間:{{time}} · 未回答的問題在超時時默認為選項 1。", "codeInterpreter-legacy.error": "執行錯誤", "codeInterpreter-legacy.executing": "執行中...", "codeInterpreter-legacy.files": "檔案:", diff --git a/locales/zh-TW/topic.json b/locales/zh-TW/topic.json index eea92ca4d8..818d0b45fd 100644 --- a/locales/zh-TW/topic.json +++ b/locales/zh-TW/topic.json @@ -56,6 +56,7 @@ "renameModal.title": "重新命名主題", "searchPlaceholder": "搜尋話題...", "searchResultEmpty": "目前沒有搜尋結果", + "sidebar.title": "主題", "taskManager.agent": "任務代理", "taskManager.welcome": "可以詢問我有關你的待辦事項", "temp": "臨時", diff --git a/packages/agent-runtime/src/types/hooks.ts b/packages/agent-runtime/src/types/hooks.ts index cf11bc8bd0..b4f239a600 100644 --- a/packages/agent-runtime/src/types/hooks.ts +++ b/packages/agent-runtime/src/types/hooks.ts @@ -30,9 +30,30 @@ export type AgentHookType = /** * Unified event payload passed to hook handlers and webhook payloads */ +/** + * Outbound attachment carried alongside the agent's final reply text. + * Populated only on `onComplete`. JSON-safe so it survives webhook delivery. + */ +export interface HookEventAttachment { + /** Base64-encoded bytes. Used when no fetchable URL exists. */ + data?: string; + /** Remote URL the downstream consumer can GET to retrieve the bytes. */ + fetchUrl?: string; + mimeType?: string; + name?: string; + type: 'image' | 'file' | 'video' | 'audio'; +} + export interface AgentHookEvent { // Identification agentId: string; + /** + * Outbound attachments extracted from the final assistant message's + * multimodal `content` parts (or tool messages that produced image/file + * outputs). Set on `onComplete` events; downstream consumers (bot reply + * callbacks) forward these to platform messengers. + */ + attachments?: HookEventAttachment[]; /** LLM text output (afterStep only) */ content?: string; // Statistics diff --git a/packages/builtin-tool-message/src/ExecutionRuntime/index.ts b/packages/builtin-tool-message/src/ExecutionRuntime/index.ts index 806574850a..660d1bb5d0 100644 --- a/packages/builtin-tool-message/src/ExecutionRuntime/index.ts +++ b/packages/builtin-tool-message/src/ExecutionRuntime/index.ts @@ -105,6 +105,7 @@ export type { SearchMessagesState, SendDirectMessageParams, SendDirectMessageState, + SendMessageAttachment, SendMessageParams, SendMessageState, ToggleBotParams, diff --git a/packages/builtin-tool-message/src/systemRole.ts b/packages/builtin-tool-message/src/systemRole.ts index 832b1b85d6..9bc2a45f6a 100644 --- a/packages/builtin-tool-message/src/systemRole.ts +++ b/packages/builtin-tool-message/src/systemRole.ts @@ -125,6 +125,7 @@ Skipping step 1 will silently wipe other entries. - Uses iLink Bot API with long-polling for message delivery - Sending messages requires a context token from an active conversation - Only sendMessage is available, and only within active conversation context +- Outbound text, images, files, and videos are supported (each media item is sent as a separate message per protocol) - Message operations may fail if no active conversation context exists `; diff --git a/packages/builtin-tool-message/src/types.ts b/packages/builtin-tool-message/src/types.ts index 658828dd1d..44a989167e 100644 --- a/packages/builtin-tool-message/src/types.ts +++ b/packages/builtin-tool-message/src/types.ts @@ -92,7 +92,31 @@ export interface SendDirectMessageState { // --- Core Message Operations --- +/** + * JSON-safe outbound attachment for `sendMessage`. Either `data` (base64) or + * `fetchUrl` (remote URL) must be set. Prefer `fetchUrl` to keep payload size + * small when the binary already lives somewhere reachable. + * + * Mirrors `BotMessageAttachment` on the bot-reply callback path so the agent + * runtime, callback service, and Messager tool/CLI all speak the same shape. + */ +export interface SendMessageAttachment { + /** Base64-encoded bytes. Used when no fetchable URL exists. */ + data?: string; + /** Remote URL the platform server can GET to retrieve the bytes. */ + fetchUrl?: string; + mimeType?: string; + name?: string; + type: 'image' | 'file' | 'video' | 'audio'; +} + export interface SendMessageParams { + /** + * Optional: outbound media attachments (images / files / video / audio). + * Platforms that don't support outbound media silently drop these so the + * text leg still ships. + */ + attachments?: SendMessageAttachment[]; /** Channel / conversation / room ID */ channelId: string; /** Message content (text, markdown depending on platform support) */ diff --git a/packages/chat-adapter-wechat/src/adapter.test.ts b/packages/chat-adapter-wechat/src/adapter.test.ts index 83c0f86489..f989454595 100644 --- a/packages/chat-adapter-wechat/src/adapter.test.ts +++ b/packages/chat-adapter-wechat/src/adapter.test.ts @@ -2,7 +2,7 @@ import type { MockInstance } from 'vitest'; import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { createWechatAdapter, downloadMediaFromRawMessage, WechatAdapter } from './adapter'; -import { WechatApiClient } from './api'; +import { WechatApiClient, WechatUploadMediaType } from './api'; import type { WechatRawMessage } from './types'; import { MessageItemType, MessageState, MessageType } from './types'; @@ -523,6 +523,146 @@ describe('WechatAdapter', () => { await expect(adapter.startTyping('t')).resolves.toBeUndefined(); }); }); + + // ---------- postMessage (outbound text + attachments) ---------- + + describe('postMessage', () => { + const threadId = 'wechat:single:user_x@im.wechat'; + let sendMessageSpy: MockInstance; + let sendItemSpy: MockInstance; + let uploadSpy: MockInstance; + + beforeEach(() => { + adapter.setContextToken(threadId, 'ctx_tok'); + sendMessageSpy = vi + .spyOn((adapter as any).api, 'sendMessage') + .mockResolvedValue({ ret: 0 }) as MockInstance; + sendItemSpy = vi + .spyOn((adapter as any).api, 'sendItem') + .mockResolvedValue({ ret: 0 }) as MockInstance; + uploadSpy = vi.spyOn((adapter as any).api, 'uploadCdnMedia').mockResolvedValue({ + aesKey: 'AES_B64', + cipherSize: 64, + encryptQueryParam: 'ENC_QP', + rawSize: 50, + }) as MockInstance; + }); + + it('sends pure text via sendMessage and never touches the media path', async () => { + const raw = await adapter.postMessage(threadId, 'hello world'); + + expect(sendMessageSpy).toHaveBeenCalledWith('user_x@im.wechat', 'hello world', 'ctx_tok'); + expect(uploadSpy).not.toHaveBeenCalled(); + expect(sendItemSpy).not.toHaveBeenCalled(); + expect(raw.raw.item_list).toHaveLength(1); + expect(raw.raw.item_list[0].type).toBe(MessageItemType.TEXT); + }); + + it('uploads and sends an image attachment as a separate IMAGE item', async () => { + const bytes = Buffer.from('pretend image bytes'); + + await adapter.postMessage(threadId, { + attachments: [ + { data: bytes, mimeType: 'image/png', name: 'pic.png', type: 'image', url: '' }, + ], + markdown: 'check this out', + }); + + // Text should be sent first via sendMessage, image as a separate sendItem. + expect(sendMessageSpy).toHaveBeenCalledTimes(1); + expect(uploadSpy).toHaveBeenCalledWith( + 'user_x@im.wechat', + WechatUploadMediaType.IMAGE, + bytes, + ); + expect(sendItemSpy).toHaveBeenCalledTimes(1); + + const [, item, contextToken] = sendItemSpy.mock.calls[0]; + expect(contextToken).toBe('ctx_tok'); + expect(item.type).toBe(MessageItemType.IMAGE); + expect(item.image_item?.media).toEqual({ + aes_key: 'AES_B64', + encrypt_query_param: 'ENC_QP', + encrypt_type: 1, + }); + }); + + it('routes a file attachment to a FILE item carrying file_name + len', async () => { + const bytes = Buffer.from('pdf bytes here'); + + await adapter.postMessage(threadId, { + attachments: [ + { data: bytes, mimeType: 'application/pdf', name: 'report.pdf', type: 'file', url: '' }, + ], + raw: '', + }); + + expect(uploadSpy).toHaveBeenCalledWith('user_x@im.wechat', WechatUploadMediaType.FILE, bytes); + expect(sendMessageSpy).not.toHaveBeenCalled(); // empty raw text → skip + const [, item] = sendItemSpy.mock.calls[0]; + expect(item.type).toBe(MessageItemType.FILE); + expect(item.file_item?.file_name).toBe('report.pdf'); + expect(item.file_item?.len).toBe(String(bytes.length)); + }); + + it('falls back to attachment.url when data is absent', async () => { + const remoteBytes = Buffer.from([1, 2, 3, 4, 5]); + vi.stubGlobal( + 'fetch', + vi.fn().mockResolvedValueOnce(new Response(new Uint8Array(remoteBytes), { status: 200 })), + ); + + await adapter.postMessage(threadId, { + attachments: [ + { + mimeType: 'image/jpeg', + name: 'photo.jpg', + type: 'image', + url: 'https://cdn.example/photo.jpg', + }, + ], + raw: '', + }); + + expect(uploadSpy).toHaveBeenCalledTimes(1); + const uploadedBytes = uploadSpy.mock.calls[0][2]; + expect(Buffer.from(uploadedBytes).equals(remoteBytes)).toBe(true); + }); + + it('promotes a FileUpload (no type field) to FILE based on mimeType', async () => { + const bytes = Buffer.from('arbitrary bytes'); + + await adapter.postMessage(threadId, { + files: [{ data: bytes, filename: 'notes.md', mimeType: 'text/markdown' }], + raw: '', + }); + + expect(uploadSpy).toHaveBeenCalledWith('user_x@im.wechat', WechatUploadMediaType.FILE, bytes); + const [, item] = sendItemSpy.mock.calls[0]; + expect(item.type).toBe(MessageItemType.FILE); + expect(item.file_item?.file_name).toBe('notes.md'); + }); + + it('keeps sending other attachments when one upload fails', async () => { + uploadSpy.mockRejectedValueOnce(new Error('CDN exploded')).mockResolvedValueOnce({ + aesKey: 'AES_B64', + cipherSize: 16, + encryptQueryParam: 'ENC_OK', + rawSize: 4, + }); + + await adapter.postMessage(threadId, { + attachments: [ + { data: Buffer.from('first'), name: 'a.png', type: 'image', url: '' }, + { data: Buffer.from('ok'), name: 'b.png', type: 'image', url: '' }, + ], + raw: '', + }); + + expect(uploadSpy).toHaveBeenCalledTimes(2); + expect(sendItemSpy).toHaveBeenCalledTimes(1); // second one succeeded + }); + }); }); // ---------- createWechatAdapter factory ---------- diff --git a/packages/chat-adapter-wechat/src/adapter.ts b/packages/chat-adapter-wechat/src/adapter.ts index acce50bfb1..cb47aa18c0 100644 --- a/packages/chat-adapter-wechat/src/adapter.ts +++ b/packages/chat-adapter-wechat/src/adapter.ts @@ -7,6 +7,7 @@ import type { EmojiValue, FetchOptions, FetchResult, + FileUpload, FormattedContent, Logger, RawMessage, @@ -16,9 +17,9 @@ import type { import { Message, parseMarkdown } from 'chat'; import mime from 'mime'; -import { WechatApiClient } from './api'; +import { WechatApiClient, WechatUploadMediaType } from './api'; import { WechatFormatConverter } from './format-converter'; -import type { WechatAdapterConfig, WechatRawMessage, WechatThreadId } from './types'; +import type { MessageItem, WechatAdapterConfig, WechatRawMessage, WechatThreadId } from './types'; import { MessageItemType, MessageState, MessageType } from './types'; /** @@ -306,6 +307,100 @@ async function downloadImageItemFromRaw( return undefined; } +/** + * Normalized outbound media descriptor used by `WechatAdapter.postMessage`. + * Bridges chat-sdk's two attachment shapes (Attachment vs FileUpload) into a + * single buffer-backed record before uploading to the iLink CDN. + */ +interface OutboundMediaSpec { + buffer: Buffer; + mimeType?: string; + name?: string; + type: 'image' | 'file' | 'video' | 'audio'; +} + +/** + * Resolve an Attachment's binary bytes from any of the SDK's three sources: + * inline `data`, lazy `fetchData()`, or `url`. Returns undefined if none work. + */ +async function loadAttachmentBuffer( + attachment: Attachment, + logger?: Pick, +): Promise { + if (attachment.data) { + return blobOrBufferToBuffer(attachment.data); + } + if (typeof attachment.fetchData === 'function') { + try { + return await attachment.fetchData(); + } catch (error) { + logger?.warn?.('Attachment fetchData failed: %s', error); + } + } + if (attachment.url) { + try { + const response = await fetch(attachment.url, { + signal: AbortSignal.timeout(15_000), + }); + if (response.ok) { + return Buffer.from(await response.arrayBuffer()); + } + logger?.warn?.('Attachment url fetch failed: HTTP %d', response.status); + } catch (error) { + logger?.warn?.('Attachment url fetch failed: %s', error); + } + } + return undefined; +} + +async function fileUploadToBuffer(file: FileUpload): Promise { + return blobOrBufferToBuffer(file.data); +} + +async function blobOrBufferToBuffer( + data: Buffer | Blob | ArrayBuffer, +): Promise { + if (Buffer.isBuffer(data)) return data; + if (data instanceof ArrayBuffer) return Buffer.from(data); + if (typeof Blob !== 'undefined' && data instanceof Blob) { + return Buffer.from(await data.arrayBuffer()); + } + return undefined; +} + +/** + * Infer a chat-sdk Attachment.type from a filename or mime type when we only + * have a FileUpload (which doesn't carry the type field). + */ +function inferAttachmentType( + filename: string, + mimeType?: string, +): 'image' | 'file' | 'video' | 'audio' { + const resolvedMime = mimeType || mime.getType(filename) || ''; + if (resolvedMime.startsWith('image/')) return 'image'; + if (resolvedMime.startsWith('video/')) return 'video'; + if (resolvedMime.startsWith('audio/')) return 'audio'; + return 'file'; +} + +function mapToUploadMediaType(type: 'image' | 'file' | 'video' | 'audio'): WechatUploadMediaType { + switch (type) { + case 'image': { + return WechatUploadMediaType.IMAGE; + } + case 'video': { + return WechatUploadMediaType.VIDEO; + } + case 'audio': { + return WechatUploadMediaType.VOICE; + } + case 'file': + default: { + return WechatUploadMediaType.FILE; + } + } +} + /** * WeChat (iLink) adapter for Chat SDK. * @@ -406,7 +501,37 @@ export class WechatAdapter implements Adapter const text = this.formatConverter.renderPostable(message); const contextToken = this.contextTokens.get(threadId) || ''; - await this.api.sendMessage(id, text, contextToken); + const sentItems: MessageItem[] = []; + + if (text.trim()) { + await this.api.sendMessage(id, text, contextToken); + sentItems.push({ text_item: { text }, type: MessageItemType.TEXT }); + } + + // Per protocol-spec §6.7, media items are sent as separate sendmessage calls + // (one item per request). We collect attachments + files from the postable + // payload, materialize their bytes, and upload each to the iLink CDN. + const mediaSpecs = await this.collectMediaSpecs(message); + for (const spec of mediaSpecs) { + try { + const item = await this.uploadAndBuildMediaItem(id, spec); + await this.api.sendItem(id, item, contextToken); + sentItems.push(item); + } catch (error) { + // Single-attachment failure shouldn't abort the rest — log and continue. + this.logger.warn( + 'Failed to send %s attachment "%s" to WeChat: %s', + spec.type, + spec.name ?? '(unnamed)', + error, + ); + } + } + + // Fall back to an empty TEXT item if nothing was sent (preserves previous + // behavior where postMessage always produced a raw message). + const itemList = + sentItems.length > 0 ? sentItems : [{ text_item: { text }, type: MessageItemType.TEXT }]; return { id: `bot_${Date.now()}`, @@ -415,7 +540,7 @@ export class WechatAdapter implements Adapter context_token: contextToken, create_time_ms: Date.now(), from_user_id: this._botUserId || '', - item_list: [{ text_item: { text }, type: MessageItemType.TEXT }], + item_list: itemList, message_id: 0, message_state: MessageState.FINISH, message_type: MessageType.BOT, @@ -425,6 +550,101 @@ export class WechatAdapter implements Adapter }; } + /** + * Pull `attachments` and `files` off a postable message (the shape varies by + * union member) and normalize them into a flat list with the bytes we'll need. + */ + private async collectMediaSpecs(message: AdapterPostableMessage): Promise { + if (typeof message === 'string') return []; + + const attachments: Attachment[] = []; + const files: FileUpload[] = []; + + // PostableRaw / PostableMarkdown / PostableAst all use the same `attachments` + `files` shape. + // PostableCard only carries `files`. CardElement carries neither. + if ('attachments' in message && Array.isArray(message.attachments)) { + attachments.push(...message.attachments); + } + if ('files' in message && Array.isArray(message.files)) { + files.push(...message.files); + } + + const specs: OutboundMediaSpec[] = []; + + for (const attachment of attachments) { + const buffer = await loadAttachmentBuffer(attachment, this.logger); + if (!buffer) continue; + specs.push({ + buffer, + mimeType: attachment.mimeType, + name: attachment.name, + type: attachment.type, + }); + } + + for (const file of files) { + const buffer = await fileUploadToBuffer(file); + if (!buffer) continue; + specs.push({ + buffer, + mimeType: file.mimeType, + name: file.filename, + type: inferAttachmentType(file.filename, file.mimeType), + }); + } + + return specs; + } + + /** + * Upload one media buffer to the iLink CDN and build the corresponding + * MessageItem to send via {@link WechatApiClient.sendItem}. + */ + private async uploadAndBuildMediaItem( + toUserId: string, + spec: OutboundMediaSpec, + ): Promise { + const mediaType = mapToUploadMediaType(spec.type); + const result = await this.api.uploadCdnMedia(toUserId, mediaType, spec.buffer); + const cdnMedia = { + aes_key: result.aesKey, + encrypt_query_param: result.encryptQueryParam, + encrypt_type: 1 as const, + }; + + switch (mediaType) { + case WechatUploadMediaType.IMAGE: { + return { + image_item: { media: cdnMedia }, + type: MessageItemType.IMAGE, + }; + } + case WechatUploadMediaType.VIDEO: { + return { + type: MessageItemType.VIDEO, + video_item: { media: cdnMedia, video_size: result.cipherSize }, + }; + } + case WechatUploadMediaType.VOICE: { + return { + type: MessageItemType.VOICE, + voice_item: { media: cdnMedia }, + }; + } + case WechatUploadMediaType.FILE: + default: { + return { + file_item: { + file_name: spec.name, + len: String(spec.buffer.length), + media: cdnMedia, + }, + type: MessageItemType.FILE, + }; + } + } + } + async editMessage( threadId: string, _messageId: string, diff --git a/packages/chat-adapter-wechat/src/api.test.ts b/packages/chat-adapter-wechat/src/api.test.ts index 89f95d1912..e3a520a0fd 100644 --- a/packages/chat-adapter-wechat/src/api.test.ts +++ b/packages/chat-adapter-wechat/src/api.test.ts @@ -1,4 +1,4 @@ -import { createCipheriv } from 'node:crypto'; +import { createCipheriv, createDecipheriv } from 'node:crypto'; import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; @@ -9,8 +9,9 @@ import { pollQrStatus, resolveAesKey, WechatApiClient, + WechatUploadMediaType, } from './api'; -import { WECHAT_RET_CODES } from './types'; +import { MessageItemType, WECHAT_RET_CODES } from './types'; // ---- helpers ---- @@ -248,6 +249,134 @@ describe('WechatApiClient', () => { }); }); + // ---------- sendItem ---------- + + describe('sendItem', () => { + it('should send a single media item with the provided MessageItem shape', async () => { + mockFetch.mockResolvedValueOnce(jsonResponse({ ret: 0 })); + + const item = { + image_item: { + media: { + aes_key: 'AABB', + encrypt_query_param: 'qqp', + encrypt_type: 1 as const, + }, + }, + type: MessageItemType.IMAGE, + }; + await client.sendItem('user_1', item, 'ctx'); + + const body = JSON.parse(mockFetch.mock.calls[0][1]!.body as string); + expect(body.msg.to_user_id).toBe('user_1'); + expect(body.msg.context_token).toBe('ctx'); + expect(body.msg.item_list).toEqual([item]); + expect(body.msg.item_list).toHaveLength(1); + }); + }); + + // ---------- uploadCdnMedia ---------- + + describe('uploadCdnMedia', () => { + it('should follow the 3-step getuploadurl → encrypt → POST CDN flow', async () => { + // Step 1: getuploadurl response + mockFetch.mockResolvedValueOnce(jsonResponse({ upload_param: 'UP_PARAM_xyz' })); + // Step 2: CDN upload — returns x-encrypted-param header + mockFetch.mockResolvedValueOnce( + new Response('', { + headers: { 'x-encrypted-param': 'ENC_QP_abc' }, + status: 200, + }), + ); + + const plaintext = Buffer.from('hello image bytes'); + const result = await client.uploadCdnMedia( + 'user_1@im.wechat', + WechatUploadMediaType.IMAGE, + plaintext, + ); + + expect(result.encryptQueryParam).toBe('ENC_QP_abc'); + expect(result.rawSize).toBe(plaintext.length); + expect(result.cipherSize).toBeGreaterThanOrEqual(plaintext.length); + + // Step 1 body shape + const step1Url = mockFetch.mock.calls[0][0] as string; + expect(step1Url).toContain('/ilink/bot/getuploadurl'); + const step1Body = JSON.parse(mockFetch.mock.calls[0][1]!.body as string); + expect(step1Body.media_type).toBe(WechatUploadMediaType.IMAGE); + expect(step1Body.to_user_id).toBe('user_1@im.wechat'); + expect(step1Body.no_need_thumb).toBe(true); + expect(step1Body.aeskey).toMatch(/^[\da-f]{32}$/); + expect(step1Body.filekey).toMatch(/^[\da-f]{32}$/); + expect(step1Body.rawsize).toBe(plaintext.length); + + // Step 2 should POST to CDN /upload with octet-stream body + const step2Url = mockFetch.mock.calls[1][0] as string; + expect(step2Url).toContain(`${CDN_BASE_URL}/upload`); + expect(step2Url).toContain('encrypted_query_param=UP_PARAM_xyz'); + expect(step2Url).toContain(`filekey=${step1Body.filekey}`); + const step2Headers = mockFetch.mock.calls[1][1]!.headers as Record; + expect(step2Headers['Content-Type']).toBe('application/octet-stream'); + + // Returned aes_key should be base64(hex_string) — round-trips back to the hex + const decoded = Buffer.from(result.aesKey, 'base64').toString('ascii'); + expect(decoded).toBe(step1Body.aeskey); + }); + + it('should round-trip — uploaded ciphertext decrypts to the original plaintext', async () => { + let capturedAeskey: string | undefined; + let capturedCiphertext: Buffer | undefined; + + mockFetch.mockImplementationOnce(async (_url, init) => { + capturedAeskey = JSON.parse(init!.body as string).aeskey; + return jsonResponse({ upload_param: 'UP' }); + }); + mockFetch.mockImplementationOnce(async (_url, init) => { + const body = init!.body as ArrayBuffer | Uint8Array; + capturedCiphertext = Buffer.from(body as ArrayBufferLike); + return new Response('', { + headers: { 'x-encrypted-param': 'ENC' }, + status: 200, + }); + }); + + const plaintext = Buffer.from('round-trip test payload — 中文也要工作 ✓'); + await client.uploadCdnMedia('u', WechatUploadMediaType.FILE, plaintext); + + const key = Buffer.from(capturedAeskey!, 'hex'); + const decipher = createDecipheriv('aes-128-ecb', key, null); + const decrypted = Buffer.concat([decipher.update(capturedCiphertext!), decipher.final()]); + expect(decrypted.equals(plaintext)).toBe(true); + }); + + it('should throw if getuploadurl returns no upload_param', async () => { + mockFetch.mockResolvedValueOnce(jsonResponse({})); + + await expect( + client.uploadCdnMedia('u', WechatUploadMediaType.FILE, Buffer.from('x')), + ).rejects.toThrow('empty upload_param'); + }); + + it('should throw if CDN upload responds non-2xx', async () => { + mockFetch.mockResolvedValueOnce(jsonResponse({ upload_param: 'UP' })); + mockFetch.mockResolvedValueOnce(new Response('forbidden', { status: 403 })); + + await expect( + client.uploadCdnMedia('u', WechatUploadMediaType.FILE, Buffer.from('x')), + ).rejects.toThrow('CDN upload failed: 403'); + }); + + it('should throw if CDN response is missing x-encrypted-param header', async () => { + mockFetch.mockResolvedValueOnce(jsonResponse({ upload_param: 'UP' })); + mockFetch.mockResolvedValueOnce(new Response('', { status: 200 })); + + await expect( + client.uploadCdnMedia('u', WechatUploadMediaType.FILE, Buffer.from('x')), + ).rejects.toThrow('missing x-encrypted-param'); + }); + }); + describe('getConfig', () => { it('should return config with typing_ticket', async () => { mockFetch.mockResolvedValueOnce(jsonResponse({ ret: 0, typing_ticket: 'ticket_abc' })); diff --git a/packages/chat-adapter-wechat/src/api.ts b/packages/chat-adapter-wechat/src/api.ts index cbe01877a1..c4544fad44 100644 --- a/packages/chat-adapter-wechat/src/api.ts +++ b/packages/chat-adapter-wechat/src/api.ts @@ -1,4 +1,4 @@ -import { createDecipheriv } from 'node:crypto'; +import { createCipheriv, createDecipheriv, createHash, randomBytes } from 'node:crypto'; import type { BaseInfo, @@ -10,6 +10,26 @@ import type { } from './types'; import { MessageItemType, MessageState, MessageType, WECHAT_RET_CODES } from './types'; +/** iLink CDN media types — see protocol-spec §8.2. */ +export enum WechatUploadMediaType { + IMAGE = 1, + VIDEO = 2, + FILE = 3, + VOICE = 4, +} + +/** Result of uploading media to the iLink CDN. */ +export interface WechatUploadResult { + /** Base64-encoded hex string of the AES key — the format expected in outbound `media.aes_key`. */ + aesKey: string; + /** AES-128-ECB ciphertext size (matches `mid_size` for image_item / video_item). */ + cipherSize: number; + /** `encrypt_query_param` returned by CDN; place into outbound `media.encrypt_query_param`. */ + encryptQueryParam: string; + /** Plaintext file size. */ + rawSize: number; +} + export const DEFAULT_BASE_URL = 'https://ilinkai.weixin.qq.com'; export const CDN_BASE_URL = 'https://novac2c.cdn.weixin.qq.com/c2c'; @@ -122,37 +142,130 @@ export class WechatApiClient { let lastResponse: WechatSendMessageResponse = { ret: 0 }; for (const chunk of chunks) { - const item: MessageItem = { - text_item: { text: chunk }, - type: MessageItemType.TEXT, - }; - - const body = { - base_info: BASE_INFO, - msg: { - client_id: crypto.randomUUID(), - context_token: contextToken, - from_user_id: '', - item_list: [item], - message_state: MessageState.FINISH, - message_type: MessageType.BOT, - to_user_id: toUserId, - }, - }; - - const response = await fetch(`${this.baseUrl}/ilink/bot/sendmessage`, { - body: JSON.stringify(body), - headers: buildHeaders(this.botToken), - method: 'POST', - signal: AbortSignal.timeout(DEFAULT_TIMEOUT_MS), - }); - - lastResponse = await parseResponse(response, 'sendmessage'); + lastResponse = await this.sendItem( + toUserId, + { text_item: { text: chunk }, type: MessageItemType.TEXT }, + contextToken, + ); } return lastResponse; } + /** + * Send a single MessageItem (text or media) via iLink Bot API. + * + * Per protocol-spec §6.7, the stable public pattern is one MessageItem per + * request — text + media messages are sent as separate calls. Callers should + * generate fresh `client_id`s per call; this method allocates one internally. + */ + async sendItem( + toUserId: string, + item: MessageItem, + contextToken: string, + ): Promise { + const body = { + base_info: BASE_INFO, + msg: { + client_id: crypto.randomUUID(), + context_token: contextToken, + from_user_id: '', + item_list: [item], + message_state: MessageState.FINISH, + message_type: MessageType.BOT, + to_user_id: toUserId, + }, + }; + + const response = await fetch(`${this.baseUrl}/ilink/bot/sendmessage`, { + body: JSON.stringify(body), + headers: buildHeaders(this.botToken), + method: 'POST', + signal: AbortSignal.timeout(DEFAULT_TIMEOUT_MS), + }); + + return parseResponse(response, 'sendmessage'); + } + + /** + * Upload outbound media to the iLink CDN. + * + * Implements the 3-step flow from protocol-spec §8.2: + * 1. `getuploadurl` — request `upload_param` with media metadata + AES key + * 2. Local AES-128-ECB + PKCS7 encrypt + * 3. POST ciphertext to CDN; read `x-encrypted-param` response header + * + * The returned `aesKey` is base64-of-hex-string (the format openclaw uses for + * outbound `media.aes_key`, see protocol-spec §8.4 format B). Plug the result + * directly into `image_item.media` / `file_item.media` / `video_item.media`. + */ + async uploadCdnMedia( + toUserId: string, + mediaType: WechatUploadMediaType, + plaintext: Buffer, + ): Promise { + const aesKeyBuf = randomBytes(16); + const aesKeyHex = aesKeyBuf.toString('hex'); + const filekey = randomBytes(16).toString('hex'); + const rawSize = plaintext.length; + const ciphertext = encryptAesEcb(plaintext, aesKeyBuf); + const cipherSize = ciphertext.length; + const rawfilemd5 = createHash('md5').update(plaintext).digest('hex'); + + // Step 1: request upload_param + const uploadParamResp = await fetch(`${this.baseUrl}/ilink/bot/getuploadurl`, { + body: JSON.stringify({ + aeskey: aesKeyHex, + base_info: BASE_INFO, + filekey, + filesize: cipherSize, + media_type: mediaType, + no_need_thumb: true, + rawfilemd5, + rawsize: rawSize, + to_user_id: toUserId, + }), + headers: buildHeaders(this.botToken), + method: 'POST', + signal: AbortSignal.timeout(DEFAULT_TIMEOUT_MS), + }); + + const { upload_param: uploadParam } = await parseResponse<{ upload_param?: string }>( + uploadParamResp, + 'getuploadurl', + ); + if (!uploadParam) { + throw new Error('getuploadurl returned empty upload_param'); + } + + // Step 2 + 3: upload ciphertext to CDN + const cdnUrl = `${CDN_BASE_URL}/upload?encrypted_query_param=${encodeURIComponent( + uploadParam, + )}&filekey=${filekey}`; + const cdnResp = await fetch(cdnUrl, { + body: new Uint8Array(ciphertext), + headers: { 'Content-Type': 'application/octet-stream' }, + method: 'POST', + signal: AbortSignal.timeout(DEFAULT_TIMEOUT_MS), + }); + + if (!cdnResp.ok) { + const text = await cdnResp.text().catch(() => ''); + throw new Error(`CDN upload failed: ${cdnResp.status} ${text}`); + } + + const encryptQueryParam = cdnResp.headers.get('x-encrypted-param'); + if (!encryptQueryParam) { + throw new Error('CDN upload response missing x-encrypted-param header'); + } + + // Outbound media.aes_key encoding follows openclaw: base64 of the 32-char hex string + // (protocol-spec §8.4 format B). Inbound code accepts both formats. + const aesKey = Buffer.from(aesKeyHex, 'ascii').toString('base64'); + + return { aesKey, cipherSize, encryptQueryParam, rawSize }; + } + /** * Send typing indicator via iLink Bot API. */ @@ -325,6 +438,16 @@ function decryptAesEcb(ciphertext: Buffer, key: Buffer): Buffer { return Buffer.concat([decipher.update(ciphertext), decipher.final()]); } +/** + * AES-128-ECB encrypt with PKCS7 padding (Node's default for createCipheriv). + * + * Used for outbound media uploads — see {@link WechatApiClient.uploadCdnMedia}. + */ +function encryptAesEcb(plaintext: Buffer, key: Buffer): Buffer { + const cipher = createCipheriv('aes-128-ecb', key, null); + return Buffer.concat([cipher.update(plaintext), cipher.final()]); +} + /** * Resolve the 16-byte AES key from the two possible sources and encodings. * diff --git a/packages/chat-adapter-wechat/src/index.ts b/packages/chat-adapter-wechat/src/index.ts index 1260a5b6b6..ff509fc595 100644 --- a/packages/chat-adapter-wechat/src/index.ts +++ b/packages/chat-adapter-wechat/src/index.ts @@ -1,8 +1,10 @@ export { createWechatAdapter, downloadMediaFromRawMessage, WechatAdapter } from './adapter'; export type { QrCodeResponse, QrStatusResponse } from './api'; export { DEFAULT_BASE_URL, fetchQrCode, pollQrStatus, WechatApiClient } from './api'; +export { WechatUploadMediaType } from './api'; export { WechatFormatConverter } from './format-converter'; export type { + MessageItem, WechatAdapterConfig, WechatGetConfigResponse, WechatGetUpdatesResponse, diff --git a/src/features/Onboarding/Agent/CompletionPanel.tsx b/src/features/Onboarding/Agent/CompletionPanel.tsx index df774499d3..310a5d2062 100644 --- a/src/features/Onboarding/Agent/CompletionPanel.tsx +++ b/src/features/Onboarding/Agent/CompletionPanel.tsx @@ -8,6 +8,7 @@ import { useAgentMeta } from '@/features/Conversation/hooks/useAgentMeta'; import LobeMessage from '@/routes/onboarding/components/LobeMessage'; import FeedbackPanel from './FeedbackPanel'; +import MessengerIntegrations from './MessengerIntegrations'; import { staticStyle } from './staticStyle'; interface CompletionPanelProps { @@ -23,38 +24,36 @@ const CompletionPanel = memo( const agentMeta = useAgentMeta(); return (
- - - - {t('agent.completionSubtitle')} - - - {showFeedback && topicId && ( - - )} + + + + + {t('agent.completionSubtitle')} + + + {showFeedback && topicId && ( + + )} + +
); diff --git a/src/features/Onboarding/Agent/MessengerIntegrations.tsx b/src/features/Onboarding/Agent/MessengerIntegrations.tsx new file mode 100644 index 0000000000..58186a2586 --- /dev/null +++ b/src/features/Onboarding/Agent/MessengerIntegrations.tsx @@ -0,0 +1,170 @@ +'use client'; + +import { Button, Flexbox, Popover, Skeleton, Text } from '@lobehub/ui'; +import { Discord, Slack, Telegram } from '@lobehub/ui/icons'; +import { Divider, QRCode } from 'antd'; +import { createStaticStyles } from 'antd-style'; +import { memo } from 'react'; +import { useTranslation } from 'react-i18next'; +import useSWR from 'swr'; + +import { buildTelegramDeepLink, PlatformAvatar } from '@/features/Messenger/constants'; +import { messengerService } from '@/services/messenger'; + +const SLACK_INSTALL_HREF = '/api/agent/messenger/slack/install'; +const DISCORD_INSTALL_HREF = '/api/agent/messenger/discord/install'; + +const styles = createStaticStyles(({ css, cssVar }) => ({ + divider: css` + width: 100%; + min-width: 320px; + margin-block: 0 6px; + + &::before, + &::after { + border-block-start: 1px dashed ${cssVar.colorBorder} !important; + } + `, + group: css` + display: flex; + flex-wrap: wrap; + gap: 12px; + justify-content: center; + + @media (width <= 540px) { + flex-direction: column; + width: 100%; + } + `, + qrIconOverlay: css` + pointer-events: none; + + position: absolute; + z-index: 1; + inset-block-start: 50%; + inset-inline-start: 50%; + transform: translate(-50%, -50%); + + border: 3px solid ${cssVar.colorBgContainer}; + border-radius: 50%; + + line-height: 0; + `, + qrWrap: css` + position: relative; + padding: 12px; + border-radius: 12px; + background: ${cssVar.colorBgContainer}; + `, + wrapper: css` + gap: 14px; + align-items: center; + margin-block-start: 48px; + `, +})); + +const MessengerIntegrations = memo(() => { + const { t } = useTranslation('onboarding'); + + const { data, isLoading } = useSWR('messenger:availablePlatforms', () => + messengerService.availablePlatforms(), + ); + + if (isLoading) { + return ( + + + + +
+ {[0, 1, 2].map((i) => ( + + ))} +
+
+ ); + } + + const platforms = data ?? []; + if (platforms.length === 0) return null; + + const byId = new Map(platforms.map((p) => [p.id, p])); + const slack = byId.get('slack'); + const discord = byId.get('discord'); + const telegram = byId.get('telegram'); + + return ( + + + + {t('agent.messenger.subtitle')} + + +
+ {slack && ( + + )} + {discord && ( + + )} + {telegram?.botUsername && ( + +
+ +
+ +
+
+ + {t('agent.messenger.telegramQrCaption')} + + + } + > + +
+ )} +
+
+ ); +}); + +MessengerIntegrations.displayName = 'OnboardingMessengerIntegrations'; + +export default MessengerIntegrations; diff --git a/src/locales/default/onboarding.ts b/src/locales/default/onboarding.ts index da63fe650b..2b02a1780a 100644 --- a/src/locales/default/onboarding.ts +++ b/src/locales/default/onboarding.ts @@ -31,6 +31,12 @@ export default { 'agent.feedback.rateGood': 'Rate this onboarding positively', 'agent.feedback.submit': 'Send feedback', 'agent.feedback.thanks': 'Thanks for the feedback!', + 'agent.messenger.cta.discord': 'Add to Discord', + 'agent.messenger.cta.slack': 'Add to Slack', + 'agent.messenger.cta.telegram': 'Open in Telegram', + 'agent.messenger.subtitle': 'Chat with your agent on Telegram, Slack, or Discord', + 'agent.messenger.telegramQrCaption': 'Scan with your phone camera', + 'agent.messenger.title': 'Keep me with you, wherever you message', 'agent.modeSwitch.reset': 'Reset Flow', 'agent.progress': '{{currentStep}}/{{totalSteps}}', 'agent.stage.agentIdentity': 'Agent Identity', diff --git a/src/server/routers/lambda/botMessage.ts b/src/server/routers/lambda/botMessage.ts index 67b68aafa5..1852119736 100644 --- a/src/server/routers/lambda/botMessage.ts +++ b/src/server/routers/lambda/botMessage.ts @@ -144,6 +144,17 @@ export const botMessageRouter = router({ sendMessage: botMessageProcedure .input( z.object({ + attachments: z + .array( + z.object({ + data: z.string().optional(), + fetchUrl: z.string().url().optional(), + mimeType: z.string().optional(), + name: z.string().optional(), + type: z.enum(['image', 'file', 'video', 'audio']), + }), + ) + .optional(), botId: z.string(), channelId: z.string(), content: z.string(), @@ -154,6 +165,7 @@ export const botMessageRouter = router({ .mutation(async ({ input, ctx }) => { const { service, platform } = await resolveBot(ctx.agentBotProviderModel, input.botId); return service.sendMessage({ + attachments: input.attachments, channelId: input.channelId, content: input.content, embeds: input.embeds, diff --git a/src/server/services/agentRuntime/CompletionLifecycle.ts b/src/server/services/agentRuntime/CompletionLifecycle.ts index 78e69a04d7..0e46cdb162 100644 --- a/src/server/services/agentRuntime/CompletionLifecycle.ts +++ b/src/server/services/agentRuntime/CompletionLifecycle.ts @@ -275,12 +275,26 @@ export class CompletionLifecycle { private buildLifecycleEvent(operationId: string, state: any, reason: string) { const metadata = state?.metadata || {}; - const lastAssistantContent = state?.messages - ?.slice() + const messages: any[] = Array.isArray(state?.messages) ? state.messages : []; + + // Pull text content off the **final** assistant turn. Content may be a + // plain string or an OpenAI-style multimodal part array; for the array + // case we concatenate the text parts so the reply body is preserved. + // + // We deliberately match on `role === 'assistant'` only — not on whether + // the turn has any text — so an image-only or tool-output final turn + // doesn't fall through to an earlier assistant message and ship stale + // text alongside the current attachments. + const lastAssistantMessage = messages + .slice() .reverse() - .find( - (m: { content?: string; role: string }) => m.role === 'assistant' && m.content, - )?.content; + .find((m: { content?: unknown; role: string }) => m.role === 'assistant'); + const lastAssistantContent = lastAssistantMessage + ? extractTextFromMessageContent(lastAssistantMessage.content) + : undefined; + + const attachments = extractOutboundAttachments(messages); + const duration = state?.createdAt ? Date.now() - new Date(state.createdAt).getTime() : undefined; @@ -288,6 +302,7 @@ export class CompletionLifecycle { return { event: { agentId: metadata?.agentId || '', + attachments: attachments.length > 0 ? attachments : undefined, cost: state?.cost?.total, duration, errorDetail: state?.error, @@ -308,3 +323,168 @@ export class CompletionLifecycle { }; } } + +// -------------------------------------------------------------------------- +// Outbound attachment extraction +// -------------------------------------------------------------------------- + +type OutboundAttachment = { + data?: string; + fetchUrl?: string; + mimeType?: string; + name?: string; + type: 'image' | 'file' | 'video' | 'audio'; +}; + +const DATA_URL_RE = /^data:([^;]+);base64,(.+)$/; + +const inferAttachmentTypeFromMime = (mimeType: string | undefined): OutboundAttachment['type'] => { + if (!mimeType) return 'file'; + if (mimeType.startsWith('image/')) return 'image'; + if (mimeType.startsWith('video/')) return 'video'; + if (mimeType.startsWith('audio/')) return 'audio'; + return 'file'; +}; + +/** + * Materialize a `url` field — either a `data:` URL (extract base64 inline) or + * a remote URL (record fetchUrl). Returns undefined for unsupported shapes. + */ +const buildAttachmentFromUrl = ( + url: string | undefined, + fallbackType: OutboundAttachment['type'] = 'image', +): OutboundAttachment | undefined => { + if (!url || typeof url !== 'string') return undefined; + const dataMatch = url.match(DATA_URL_RE); + if (dataMatch) { + const mimeType = dataMatch[1]; + return { + data: dataMatch[2], + mimeType, + type: inferAttachmentTypeFromMime(mimeType), + }; + } + // Bare http(s) URL — let the downstream messenger fetch it lazily. + if (/^https?:\/\//.test(url)) { + return { fetchUrl: url, type: fallbackType }; + } + return undefined; +}; + +/** + * Pull text out of a message's `content` field. Accepts both string and + * OpenAI-style multimodal arrays `[{ type: 'text', text }, { type: 'image_url', image_url: { url } }]`. + */ +const extractTextFromMessageContent = (content: unknown): string | undefined => { + if (typeof content === 'string') return content || undefined; + if (!Array.isArray(content)) return undefined; + const parts: string[] = []; + for (const part of content) { + if (typeof part === 'string') { + parts.push(part); + } else if (part && typeof part === 'object' && (part as any).type === 'text') { + const text = (part as { text?: unknown }).text; + if (typeof text === 'string') parts.push(text); + } + } + const joined = parts.join(''); + return joined || undefined; +}; + +/** + * Extract image/file parts from a message's `content` array. Each entry is + * mapped to the JSON-safe outbound attachment shape (data or fetchUrl). + */ +const extractAttachmentsFromContent = (content: unknown): OutboundAttachment[] => { + if (!Array.isArray(content)) return []; + const out: OutboundAttachment[] = []; + for (const part of content) { + if (!part || typeof part !== 'object') continue; + const type = (part as { type?: unknown }).type; + if (type === 'image_url') { + const url = (part as { image_url?: { url?: string } }).image_url?.url; + const att = buildAttachmentFromUrl(url, 'image'); + if (att) out.push(att); + } else if (type === 'image') { + // Anthropic-style: { type: 'image', source: { type: 'base64', media_type, data } } + const source = (part as { source?: { data?: string; media_type?: string; type?: string } }) + .source; + if (source?.type === 'base64' && source.data) { + const mimeType = source.media_type; + out.push({ + data: source.data, + mimeType, + type: inferAttachmentTypeFromMime(mimeType), + }); + } else if (source?.type === 'url') { + const url = (source as { url?: string }).url; + const att = buildAttachmentFromUrl(url, 'image'); + if (att) out.push(att); + } + } else if (type === 'file' || type === 'file_url') { + const file = (part as { file?: { url?: string; name?: string; mime_type?: string } }).file; + const att = buildAttachmentFromUrl(file?.url, 'file'); + if (att) { + att.name = file?.name ?? att.name; + att.mimeType = file?.mime_type ?? att.mimeType; + out.push(att); + } + } + } + return out; +}; + +/** + * Walk recent messages and collect outbound image/file attachments to send + * alongside the reply. Scans the last assistant message *and* any tool + * messages that came after the previous assistant turn — tool-generated + * images (e.g. a drawing tool that returns an image_url result) need to be + * delivered with the next reply. + * + * Deduplicates by data/fetchUrl identity. + */ +const extractOutboundAttachments = (messages: any[]): OutboundAttachment[] => { + if (!Array.isArray(messages) || messages.length === 0) return []; + + // Walk from the end backwards: collect attachments until we hit the + // previous assistant turn that already has text — that boundary marks + // "the current reply window". + const collected: OutboundAttachment[] = []; + let crossedFinalAssistant = false; + + for (let i = messages.length - 1; i >= 0; i--) { + const msg = messages[i]; + if (!msg || typeof msg !== 'object') continue; + const role = (msg as { role?: string }).role; + const content = (msg as { content?: unknown }).content; + + if (role === 'assistant') { + if (!crossedFinalAssistant) { + // The final assistant turn: harvest its multimodal parts. + collected.push(...extractAttachmentsFromContent(content)); + crossedFinalAssistant = true; + continue; + } + // A previous assistant turn — stop walking, we don't want to dredge up + // attachments from prior conversation rounds. + break; + } + + if (role === 'tool') { + // Tool results between the previous assistant turn and the final one. + collected.push(...extractAttachmentsFromContent(content)); + } + } + + // Reverse so message-order (older first) is preserved, then dedupe. + collected.reverse(); + const seen = new Set(); + const result: OutboundAttachment[] = []; + for (const att of collected) { + const key = att.fetchUrl ?? att.data ?? ''; + if (!key || seen.has(key)) continue; + seen.add(key); + result.push(att); + } + return result; +}; diff --git a/src/server/services/agentRuntime/__tests__/CompletionLifecycle.test.ts b/src/server/services/agentRuntime/__tests__/CompletionLifecycle.test.ts index af72016c72..38f84f6499 100644 --- a/src/server/services/agentRuntime/__tests__/CompletionLifecycle.test.ts +++ b/src/server/services/agentRuntime/__tests__/CompletionLifecycle.test.ts @@ -94,3 +94,104 @@ describe('CompletionLifecycle.extractErrorMessage', () => { expect(result).toBe('Budget exceeded'); }); }); + +describe('CompletionLifecycle.buildLifecycleEvent', () => { + const callBuild = (state: unknown, reason = 'completed') => + (buildLifecycle() as any).buildLifecycleEvent('op-1', state, reason); + + it('extracts text content from a plain-string final assistant turn', () => { + const state = { + messages: [ + { content: 'user prompt', role: 'user' }, + { content: 'final answer', role: 'assistant' }, + ], + metadata: { agentId: 'agent-1', userId: 'user-1' }, + }; + + const { event } = callBuild(state); + + expect(event.lastAssistantContent).toBe('final answer'); + expect(event.attachments).toBeUndefined(); + }); + + it('concatenates text parts from a multimodal final assistant turn', () => { + const state = { + messages: [ + { + content: [ + { text: 'here is the image: ', type: 'text' }, + { image_url: { url: 'https://cdn.example.com/a.png' }, type: 'image_url' }, + { text: '\n\nhope it helps', type: 'text' }, + ], + role: 'assistant', + }, + ], + metadata: {}, + }; + + const { event } = callBuild(state); + + expect(event.lastAssistantContent).toBe('here is the image: \n\nhope it helps'); + expect(event.attachments).toEqual([ + expect.objectContaining({ fetchUrl: 'https://cdn.example.com/a.png', type: 'image' }), + ]); + }); + + it('returns undefined text for image-only final assistant turn (no fallback to earlier text)', () => { + // Regression: the previous implementation `.find(m => role === 'assistant' && hasText)` + // would skip the image-only final turn and walk back to the earlier text + // turn, shipping stale prose alongside the current image. The fix matches + // on role only — text must be undefined when the final turn has no text. + const state = { + messages: [ + { content: 'stale prior text', role: 'assistant' }, + { content: 'follow-up prompt', role: 'user' }, + { + content: [{ image_url: { url: 'https://cdn.example.com/new.png' }, type: 'image_url' }], + role: 'assistant', + }, + ], + metadata: {}, + }; + + const { event } = callBuild(state); + + expect(event.lastAssistantContent).toBeUndefined(); + expect(event.attachments).toEqual([ + expect.objectContaining({ fetchUrl: 'https://cdn.example.com/new.png', type: 'image' }), + ]); + }); + + it('returns undefined text when there are no assistant messages', () => { + const state = { + messages: [{ content: 'just a user prompt', role: 'user' }], + metadata: {}, + }; + + const { event } = callBuild(state); + + expect(event.lastAssistantContent).toBeUndefined(); + expect(event.attachments).toBeUndefined(); + }); + + it('returns undefined text when content is an empty string', () => { + // `extractTextFromMessageContent` returns undefined for empty strings, so + // an empty-string final assistant turn must not pretend it has text. + const state = { + messages: [{ content: '', role: 'assistant' }], + metadata: {}, + }; + + const { event } = callBuild(state); + + expect(event.lastAssistantContent).toBeUndefined(); + }); + + it('handles missing messages array gracefully', () => { + const { event } = callBuild({ metadata: { agentId: 'a' } }); + + expect(event.lastAssistantContent).toBeUndefined(); + expect(event.attachments).toBeUndefined(); + expect(event.agentId).toBe('a'); + }); +}); diff --git a/src/server/services/bot/AgentBridgeService.ts b/src/server/services/bot/AgentBridgeService.ts index cde4510b2d..acbfd9680e 100644 --- a/src/server/services/bot/AgentBridgeService.ts +++ b/src/server/services/bot/AgentBridgeService.ts @@ -38,6 +38,53 @@ import { const log = debug('lobe-server:bot:agent-bridge'); +/** + * Convert hook-event JSON-safe attachments (`{ data?: base64, fetchUrl? }`) + * into chat-sdk `Attachment` shape (`{ data?: Buffer, url? }`) so they can + * ride along `thread.post({ markdown, attachments })` in local mode. Returns + * `undefined` when there are no attachments to send. + */ +function hookEventAttachmentsToChatSdk( + attachments: + | Array<{ + data?: string; + fetchUrl?: string; + mimeType?: string; + name?: string; + type: 'image' | 'file' | 'video' | 'audio'; + }> + | undefined, +): + | Array<{ + data?: Buffer; + mimeType?: string; + name?: string; + type: 'image' | 'file' | 'video' | 'audio'; + url?: string; + }> + | undefined { + if (!attachments?.length) return undefined; + const out = []; + for (const att of attachments) { + if (att.fetchUrl) { + out.push({ + mimeType: att.mimeType, + name: att.name, + type: att.type, + url: att.fetchUrl, + }); + } else if (att.data) { + out.push({ + data: Buffer.from(att.data, 'base64'), + mimeType: att.mimeType, + name: att.name, + type: att.type, + }); + } + } + return out.length > 0 ? out : undefined; +} + const EXECUTION_TIMEOUT = 30 * 60 * 1000; // 30 minutes // If the last activity in a bot topic is older than this threshold, @@ -1212,36 +1259,58 @@ export class AgentBridgeService { try { const lastAssistantContent = event.lastAssistantContent; + // Convert hook-event attachments (JSON-safe) to chat-sdk + // Attachment shape. Only the *last* chunk carries + // attachments so a multi-chunk reply doesn't repeat the + // image/file once per chunk. + const lastChunkAttachments = hookEventAttachmentsToChatSdk( + event.attachments as any, + ); + const hasText = !!lastAssistantContent; + const hasAttachments = !!lastChunkAttachments?.length; - if (lastAssistantContent) { - const replyBody = renderFinalReply(lastAssistantContent); - const replyStats = { - elapsedMs: event.duration ?? getElapsedMs(), - llmCalls: event.llmCalls ?? 0, - toolCalls: event.toolCalls ?? 0, - totalCost: event.cost ?? 0, - totalTokens: event.totalTokens ?? 0, - }; - // See progress-handler note above: keep the body as - // markdown and let the Chat SDK adapter render it with the - // platform's parse_mode. `formatReply` only appends a - // plain-text stats line. - const finalText = client?.formatReply?.(replyBody, replyStats) ?? replyBody; + if (hasText || hasAttachments) { + let chunks: string[]; + if (hasText) { + const replyBody = renderFinalReply(lastAssistantContent!); + const replyStats = { + elapsedMs: event.duration ?? getElapsedMs(), + llmCalls: event.llmCalls ?? 0, + toolCalls: event.toolCalls ?? 0, + totalCost: event.cost ?? 0, + totalTokens: event.totalTokens ?? 0, + }; + // See progress-handler note above: keep the body as + // markdown and let the Chat SDK adapter render it with the + // platform's parse_mode. `formatReply` only appends a + // plain-text stats line. + const finalText = client?.formatReply?.(replyBody, replyStats) ?? replyBody; + chunks = splitMessage(finalText, charLimit); + if (chunks.length === 0) chunks = ['']; + } else { + // Attachment-only reply — drive one empty chunk so the + // attachments still get posted via buildPostable. + chunks = ['']; + } - const chunks = splitMessage(finalText, charLimit); + const lastIdx = chunks.length - 1; + const buildPostable = (chunk: string, idx: number) => + idx === lastIdx && hasAttachments + ? { attachments: lastChunkAttachments!, markdown: chunk } + : { markdown: chunk }; try { if (progressMessage) { if (chunks[0] !== lastProgressText) { - await progressMessage.edit({ markdown: chunks[0] }); + await progressMessage.edit(buildPostable(chunks[0], 0)); lastProgressText = chunks[0]; } for (let i = 1; i < chunks.length; i++) { - await thread.post({ markdown: chunks[i] }); + await thread.post(buildPostable(chunks[i], i)); } } else { - for (const chunk of chunks) { - await thread.post({ markdown: chunk }); + for (let i = 0; i < chunks.length; i++) { + await thread.post(buildPostable(chunks[i], i)); } } } catch (error) { @@ -1249,14 +1318,18 @@ export class AgentBridgeService { } log( - 'executeWithCallback[local]: got response (%d chars, %d chunks)', - lastAssistantContent.length, + 'executeWithCallback[local]: got response (%d chars, %d chunks, %d attachments)', + lastAssistantContent?.length ?? 0, chunks.length, + lastChunkAttachments?.length ?? 0, ); - resolve({ reply: lastAssistantContent, topicId: resolvedTopicId }); + resolve({ reply: lastAssistantContent ?? '', topicId: resolvedTopicId }); - // Fire-and-forget: summarize topic title in DB - if (resolvedTopicId && prompt) { + // Fire-and-forget: summarize topic title in DB. Only when + // we have text to summarize on — image-only replies skip + // title generation (the prompt itself still drives it on + // the next round). + if (resolvedTopicId && prompt && lastAssistantContent) { const topicModel = new TopicModel(this.db, this.userId); topicModel .findById(resolvedTopicId) diff --git a/src/server/services/bot/BotCallbackService.ts b/src/server/services/bot/BotCallbackService.ts index 6ec151608f..0d48ea42f7 100644 --- a/src/server/services/bot/BotCallbackService.ts +++ b/src/server/services/bot/BotCallbackService.ts @@ -15,7 +15,13 @@ import { messengerPlatformRegistry } from '@/server/services/messenger/platforms import { SystemAgentService } from '@/server/services/systemAgent'; import { AgentBridgeService } from './AgentBridgeService'; -import type { BotReplyLocale, PlatformClient, PlatformMessenger, UsageStats } from './platforms'; +import type { + BotMessageAttachment, + BotReplyLocale, + PlatformClient, + PlatformMessenger, + UsageStats, +} from './platforms'; import { getBotReplyLocale, getStepReactionEmoji, @@ -37,6 +43,14 @@ const log = debug('lobe-server:bot:callback'); export interface BotCallbackBody { applicationId: string; + /** + * Outbound attachments (images/files) extracted from the agent's final + * assistant message or recent tool results. Forwarded to the platform + * messenger so platforms with attachment support (WeChat) can deliver them + * alongside the reply text. Platforms without attachment support silently + * drop these. + */ + attachments?: BotMessageAttachment[]; content?: string; cost?: number; duration?: number; @@ -346,7 +360,8 @@ export class BotCallbackService { charLimit?: number, canEdit = true, ): Promise { - const { reason, lastAssistantContent, errorMessage, errorType, operationId } = body; + const { reason, lastAssistantContent, errorMessage, errorType, operationId, attachments } = + body; if (reason === 'error') { log( @@ -371,16 +386,22 @@ export class BotCallbackService { return; } - // `!lastAssistantContent` lets whitespace-only strings ("\n", " ") through; - // those collapse to empty text downstream and get rejected by Telegram as - // "message text is empty", silently losing the reply. Trim before testing. - if (!lastAssistantContent?.trim()) { - log('handleCompletion: no lastAssistantContent, skipping'); + // Skip only when there's nothing at all to send. An image/file-only reply + // (no text, but attachments present) is still a valid reply and must go + // through — silently dropping it would mean an agent that answered with + // just a generated image gets shown nothing on the user side. + // + // For the text leg: `!lastAssistantContent` lets whitespace-only strings + // ("\n", " ") through; those collapse to empty text downstream and get + // rejected by Telegram as "message text is empty", silently losing the + // reply. Trim before testing. + const hasText = !!lastAssistantContent?.trim(); + const hasAttachments = !!attachments?.length; + if (!hasText && !hasAttachments) { + log('handleCompletion: no lastAssistantContent and no attachments, skipping'); return; } - const msgBody = renderFinalReply(lastAssistantContent); - const stats: UsageStats = { elapsedMs: body.duration, llmCalls: body.llmCalls ?? 0, @@ -389,21 +410,44 @@ export class BotCallbackService { totalTokens: body.totalTokens ?? 0, }; - const formattedBody = client.formatMarkdown?.(msgBody) ?? msgBody; - const finalText = client.formatReply?.(formattedBody, stats) ?? formattedBody; - const chunks = splitMessage(finalText, charLimit); - - if (chunks.length === 0) { - log('handleCompletion: all chunks empty after formatting, skipping send'); - return; + // Build the chunk list. Empty text → a single empty chunk so the + // attachment-only path still drives `deliverFirstChunk` once. + let chunks: string[]; + if (hasText) { + const msgBody = renderFinalReply(lastAssistantContent!); + const formattedBody = client.formatMarkdown?.(msgBody) ?? msgBody; + const finalText = client.formatReply?.(formattedBody, stats) ?? formattedBody; + chunks = splitMessage(finalText, charLimit); + if (chunks.length === 0) { + log('handleCompletion: all chunks empty after formatting, skipping send'); + // Even with no text we still want to deliver the attachments. + if (!hasAttachments) return; + chunks = ['']; + } + } else { + chunks = ['']; } - await this.deliverFirstChunk(messenger, progressMessageId, chunks[0], canEdit); + // Attach outbound attachments to the *last* chunk only so we don't send + // the same image/file once per chunk. + const lastIndex = chunks.length - 1; + const firstChunkAttachments = lastIndex === 0 ? attachments : undefined; + + await this.deliverFirstChunk( + messenger, + progressMessageId, + chunks[0], + canEdit, + firstChunkAttachments, + ); // Each remaining chunk gets its own try/catch so a single transient failure // (rate-limit, network blip) doesn't drop everything that follows. for (let i = 1; i < chunks.length; i++) { try { - await messenger.createMessage(chunks[i]); + const isLast = i === lastIndex; + await messenger.createMessage( + isLast && attachments?.length ? { attachments, content: chunks[i] } : chunks[i], + ); } catch (error) { log('handleCompletion: failed to send chunk %d: %O', i, error); } @@ -421,17 +465,20 @@ export class BotCallbackService { progressMessageId: string, text: string, canEdit: boolean, + attachments?: BotMessageAttachment[], ): Promise { + const payload = attachments && attachments.length > 0 ? { attachments, content: text } : text; + if (canEdit && progressMessageId) { try { - await messenger.editMessage(progressMessageId, text); + await messenger.editMessage(progressMessageId, payload); return; } catch (error) { log('handleCompletion: editMessage failed, falling back to createMessage: %O', error); } } try { - await messenger.createMessage(text); + await messenger.createMessage(payload); } catch (error) { log('handleCompletion: createMessage fallback failed: %O', error); } diff --git a/src/server/services/bot/BotMessageRouter.ts b/src/server/services/bot/BotMessageRouter.ts index 7046f6bf5d..25042ecc02 100644 --- a/src/server/services/bot/BotMessageRouter.ts +++ b/src/server/services/bot/BotMessageRouter.ts @@ -21,6 +21,7 @@ import { peekPairingRequest, releasePairingClaim, } from './dmPairingStore'; +import { submitBotFeedback } from './feedbackSubmit'; import { type BotPlatformRuntimeContext, type BotReplyLocale, @@ -53,6 +54,7 @@ import { renderDmPairing, renderDmRejected, renderError, + renderFeedbackSubmitted, renderGroupRejected, renderInlineError, renderSenderRejected, @@ -114,6 +116,22 @@ interface CommandContext { * surface only the ID, not a friendly label. */ authorUserName?: string; post: (text: string) => Promise; + /** + * Post a reply visible only to the invoker. + * + * Set only on native-slash paths (Slack / Discord) where chat-sdk knows + * the interaction context — Slack uses native ephemeral, Discord uses an + * ephemeral interaction response, both fall back to a DM if needed + * (`fallbackToDM: true`). Undefined on text-based platforms (Telegram, + * Feishu) — handlers should fall back to `post` there since those + * platforms have no per-user ephemeral primitive. + * + * Used by `/feedback` so the user's feedback text and the bot's + * confirmation don't leak into the public channel; other commands keep + * using `post` to preserve the existing channel-visible behaviour + * (e.g. `/new` resetting is useful for everyone to see). + */ + postEphemeral?: (text: string) => Promise; /** Locale to use for any system-generated reply text. Plumbed in by the * caller — text-based commands derive it per-message via the platform's * `extractAuthorLocale`, native slash commands fall back to the platform @@ -1623,6 +1641,47 @@ export class BotMessageRouter { }, name: 'approve', }, + { + description: 'Send feedback directly to the LobeHub team (no AI reply)', + // Declaring the argument so Discord/Slack surface a `/feedback ` + // prompt instead of registering the command as zero-arg (see the + // `options` comment on the BotCommand interface). + options: [ + { + description: 'Your feedback message', + name: 'message', + required: true, + }, + ], + handler: async (ctx) => { + log('command /feedback: agent=%s, platform=%s', agentId, platform); + // Prefer the ephemeral channel when available (Slack / Discord + // native slash) so the user's feedback content and the bot's + // confirmation never leak into the public channel. Text-based + // platforms (Telegram, Feishu) have no ephemeral primitive, so + // we fall back to a regular post — those platforms are DM-first + // anyway, so the privacy concern is much smaller. + const reply = ctx.postEphemeral ?? ctx.post; + const body = ctx.args.trim(); + if (!body) { + await reply(renderCommandReply('cmdFeedbackUsage', ctx.replyLocale)); + return; + } + const result = await submitBotFeedback(serverDB, { + applicationId, + body, + platform, + threadId: ctx.threadId, + userId, + }); + if (!result.success) { + await reply(renderCommandReply('cmdFeedbackError', ctx.replyLocale)); + return; + } + await reply(renderFeedbackSubmitted(result.issueUrl, ctx.replyLocale)); + }, + name: 'feedback', + }, ]; } @@ -1696,6 +1755,16 @@ export class BotMessageRouter { authorUserId: authorLike.userId, authorUserName: authorLike.userName, post: (text) => event.channel.post(text), + // Wire chat-sdk's `postEphemeral` so commands that want a private + // reply (e.g. `/feedback`) can opt in. `fallbackToDM: true` so + // Discord — which has no channel-level ephemeral outside of an + // interaction response — still delivers privately by DMing the + // user instead of broadcasting to the channel. Wrapped here, not + // in the handler, so commands stay platform-agnostic. + postEphemeral: event.user + ? (text: string) => + event.channel.postEphemeral(event.user!, text, { fallbackToDM: true }) + : undefined, // Native slash-command events don't carry a Chat SDK Message, so // there's no per-sender locale field to read; use the channel // default. Telegram/Feishu/etc. dispatch via the text-based path diff --git a/src/server/services/bot/__tests__/BotCallbackService.test.ts b/src/server/services/bot/__tests__/BotCallbackService.test.ts index 063f5de0dd..597c83fb86 100644 --- a/src/server/services/bot/__tests__/BotCallbackService.test.ts +++ b/src/server/services/bot/__tests__/BotCallbackService.test.ts @@ -697,6 +697,171 @@ describe('BotCallbackService', () => { await expect(service.handleCallback(body)).resolves.toBeUndefined(); }); + + // ==================== Attachments ==================== + + it('should pass attachments through to messenger when present on single-chunk reply', async () => { + const body = makeBody({ + attachments: [ + { + fetchUrl: 'https://cdn.example.com/foo.png', + mimeType: 'image/png', + name: 'foo.png', + type: 'image', + }, + ], + lastAssistantContent: 'Here is the image you asked for.', + reason: 'completed', + type: 'completion', + }); + + await service.handleCallback(body); + + expect(mockEditMessage).toHaveBeenCalledWith( + 'progress-msg-1', + expect.objectContaining({ + attachments: [ + expect.objectContaining({ + fetchUrl: 'https://cdn.example.com/foo.png', + type: 'image', + }), + ], + content: expect.stringContaining('Here is the image you asked for.'), + }), + ); + }); + + it('should only attach to the last chunk in a multi-chunk reply', async () => { + const longContent = 'A'.repeat(2000) + '\n\n' + 'B'.repeat(2000); + const body = makeBody({ + attachments: [{ fetchUrl: 'https://cdn.example.com/bar.png', type: 'image' }], + lastAssistantContent: longContent, + reason: 'completed', + type: 'completion', + }); + + await service.handleCallback(body); + + // First chunk goes through editMessage as a plain string — no attachments. + expect(mockEditMessage).toHaveBeenCalledTimes(1); + const firstCallArg = mockEditMessage.mock.calls[0][1]; + expect(typeof firstCallArg).toBe('string'); + + // Last chunk goes through createMessage with the attachments. + const lastCreateArg = mockCreateMessage.mock.calls.at(-1)?.[0]; + expect(lastCreateArg).toMatchObject({ + attachments: [{ fetchUrl: 'https://cdn.example.com/bar.png', type: 'image' }], + }); + }); + + it('should fall back to createMessage with attachments when edit fails', async () => { + mockEditMessage.mockRejectedValueOnce(new Error('edit failed')); + + const body = makeBody({ + attachments: [{ data: 'aGVsbG8=', mimeType: 'image/png', type: 'image' }], + lastAssistantContent: 'reply', + reason: 'completed', + type: 'completion', + }); + + await service.handleCallback(body); + + expect(mockCreateMessage).toHaveBeenCalledWith( + expect.objectContaining({ + attachments: [{ data: 'aGVsbG8=', mimeType: 'image/png', type: 'image' }], + content: expect.stringContaining('reply'), + }), + ); + }); + + // Regression for Codex P1: image-only final assistant turn must still + // ship the attachments, instead of being silently dropped because there + // is no `lastAssistantContent.trim()`. + it('should deliver attachments even when reply text is empty', async () => { + const body = makeBody({ + attachments: [{ fetchUrl: 'https://cdn.example.com/only.png', type: 'image' }], + lastAssistantContent: '', + reason: 'completed', + type: 'completion', + }); + + await service.handleCallback(body); + + // Either edit or create — but the call MUST carry the attachments. + const editCalls = mockEditMessage.mock.calls; + const createCalls = mockCreateMessage.mock.calls; + const allCalls = [...editCalls.map((c) => c[1]), ...createCalls.map((c) => c[0])]; + expect( + allCalls.some( + (arg) => + arg && + typeof arg === 'object' && + 'attachments' in arg && + (arg as any).attachments?.[0]?.fetchUrl === 'https://cdn.example.com/only.png', + ), + ).toBe(true); + }); + + it('should still skip when there is neither text nor attachments', async () => { + const body = makeBody({ + lastAssistantContent: ' \n ', + reason: 'completed', + type: 'completion', + }); + + await service.handleCallback(body); + + expect(mockEditMessage).not.toHaveBeenCalled(); + expect(mockCreateMessage).not.toHaveBeenCalled(); + }); + + it('should still ship attachments when reply text is whitespace-only', async () => { + // Whitespace text alone collapses to empty downstream and would be + // dropped, but the attachment-only path must still deliver the image. + const body = makeBody({ + attachments: [{ fetchUrl: 'https://cdn.example.com/ws.png', type: 'image' }], + lastAssistantContent: '\n\n ', + reason: 'completed', + type: 'completion', + }); + + await service.handleCallback(body); + + const editCalls = mockEditMessage.mock.calls; + const createCalls = mockCreateMessage.mock.calls; + const allCalls = [...editCalls.map((c) => c[1]), ...createCalls.map((c) => c[0])]; + expect( + allCalls.some( + (arg) => + arg && + typeof arg === 'object' && + 'attachments' in arg && + (arg as any).attachments?.[0]?.fetchUrl === 'https://cdn.example.com/ws.png', + ), + ).toBe(true); + }); + + it('should not summarize topic title for attachment-only reply', async () => { + // Attachment-only reply has no assistant text, so the LLM summarizer + // has no body to work with. `summarizeTopicTitle` already guards on + // `!lastAssistantContent`; this regression-locks that contract. + mockFindById.mockResolvedValue({ title: null }); + + const body = makeBody({ + attachments: [{ fetchUrl: 'https://cdn.example.com/x.png', type: 'image' }], + reason: 'completed', + topicId: 'topic-1', + type: 'completion', + userId: 'user-1', + userPrompt: 'Draw something', + }); + + await service.handleCallback(body); + + await new Promise((r) => setTimeout(r, 50)); + expect(mockGenerateTopicTitle).not.toHaveBeenCalled(); + expect(mockTopicUpdate).not.toHaveBeenCalled(); + }); }); // ==================== Message splitting ==================== diff --git a/src/server/services/bot/feedbackSubmit.ts b/src/server/services/bot/feedbackSubmit.ts new file mode 100644 index 0000000000..e86d1d6fb9 --- /dev/null +++ b/src/server/services/bot/feedbackSubmit.ts @@ -0,0 +1,99 @@ +import debug from 'debug'; +import { eq } from 'drizzle-orm'; + +import { users } from '@/database/schemas'; +import type { LobeChatDatabase } from '@/database/type'; +import { MarketService } from '@/server/services/market'; + +const log = debug('lobe-server:bot:feedback'); + +/** + * Maximum number of characters used to derive a feedback title from the + * leading line of the user's message. The web `FeedbackModal` caps title + * input at 200 chars (`src/components/FeedbackModal/index.tsx`), so the bot + * path stays in the same envelope so downstream tooling can treat the two + * sources interchangeably. + */ +const TITLE_MAX_LENGTH = 80; + +const truncateTitle = (raw: string): string => { + const firstLine = raw.split(/\r?\n/, 1)[0]?.trim() ?? ''; + if (firstLine.length <= TITLE_MAX_LENGTH) return firstLine; + return `${firstLine.slice(0, TITLE_MAX_LENGTH - 1).trim()}…`; +}; + +export interface BotFeedbackSubmitOptions { + applicationId?: string; + /** Raw text after the `/feedback` command (already trimmed by the caller). */ + body: string; + platform: string; + /** Stable platform conversation id for traceability — included in + * `clientInfo` so operators can correlate feedback with the originating + * thread without exposing it in the user-facing message. */ + threadId?: string; + /** LobeHub user id. Required — feedback always carries identity so it can + * be tied back to the account / workspace. */ + userId: string; +} + +export interface BotFeedbackSubmitResult { + issueUrl?: string; + success: boolean; +} + +/** + * Submit a `/feedback` slash-command body via the same `MarketService` + * pipeline the web `FeedbackModal` uses. Bot webhook contexts have no + * OAuth access token, so we authenticate via the trusted-client token by + * looking up the user's email/name from `users` and passing it as + * `userInfo` (Market SDK signs the request server-side). + * + * Returns `success: false` on any failure (DB error, Market error). The + * caller renders the user-facing reply via `renderFeedbackSubmitted` / + * `renderCommandReply('cmdFeedbackError')`. + */ +export async function submitBotFeedback( + serverDB: LobeChatDatabase, + options: BotFeedbackSubmitOptions, +): Promise { + const { applicationId, body, platform, threadId, userId } = options; + + try { + const user = await serverDB.query.users.findFirst({ + columns: { email: true, fullName: true }, + where: eq(users.id, userId), + }); + + const marketService = new MarketService({ + userInfo: { + email: user?.email ?? undefined, + name: user?.fullName ?? undefined, + userId, + }, + }); + + const title = truncateTitle(body) || `Bot feedback from ${platform}`; + const footerParts = [`via ${platform} bot`]; + if (applicationId) footerParts.push(`app: ${applicationId}`); + if (threadId) footerParts.push(`thread: ${threadId}`); + const result = await marketService.submitFeedback({ + clientInfo: { + url: applicationId ? `bot://${platform}/${applicationId}` : `bot://${platform}`, + }, + email: user?.email ?? undefined, + message: `${body}\n\n---\n_Submitted ${footerParts.join(' · ')}_`, + title, + }); + + return { issueUrl: result?.issueUrl, success: true }; + } catch (error) { + log( + 'submitBotFeedback failed: platform=%s, applicationId=%s, userId=%s, error=%O', + platform, + applicationId, + userId, + error, + ); + return { success: false }; + } +} diff --git a/src/server/services/bot/platforms/discord/client.ts b/src/server/services/bot/platforms/discord/client.ts index a93764132c..d733a554d6 100644 --- a/src/server/services/bot/platforms/discord/client.ts +++ b/src/server/services/bot/platforms/discord/client.ts @@ -14,6 +14,7 @@ import { type BotPlatformRuntimeContext, type BotProviderConfig, ClientFactory, + messengerContentText, type PlatformClient, type PlatformMessenger, type UsageStats, @@ -228,8 +229,12 @@ class DiscordGatewayClient implements PlatformClient { const discord = this.discord; return { addReaction: (messageId, emoji) => discord.createReaction(channelId, messageId, emoji), - createMessage: (content) => discord.createMessage(channelId, content).then(() => {}), - editMessage: (messageId, content) => discord.editMessage(channelId, messageId, content), + // Attachments are silently dropped for now — Discord outbound media + // is its own follow-up; reply text still ships. + createMessage: (content) => + discord.createMessage(channelId, messengerContentText(content)).then(() => {}), + editMessage: (messageId, content) => + discord.editMessage(channelId, messageId, messengerContentText(content)), removeReaction: (messageId, emoji) => discord.removeOwnReaction(channelId, messageId, emoji), replaceReaction: async (messageId, prevEmoji, nextEmoji) => { if (prevEmoji === nextEmoji) return; diff --git a/src/server/services/bot/platforms/feishu/client.ts b/src/server/services/bot/platforms/feishu/client.ts index 398c7d937d..a68b52724f 100644 --- a/src/server/services/bot/platforms/feishu/client.ts +++ b/src/server/services/bot/platforms/feishu/client.ts @@ -20,6 +20,7 @@ import { type BotPlatformRuntimeContext, type BotProviderConfig, ClientFactory, + messengerContentText, type PlatformClient, type PlatformMessenger, type UsageStats, @@ -62,8 +63,12 @@ function createMessenger( const chatId = extractChatId(platformThreadId); return { addReaction: (messageId, emoji) => api.addReaction(messageId, emoji).then(() => {}), - createMessage: (content) => api.sendMessage(chatId, content).then(() => {}), - editMessage: (messageId, content) => api.editMessage(messageId, content).then(() => {}), + // Attachments are silently dropped for now — Lark/Feishu outbound media + // is its own follow-up; reply text still ships. + createMessage: (content) => + api.sendMessage(chatId, messengerContentText(content)).then(() => {}), + editMessage: (messageId, content) => + api.editMessage(messageId, messengerContentText(content)).then(() => {}), // Feishu / Lark currently expose no authenticated removeReaction endpoint. // Callers should treat this as a best-effort no-op — step swaps will stack // additions rather than clear the previous emoji. diff --git a/src/server/services/bot/platforms/index.ts b/src/server/services/bot/platforms/index.ts index 9461cd657c..9ec9e580d5 100644 --- a/src/server/services/bot/platforms/index.ts +++ b/src/server/services/bot/platforms/index.ts @@ -47,12 +47,14 @@ export { } from './const'; export { PlatformRegistry } from './registry'; export type { + BotMessageAttachment, BotPlatformRedisClient, BotPlatformRuntimeContext, BotProviderConfig, ConnectionMode, ExtractFilesResult, FieldSchema, + MessengerContent, PlatformClient, PlatformDefinition, PlatformDocumentation, @@ -61,7 +63,7 @@ export type { UsageStats, ValidationResult, } from './types'; -export { ClientFactory } from './types'; +export { ClientFactory, messengerContentText } from './types'; export type { ProviderConfigInput, ResolvedBotProviderConfig } from './utils'; export { buildRuntimeKey, diff --git a/src/server/services/bot/platforms/line/client.ts b/src/server/services/bot/platforms/line/client.ts index 0e71b7a832..2de21d4fe8 100644 --- a/src/server/services/bot/platforms/line/client.ts +++ b/src/server/services/bot/platforms/line/client.ts @@ -20,6 +20,7 @@ import { type BotPlatformRuntimeContext, type BotProviderConfig, ClientFactory, + messengerContentText, type PlatformClient, type PlatformMessenger, type UsageStats, @@ -166,14 +167,16 @@ class LineWebhookClient implements PlatformClient { getMessenger(platformThreadId: string): PlatformMessenger { const { id: recipient, type } = decodeThread(platformThreadId); return { + // Attachments are silently dropped for now — LINE outbound media is + // its own follow-up; reply text still ships. createMessage: async (content) => { - await this.api.pushText(recipient, content); + await this.api.pushText(recipient, messengerContentText(content)); }, // LINE does not support editing — `supportsMessageEdit: false` makes the // bridge skip the per-step progress edit, but we still implement this // path so any unexpected caller falls back to a fresh push. editMessage: async (_messageId, content) => { - await this.api.pushText(recipient, content); + await this.api.pushText(recipient, messengerContentText(content)); }, removeReaction: () => Promise.resolve(), triggerTyping: async () => { diff --git a/src/server/services/bot/platforms/qq/client.ts b/src/server/services/bot/platforms/qq/client.ts index 108c7a5dbd..2b7cdc871b 100644 --- a/src/server/services/bot/platforms/qq/client.ts +++ b/src/server/services/bot/platforms/qq/client.ts @@ -15,6 +15,7 @@ import { type BotPlatformRuntimeContext, type BotProviderConfig, ClientFactory, + messengerContentText, type PlatformClient, type PlatformMessenger, type UsageStats, @@ -265,10 +266,13 @@ class QQGatewayClient implements PlatformClient { const targetId = extractChatId(platformThreadId); const threadType = extractThreadType(platformThreadId); return { - createMessage: (content) => sendQQMessage(api, threadType, targetId, content), + // Attachments are silently dropped for now — QQ outbound media is its + // own follow-up; reply text still ships. + createMessage: (content) => + sendQQMessage(api, threadType, targetId, messengerContentText(content)), editMessage: (_messageId, content) => // QQ does not support editing — send a new message as fallback - sendQQMessage(api, threadType, targetId, content), + sendQQMessage(api, threadType, targetId, messengerContentText(content)), // QQ Bot API doesn't support reactions or typing removeReaction: () => Promise.resolve(), }; @@ -365,8 +369,12 @@ class QQWebhookClient implements PlatformClient { const targetId = extractChatId(platformThreadId); const threadType = extractThreadType(platformThreadId); return { - createMessage: (content) => sendQQMessage(api, threadType, targetId, content), - editMessage: (_messageId, content) => sendQQMessage(api, threadType, targetId, content), + // Attachments are silently dropped for now — QQ outbound media is its + // own follow-up; reply text still ships. + createMessage: (content) => + sendQQMessage(api, threadType, targetId, messengerContentText(content)), + editMessage: (_messageId, content) => + sendQQMessage(api, threadType, targetId, messengerContentText(content)), removeReaction: () => Promise.resolve(), }; } diff --git a/src/server/services/bot/platforms/slack/client.ts b/src/server/services/bot/platforms/slack/client.ts index 446745f7b1..b8b9cb8487 100644 --- a/src/server/services/bot/platforms/slack/client.ts +++ b/src/server/services/bot/platforms/slack/client.ts @@ -13,6 +13,7 @@ import { type BotPlatformRuntimeContext, type BotProviderConfig, ClientFactory, + messengerContentText, type PlatformClient, type PlatformMessenger, type UsageStats, @@ -50,11 +51,16 @@ function createMessenger(config: BotProviderConfig, platformThreadId: string): P return { addReaction: (messageId, emoji) => slack.addReaction(channelId, messageId, emoji), - createMessage: (content) => - threadTs - ? slack.postMessageInThread(channelId, threadTs, content).then(() => {}) - : slack.postMessage(channelId, content).then(() => {}), - editMessage: (messageId, content) => slack.updateMessage(channelId, messageId, content), + // Attachments are silently dropped for now — Slack outbound media is + // its own follow-up; reply text still ships. + createMessage: (content) => { + const text = messengerContentText(content); + return threadTs + ? slack.postMessageInThread(channelId, threadTs, text).then(() => {}) + : slack.postMessage(channelId, text).then(() => {}); + }, + editMessage: (messageId, content) => + slack.updateMessage(channelId, messageId, messengerContentText(content)), removeReaction: (messageId, emoji) => slack.removeReaction(channelId, messageId, emoji), replaceReaction: async (messageId, prevEmoji, nextEmoji) => { if (prevEmoji === nextEmoji) return; diff --git a/src/server/services/bot/platforms/telegram/client.ts b/src/server/services/bot/platforms/telegram/client.ts index 41e9529167..3909cbfa6f 100644 --- a/src/server/services/bot/platforms/telegram/client.ts +++ b/src/server/services/bot/platforms/telegram/client.ts @@ -14,6 +14,7 @@ import { type BotProviderConfig, ClientFactory, type ExtractFilesResult, + messengerContentText, type PlatformClient, type PlatformMessenger, type UsageStats, @@ -175,9 +176,16 @@ class TelegramWebhookClient implements PlatformClient { return { addReaction: (messageId, emoji) => telegram.setMessageReaction(chatId, parseTelegramMessageId(messageId), emoji), - createMessage: (content) => telegram.sendMessage(chatId, content).then(() => {}), + // Attachments are silently dropped — Telegram outbound media support + // is tracked in its own follow-up; reply text still ships. + createMessage: (content) => + telegram.sendMessage(chatId, messengerContentText(content)).then(() => {}), editMessage: (messageId, content) => - telegram.editMessageText(chatId, parseTelegramMessageId(messageId), content), + telegram.editMessageText( + chatId, + parseTelegramMessageId(messageId), + messengerContentText(content), + ), removeReaction: (messageId) => telegram.removeMessageReaction(chatId, parseTelegramMessageId(messageId)), // Telegram replaces the whole reaction list in one call — one API diff --git a/src/server/services/bot/platforms/types.ts b/src/server/services/bot/platforms/types.ts index 5e24969822..3d9d8efc1a 100644 --- a/src/server/services/bot/platforms/types.ts +++ b/src/server/services/bot/platforms/types.ts @@ -79,6 +79,42 @@ export interface FieldSchema { visibleWhen?: { field: string; value: unknown }; } +// --------------- Bot Message Attachment --------------- + +/** + * JSON-safe attachment carried through the bot callback path + * (agent runtime → webhook body → BotCallbackService → PlatformMessenger). + * + * Either `data` (base64-encoded bytes) or `fetchUrl` (remote URL the + * messenger can fetch) must be set. Prefer `fetchUrl` when possible to keep + * webhook payload sizes manageable. + */ +export interface BotMessageAttachment { + /** Base64-encoded bytes. Used when no fetchable URL exists. */ + data?: string; + /** Remote URL the messenger can GET to retrieve the bytes. */ + fetchUrl?: string; + mimeType?: string; + name?: string; + type: 'image' | 'file' | 'video' | 'audio'; +} + +/** + * Input accepted by `PlatformMessenger.createMessage` / `editMessage`. + * + * Plain string is the legacy form; object form carries optional attachments. + * Platforms that don't support attachments treat the object form as + * `{ content }` and silently drop attachments. + */ +export type MessengerContent = string | { attachments?: BotMessageAttachment[]; content?: string }; + +/** + * Helper for messenger implementations that don't (yet) support attachments: + * coerces `MessengerContent` to its text payload. + */ +export const messengerContentText = (input: MessengerContent): string => + typeof input === 'string' ? input : (input.content ?? ''); + // --------------- Platform Messenger --------------- /** @@ -90,8 +126,8 @@ export interface PlatformMessenger { * can omit this). Callers must no-op on platforms that don't implement it. */ addReaction?: (messageId: string, emoji: string) => Promise; - createMessage: (content: string) => Promise; - editMessage: (messageId: string, content: string) => Promise; + createMessage: (content: MessengerContent) => Promise; + editMessage: (messageId: string, content: MessengerContent) => Promise; removeReaction: (messageId: string, emoji: string) => Promise; /** * Transition the bot's reaction on a message from `prevEmoji` to diff --git a/src/server/services/bot/platforms/wechat/client.test.ts b/src/server/services/bot/platforms/wechat/client.test.ts index be23f2fba5..d6061c1c85 100644 --- a/src/server/services/bot/platforms/wechat/client.test.ts +++ b/src/server/services/bot/platforms/wechat/client.test.ts @@ -3,19 +3,46 @@ import { beforeEach, describe, expect, it, vi } from 'vitest'; const mockCreateWechatAdapter = vi.hoisted(() => vi.fn()); const mockGetUpdates = vi.hoisted(() => vi.fn()); const mockStartTyping = vi.hoisted(() => vi.fn()); +const mockSendMessage = vi.hoisted(() => vi.fn().mockResolvedValue({ ret: 0 })); +const mockSendItem = vi.hoisted(() => vi.fn().mockResolvedValue({ ret: 0 })); +const mockUploadCdnMedia = vi.hoisted(() => + vi.fn().mockResolvedValue({ + aesKey: 'aes-key', + cipherSize: 128, + encryptQueryParam: 'enc-param', + }), +); const mockDownloadMediaFromRawMessage = vi.hoisted(() => vi.fn()); const MessageState = vi.hoisted(() => ({ FINISH: 2 })); const MessageType = vi.hoisted(() => ({ BOT: 2, USER: 1 })); +const MessageItemType = vi.hoisted(() => ({ + FILE: 4, + IMAGE: 1, + TEXT: 0, + VIDEO: 3, + VOICE: 2, +})); +const WechatUploadMediaType = vi.hoisted(() => ({ + FILE: 4, + IMAGE: 1, + VIDEO: 3, + VOICE: 2, +})); vi.mock('@lobechat/chat-adapter-wechat', () => ({ createWechatAdapter: mockCreateWechatAdapter, downloadMediaFromRawMessage: mockDownloadMediaFromRawMessage, + MessageItemType, MessageState, MessageType, WechatApiClient: vi.fn().mockImplementation(() => ({ getUpdates: mockGetUpdates, + sendItem: mockSendItem, + sendMessage: mockSendMessage, startTyping: mockStartTyping, + uploadCdnMedia: mockUploadCdnMedia, })), + WechatUploadMediaType, })); const { WechatClientFactory } = await import('./client'); @@ -315,4 +342,128 @@ describe('WechatGatewayClient', () => { ).rejects.toThrow('helper crashed'); }); }); + + describe('messenger.createMessage with attachments', () => { + const createClient = () => + new WechatClientFactory().createClient( + { + applicationId: 'wechat-app', + credentials: { botId: 'bot-id', botToken: 'bot-token' }, + platform: 'wechat', + settings: {}, + }, + { appUrl: 'https://example.com', redisClient: runtimeRedis as any }, + ); + + it('forwards inline base64 image attachments to uploadCdnMedia + sendItem', async () => { + const client = createClient(); + const messenger = client.getMessenger('wechat:p2p:user-1@im.wechat'); + + // Pre-seed an in-memory context token; the adapter caches per-user. + runtimeRedis.get.mockResolvedValueOnce('ctx-from-redis'); + + await messenger.createMessage({ + attachments: [ + { + data: Buffer.from('image-bytes').toString('base64'), + mimeType: 'image/png', + name: 'foo.png', + type: 'image', + }, + ], + content: 'Here you go', + }); + + // Text leg goes through the standard sendMessage call. + expect(mockSendMessage).toHaveBeenCalledWith( + 'user-1@im.wechat', + 'Here you go', + 'ctx-from-redis', + ); + // Attachment leg: upload bytes, then send a media item. + expect(mockUploadCdnMedia).toHaveBeenCalledWith( + 'user-1@im.wechat', + WechatUploadMediaType.IMAGE, + expect.any(Buffer), + ); + expect(mockSendItem).toHaveBeenCalledWith( + 'user-1@im.wechat', + expect.objectContaining({ + image_item: expect.objectContaining({ + media: expect.objectContaining({ + aes_key: 'aes-key', + encrypt_query_param: 'enc-param', + }), + }), + type: MessageItemType.IMAGE, + }), + 'ctx-from-redis', + ); + }); + + it('fetches and uploads attachments delivered as fetchUrl', async () => { + const client = createClient(); + const messenger = client.getMessenger('wechat:p2p:user-2@im.wechat'); + + runtimeRedis.get.mockResolvedValueOnce('ctx-2'); + const fetchMock = vi.mocked(fetch); + fetchMock.mockResolvedValueOnce( + new Response(new Uint8Array([1, 2, 3, 4]), { + headers: { 'Content-Type': 'image/png' }, + status: 200, + }) as any, + ); + + await messenger.createMessage({ + attachments: [ + { + fetchUrl: 'https://cdn.example.com/pic.png', + name: 'pic.png', + type: 'image', + }, + ], + content: 'pic', + }); + + expect(fetchMock).toHaveBeenCalledWith('https://cdn.example.com/pic.png', expect.any(Object)); + expect(mockUploadCdnMedia).toHaveBeenCalledTimes(1); + expect(mockSendItem).toHaveBeenCalledTimes(1); + }); + + it('continues sending remaining attachments when one fails', async () => { + const client = createClient(); + const messenger = client.getMessenger('wechat:p2p:user-3@im.wechat'); + + runtimeRedis.get.mockResolvedValueOnce('ctx-3'); + mockUploadCdnMedia.mockRejectedValueOnce(new Error('upload failed')).mockResolvedValueOnce({ + aesKey: 'aes-2', + cipherSize: 64, + encryptQueryParam: 'enc-2', + }); + + await messenger.createMessage({ + attachments: [ + { data: Buffer.from('a').toString('base64'), type: 'image' }, + { data: Buffer.from('b').toString('base64'), type: 'image' }, + ], + content: '', + }); + + // Two upload attempts, one sendItem success after the first failure. + expect(mockUploadCdnMedia).toHaveBeenCalledTimes(2); + expect(mockSendItem).toHaveBeenCalledTimes(1); + }); + + it('accepts plain string content (legacy form) and skips attachment path', async () => { + const client = createClient(); + const messenger = client.getMessenger('wechat:p2p:user-4@im.wechat'); + + runtimeRedis.get.mockResolvedValueOnce('ctx-4'); + await messenger.createMessage('text only'); + + expect(mockSendMessage).toHaveBeenCalledWith('user-4@im.wechat', 'text only', 'ctx-4'); + expect(mockUploadCdnMedia).not.toHaveBeenCalled(); + expect(mockSendItem).not.toHaveBeenCalled(); + }); + }); }); diff --git a/src/server/services/bot/platforms/wechat/client.ts b/src/server/services/bot/platforms/wechat/client.ts index 76399d8d91..07cc1310b2 100644 --- a/src/server/services/bot/platforms/wechat/client.ts +++ b/src/server/services/bot/platforms/wechat/client.ts @@ -20,12 +20,15 @@ import { type BotPlatformRuntimeContext, type BotProviderConfig, ClientFactory, + type MessengerContent, + messengerContentText, type PlatformClient, type PlatformMessenger, type UsageStats, type ValidationResult, } from '../types'; import { formatUsageStats } from '../utils'; +import { sendWechatAttachments } from './sendAttachments'; const log = debug('bot-platform:wechat:bot'); @@ -392,15 +395,25 @@ class WechatGatewayClient implements PlatformClient { return ''; }; + const sendMessengerContent = async (input: MessengerContent): Promise => { + const text = messengerContentText(input); + const attachments = typeof input === 'string' ? undefined : input.attachments; + const token = await resolveToken(); + if (text.trim()) { + await this.api.sendMessage(targetId, text, token); + } + if (attachments?.length) { + await sendWechatAttachments(this.api, targetId, attachments, token); + } + }; + return { createMessage: async (content) => { - const token = await resolveToken(); - await this.api.sendMessage(targetId, content, token); + await sendMessengerContent(content); }, editMessage: async (_messageId, content) => { // WeChat doesn't support editing — send a new message - const token = await resolveToken(); - await this.api.sendMessage(targetId, content, token); + await sendMessengerContent(content); }, removeReaction: () => Promise.resolve(), triggerTyping: async () => { diff --git a/src/server/services/bot/platforms/wechat/sendAttachments.ts b/src/server/services/bot/platforms/wechat/sendAttachments.ts new file mode 100644 index 0000000000..58988aad3e --- /dev/null +++ b/src/server/services/bot/platforms/wechat/sendAttachments.ts @@ -0,0 +1,158 @@ +import type { MessageItem, WechatApiClient } from '@lobechat/chat-adapter-wechat'; +import { MessageItemType, WechatUploadMediaType } from '@lobechat/chat-adapter-wechat'; +import debug from 'debug'; + +const log = debug('bot-platform:wechat:send-attachments'); + +/** + * Shared JSON-safe attachment shape used on the WeChat outbound path. + * Either `data` (base64-encoded bytes) or `fetchUrl` (remote URL) must be + * set; `fetchUrl` is preferred so we don't blow up webhook payloads. + * + * Kept in sync with `BotMessageAttachment` (bot/platforms/types.ts) and + * `SendMessageAttachment` (@lobechat/builtin-tool-message); both flow into + * this helper through different entry points (agent reply callback vs. the + * Messager `sendMessage` tool / TRPC / CLI). + */ +export interface WechatOutboundAttachment { + data?: string; + fetchUrl?: string; + mimeType?: string; + name?: string; + type: 'image' | 'file' | 'video' | 'audio'; +} + +const mapAttachmentTypeToUploadMediaType = ( + type: WechatOutboundAttachment['type'], +): WechatUploadMediaType => { + switch (type) { + case 'image': { + return WechatUploadMediaType.IMAGE; + } + case 'video': { + return WechatUploadMediaType.VIDEO; + } + case 'audio': { + return WechatUploadMediaType.VOICE; + } + case 'file': + default: { + return WechatUploadMediaType.FILE; + } + } +}; + +/** + * Materialize an attachment's bytes from `data` (base64) or `fetchUrl` (HTTP + * GET, 15s timeout). Returns undefined if neither source resolves. + */ +const loadAttachmentBuffer = async ( + attachment: WechatOutboundAttachment, +): Promise => { + if (attachment.data) { + try { + return Buffer.from(attachment.data, 'base64'); + } catch (error) { + log('loadAttachmentBuffer: failed to decode base64: %O', error); + } + } + if (attachment.fetchUrl) { + try { + const response = await fetch(attachment.fetchUrl, { + signal: AbortSignal.timeout(15_000), + }); + if (response.ok) { + return Buffer.from(await response.arrayBuffer()); + } + log('loadAttachmentBuffer: HTTP %d for %s', response.status, attachment.fetchUrl); + } catch (error) { + log('loadAttachmentBuffer: fetch failed for %s: %O', attachment.fetchUrl, error); + } + } + return undefined; +}; + +const buildMediaItemFromUpload = ( + mediaType: WechatUploadMediaType, + cdnMedia: { aes_key: string; encrypt_query_param: string; encrypt_type: 1 }, + uploadResult: { cipherSize: number }, + attachment: WechatOutboundAttachment, + bufferLength: number, +): MessageItem => { + switch (mediaType) { + case WechatUploadMediaType.IMAGE: { + return { + image_item: { media: cdnMedia }, + type: MessageItemType.IMAGE, + }; + } + case WechatUploadMediaType.VIDEO: { + return { + type: MessageItemType.VIDEO, + video_item: { media: cdnMedia, video_size: uploadResult.cipherSize }, + }; + } + case WechatUploadMediaType.VOICE: { + return { + type: MessageItemType.VOICE, + voice_item: { media: cdnMedia }, + }; + } + case WechatUploadMediaType.FILE: + default: { + return { + file_item: { + file_name: attachment.name, + len: String(bufferLength), + media: cdnMedia, + }, + type: MessageItemType.FILE, + }; + } + } +}; + +/** + * Upload + send each attachment as its own iLink sendmessage call (per + * protocol §6.7, one MessageItem per request). Single-attachment failures + * are logged and skipped so the rest still ship — mirroring the chat-adapter + * adapter's per-item try/catch. + */ +export const sendWechatAttachments = async ( + api: WechatApiClient, + toUserId: string, + attachments: WechatOutboundAttachment[], + contextToken: string, +): Promise => { + for (const attachment of attachments) { + try { + const buffer = await loadAttachmentBuffer(attachment); + if (!buffer) { + log('sendWechatAttachments: skipping attachment without resolvable bytes'); + continue; + } + const mediaType = mapAttachmentTypeToUploadMediaType(attachment.type); + const uploadResult = await api.uploadCdnMedia(toUserId, mediaType, buffer); + const cdnMedia = { + aes_key: uploadResult.aesKey, + encrypt_query_param: uploadResult.encryptQueryParam, + encrypt_type: 1 as const, + }; + const item = buildMediaItemFromUpload( + mediaType, + cdnMedia, + uploadResult, + attachment, + buffer.length, + ); + await api.sendItem(toUserId, item, contextToken); + } catch (error) { + log( + 'sendWechatAttachments: failed to send %s attachment "%s": %O', + attachment.type, + attachment.name ?? '(unnamed)', + error, + ); + } + } +}; diff --git a/src/server/services/bot/platforms/wechat/service.test.ts b/src/server/services/bot/platforms/wechat/service.test.ts new file mode 100644 index 0000000000..b122cf3cbf --- /dev/null +++ b/src/server/services/bot/platforms/wechat/service.test.ts @@ -0,0 +1,142 @@ +// @vitest-environment node +import { beforeEach, describe, expect, it, vi } from 'vitest'; + +const MessageItemType = vi.hoisted(() => ({ + FILE: 4, + IMAGE: 1, + TEXT: 0, + VIDEO: 3, + VOICE: 2, +})); +const WechatUploadMediaType = vi.hoisted(() => ({ + FILE: 4, + IMAGE: 1, + VIDEO: 3, + VOICE: 2, +})); + +vi.mock('@lobechat/chat-adapter-wechat', () => ({ + MessageItemType, + WechatUploadMediaType, +})); + +const mockRedisGet = vi.hoisted(() => vi.fn().mockResolvedValue(null)); +vi.mock('@/server/modules/AgentRuntime/redis', () => ({ + getAgentRuntimeRedisClient: () => ({ get: mockRedisGet }), +})); + +const { WechatMessageService } = await import('./service'); + +const makeApi = () => ({ + sendItem: vi.fn().mockResolvedValue({ ret: 0 }), + sendMessage: vi.fn().mockResolvedValue({ ret: 0 }), + uploadCdnMedia: vi.fn().mockResolvedValue({ + aesKey: 'aes-key', + cipherSize: 64, + encryptQueryParam: 'enc-param', + }), +}); + +describe('WechatMessageService.sendMessage', () => { + beforeEach(() => { + vi.clearAllMocks(); + vi.stubGlobal('fetch', vi.fn()); + mockRedisGet.mockResolvedValue(null); + }); + + it('forwards text via api.sendMessage', async () => { + const api = makeApi(); + const service = new WechatMessageService(api as any, 'app-1'); + + await service.sendMessage({ + channelId: 'user-1@im.wechat', + content: 'hello', + platform: 'wechat', + }); + + expect(api.sendMessage).toHaveBeenCalledWith('user-1@im.wechat', 'hello', ''); + expect(api.uploadCdnMedia).not.toHaveBeenCalled(); + expect(api.sendItem).not.toHaveBeenCalled(); + }); + + it('uploads + sends attachments as separate iLink items (text + image)', async () => { + const api = makeApi(); + mockRedisGet.mockResolvedValueOnce('ctx-1'); + const service = new WechatMessageService(api as any, 'app-1'); + + await service.sendMessage({ + attachments: [ + { + data: Buffer.from('image-bytes').toString('base64'), + mimeType: 'image/png', + name: 'foo.png', + type: 'image', + }, + ], + channelId: 'user-1@im.wechat', + content: 'here you go', + platform: 'wechat', + }); + + expect(api.sendMessage).toHaveBeenCalledWith('user-1@im.wechat', 'here you go', 'ctx-1'); + expect(api.uploadCdnMedia).toHaveBeenCalledWith( + 'user-1@im.wechat', + WechatUploadMediaType.IMAGE, + expect.any(Buffer), + ); + expect(api.sendItem).toHaveBeenCalledWith( + 'user-1@im.wechat', + expect.objectContaining({ + image_item: expect.objectContaining({ + media: expect.objectContaining({ + aes_key: 'aes-key', + encrypt_query_param: 'enc-param', + }), + }), + type: MessageItemType.IMAGE, + }), + 'ctx-1', + ); + }); + + it('skips the text leg when content is empty but still sends attachments', async () => { + const api = makeApi(); + const service = new WechatMessageService(api as any, 'app-1'); + + await service.sendMessage({ + attachments: [ + { data: Buffer.from('pdf-bytes').toString('base64'), name: 'a.pdf', type: 'file' }, + ], + channelId: 'user-2@im.wechat', + content: '', + platform: 'wechat', + }); + + expect(api.sendMessage).not.toHaveBeenCalled(); + expect(api.uploadCdnMedia).toHaveBeenCalledTimes(1); + expect(api.sendItem).toHaveBeenCalledTimes(1); + }); + + it('fetches attachments delivered as fetchUrl', async () => { + const api = makeApi(); + const service = new WechatMessageService(api as any, 'app-1'); + const fetchMock = vi.mocked(fetch); + fetchMock.mockResolvedValueOnce( + new Response(new Uint8Array([9, 9, 9, 9]), { + headers: { 'Content-Type': 'image/png' }, + status: 200, + }) as any, + ); + + await service.sendMessage({ + attachments: [{ fetchUrl: 'https://cdn.example.com/pic.png', type: 'image' }], + channelId: 'user-3@im.wechat', + content: '', + platform: 'wechat', + }); + + expect(fetchMock).toHaveBeenCalledWith('https://cdn.example.com/pic.png', expect.any(Object)); + expect(api.uploadCdnMedia).toHaveBeenCalledTimes(1); + expect(api.sendItem).toHaveBeenCalledTimes(1); + }); +}); diff --git a/src/server/services/bot/platforms/wechat/service.ts b/src/server/services/bot/platforms/wechat/service.ts index ec3944e63a..2c6ed2ff6b 100644 --- a/src/server/services/bot/platforms/wechat/service.ts +++ b/src/server/services/bot/platforms/wechat/service.ts @@ -40,6 +40,8 @@ import { getAgentRuntimeRedisClient } from '@/server/modules/AgentRuntime/redis' import type { MessageRuntimeService } from '@/server/services/toolExecution/serverRuntimes/message/adapters/types'; import { PlatformUnsupportedError } from '@/server/services/toolExecution/serverRuntimes/message/PlatformUnsupportedError'; +import { sendWechatAttachments } from './sendAttachments'; + /** * WeChat iLink Bot message adapter. * @@ -84,7 +86,12 @@ export class WechatMessageService implements MessageRuntimeService { sendMessage = async (params: SendMessageParams): Promise => { const contextToken = await this.resolveContextToken(params.channelId); - await this.api.sendMessage(params.channelId, params.content, contextToken); + if (params.content) { + await this.api.sendMessage(params.channelId, params.content, contextToken); + } + if (params.attachments?.length) { + await sendWechatAttachments(this.api, params.channelId, params.attachments, contextToken); + } return { channelId: params.channelId, platform: 'wechat', diff --git a/src/server/services/bot/replyTemplate.ts b/src/server/services/bot/replyTemplate.ts index e8535311cc..5ea53a7b58 100644 --- a/src/server/services/bot/replyTemplate.ts +++ b/src/server/services/bot/replyTemplate.ts @@ -219,6 +219,10 @@ type SystemStrings = { cmdApproveSuccess: (label: string) => string; cmdApproveUnknownCode: string; cmdApproveUsage: string; + cmdFeedbackError: string; + cmdFeedbackSubmitted: string; + cmdFeedbackSubmittedWithLink: (issueUrl: string) => string; + cmdFeedbackUsage: string; cmdNewReset: string; cmdStopNotActive: string; cmdStopRequested: string; @@ -264,6 +268,12 @@ const SYSTEM_STRINGS: Partial> = { cmdApproveSuccess: (label) => `Approved ${label}.`, cmdApproveUnknownCode: 'That pairing code is unknown or has expired.', cmdApproveUsage: 'Usage: `/approve `', + cmdFeedbackError: "Couldn't send your feedback right now. Please try again in a moment.", + cmdFeedbackSubmitted: 'Thanks — your feedback has been sent to the LobeHub team.', + cmdFeedbackSubmittedWithLink: (issueUrl) => + `Thanks — your feedback has been sent to the LobeHub team. Tracked at: ${issueUrl}`, + cmdFeedbackUsage: + 'Usage: `/feedback ` — sends feedback directly to the LobeHub team (no AI reply).', cmdNewReset: 'Conversation reset. Your next message will start a new topic.', cmdStopNotActive: 'No active execution to stop.', cmdStopRequested: 'Stop requested.', @@ -318,6 +328,12 @@ const SYSTEM_STRINGS: Partial> = { cmdApproveSuccess: (label) => `已审批 ${label}。`, cmdApproveUnknownCode: '该配对码不存在或已过期。', cmdApproveUsage: '用法:`/approve <配对码>`', + cmdFeedbackError: '发送反馈失败,请稍后再试。', + cmdFeedbackSubmitted: '已收到,感谢反馈,已转交 LobeHub 团队。', + cmdFeedbackSubmittedWithLink: (issueUrl) => + `已收到,感谢反馈,已转交 LobeHub 团队。跟踪链接:${issueUrl}`, + cmdFeedbackUsage: + '用法:`/feedback <你的反馈内容>` —— 反馈会直达 LobeHub 团队,不会触发 AI 回复。', cmdNewReset: '对话已重置,下一条消息会开启新话题。', cmdStopNotActive: '当前没有正在执行的任务可以停止。', cmdStopRequested: '已发出停止请求。', @@ -467,6 +483,9 @@ export type CommandReplyKey = | 'cmdApproveNotOwner' | 'cmdApproveUnknownCode' | 'cmdApproveUsage' + | 'cmdFeedbackError' + | 'cmdFeedbackSubmitted' + | 'cmdFeedbackUsage' | 'cmdNewReset' | 'cmdStopNotActive' | 'cmdStopRequested' @@ -491,6 +510,17 @@ export function renderApproveSuccess(label: string, lng?: BotReplyLocale): strin return getSystemStrings(lng).cmdApproveSuccess(label); } +/** + * Render the `/feedback` success reply. When the feedback backend returns a + * tracked issue URL, surface it so the user knows where to follow up — for + * Slack / Discord that surface autolinks the URL, on Telegram it remains + * tappable in monospace. + */ +export function renderFeedbackSubmitted(issueUrl?: string, lng?: BotReplyLocale): string { + const strings = getSystemStrings(lng); + return issueUrl ? strings.cmdFeedbackSubmittedWithLink(issueUrl) : strings.cmdFeedbackSubmitted; +} + /** * Render the system message a stranger sees after their first DM when the * bot is in pairing mode. Variants: diff --git a/src/server/services/messenger/MessengerRouter.ts b/src/server/services/messenger/MessengerRouter.ts index 9f6b62f765..cb4b4c241c 100644 --- a/src/server/services/messenger/MessengerRouter.ts +++ b/src/server/services/messenger/MessengerRouter.ts @@ -20,8 +20,13 @@ import { getAgentRuntimeRedisClient } from '@/server/modules/AgentRuntime/redis' import { AiAgentService } from '@/server/services/aiAgent'; import { AgentBridgeService } from '@/server/services/bot/AgentBridgeService'; import { buildBotContext } from '@/server/services/bot/buildBotContext'; +import { submitBotFeedback } from '@/server/services/bot/feedbackSubmit'; import type { PlatformClient } from '@/server/services/bot/platforms'; -import { renderInlineError } from '@/server/services/bot/replyTemplate'; +import { + renderCommandReply, + renderFeedbackSubmitted, + renderInlineError, +} from '@/server/services/bot/replyTemplate'; import { getInstallationStore } from './installations'; import type { InstallationCredentials } from './installations/types'; @@ -93,6 +98,19 @@ interface MessengerCommand { description: string; handler: (ctx: MessengerCommandContext) => Promise; name: string; + /** + * Native slash-command argument schema for platforms that require + * arguments to be declared up-front (Discord, Slack). Without this, + * Discord registers the command as zero-arg — clicking it from the + * slash menu fires the handler with no value field shown to the user. + * Mirrors `BotCommand.options` in `BotMessageRouter` so command authors + * use the same shape across both routers. + */ + options?: Array<{ + description: string; + name: string; + required?: boolean; + }>; } const HELP_TEXT = [ @@ -101,6 +119,7 @@ const HELP_TEXT = [ '• /agents — list your agents and switch the active one', '• /new — start a new conversation', '• /stop — stop the current execution', + '• /feedback — send feedback to the LobeHub team (no AI reply)', ].join('\n'); /** @@ -323,7 +342,17 @@ export class MessengerRouter { if (client.registerBotCommands) { client .registerBotCommands( - this.commands.map((cmd) => ({ command: cmd.name, description: cmd.description })), + this.commands.map((cmd) => ({ + command: cmd.name, + description: cmd.description, + // Forward the option schema so Discord/Slack surface required + // arguments (e.g. `/feedback message:`) in the slash picker. + // Without this, the command registers as zero-arg and the + // user can fire it without providing the required text — the + // handler then sees empty `args` and falls back to the usage + // hint. Mirrors `BotMessageRouter.createAndRegisterBot`. + options: cmd.options, + })), ) .catch((error) => log('registerBotCommands failed for %s: %O', creds.installationKey, error), @@ -813,6 +842,45 @@ export class MessengerRouter { }, name: 'stop', }, + { + description: 'Send feedback directly to the LobeHub team (no AI reply)', + // Declaring the argument so Discord/Slack surface a `/feedback ` + // prompt; without it the slash picker registers the command as zero-arg + // and the user can't enter feedback text from the picker UI. + options: [ + { + description: 'Your feedback message', + name: 'message', + required: true, + }, + ], + handler: async (ctx) => { + // Feedback is tied to a LobeHub account so the team can follow up; + // an unbound user has no email/identity to attach. Mirror the + // `/new` / `/stop` "you need to /start" guard for consistency. + if (!ctx.link) { + await ctx.reply('You need to /start to bind your account first.'); + return; + } + const body = ctx.args.trim(); + if (!body) { + await ctx.reply(renderCommandReply('cmdFeedbackUsage')); + return; + } + const result = await submitBotFeedback(ctx.serverDB, { + body, + platform: ctx.platform, + threadId: ctx.thread?.id ?? ctx.chatId, + userId: ctx.link.userId, + }); + if (!result.success) { + await ctx.reply(renderCommandReply('cmdFeedbackError')); + return; + } + await ctx.reply(renderFeedbackSubmitted(result.issueUrl)); + }, + name: 'feedback', + }, { description: 'Show usage', handler: async (ctx) => {