Files
LangBot/web/src/i18n/locales/zh-Hans.ts
2026-05-15 15:16:26 +08:00

1451 lines
55 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
const zhHans = {
sidebar: {
home: '首页',
extensions: '扩展',
installedPlugins: '已安装扩展',
pluginMarket: '扩展市场',
mcpServers: 'MCP 服务器',
addExtension: '添加扩展',
pluginPages: '插件页面',
pluginPagesTooltip: '由已安装的插件提供的可视化页面',
quickStart: '快速开始向导',
},
common: {
login: '登录',
logout: '退出登录',
accountOptions: '系统设置',
account: '账户',
integration: '连接',
email: '邮箱',
password: '密码',
welcome: '欢迎回到 LangBot 👋',
continueToLogin: '登录以继续',
loginSuccess: '登录成功',
loginFailed: '登录失败,请检查邮箱和密码是否正确',
loginLoadError: '无法连接到服务器',
loginLoadErrorDesc: '无法连接到 LangBot 后端服务,请确认服务已启动后重试。',
retry: '重试',
enterEmail: '输入邮箱地址',
enterPassword: '输入密码',
invalidEmail: '请输入有效的邮箱地址',
emptyPassword: '请输入密码',
language: '语言',
helpDocs: '帮助文档',
featureRequest: '需求建议',
starOnGitHub: '在 GitHub 上 Star',
create: '创建',
edit: '编辑',
delete: '删除',
add: '添加',
select: '请选择',
skill: '技能',
cancel: '取消',
submit: '提交',
error: '错误',
success: '成功',
save: '保存',
saving: '保存中...',
confirm: '确认',
confirmDelete: '确认删除',
deleteConfirmation: '你确定要删除这个吗?',
selectOption: '选择一个选项',
selectPreset: '选择预设',
required: '必填',
enable: '是否启用',
name: '名称',
description: '描述',
icon: '图标',
close: '关闭',
deleteSuccess: '删除成功',
deleteError: '删除失败:',
addRound: '添加回合',
copy: '复制',
copySuccess: '复制成功',
copyFailed: '复制失败',
test: '测试',
forgotPassword: '忘记密码?',
agreementNotice: '继续即表示您同意我们的',
termsOfService: '服务条款',
privacyPolicy: '隐私政策',
and: '和',
dataCollectionPolicy: '数据收集政策',
dataCollectionPolicyUrl: 'https://link.langbot.app/zh/docs/data-policy',
loading: '加载中...',
fieldRequired: '此字段为必填项',
or: '或',
loginWithSpace: '通过 Space 登录',
spaceLoginRecommended: '推荐:使用官方提供的稳定模型 API 和云服务',
loginLocal: '使用本地账号登录',
loginWithPassword: '通过密码登录',
spaceLoginTitle: '通过 Space 登录',
spaceLoginDescription: '扫描二维码或访问下方链接进行授权',
spaceLoginUserCode: '您的验证码',
spaceLoginExpires: '验证码将在 {{seconds}} 秒后过期',
spaceLoginWaiting: '等待授权中...',
spaceLoginSuccess: '授权成功',
spaceLoginFailed: 'Space 登录失败',
spaceLoginExpired: '验证码已过期,请重试',
spaceLoginCancel: '取消',
spaceLoginVisitLink: '访问链接',
spaceLoginProcessing: '正在通过 Space 登录',
spaceLoginProcessingDescription: '请稍候,正在完成登录...',
spaceLoginSuccessDescription: '正在跳转到 LangBot...',
spaceLoginError: '登录失败',
spaceLoginNoCode: '缺少授权码',
backToLogin: '返回登录',
backToHome: '返回首页',
spaceAccountCannotChangePassword: 'Space 账户无法在此修改密码',
theme: '主题',
changePassword: '修改密码',
currentPassword: '当前密码',
newPassword: '新密码',
confirmNewPassword: '确认新密码',
enterCurrentPassword: '输入当前密码',
enterNewPassword: '输入新密码',
enterConfirmPassword: '确认新密码',
currentPasswordRequired: '当前密码不能为空',
newPasswordRequired: '新密码不能为空',
confirmPasswordRequired: '确认密码不能为空',
passwordsDoNotMatch: '两次输入的密码不一致',
changePasswordSuccess: '密码修改成功',
changePasswordFailed: '密码修改失败,请检查当前密码是否正确',
apiIntegration: 'API 集成',
apiKeys: 'API 密钥',
manageApiIntegration: '管理 API 集成',
manageApiKeys: '管理 API 密钥',
createApiKey: '创建 API 密钥',
apiKeyName: 'API 密钥名称',
apiKeyDescription: 'API 密钥描述',
apiKeyValue: 'API 密钥值',
apiKeyCreated: 'API 密钥创建成功',
apiKeyDeleted: 'API 密钥删除成功',
apiKeyDeleteConfirm: '确定要删除此 API 密钥吗?',
apiKeyNameRequired: 'API 密钥名称不能为空',
copyApiKey: '复制 API 密钥',
apiKeyCopied: 'API 密钥已复制到剪贴板',
noApiKeys: '暂无 API 密钥',
apiKeyHint: 'API 密钥允许外部系统访问 LangBot 的 Service API',
webhooks: 'Webhooks',
createWebhook: '创建 Webhook',
webhookName: 'Webhook 名称',
webhookUrl: 'Webhook URL',
webhookDescription: 'Webhook 描述',
webhookEnabled: '是否启用',
webhookCreated: 'Webhook 创建成功',
webhookDeleted: 'Webhook 删除成功',
webhookDeleteConfirm: '确定要删除此 Webhook 吗?',
webhookNameRequired: 'Webhook 名称不能为空',
webhookUrlRequired: 'Webhook URL 不能为空',
noWebhooks: '暂无 Webhook',
webhookHint: 'Webhook 允许 LangBot 将个人消息和群消息事件推送到外部系统',
actions: '操作',
apiKeyCreatedMessage: '请复制此 API 密钥,若按钮无效,请手动复制。',
none: '无',
more: '更多 ({{count}})',
less: '收起',
noItems: '暂无内容',
},
notFound: {
title: '页面不存在',
description:
'您要查找的页面似乎不存在。请检查您输入的 URL 是否正确,或者返回首页。',
back: '上一级',
home: '返回主页',
help: '查看帮助文档',
},
models: {
title: '模型配置',
description: '配置和管理可在流水线中使用的模型',
createModel: '创建对话模型',
editModel: '编辑模型',
getModelListError: '获取模型列表失败:',
modelName: '模型名称',
modelProvider: '模型提供商',
modelBaseURL: '基础 URL',
modelAbilities: '模型能力',
saveSuccess: '保存成功',
saveError: '保存失败:',
createSuccess: '创建成功',
createError: '创建失败:',
deleteSuccess: '删除成功',
deleteError: '删除失败:',
deleteConfirmation: '你确定要删除这个模型吗?',
modelNameRequired: '模型名称不能为空',
modelProviderRequired: '模型供应商不能为空',
requestURLRequired: '请求URL不能为空',
apiKeyRequired: 'API Key不能为空',
keyNameRequired: '键名不能为空',
mustBeValidNumber: '必须是有效的数字',
mustBeTrueOrFalse: '必须是 true 或 false',
requestURL: '请求URL',
scanURL: '扫描模型地址',
scanURLPlaceholder: '留空则默认使用请求URL + /models',
scanURLDescription:
'当模型扫描接口与模型调用接口不是同一个地址时,在这里填写实际的模型列表接口。',
apiKey: 'API Key',
abilities: '能力',
selectModelAbilities: '选择模型能力',
visionAbility: '视觉能力',
functionCallAbility: '函数调用',
extraParameters: '额外参数',
addParameter: '添加参数',
keyName: '键名',
type: '类型',
value: '值',
string: '字符串',
number: '数字',
boolean: '布尔值',
object: '对象',
objectJsonPlaceholder: '{ "type": "disabled" }',
invalidJsonObject: '值必须是有效的 JSON 对象',
selectModelProvider: '选择模型供应商',
modelProviderDescription: '请填写供应商向您提供的模型名称',
modelManufacturer: '模型厂商',
aggregationPlatform: '中转平台',
selfDeployed: '自部署',
builtin: '内置',
selectModel: '请选择模型',
testSuccess: '测试成功',
testError: '测试失败,请检查模型配置',
llmModels: '对话模型',
localProvider: '本地',
localProviderDescription: '在本地配置和管理的模型',
spaceProviderDescription: '从您的 Space 账户同步的模型',
spaceDisabledForLocalAccount: '使用 Space 登录以使用云端模型',
syncModels: '同步',
syncSuccess: '同步完成:创建 {{created}} 个,更新 {{updated}} 个',
syncError: '同步失败:',
spaceModelReadOnly: 'Space 模型为只读',
noSpaceModels: '暂无 Space 模型。点击同步按钮从 Space 获取模型。',
noLocalModels: '暂无本地模型。点击创建按钮添加模型。',
providerCount: '共 {{count}} 个自定义供应商',
// 供应商结构新增键
addModel: '添加模型',
manualAdd: '手动添加',
scanAdd: '扫描添加',
scanModels: '扫描模型',
scanModelsHint: '从当前供应商接口读取可用模型,然后勾选要添加的模型。',
scannedModels: '扫描结果',
scanDebug: '调试信息',
searchScannedModels: '搜索扫描结果',
noScannedModels: '还没有扫描结果,点击上方按钮开始扫描。',
noScannedModelsMatch: '没有匹配的模型',
addSelectedModels: '添加所选模型',
addSelectedModelsSuccess: '已添加 {{count}} 个模型',
selectAll: '全选模型',
alreadyAdded: '已添加',
addLLMModel: '添加对话模型',
addEmbeddingModel: '添加嵌入模型',
provider: '供应商',
existingProvider: '已有供应商',
newProvider: '新建供应商',
selectProvider: '选择供应商',
requester: '供应商类型',
selectRequester: '选择供应商类型',
langbotModelsDescription: 'LangBot Space 提供的云端模型',
credits: '积分',
loginWithSpace: '通过 Space 登录',
loginToUseModels: '通过 Space 登录以使用云端模型',
noModels: '暂无模型',
langbotModels: 'LangBot 模型',
spaceTrialTooltip:
'免费试用积分已就绪!通过 Space 登录即可零配置使用云端模型。',
unlockModels: '登录以使用',
editProvider: '编辑供应商',
addProvider: '添加供应商',
addProviderHint: '添加自定义供应商以使用其他来源的模型',
addProviderHintSimple: '添加自定义供应商以使用模型',
noProviders: '暂无自定义供应商',
providerName: '供应商名称',
providerNameRequired: '供应商名称不能为空',
requesterRequired: '供应商类型不能为空',
providerSaved: '供应商已保存',
providerCreated: '供应商已创建',
providerSaveError: '保存供应商失败:',
providerDeleted: '供应商已删除',
providerDeleteError: '删除供应商失败:',
deleteProviderConfirmation: '你确定要删除这个供应商吗?',
loadError: '加载数据失败',
chat: '对话',
embedding: '嵌入',
rerank: '重排序',
rerankUrlTooltip:
'重排序接口的完整 URL 覆盖(如 https://dashscope.aliyuncs.com/compatible-api/v1/reranks',
rerankPathTooltip: '添加到基础 URL 后的重排序路径默认rerank',
modelsCount: '{{count}} 个模型',
expandModels: '展开',
collapseModels: '收起',
fallback: {
primary: '主模型',
fallbackList: '备用模型',
addFallback: '添加备用模型',
},
},
bots: {
title: '机器人',
description: '创建和管理机器人,这是 LangBot 与各个平台连接的入口',
createBot: '创建机器人',
selectFromSidebar: '从侧边栏选择一个机器人',
editBot: '编辑机器人',
getBotListError: '获取机器人列表失败:',
botName: '机器人名称',
botDescription: '机器人描述',
botNameRequired: '机器人名称不能为空',
botDescriptionRequired: '机器人描述不能为空',
adapterRequired: '适配器不能为空',
defaultDescription: '一个机器人',
getBotConfigError: '获取机器人配置失败:',
saveSuccess: '保存成功',
saveError: '保存失败:',
createSuccess: '创建成功 请启用或修改绑定流水线',
createError: '创建失败:',
deleteSuccess: '删除成功',
deleteError: '删除失败:',
deleteConfirmation: '你确定要删除这个机器人吗?',
platformAdapter: '平台/适配器选择',
selectAdapter: '选择适配器',
adapterConfig: '适配器配置',
viewAdapterDocs: '查看文档',
bindPipeline: '绑定流水线',
selectPipeline: '选择流水线',
selectBot: '请选择机器人',
botLogTitle: '机器人日志',
enableAutoRefresh: '开启自动刷新',
session: '会话',
yesterday: '昨天',
earlier: '更久之前',
dateFormat: '{{month}}月{{day}}日',
setBotEnableError: '设置机器人启用状态失败',
log: '日志',
configuration: '配置',
logs: '日志',
basicInfo: '基础信息',
basicInfoDescription: '设置机器人名称和描述',
routingConnection: '路由与连接',
routingConnectionDescription: '绑定处理此机器人消息的流水线',
routingRules: '条件路由规则',
routingRulesDescription:
'按顺序匹配,命中第一条规则后路由到对应流水线;都不匹配时使用上方默认流水线',
addRoutingRule: '添加规则',
ruleTypeLauncherType: '会话类型',
ruleTypeLauncherId: '会话 ID',
ruleTypeMessageContent: '消息内容',
operatorEq: '等于',
operatorNeq: '不等于',
operatorContains: '包含',
operatorNotContains: '不包含',
operatorStartsWith: '前缀匹配',
operatorRegex: '正则匹配',
operatorHas: '包含',
operatorNotHas: '不包含',
ruleTypeMessageHasElement: '消息元素类型',
ruleValueElementPlaceholder: '选择元素类型',
elementImage: '图片',
elementVoice: '语音',
elementFile: '文件',
elementForward: '转发',
elementFace: '表情',
elementAt: '@某人',
elementAtAll: '@全体',
elementQuote: '引用',
ruleValuePlaceholder: '匹配值',
ruleValueLauncherIdPlaceholder: '群号或用户 ID',
ruleValueMessagePlaceholder: '消息内容',
ruleValuePrefixPlaceholder: '如: !draw',
ruleValueRegexpPlaceholder: '如: ^/help',
pipelineDiscard: '丢弃消息',
sessionTypePerson: '私聊',
sessionTypeGroup: '群聊',
adapterConfigDescription: '配置所选平台适配器',
dangerZone: '危险区域',
dangerZoneDescription: '不可逆的操作',
deleteBotAction: '删除此机器人',
deleteBotHint: '删除后,所有关联配置将被永久移除,且无法恢复。',
webhookUrl: 'Webhook 回调地址',
webhookUrlCopied: 'Webhook 地址已复制',
webhookUrlHint:
'点击输入框自动全选,然后按 Ctrl+C (Mac: Cmd+C) 复制,或点击右侧按钮',
webhookUrlHintEither: '以上两个地址任选其一填入平台配置即可',
webhookSaasHint:
'Webhook 需要公网可访问的域名。LangBot Cloud 为你的机器人提供开箱即用的公网地址。',
webhookSaasLink: '了解 LangBot Cloud',
adapterCategory: {
popular: '热门',
china: '中国',
global: '全球',
protocol: '协议',
},
logLevel: '日志级别',
allLevels: '全部级别',
selectLevel: '选择级别',
levelsSelected: '个级别已选',
viewDetailedLogs: '查看详细日志',
viewDetails: '详情',
collapse: '收起',
imagesAttached: '张图片',
noLogs: '暂无日志',
sessionMonitor: {
title: '会话监控',
sessions: '会话列表',
noSessions: '暂无会话',
selectSession: '选择一个会话查看消息',
noMessages: '该会话暂无消息',
messages: '条消息',
messageCount: '{{count}} 条消息',
loading: '加载中...',
loadingSessions: '加载会话中...',
loadingMessages: '加载消息中...',
user: '用户',
variables: '变量',
platform: '平台',
lastActive: '最近活跃',
refresh: '刷新',
active: '活跃',
inactive: '不活跃',
discarded: '已丢弃',
userMessage: '用户',
botMessage: '助手',
},
},
plugins: {
title: '插件扩展',
description: '安装和配置用于扩展功能的插件,请在流水线配置中选用',
createPlugin: '创建插件',
editPlugin: '编辑插件',
installed: '已安装',
marketplace: '扩展市场',
arrange: '编排',
install: '安装',
installPlugin: '安装插件',
newPlugin: '新建插件',
onlySupportGithub: '目前仅支持从 GitHub 安装',
enterGithubLink: '请输入插件的Github链接',
installing: '正在安装插件...',
installSuccess: '插件安装成功',
installFailed: '插件安装失败:',
searchPlugin: '搜索插件',
sortBy: '排序方式',
mostStars: '最多星标',
recentlyAdded: '最近新增',
recentlyUpdated: '最近更新',
noMatchingPlugins: '没有找到匹配的插件',
loading: '加载中...',
getPluginListError: '获取插件列表失败:',
pluginConfig: '插件配置',
noPluginInstalled: '暂未安装任何插件',
noExtensionInstalled: '暂未安装任何扩展',
loadingExtensions: '正在加载扩展...',
groupByType: '按类型分组',
pluginSort: '插件排序',
pluginSortDescription:
'插件顺序会影响同一事件内的处理顺序,请拖动插件卡片排序',
pluginSortSuccess: '插件排序成功',
pluginSortError: '插件排序失败:',
pluginNoConfig: '插件没有配置项。',
systemDisabled: '插件系统未启用',
systemDisabledDesc: '尚未启用插件系统,请根据文档修改配置',
connectionError: '插件系统连接异常',
connectionErrorDesc: '请检查插件系统配置或联系管理员',
errorDetails: '错误详情',
loadingStatus: '正在检查插件系统状态...',
failedToGetStatus: '获取插件系统状态失败',
pluginSystemNotReady: '插件系统未就绪,无法执行此操作',
debugInfo: '调试信息',
debugInfoTitle: '插件调试信息',
debugUrl: '调试地址',
debugKey: '调试密钥',
noDebugKey: '(未设置)',
debugKeyDisabled: '未设置调试密钥,插件调试无需认证',
boxStatusTitle: 'Box 运行时',
boxStatus: '状态',
boxConnected: '已连接',
boxUnavailable: '不可用',
boxBackend: '后端',
boxProfile: '配置',
boxSandboxes: '沙箱数',
boxErrors: '错误数',
boxSessionImage: '镜像',
boxSessionBackend: '后端',
boxSessionResources: '资源',
boxSessionNetwork: '网络',
boxStatusLoadFailed: '加载 Box 状态失败',
failedToGetDebugInfo: '获取调试信息失败',
copiedToClipboard: '已复制到剪贴板',
deleting: '删除中...',
deletePlugin: '删除插件',
cancel: '取消',
saveConfig: '保存配置',
saving: '保存中...',
confirmDeletePlugin: '你确定要删除插件({{author}}/{{name}})吗?',
deleteDataCheckbox: '同时删除插件配置和持久化存储',
confirmDelete: '确认删除',
deleteError: '删除失败:',
close: '关闭',
deleteConfirm: '删除确认',
deleteSuccess: '删除成功',
dangerZone: '危险区域',
dangerZoneDescription: '不可逆的操作',
modifyFailed: '修改失败:',
componentName: {
Tool: '工具',
EventListener: '事件监听器',
Command: '命令',
KnowledgeEngine: '知识引擎',
Parser: '解析器',
Page: '页面',
},
uploadLocal: '本地上传',
debugging: '调试中',
uploadLocalPlugin: '上传本地插件',
uploadPluginOnly: '仅支持 .lbpkg 文件',
dragToUpload: '拖拽文件到此处上传',
unsupportedFileType: '不支持的文件类型,仅支持 .lbpkg 文件',
uploadingPlugin: '正在上传插件...',
uploadSuccess: '上传成功',
uploadFailed: '上传失败',
selectFileToUpload: '选择要上传的插件文件',
askConfirm: '确定要安装插件 "{{name}}" ({{version}}) 吗?',
askConfirmNoVersion: '确定要安装插件 "{{name}}" 吗?',
fromGithub: '来自 GitHub',
fromLocal: '本地安装',
fromMarketplace: '来自市场',
componentsList: '组件: ',
noComponents: '无组件',
delete: '删除插件',
update: '更新插件',
new: '新',
updateConfirm: '更新确认',
confirmUpdatePlugin: '你确定要更新插件({{author}}/{{name}})吗?',
confirmUpdate: '确认更新',
updating: '更新中...',
updateSuccess: '插件更新成功',
updateError: '更新失败:',
saveConfigSuccessNormal: '保存配置成功',
saveConfigError: '保存配置失败:',
config: '配置',
readme: '文档',
viewSource: '查看来源',
loadingReadme: '正在加载文档...',
noReadme: '该插件没有提供 README 文档',
fileUpload: {
tooLarge: '文件大小超过 10MB 限制',
success: '文件上传成功',
failed: '文件上传失败',
uploading: '上传中...',
chooseFile: '选择文件',
addFile: '添加文件',
},
installFromGithub: '来自 GitHub',
enterRepoUrl: '请输入 GitHub 仓库地址',
repoUrlPlaceholder: '例如: https://github.com/owner/repo',
fetchingReleases: '正在获取 Release 列表...',
selectRelease: '选择 Release',
noReleasesFound: '未找到 Release',
fetchReleasesError: '获取 Release 列表失败:',
selectAsset: '选择要安装的文件',
noAssetsFound: '该 Release 没有可用的 .lbpkg 文件',
fetchAssetsError: '获取文件列表失败:',
backToReleases: '返回 Release 列表',
backToRepoUrl: '返回仓库地址',
backToAssets: '返回文件选择',
releaseTag: 'Tag: {{tag}}',
releaseName: '名称: {{name}}',
publishedAt: '发布于: {{date}}',
prerelease: '预发布',
assetSize: '大小: {{size}}',
confirmInstall: '确认安装',
installFromGithubDesc: '从 GitHub Release 安装插件',
goToMarketplace: '前往扩展市场',
installProgress: {
title: '正在安装 {{name}}',
titleGeneric: '扩展安装',
titlePlugin: '正在安装插件 {{name}}',
titleMCP: '正在安装 MCP 服务器 {{name}}',
titleSkill: '正在安装技能 {{name}}',
overallProgress: '总体进度',
downloading: '下载中',
installingDeps: '安装依赖',
initializing: '初始化配置',
launching: '启动中',
completed: '已完成',
failed: '安装失败',
downloadSize: '包大小: {{size}}',
depsInfo: '共 {{count}} 个依赖需要安装',
depsProgress: '已安装 {{installed}}/{{total}} · 剩余 {{remaining}} 个',
installComplete: '安装成功',
installCompletePlugin: '插件安装成功',
installCompleteMCP: 'MCP 服务器安装成功',
installCompleteSkill: '技能安装成功',
dismiss: '关闭',
background: '后台运行',
taskQueue: '安装任务',
clearCompleted: '清除已完成',
noTasks: '暂无安装任务',
},
},
market: {
searchPlaceholder: '搜索插件...',
searchResults: '搜索到 {{count}} 个插件',
totalPlugins: '共 {{count}} 个插件',
noPlugins: '暂无插件',
noResults: '未找到相关插件',
loadingMore: '加载更多...',
loading: '加载中...',
allLoaded: '已显示全部插件',
install: '安装',
installConfirm: '确定要安装插件 "{{name}}" ({{version}}) 吗?',
downloadComplete: '插件 "{{name}}" 下载完成',
installFailed: '安装失败,请稍后重试',
loadFailed: '获取插件列表失败,请稍后重试',
noDescription: '暂无描述',
notFound: '插件信息未找到',
sortBy: '排序方式',
sort: {
recentlyAdded: '最近新增',
recentlyUpdated: '最近更新',
mostDownloads: '最多下载',
leastDownloads: '最少下载',
},
downloads: '次下载',
download: '下载',
repository: '代码仓库',
downloadFailed: '下载失败',
noReadme: '该插件没有提供 README 文档',
description: '描述',
tagLabel: '标签',
submissionTitle: '您有插件提交正在审核中: {{name}}',
submissionPending: '您的插件提交正在审核中: {{name}}',
submissionApproved: '您的插件提交已通过审核: {{name}}',
submissionRejected: '您的插件提交已被拒绝: {{name}}',
clickToRevoke: '撤回',
revokeSuccess: '撤回成功',
revokeFailed: '撤回失败',
submissionDetails: '插件提交详情',
markAsRead: '已读',
markAsReadSuccess: '已标记为已读',
markAsReadFailed: '标记为已读失败',
filterByComponent: '组件',
allComponents: '全部组件',
filterByType: '类型',
allTypes: '全部类型',
typePlugin: '插件',
typeMCP: 'MCP',
typeSkill: '技能',
requestPlugin: '请求插件',
tags: {
filterByTags: '按标签筛选',
selected: '已选',
selectTags: '选择标签',
clearAll: '清空',
noTags: '暂无标签',
},
filters: {
allFormats: '全部类型',
more: '更多',
advancedTitle: '高级筛选',
advancedDescription: '按扩展类型筛选',
technicalType: '技术类型',
},
allExtensions: '全部扩展',
viewDetails: '查看详情',
deprecated: '已弃用',
deprecatedTooltip: '请安装对应「知识引擎」插件',
},
mcp: {
title: 'MCP',
createServer: '添加 MCP 服务器',
addMCPServer: '添加 MCP 服务器',
editServer: '修改 MCP 服务器',
deleteServer: '删除 MCP 服务器',
confirmDeleteServer: '你确定要删除此 MCP 服务器吗?',
confirmDeleteTitle: '删除 MCP 服务器',
getServerListError: '获取 MCP 服务器列表失败:',
serverName: '服务器名称',
serverMode: '连接模式',
selectMode: '选择模式',
stdio: 'Stdio模式',
sse: 'SSE模式',
http: 'HTTP模式',
noServerInstalled: '暂未配置任何 MCP 服务器',
serverNameRequired: '服务器名称不能为空',
commandRequired: '命令不能为空',
urlRequired: 'URL 不能为空',
timeoutMustBePositive: '超时时间必须是正数',
command: '命令',
args: '参数',
env: '环境变量',
url: 'URL地址',
headers: '请求头',
timeout: '超时时间',
addArgument: '添加参数',
addEnvVar: '添加环境变量',
addHeader: '添加请求头',
keyName: '键名',
value: '值',
testing: '测试中...',
connecting: '连接中...',
testSuccess: '测试成功',
testFailed: '测试失败:',
testError: '刷新出错',
refreshSuccess: '刷新成功',
refreshFailed: '刷新失败:',
connectionSuccess: '连接成功',
connectionFailed: '连接失败请检查URL',
connectionFailedStatus: '连接失败',
toolsFound: '个工具',
unknownError: '未知错误',
noToolsFound: '未找到任何工具',
parseResultFailed: '解析测试结果失败',
noResultReturned: '测试未返回结果',
getTaskFailed: '获取任务状态失败',
noTaskId: '未获取到任务ID',
deleteSuccess: '删除成功',
deleteFailed: '删除失败:',
deleteError: '删除失败:',
saveSuccess: '保存成功',
saveError: '保存失败:',
createSuccess: '创建成功',
createFailed: '创建失败:',
createError: '创建失败:',
loadFailed: '加载失败',
modifyFailed: '修改失败:',
toolCount: '工具:{{count}}',
parameterCount: '参数:{{count}}',
noParameters: '无参数',
statusConnected: '已打开',
statusDisconnected: '未打开',
statusError: '连接错误',
statusDisabled: '已禁用',
loading: '加载中...',
starCount: '星标:{{count}}',
install: '安装',
installFromGithub: '从Github安装MCP服务器',
add: '添加',
name: '名称',
nameRequired: '名称不能为空',
sseTimeout: 'SSE超时时间',
sseTimeoutDescription: '用于建立SSE连接的超时时间',
extraParametersDescription: '额外参数用于配置MCP服务器的特定行为',
timeoutMustBeNumber: '超时时间必须是数字',
timeoutNonNegative: '超时时间不能为负数',
sseTimeoutMustBeNumber: 'SSE超时时间必须是数字',
sseTimeoutNonNegative: 'SSE超时时间不能为负数',
updateSuccess: '更新成功',
updateFailed: '更新失败:',
selectFromSidebar: '从侧边栏选择一个 MCP 服务器',
dangerZone: '危险区域',
dangerZoneDescription: '此 MCP 服务器的不可逆操作。',
deleteMCPAction: '删除此 MCP 服务器',
deleteMCPHint: '删除后,此 MCP 服务器配置将无法恢复。',
},
pipelines: {
title: '流水线',
description: '流水线定义了对消息事件的处理流程,用于绑定到机器人',
createPipeline: '创建流水线',
selectFromSidebar: '从侧边栏选择一个流水线',
editPipeline: '编辑流水线',
chat: '对话',
configuration: '配置',
debugChat: '对话调试',
getPipelineListError: '获取流水线列表失败:',
daysAgo: '天前',
today: '今天',
updateTime: '更新于',
defaultBadge: '默认',
sortBy: '排序方式',
newestCreated: '最新创建',
earliestCreated: '最早创建',
recentlyEdited: '最近编辑',
earliestEdited: '最早编辑',
basicInfo: '基础信息',
basicInfoDescription: '设置流水线名称、图标和描述',
aiCapabilities: 'AI 能力',
triggerConditions: '触发条件',
safetyControls: '安全控制',
outputProcessing: '输出处理',
nameRequired: '名称不能为空',
descriptionRequired: '描述不能为空',
createSuccess: '创建成功 请编辑流水线详细参数',
createError: '创建失败:',
saveSuccess: '保存成功',
saveError: '保存失败:',
copySuffix: ' Copy',
deleteConfirmation:
'你确定要删除这个流水线吗?已绑定此流水线的机器人将无法使用。',
defaultPipelineCannotDelete: '默认流水线不可删除',
deleteSuccess: '删除成功',
deleteError: '删除失败:',
copyConfirmTitle: '确认复制',
copyConfirmation:
'确定要复制这个流水线吗?复制将创建一个包含完整配置的新流水线。',
unsavedChanges: '有未保存的更改',
dangerZone: '危险区域',
dangerZoneDescription: '不可逆的操作',
deletePipelineAction: '删除此流水线',
deletePipelineHint: '删除后,绑定此流水线的机器人将无法正常工作。',
copyPipelineAction: '复制此流水线',
copyPipelineHint: '创建一条新的流水线,并复制所有配置。',
extensions: {
title: '扩展集成',
loadError: '加载插件列表失败',
saveSuccess: '保存成功',
saveError: '保存失败',
noPluginsAvailable: '暂无可用插件',
disabled: '已禁用',
noPluginsSelected: '未选择任何插件',
addPlugin: '添加插件',
selectPlugins: '选择插件',
pluginsTitle: '插件',
mcpServersTitle: 'MCP 服务器',
noMCPServersSelected: '未选择任何 MCP 服务器',
addMCPServer: '添加 MCP 服务器',
selectMCPServers: '选择 MCP 服务器',
toolCount: '{{count}} 个工具',
noPluginsInstalled: '无已安装的插件',
noMCPServersConfigured: '无已配置的 MCP 服务器',
selectAll: '全选',
enableAllPlugins: '启用所有插件',
enableAllMCPServers: '启用所有 MCP 服务器',
enableAllSkills: '启用所有技能',
allPluginsEnabled: '已启用所有插件',
allMCPServersEnabled: '已启用所有 MCP 服务器',
allSkillsEnabled: '已启用所有技能',
skillsTitle: '技能',
noSkillsSelected: '未选择任何技能',
addSkill: '添加技能',
selectSkills: '选择技能',
noSkillsAvailable: '暂无可用技能',
},
debugDialog: {
title: '流水线对话',
selectPipeline: '选择流水线',
sessionType: '会话类型',
privateChat: '私聊',
groupChat: '群聊',
send: '发送',
reset: '重置对话',
inputPlaceholder: '发送 {{type}} 消息...',
noMessages: '暂无消息',
userMessage: '用户',
botMessage: '机器人',
sendFailed: '发送失败',
resetSuccess: '对话已重置',
resetFailed: '重置失败',
loadMessagesFailed: '加载消息失败',
loadPipelinesFailed: '加载流水线失败',
atTips: '提及机器人',
streaming: '流式传输',
streamOutput: '流式',
connected: 'WebSocket已连接',
disconnected: 'WebSocket未连接',
connectionError: 'WebSocket连接错误',
connectionFailed: 'WebSocket连接失败',
notConnected: 'WebSocket未连接请稍后重试',
imageUploadFailed: '图片上传失败',
reply: '回复',
replyTo: '回复给',
showMarkdown: '渲染',
showRaw: '原文',
allMembers: '全体成员',
file: '文件',
voice: '语音',
uploadImage: '上传图片',
uploading: '上传中...',
},
monitoring: {
title: '监控日志',
description: '查看此流水线的运行记录和错误信息最近24小时',
detailedLogs: '详细日志',
},
},
knowledge: {
title: '知识库',
createKnowledgeBase: '创建知识库',
selectFromSidebar: '从侧边栏选择一个知识库',
editKnowledgeBase: '编辑知识库',
selectKnowledgeBase: '选择知识库',
selectKnowledgeBases: '选择知识库',
addKnowledgeBase: '添加知识库',
noKnowledgeBaseSelected: '未选择知识库',
empty: '无',
editDocument: '文档',
description: '配置可用于提升模型回复质量的知识库',
metadata: '元数据',
documents: '文档',
kbNameRequired: '知识库名称不能为空',
kbDescriptionRequired: '知识库描述不能为空',
embeddingModelUUIDRequired: '嵌入模型不能为空',
daysAgo: '天前',
today: '今天',
kbName: '知识库名称',
kbDescription: '知识库描述',
topK: '召回数量',
topKRequired: '召回数量不能为空',
topKMax: '召回数量最大值为 30',
topKdescription: '召回相关文档块的数量,取值范围为 1-30',
defaultDescription: '一个知识库',
embeddingModelUUID: '嵌入模型',
selectEmbeddingModel: '选择嵌入模型',
embeddingModelDescription: '用于向量化文本,可在模型配置页面配置',
updateTime: '更新于',
cannotChangeEmbeddingModel: '知识库创建后不可修改嵌入模型',
updateKnowledgeBaseSuccess: '知识库更新成功',
updateKnowledgeBaseFailed: '知识库更新失败:',
documentsTab: {
name: '名称',
status: '状态',
noResults: '暂无文档',
dragAndDrop: '拖拽文件到此处或点击上传',
uploading: '上传中...',
supportedFormats: '支持 PDF、Word、TXT、Markdown、HTML、ZIP 等文档格式',
uploadSuccess: '文件上传成功!',
uploadError: '文件上传失败:',
uploadingFile: '上传文件中...',
fileSizeExceeded: '文件大小超过 10MB 限制,请分割成较小的文件后上传',
actions: '操作',
delete: '删除文件',
fileDeleteSuccess: '文件删除成功',
fileDeleteFailed: '文件删除失败:',
processing: '处理中',
completed: '完成',
failed: '失败',
selectParser: '选择解析器',
builtInParser: '由知识引擎提供',
noParserAvailable:
'没有解析器支持此文件类型,请安装支持该格式的解析器插件。',
installParserHint: '前往扩展市场安装解析器 →',
confirmUpload: '上传',
cancelUpload: '取消',
},
deleteKnowledgeBaseConfirmation:
'你确定要删除这个知识库吗?此知识库下的所有文档将被删除。',
retrieve: '检索测试',
retrieveTest: '检索测试',
query: '查询',
queryPlaceholder: '输入查询内容...',
distance: '距离',
content: '内容',
fileName: '文件名',
noResults: '暂无结果',
retrieveError: '检索失败:',
unknownEngine: '未知引擎',
knowledgeEngine: '知识引擎',
knowledgeEngineRequired: '知识引擎不能为空',
selectKnowledgeEngine: '选择知识引擎',
builtInEngine: '内置引擎',
cannotChangeKnowledgeEngine: '知识库创建后不可修改知识引擎',
basicInfo: '基础信息',
basicInfoDescription: '设置知识库名称、图标和描述',
engineSettings: '引擎设置',
engineSettingsDescription: '所选知识引擎的配置',
engineSettingsReadonly: '编辑模式下不可修改',
retrievalSettings: '检索设置',
retrievalSettingsDescription: '配置从此知识库检索文档的方式',
dangerZone: '危险区域',
dangerZoneDescription: '不可逆的操作',
deleteKbAction: '删除此知识库',
deleteKbHint: '删除后,此知识库中的所有文档和数据将被永久移除。',
noEnginesAvailable: '没有可用的知识库引擎',
installEngineHint: '请先安装「知识引擎」插件',
createKnowledgeBaseFailed: '知识库创建失败:',
loadKnowledgeBaseFailed: '知识库加载失败:',
deleteKnowledgeBaseFailed: '知识库删除失败:',
getKnowledgeBaseListError: '获取知识库列表失败:',
embeddingModel: '嵌入模型',
embeddingModelRequired: '此引擎需要选择嵌入模型',
addExternal: '添加外部知识库',
createExternalSuccess: '外部知识库创建成功',
updateExternalSuccess: '外部知识库更新成功',
deleteExternalSuccess: '外部知识库删除成功',
retriever: '检索器',
selectRetriever: '选择一个检索器...',
retrieverConfiguration: '检索器配置',
retrieverInstallInfo: '您可以从',
retrieverMarketLink: '此处安装知识检索器插件',
migration: {
title: '知识库迁移',
description:
'新版本已将知识库重构为插件化架构,并统一内置知识库和外部知识库为「知识引擎」插件,需要对旧知识库数据进行迁移。您的旧数据已自动备份在数据库中。',
detected:
'共检测到 {{total}} 个知识库需要迁移({{internal}} 个内置知识库,{{external}} 个外部知识库)。',
startWithInstall: '自动安装插件并迁移',
startDataOnly: '仅迁移数据',
dataOnlyHint:
'「仅迁移数据」适合内网环境使用,请在迁移完成后自行安装对应插件',
dismiss: '丢弃原数据',
running: '正在迁移知识库,请稍候...',
success: '知识库迁移完成',
error: '知识库迁移失败:',
dismissError: '操作失败',
retry: '重试',
},
},
register: {
title: '初始化 LangBot 👋',
description: '这是您首次启动 LangBot',
adminAccountNote: '您在此处初始化使用的账号将作为管理员账号',
register: '注册',
initWithSpace: '通过 Space 初始化',
spaceRecommended: '推荐:使用官方提供的稳定模型 API 和云服务',
spaceInfoTip1: 'Space 提供统一的账户鉴权服务,不会上传您的任何敏感信息。',
spaceInfoTip2:
'使用 Space 账户登录可使用 LangBot Models 等云服务,您将会获得一定的免费模型调用额度帮助您快速起步。',
spaceInfoTip3:
'登录方式不会影响其他功能,您在任何情况下都可以配置使用其他来源的模型。',
registerLocal: '注册本地账号',
registerWithPassword: '通过邮箱密码组合注册',
initSuccess: '初始化成功 请登录',
initFailed: '初始化失败:',
},
resetPassword: {
title: '重置密码 🔐',
description: '输入恢复密钥和新的密码来重置您的账户密码',
recoveryKey: '恢复密钥',
recoveryKeyDescription:
'存储在配置文件`data/config.yaml`的`system.recovery_key`中',
newPassword: '新密码',
enterRecoveryKey: '输入恢复密钥',
enterNewPassword: '输入新密码',
recoveryKeyRequired: '恢复密钥不能为空',
newPasswordRequired: '新密码不能为空',
resetPassword: '重置密码',
resetting: '重置中...',
resetSuccess: '密码重置成功,请登录',
resetFailed: '密码重置失败,请检查邮箱和恢复密钥是否正确',
backToLogin: '返回登录',
},
embedding: {
description: '管理嵌入模型,用于向量化文本',
createModel: '创建嵌入模型',
editModel: '编辑嵌入模型',
getModelListError: '获取嵌入模型列表失败:',
embeddingModels: '嵌入模型',
extraParametersDescription:
'将在请求时附加到请求体中,如 encoding_format, dimensions 等',
},
llm: {
llmModels: '对话模型',
description: '管理 LLM 模型,用于对话消息生成',
extraParametersDescription:
'将在请求时附加到请求体中,如 max_tokens, temperature, top_p 等',
},
version: {
newVersionAvailable: '有新版本可用',
viewUpdateGuide: '查看更新方式',
noReleaseNotes: '暂无更新日志',
},
account: {
settings: '账户设置',
setPassword: '设置密码',
passwordSetSuccess: '密码设置成功',
passwordStatus: '本地密码',
passwordSet: '已设置',
passwordNotSet: '未设置',
passwordSetDescription: '您已设置本地密码,可使用邮箱密码登录',
spaceStatus: 'Space 账户',
spaceBound: '已绑定',
spaceNotBound: '未绑定',
spaceBoundDescription: '已绑定 Space 账户,可使用官方模型 API 和云服务',
bindSpace: '绑定 Space 账户',
bindSpaceDescription: '绑定后可使用官方模型 API 和云服务',
bindSpaceButton: '绑定',
bindSpaceConfirmTitle: '确认绑定',
bindSpaceConfirmDescription: '您即将把本地实例绑定到 Space 账户',
bindSpaceWarning:
'绑定后,您的登录邮箱将从 {{localEmail}} 更改为 Space 账户的邮箱。',
bindSpaceSuccess: 'Space 账户绑定成功',
bindSpaceFailed: '绑定 Space 账户失败',
bindSpaceInvalidState: '无效的绑定请求,请从账户设置重新发起',
setPasswordHint: '设置密码后可使用邮箱密码登录',
spaceEmailMismatch: 'Space登录账号邮箱与本实例账号邮箱不匹配',
},
monitoring: {
title: '仪表盘',
description: '查看机器人活动、LLM调用和系统性能',
overview: '概览',
totalMessages: '总消息数',
llmCallsCount: 'LLM调用',
modelCallsCount: '模型调用',
successRate: '成功率',
activeSessions: '活跃会话',
last24Hours: '最近24小时',
filters: {
title: '筛选',
bot: '机器人',
pipeline: '流水线',
allBots: '全部机器人',
selectBot: '选择机器人',
allPipelines: '全部流水线',
selectPipeline: '选择流水线',
loading: '加载中...',
timeRange: '时间范围',
customRange: '自定义范围',
from: '从',
to: '到',
apply: '应用',
reset: '重置筛选',
lastHour: '最近1小时',
last6Hours: '最近6小时',
last24Hours: '最近24小时',
last7Days: '最近7天',
last30Days: '最近30天',
},
tabs: {
messages: '消息记录',
llmCalls: 'LLM调用',
embeddingCalls: 'Embedding调用',
modelCalls: '模型调用',
feedback: '用户反馈',
sessions: '会话分析',
errors: '错误日志',
},
messageList: {
timestamp: '时间戳',
bot: '机器人',
pipeline: '流水线',
message: '消息',
sessionId: '会话ID',
status: '状态',
actions: '操作',
viewDetails: '查看详情',
copyId: '复制ID',
noMessages: '未找到消息',
noMessagesDescription: '尝试调整筛选条件或稍后查看',
loading: '加载消息中...',
loadMore: '加载更多',
autoRefresh: '自动刷新',
platform: '角色',
user: '用户',
level: '级别',
runner: '执行器',
viewConversation: '显示对话详情',
},
llmCalls: {
title: 'LLM调用',
model: '模型',
tokens: 'Token数',
duration: '持续时间',
cost: '成本',
noData: '未找到LLM调用记录',
inputTokens: '输入Token',
outputTokens: '输出Token',
totalTokens: '总Token数',
avgDuration: '平均耗时',
calls: '调用次数',
},
embeddingCalls: {
title: 'Embedding调用',
model: '模型',
tokens: 'Token数',
duration: '持续时间',
noData: '未找到Embedding调用记录',
promptTokens: '输入Token',
totalTokens: '总Token数',
inputCount: '输入数量',
knowledgeBase: '知识库',
queryText: '查询文本',
},
modelCalls: {
title: '模型调用',
llmModel: '对话模型',
embeddingModel: '嵌入模型',
embeddingCall: '嵌入调用',
retrieveCall: '检索调用',
noData: '未找到模型调用记录',
},
sessions: {
sessionId: '会话ID',
messageCount: '消息数',
duration: '持续时间',
lastActivity: '最后活动',
noSessions: '未找到会话',
startTime: '开始时间',
messageStats: '消息统计',
totalMessages: '总消息数',
successMessages: '成功',
errorMessages: '失败',
llmStats: 'LLM统计',
noData: '会话未找到',
},
errors: {
title: '错误',
errorType: '错误类型',
errorMessage: '错误消息',
occurredAt: '发生时间',
noErrors: '未找到错误',
stackTrace: '堆栈追踪',
},
feedback: {
title: '用户反馈',
totalFeedback: '总反馈数',
totalLikes: '点赞数',
totalDislikes: '点踩数',
satisfactionRate: '满意度',
like: '点赞',
dislike: '点踩',
noFeedback: '暂无反馈',
noFeedbackDescription: '用户反馈将在此显示',
feedbackList: '反馈列表',
feedbackContent: '反馈内容',
contextInfo: '上下文信息',
userId: '用户ID',
messageId: '消息ID',
streamId: '关联提问ID',
inaccurateReasons: '不准确原因',
platform: '平台',
exportFeedback: '导出反馈',
},
queries: {
title: '查询记录',
},
messageDetails: {
noData: '此查询没有LLM调用或错误记录',
},
queryVariables: {
title: '查询变量',
},
trafficChart: {
title: '流量概览',
messages: '消息数',
llmCalls: 'LLM调用',
noData: '暂无流量数据',
},
viewMonitoring: '查看日志监控',
refreshData: '刷新数据',
exportData: '导出数据',
export: {
title: '导出数据',
exporting: '导出中...',
messages: '消息记录',
llmCalls: 'LLM 调用',
embeddingCalls: 'Embedding 调用',
errors: '错误日志',
sessions: '会话记录',
feedback: '用户反馈',
},
systemStatus: '系统状态',
pluginRuntime: '插件运行时',
boxRuntime: 'Box 运行时',
connected: '已连接',
disconnected: '未连接',
disabled: '已禁用',
statusDetail: '状态',
pluginDisabled: '插件系统已禁用',
boxBackend: '后端',
boxProfile: '配置',
boxSandboxes: '沙箱数',
boxSessionCreated: '创建时间',
boxSessionLastUsed: '最后使用',
},
storageAnalysis: {
title: '存储分析',
description: '查看存储占用和可清理文件',
openDialog: '查看分析',
dialogTitle: '存储分析',
generatedAt: '生成时间 {{time}}',
loading: '加载中...',
refresh: '刷新',
totalSize: '总占用',
binaryStorage: '插件二进制存储',
uploadCleanup: '过期上传文件',
logCleanup: '过期日志',
sections: '存储分区',
monitoringTables: '监控表',
runtimeTasks: '运行任务',
cleanupPolicy: '清理策略',
uploadRetention: '上传文件保留',
logRetention: '日志保留',
databaseType: '数据库类型',
days: '天',
missing: '不存在',
expiredUploads: '过期上传文件',
expiredLogs: '过期日志',
noExpiredUploads: '暂无过期上传文件',
noExpiredLogs: '暂无过期日志',
sectionNames: {
database: '数据库',
logs: '日志',
storage: '上传文件',
vector_store: '向量库',
plugins: '插件',
mcp: 'MCP',
temp: '临时文件',
},
},
limitation: {
maxBotsReached:
'已达到机器人数量上限({{max}}个)。请先删除已有机器人后再创建新的。',
maxPipelinesReached:
'已达到流水线数量上限({{max}}个)。请先删除已有流水线后再创建新的。',
maxExtensionsReached:
'已达到扩展数量上限({{max}}个)。请先删除已有的 MCP 服务器或插件后再添加新的。',
},
skills: {
title: '技能',
description: '创建和管理可在对话中激活的技能',
createSkill: '创建技能',
editSkill: '编辑技能',
getSkillListError: '获取技能列表失败:',
skillName: '技能名称',
displayName: '技能名称',
displayNamePlaceholder: '显示名称(支持中文)',
skillSlug: '目录名称',
skillSlugPlaceholder: 'english-name-only',
skillSlugHelp: '用作技能目录名,仅支持英文字母、数字、连字符和下划线。',
skillDescription: '技能描述',
skillInstructions: '指令内容',
saveSuccess: '保存成功',
saveError: '保存失败:',
createSuccess: '创建成功',
createError: '创建失败:',
deleteSuccess: '删除成功',
deleteError: '删除失败:',
deleteConfirmation: '你确定要删除这个技能吗?',
delete: '删除技能',
skillNameRequired: '技能名称不能为空',
skillDescriptionRequired: '技能描述不能为空',
packageRootRequired: '技能目录不能为空',
scan: '扫描',
scanSuccess: '目录扫描成功',
scanError: '扫描目录失败:',
noSkills: '暂未配置任何技能',
preview: '预览',
previewInstructions: '预览指令',
instructionsPlaceholder: '使用 Markdown 格式输入技能指令...',
descriptionPlaceholder: '简短描述此技能的功能(会展示给 LLM',
packageRoot: '技能目录',
packageRootHelp:
'非必填。仅在导入已有技能目录时需要填写,新建技能可留空。扫描会检查当前目录及两级子目录。',
advancedSettings: '高级设置',
searchSkills: '搜索技能...',
selectSkills: '选择技能',
builtin: '内置',
addSkill: '添加技能',
importFromGithub: '从 GitHub 安装插件',
createManually: '手动创建',
uploadZip: '上传 ZIP 包',
uploadZipOnly: '仅支持 .zip 技能包',
installSuccess: '技能安装成功',
installError: '安装技能失败:',
enterRepoUrl: '输入 GitHub 仓库地址',
repoUrlPlaceholder: '例如 https://github.com/owner/repo',
fetchingReleases: '正在获取发布版本...',
selectRelease: '选择发布版本',
noReleasesFound: '未找到发布版本',
fetchReleasesError: '获取发布版本失败:',
selectAsset: '选择要安装的文件',
sourceArchive: '源码包 (zip)',
noAssetsFound: '此版本暂无可安装的文件',
fetchAssetsError: '获取文件列表失败:',
backToReleases: '返回版本列表',
backToRepoUrl: '返回仓库地址',
backToAssets: '返回文件列表',
releaseTag: '标签:{{tag}}',
publishedAt: '发布于:{{date}}',
prerelease: '预发布',
assetSize: '大小:{{size}}',
confirmInstall: '确认安装',
installing: '正在安装技能...',
loading: '加载中...',
previewLoadError: '加载预览失败',
selectFromSidebar: '从侧边栏选择一个技能',
dangerZone: '危险区域',
dangerZoneDescription: '不可逆的操作',
files: '文件',
noFiles: '暂无文件',
loadFilesError: '加载文件失败:',
readFileError: '读取文件失败:',
saveFile: '保存文件',
saveFileSuccess: '文件保存成功',
saveFileError: '保存文件失败:',
},
wizard: {
sidebarDescription: '通过引导步骤创建机器人',
loading: '正在加载向导...',
loadError: '加载向导数据失败',
skip: '跳过',
skipConfirmMessage:
'您之后可以在账户菜单重新进入快速开始向导,或手动创建机器人。',
skipConfirmOk: '确定',
prev: '上一步',
next: '下一步',
finish: '创建并部署',
confirmCreateBot: '确定,创建机器人',
createSuccess: '流水线已创建并关联到机器人!',
botCreateSuccess: '机器人创建成功!',
botSaveSuccess: '机器人配置已保存并启用!',
createError: '创建资源失败',
spaceAuthError: '无法发起 Space 授权',
skipSaveError: '保存跳过状态失败,请重试。',
completeSaveError: '保存完成状态失败,请重试。',
step: {
platform: '平台接入',
botConfig: '机器人配置',
aiEngine: 'AI 引擎',
done: '完成',
},
platform: {
title: '选择平台',
description: '选择机器人要接入的消息平台。',
},
botConfig: {
title: '配置机器人',
description: '配置好机器人并确认其正常运行后再继续。',
saveBot: '保存并启用',
resaveBot: '重新保存配置',
botSaved: '机器人配置已保存并启用,请查看日志确认连接正常。',
logsTitle: '机器人日志',
logsDescription: '监控机器人活动,确认平台连接是否正常工作。',
},
aiEngine: {
title: '选择 AI 引擎',
description: '选择驱动机器人智能的 AI 引擎。',
},
spaceBanner: {
message: '接入 LangBot Space获取免费试用模型额度零配置极速开箱',
action: '前往授权登录',
},
config: {
botInfo: '机器人信息',
botNamePlaceholder: '请输入机器人名称',
botDescPlaceholder: '请输入机器人描述(可选)',
platformConfig: '{{platform}} 配置',
aiConfig: '{{engine}} 配置',
},
done: {
title: '一切就绪!',
description:
'机器人已创建并连接到 AI 流水线。你现在可以在工作台中管理它。',
backToWorkbench: '返回工作台',
},
},
addExtension: {
manualAdd: '手动添加',
uploadExtension: '拖拽或点击上传扩展包',
uploadHint: '支持 .zip技能和 .lbpkg插件文件',
orContinueWith: '或选择以下操作',
addMCPServerHint: '连接一个 MCP 工具服务器扩展',
installFromGithub: '从 GitHub 安装插件',
installFromGithubHint: '从 GitHub Release 安装插件扩展',
createSkill: '创建新的技能',
createSkillHint: '手动创建一个新的技能扩展',
unsupportedFileType: '不支持的文件类型,仅支持 .zip 和 .lbpkg 文件',
},
errorPage: {
unexpectedError: '出错了',
unexpectedErrorDescription: '发生了意外错误,请稍后重试。',
notFound: '页面未找到',
notFoundDescription: '你访问的页面不存在或已被移动。',
backendUnavailableStatus: '后端服务不可用',
goBack: '返回上页',
backToHome: '返回首页',
backToLogin: '返回登录',
},
pluginPages: {
selectFromSidebar: '从侧边栏选择一个插件页面',
invalidPage: '无效的插件页面',
},
};
export default zhHans;