mirror of
https://github.com/langbot-app/LangBot.git
synced 2026-08-12 22:00:57 +00:00
3f22f62332
* Initial plan * Add monitoring tab to pipeline dialog with i18n support Co-authored-by: RockChinQ <45992437+RockChinQ@users.noreply.github.com> * Fix prettier formatting for monitoring tab component Co-authored-by: RockChinQ <45992437+RockChinQ@users.noreply.github.com> * Fix code review issues: use functional state updates and add comment for delay Co-authored-by: RockChinQ <45992437+RockChinQ@users.noreply.github.com> * Update dependencies and enhance monitoring tab functionality - Updated various package versions in pnpm-lock.yaml for improved compatibility and performance. - Refactored PipelineDetailDialog to streamline WebSocket connection status display. - Enhanced PipelineMonitoringTab to support navigation to detailed logs and improved UI elements. - Added i18n support for 'Detailed Logs' in English, Japanese, Simplified Chinese, and Traditional Chinese locales. * Fix lint errors: remove unused Button import and format en-US.ts Co-authored-by: RockChinQ <45992437+RockChinQ@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: RockChinQ <45992437+RockChinQ@users.noreply.github.com> Co-authored-by: RockChinQ <rockchinq@gmail.com>
894 lines
34 KiB
TypeScript
894 lines
34 KiB
TypeScript
const zhHant = {
|
|
common: {
|
|
login: '登入',
|
|
logout: '登出',
|
|
accountOptions: '系統設定',
|
|
account: '帳戶',
|
|
integration: '連接',
|
|
email: '電子郵件',
|
|
password: '密碼',
|
|
welcome: '歡迎回到 LangBot 👋',
|
|
continueToLogin: '登入以繼續',
|
|
loginSuccess: '登入成功',
|
|
loginFailed: '登入失敗,請檢查電子郵件和密碼是否正確',
|
|
enterEmail: '輸入電子郵件地址',
|
|
enterPassword: '輸入密碼',
|
|
invalidEmail: '請輸入有效的電子郵件地址',
|
|
emptyPassword: '請輸入密碼',
|
|
language: '語言',
|
|
helpDocs: '輔助說明',
|
|
featureRequest: '需求建議',
|
|
create: '建立',
|
|
edit: '編輯',
|
|
delete: '刪除',
|
|
add: '新增',
|
|
select: '請選擇',
|
|
cancel: '取消',
|
|
submit: '提交',
|
|
error: '錯誤',
|
|
success: '成功',
|
|
save: '儲存',
|
|
saving: '儲存中...',
|
|
confirm: '確認',
|
|
confirmDelete: '確認刪除',
|
|
deleteConfirmation: '您確定要刪除這個嗎?',
|
|
selectOption: '選擇一個選項',
|
|
required: '必填',
|
|
enable: '是否啟用',
|
|
name: '名稱',
|
|
description: '描述',
|
|
icon: '圖標',
|
|
close: '關閉',
|
|
deleteSuccess: '刪除成功',
|
|
deleteError: '刪除失敗:',
|
|
addRound: '新增回合',
|
|
copy: '複製',
|
|
copySuccess: '複製成功',
|
|
copyFailed: '複製失敗',
|
|
test: '測試',
|
|
forgotPassword: '忘記密碼?',
|
|
loading: '載入中...',
|
|
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: '無',
|
|
},
|
|
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',
|
|
apiKey: 'API Key',
|
|
abilities: '能力',
|
|
selectModelAbilities: '選擇模型能力',
|
|
visionAbility: '視覺能力',
|
|
functionCallAbility: '函數呼叫',
|
|
extraParameters: '額外參數',
|
|
addParameter: '新增參數',
|
|
keyName: '鍵名',
|
|
type: '類型',
|
|
value: '值',
|
|
string: '字串',
|
|
number: '數字',
|
|
boolean: '布林值',
|
|
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: '新增模型',
|
|
addLLMModel: '新增對話模型',
|
|
addEmbeddingModel: '新增嵌入模型',
|
|
provider: '供應商',
|
|
existingProvider: '現有供應商',
|
|
newProvider: '新供應商',
|
|
selectProvider: '選擇供應商',
|
|
requester: '供應商類型',
|
|
selectRequester: '選擇供應商類型',
|
|
langbotModelsDescription: '由 LangBot Space 提供的雲端模型',
|
|
credits: '積分',
|
|
loginWithSpace: '使用 Space 登入',
|
|
loginToUseModels: '使用 Space 登入以使用雲端模型',
|
|
noModels: '暫無模型',
|
|
editProvider: '編輯供應商',
|
|
addProvider: '新增供應商',
|
|
addProviderHint: '新增供應商以使用其他來源的模型',
|
|
addProviderHintSimple: '新增供應商以使用模型',
|
|
noProviders: '暫無供應商',
|
|
providerName: '供應商名稱',
|
|
providerNameRequired: '供應商名稱不能為空',
|
|
requesterRequired: '供應商類型不能為空',
|
|
providerSaved: '供應商已儲存',
|
|
providerCreated: '供應商已建立',
|
|
providerSaveError: '儲存供應商失敗:',
|
|
providerDeleted: '供應商已刪除',
|
|
providerDeleteError: '刪除供應商失敗:',
|
|
deleteProviderConfirmation: '您確定要刪除這個供應商嗎?',
|
|
loadError: '載入資料失敗',
|
|
chat: '對話',
|
|
embedding: '嵌入',
|
|
modelsCount: '{{count}} 個模型',
|
|
expandModels: '展開',
|
|
collapseModels: '收起',
|
|
},
|
|
bots: {
|
|
title: '機器人',
|
|
description: '建立和管理機器人,這是 LangBot 與各個平台連接的入口',
|
|
createBot: '建立機器人',
|
|
editBot: '編輯機器人',
|
|
getBotListError: '取得機器人清單失敗:',
|
|
botName: '機器人名稱',
|
|
botDescription: '機器人描述',
|
|
botNameRequired: '機器人名稱不能為空',
|
|
botDescriptionRequired: '機器人描述不能為空',
|
|
adapterRequired: '適配器不能為空',
|
|
defaultDescription: '一個機器人',
|
|
getBotConfigError: '取得機器人設定失敗:',
|
|
saveSuccess: '儲存成功',
|
|
saveError: '儲存失敗:',
|
|
createSuccess: '建立成功 請啟用或修改綁定流程線',
|
|
createError: '建立失敗:',
|
|
deleteSuccess: '刪除成功',
|
|
deleteError: '刪除失敗:',
|
|
deleteConfirmation: '您確定要刪除這個機器人嗎?',
|
|
platformAdapter: '平台/適配器選擇',
|
|
selectAdapter: '選擇適配器',
|
|
adapterConfig: '適配器設定',
|
|
bindPipeline: '綁定流程線',
|
|
selectPipeline: '選擇流程線',
|
|
selectBot: '請選擇機器人',
|
|
botLogTitle: '機器人日誌',
|
|
enableAutoRefresh: '開啟自動重新整理',
|
|
session: '對話',
|
|
yesterday: '昨天',
|
|
earlier: '更久之前',
|
|
dateFormat: '{{month}}月{{day}}日',
|
|
setBotEnableError: '設定機器人啟用狀態失敗',
|
|
log: '日誌',
|
|
configuration: '設定',
|
|
logs: '日誌',
|
|
webhookUrl: 'Webhook 回調位址',
|
|
webhookUrlCopied: 'Webhook 位址已複製',
|
|
webhookUrlHint:
|
|
'點擊輸入框自動全選,然後按 Ctrl+C (Mac: Cmd+C) 複製,或點擊右側按鈕',
|
|
logLevel: '日誌級別',
|
|
allLevels: '全部級別',
|
|
selectLevel: '選擇級別',
|
|
levelsSelected: '個級別已選',
|
|
},
|
|
plugins: {
|
|
title: '外掛擴展',
|
|
description: '安裝和設定用於擴展功能的外掛,請在流程線配置中選用',
|
|
createPlugin: '建立外掛',
|
|
editPlugin: '編輯外掛',
|
|
installed: '已安裝',
|
|
marketplace: 'Marketplace',
|
|
arrange: '編排',
|
|
install: '安裝',
|
|
installFromGithub: '來自 GitHub',
|
|
onlySupportGithub: '目前僅支援從 GitHub 安裝',
|
|
enterGithubLink: '請輸入外掛的Github連結',
|
|
installing: '正在安裝外掛...',
|
|
installSuccess: '外掛安裝成功',
|
|
installFailed: '外掛安裝失敗:',
|
|
searchPlugin: '搜尋外掛',
|
|
sortBy: '排序方式',
|
|
mostStars: '最多星標',
|
|
recentlyAdded: '最近新增',
|
|
recentlyUpdated: '最近更新',
|
|
noMatchingPlugins: '沒有找到符合的外掛',
|
|
loading: '載入中...',
|
|
getPluginListError: '取得外掛清單失敗:',
|
|
pluginConfig: '外掛設定',
|
|
noPluginInstalled: '暫未安裝任何外掛',
|
|
pluginSort: '外掛排序',
|
|
pluginSortDescription:
|
|
'外掛順序會影響同一事件內的處理順序,請拖曳外掛卡片排序',
|
|
pluginSortSuccess: '外掛排序成功',
|
|
pluginSortError: '外掛排序失敗:',
|
|
pluginNoConfig: '外掛沒有設定項目。',
|
|
systemDisabled: '外掛系統未啟用',
|
|
systemDisabledDesc: '尚未啟用外掛系統,請根據文檔修改配置',
|
|
connectionError: '外掛系統連接異常',
|
|
connectionErrorDesc: '請檢查外掛系統配置或聯絡管理員',
|
|
errorDetails: '錯誤詳情',
|
|
loadingStatus: '正在檢查外掛系統狀態...',
|
|
failedToGetStatus: '取得外掛系統狀態失敗',
|
|
pluginSystemNotReady: '外掛系統未就緒,無法執行此操作',
|
|
debugInfo: '偵錯資訊',
|
|
debugInfoTitle: '外掛偵錯資訊',
|
|
debugUrl: '偵錯位址',
|
|
debugKey: '偵錯金鑰',
|
|
noDebugKey: '(未設定)',
|
|
debugKeyDisabled: '未設定偵錯金鑰,外掛偵錯無需認證',
|
|
failedToGetDebugInfo: '取得偵錯資訊失敗',
|
|
copiedToClipboard: '已複製到剪貼簿',
|
|
deleting: '刪除中...',
|
|
deletePlugin: '刪除外掛',
|
|
cancel: '取消',
|
|
saveConfig: '儲存設定',
|
|
saving: '儲存中...',
|
|
confirmDeletePlugin: '您確定要刪除外掛({{author}}/{{name}})嗎?',
|
|
deleteDataCheckbox: '同時刪除外掛設定和持久化儲存',
|
|
confirmDelete: '確認刪除',
|
|
deleteError: '刪除失敗:',
|
|
close: '關閉',
|
|
deleteConfirm: '刪除確認',
|
|
modifyFailed: '修改失敗:',
|
|
componentName: {
|
|
Tool: '工具',
|
|
EventListener: '事件監聽器',
|
|
Command: '命令',
|
|
KnowledgeRetriever: '知識檢索',
|
|
},
|
|
uploadLocal: '本地上傳',
|
|
debugging: '調試中',
|
|
uploadLocalPlugin: '上傳本地插件',
|
|
dragToUpload: '拖拽文件到此處上傳',
|
|
unsupportedFileType: '不支持的文件類型,僅支持 .lbpkg 和 .zip 文件',
|
|
uploadingPlugin: '正在上傳插件...',
|
|
uploadSuccess: '上傳成功',
|
|
uploadFailed: '上傳失敗',
|
|
selectFileToUpload: '選擇要上傳的插件文件',
|
|
askConfirm: '確定要安裝插件 "{{name}}" ({{version}}) 嗎?',
|
|
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: '新增檔案',
|
|
},
|
|
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 安裝插件',
|
|
},
|
|
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}}',
|
|
submissionApproved: '您的插件提交已通過審核: {{name}}',
|
|
submissionRejected: '您的插件提交已被拒絕: {{name}}',
|
|
clickToRevoke: '撤回',
|
|
revokeSuccess: '撤回成功',
|
|
revokeFailed: '撤回失敗',
|
|
submissionDetails: '插件提交詳情',
|
|
markAsRead: '已讀',
|
|
markAsReadSuccess: '已標記為已讀',
|
|
markAsReadFailed: '標記為已讀失敗',
|
|
filterByComponent: '組件',
|
|
allComponents: '全部組件',
|
|
requestPlugin: '請求插件',
|
|
tags: {
|
|
filterByTags: '按標籤篩選',
|
|
selected: '已選',
|
|
selectTags: '選擇標籤',
|
|
clearAll: '清空',
|
|
noTags: '暫無標籤',
|
|
},
|
|
viewDetails: '查看詳情',
|
|
},
|
|
mcp: {
|
|
title: 'MCP',
|
|
createServer: '新增MCP伺服器',
|
|
editServer: '編輯MCP伺服器',
|
|
deleteServer: '刪除MCP伺服器',
|
|
confirmDeleteServer: '您確定要刪除此MCP伺服器嗎?',
|
|
confirmDeleteTitle: '刪除MCP伺服器',
|
|
getServerListError: '取得MCP伺服器清單失敗:',
|
|
serverName: '伺服器名稱',
|
|
serverMode: '連接模式',
|
|
stdio: 'Stdio模式',
|
|
sse: 'SSE模式',
|
|
selectMode: '選擇連接模式',
|
|
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}}',
|
|
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: '更新失敗:',
|
|
},
|
|
pipelines: {
|
|
title: '流程線',
|
|
description: '流程線定義了對訊息事件的處理流程,用於綁定到機器人',
|
|
createPipeline: '建立流程線',
|
|
editPipeline: '編輯流程線',
|
|
chat: '對話',
|
|
configuration: '設定',
|
|
debugChat: '對話除錯',
|
|
getPipelineListError: '取得流程線清單失敗:',
|
|
daysAgo: '天前',
|
|
today: '今天',
|
|
updateTime: '更新於',
|
|
defaultBadge: '預設',
|
|
sortBy: '排序方式',
|
|
newestCreated: '最新建立',
|
|
earliestCreated: '最早建立',
|
|
recentlyEdited: '最近編輯',
|
|
earliestEdited: '最早編輯',
|
|
basicInfo: '基本資訊',
|
|
aiCapabilities: 'AI 能力',
|
|
triggerConditions: '觸發條件',
|
|
safetyControls: '安全控制',
|
|
outputProcessing: '輸出處理',
|
|
nameRequired: '名稱不能為空',
|
|
descriptionRequired: '描述不能為空',
|
|
createSuccess: '建立成功 請編輯流程線詳細參數',
|
|
createError: '建立失敗:',
|
|
saveSuccess: '儲存成功',
|
|
saveError: '儲存失敗:',
|
|
copySuffix: ' Copy',
|
|
deleteConfirmation:
|
|
'您確定要刪除這個流程線嗎?已綁定此流程線的機器人將無法使用。',
|
|
defaultPipelineCannotDelete: '預設流程線不可刪除',
|
|
deleteSuccess: '刪除成功',
|
|
deleteError: '刪除失敗:',
|
|
copyConfirmTitle: '確認複製',
|
|
copyConfirmation:
|
|
'確定要複製這個流程線嗎?複製將創建一個包含完整配置的新流程線。',
|
|
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 伺服器',
|
|
allPluginsEnabled: '已啟用所有插件',
|
|
allMCPServersEnabled: '已啟用所有 MCP 伺服器',
|
|
},
|
|
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: '原文',
|
|
},
|
|
monitoring: {
|
|
title: '監控日誌',
|
|
description: '檢視此流程線的執行記錄和錯誤資訊(最近24小時)',
|
|
detailedLogs: '詳細日誌',
|
|
},
|
|
},
|
|
knowledge: {
|
|
title: '知識庫',
|
|
createKnowledgeBase: '建立知識庫',
|
|
editKnowledgeBase: '編輯知識庫',
|
|
selectKnowledgeBase: '選擇知識庫',
|
|
selectKnowledgeBases: '選擇知識庫',
|
|
addKnowledgeBase: '新增知識庫',
|
|
noKnowledgeBaseSelected: '未選擇知識庫',
|
|
empty: '無',
|
|
editDocument: '文檔',
|
|
description: '設定可用於提升模型回覆品質的知識庫',
|
|
metadata: '中繼資料',
|
|
documents: '文檔',
|
|
kbNameRequired: '知識庫名稱不能為空',
|
|
kbDescriptionRequired: '知識庫描述不能為空',
|
|
embeddingModelUUIDRequired: '嵌入模型不能為空',
|
|
daysAgo: '天前',
|
|
today: '今天',
|
|
kbName: '知識庫名稱',
|
|
kbDescription: '知識庫描述',
|
|
topK: '召回數量 ',
|
|
topKRequired: '召回數量不能為空',
|
|
topKMax: '召回數量最大值為30',
|
|
topKdescription: '取得相關性高的上位 K 件文獻的數量,範圍為1~30',
|
|
defaultDescription: '一個知識庫',
|
|
embeddingModelUUID: '嵌入模型',
|
|
selectEmbeddingModel: '選擇嵌入模型',
|
|
embeddingModelDescription: '用於向量化文字,可在模型設定頁面設定',
|
|
updateTime: '更新於',
|
|
cannotChangeEmbeddingModel: '知識庫建立後不可修改嵌入模型',
|
|
updateKnowledgeBaseSuccess: '知識庫更新成功',
|
|
updateKnowledgeBaseFailed: '知識庫更新失敗',
|
|
documentsTab: {
|
|
name: '名稱',
|
|
status: '狀態',
|
|
noResults: '暫無文件',
|
|
dragAndDrop: '拖曳文檔到此處或點擊上傳',
|
|
uploading: '上傳中...',
|
|
supportedFormats: '支援 PDF、Word、TXT、Markdown 等文檔格式',
|
|
uploadSuccess: '文檔上傳成功!',
|
|
uploadError: '文檔上傳失敗,請重試',
|
|
uploadingFile: '上傳文檔中...',
|
|
fileSizeExceeded: '檔案大小超過 10MB 限制,請分割成較小的檔案後上傳',
|
|
actions: '操作',
|
|
delete: '刪除文檔',
|
|
fileDeleteSuccess: '文檔刪除成功',
|
|
fileDeleteFailed: '文檔刪除失敗',
|
|
processing: '處理中',
|
|
completed: '完成',
|
|
failed: '失敗',
|
|
},
|
|
deleteKnowledgeBaseConfirmation:
|
|
'您確定要刪除這個知識庫嗎?此知識庫下的所有文檔將被刪除。',
|
|
retrieve: '檢索測試',
|
|
retrieveTest: '檢索測試',
|
|
query: '查詢',
|
|
queryPlaceholder: '輸入查詢內容...',
|
|
distance: '距離',
|
|
content: '內容',
|
|
fileName: '文檔名稱',
|
|
noResults: '暫無結果',
|
|
retrieveError: '檢索失敗',
|
|
builtIn: '內置',
|
|
external: '外部知識庫',
|
|
addExternal: '添加外部知識庫',
|
|
createExternalSuccess: '外部知識庫創建成功',
|
|
updateExternalSuccess: '外部知識庫更新成功',
|
|
deleteExternalSuccess: '外部知識庫刪除成功',
|
|
retriever: '檢索器',
|
|
selectRetriever: '選擇一個檢索器...',
|
|
retrieverConfiguration: '檢索器配置',
|
|
retrieverInstallInfo: '您可以從',
|
|
retrieverMarketLink: '此處安裝知識檢索器插件',
|
|
},
|
|
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: '模型調用',
|
|
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: {
|
|
model: '模型',
|
|
tokens: '代幣數',
|
|
duration: '持續時間',
|
|
cost: '成本',
|
|
noData: '未找到LLM調用記錄',
|
|
inputTokens: '輸入代幣',
|
|
outputTokens: '輸出代幣',
|
|
totalTokens: '總代幣數',
|
|
},
|
|
embeddingCalls: {
|
|
title: 'Embedding調用',
|
|
model: '模型',
|
|
tokens: '代幣數',
|
|
duration: '持續時間',
|
|
noData: '未找到Embedding調用記錄',
|
|
promptTokens: '輸入代幣',
|
|
totalTokens: '總代幣數',
|
|
inputCount: '輸入數量',
|
|
knowledgeBase: '知識庫',
|
|
queryText: '查詢文字',
|
|
},
|
|
modelCalls: {
|
|
title: '模型調用',
|
|
llmModel: '對話模型',
|
|
embeddingModel: '嵌入模型',
|
|
embeddingCall: '嵌入調用',
|
|
retrieveCall: '檢索調用',
|
|
noData: '未找到模型調用記錄',
|
|
},
|
|
sessions: {
|
|
sessionId: '會話ID',
|
|
messageCount: '訊息數',
|
|
duration: '持續時間',
|
|
lastActivity: '最後活動',
|
|
noSessions: '未找到會話',
|
|
startTime: '開始時間',
|
|
},
|
|
errors: {
|
|
errorType: '錯誤類型',
|
|
errorMessage: '錯誤訊息',
|
|
occurredAt: '發生時間',
|
|
noErrors: '未找到錯誤',
|
|
stackTrace: '堆疊追蹤',
|
|
title: '錯誤',
|
|
},
|
|
messageDetails: {
|
|
noData: '此查詢沒有LLM調用或錯誤記錄',
|
|
},
|
|
queryVariables: {
|
|
title: '查詢變數',
|
|
},
|
|
viewMonitoring: '查看日誌監控',
|
|
refreshData: '重新整理資料',
|
|
exportData: '匯出資料',
|
|
},
|
|
};
|
|
|
|
export default zhHant;
|