You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

workflow.ts 38KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051
  1. const translation = {
  2. common: {
  3. undo: '撤销',
  4. redo: '重做',
  5. editing: '编辑中',
  6. autoSaved: '自动保存',
  7. unpublished: '未发布',
  8. published: '已发布',
  9. publish: '发布',
  10. update: '更新',
  11. publishUpdate: '发布更新',
  12. run: '运行',
  13. running: '运行中',
  14. inRunMode: '在运行模式中',
  15. inPreview: '预览中',
  16. inPreviewMode: '预览中',
  17. preview: '预览',
  18. viewRunHistory: '查看运行历史',
  19. runHistory: '运行历史',
  20. goBackToEdit: '返回编辑模式',
  21. conversationLog: '对话记录',
  22. features: '功能',
  23. featuresDescription: '增强 web app 用户体验',
  24. ImageUploadLegacyTip: '现在可以在 start 表单中创建文件类型变量。未来我们将不继续支持图片上传功能。',
  25. fileUploadTip: '图片上传功能已扩展为文件上传。',
  26. featuresDocLink: '了解更多',
  27. debugAndPreview: '预览',
  28. restart: '重新开始',
  29. currentDraft: '当前草稿',
  30. currentDraftUnpublished: '当前草稿未发布',
  31. latestPublished: '最新发布',
  32. publishedAt: '发布于',
  33. restore: '恢复',
  34. versionHistory: '版本历史',
  35. exitVersions: '退出版本历史',
  36. runApp: '运行',
  37. batchRunApp: '批量运行',
  38. accessAPIReference: '访问 API',
  39. embedIntoSite: '嵌入网站',
  40. addTitle: '添加标题...',
  41. addDescription: '添加描述...',
  42. noVar: '没有变量',
  43. variableNamePlaceholder: '变量名',
  44. searchVar: '搜索变量',
  45. setVarValuePlaceholder: '设置变量值',
  46. needConnectTip: '此节点尚未连接到其他节点',
  47. maxTreeDepth: '每个分支最大限制 {{depth}} 个节点',
  48. needAdd: '必须添加{{node}}节点',
  49. needEndNode: '必须添加结束节点',
  50. needAnswerNode: '必须添加直接回复节点',
  51. workflowProcess: '工作流',
  52. notRunning: '尚未运行',
  53. previewPlaceholder: '在下面的框中输入内容开始调试聊天机器人',
  54. effectVarConfirm: {
  55. title: '移除变量',
  56. content: '该变量在其他节点中使用。您是否仍要删除它?',
  57. },
  58. insertVarTip: '按 \'/\' 键快速插入',
  59. processData: '数据处理',
  60. input: '输入',
  61. output: '输出',
  62. jinjaEditorPlaceholder: '输入“/”或“{”插入变量',
  63. viewOnly: '只读',
  64. showRunHistory: '显示运行历史',
  65. enableJinja: '开启支持 Jinja 模板',
  66. learnMore: '了解更多',
  67. copy: '拷贝',
  68. duplicate: '复制',
  69. addBlock: '添加节点',
  70. pasteHere: '粘贴到这里',
  71. pointerMode: '指针模式',
  72. handMode: '手模式',
  73. exportImage: '导出图片',
  74. exportPNG: '导出为 PNG',
  75. exportJPEG: '导出为 JPEG',
  76. exportSVG: '导出为 SVG',
  77. currentView: '当前视图',
  78. currentWorkflow: '整个工作流',
  79. model: '模型',
  80. workflowAsTool: '发布为工具',
  81. configureRequired: '需要进行配置',
  82. configure: '配置',
  83. manageInTools: '访问工具页',
  84. workflowAsToolTip: '工作流更新后需要重新配置工具参数',
  85. viewDetailInTracingPanel: '查看详细信息',
  86. syncingData: '同步数据中,只需几秒钟。',
  87. importDSL: '导入 DSL',
  88. importDSLTip: '当前草稿将被覆盖。在导入之前请导出工作流作为备份。',
  89. backupCurrentDraft: '备份当前草稿',
  90. chooseDSL: '选择 DSL(yml) 文件',
  91. overwriteAndImport: '覆盖并导入',
  92. importFailure: '导入失败',
  93. importWarning: '注意',
  94. importWarningDetails: 'DSL 版本差异可能影响部分功能表现',
  95. importSuccess: '导入成功',
  96. parallelTip: {
  97. click: {
  98. title: '点击',
  99. desc: '添加节点',
  100. },
  101. drag: {
  102. title: '拖拽',
  103. desc: '连接节点',
  104. },
  105. limit: '并行分支限制为 {{num}} 个',
  106. depthLimit: '并行嵌套层数限制 {{num}} 层',
  107. },
  108. disconnect: '断开连接',
  109. jumpToNode: '跳转到节点',
  110. addParallelNode: '添加并行节点',
  111. parallel: '并行',
  112. branch: '分支',
  113. onFailure: '异常时',
  114. addFailureBranch: '添加异常分支',
  115. openInExplore: '在“探索”中打开',
  116. loadMore: '加载更多',
  117. noHistory: '没有历史版本',
  118. tagBound: '使用此标签的应用数量',
  119. },
  120. env: {
  121. envPanelTitle: '环境变量',
  122. envDescription: '环境变量是一种存储敏感信息的方法,如 API 密钥、数据库密码等。它们被存储在工作流程中,而不是代码中,以便在不同环境中共享。',
  123. envPanelButton: '添加环境变量',
  124. modal: {
  125. title: '添加环境变量',
  126. editTitle: '编辑环境变量',
  127. type: '类型',
  128. name: '名称',
  129. namePlaceholder: '变量名',
  130. value: '值',
  131. valuePlaceholder: '变量值',
  132. secretTip: '用于定义敏感信息或数据,导出 DSL 时设置了防泄露机制。',
  133. description: '描述',
  134. descriptionPlaceholder: '变量的描述',
  135. },
  136. export: {
  137. title: '导出 Secret 类型环境变量?',
  138. checkbox: '导出 secret 值',
  139. ignore: '导出 DSL',
  140. export: '导出包含 Secret 值的 DSL',
  141. },
  142. },
  143. sidebar: {
  144. exportWarning: '导出当前已保存版本',
  145. exportWarningDesc: '这将导出您工作流的当前已保存版本。如果您在编辑器中有未保存的更改,请先使用工作流画布中的导出选项保存它们。',
  146. },
  147. chatVariable: {
  148. panelTitle: '会话变量',
  149. panelDescription: '会话变量用于存储 LLM 需要的上下文信息,如用户偏好、对话历史等。它是可读写的。',
  150. docLink: '查看文档了解更多。',
  151. button: '添加变量',
  152. modal: {
  153. title: '添加会话变量',
  154. editTitle: '编辑会话变量',
  155. name: '名称',
  156. namePlaceholder: '变量名',
  157. type: '类型',
  158. value: '默认值',
  159. valuePlaceholder: '默认值,可以为空',
  160. description: '描述',
  161. descriptionPlaceholder: '变量的描述',
  162. editInJSON: '在 JSON 中编辑',
  163. oneByOne: '逐个添加',
  164. editInForm: '在表单中编辑',
  165. arrayValue: '值',
  166. addArrayValue: '添加值',
  167. objectKey: '属性',
  168. objectType: '类型',
  169. objectValue: '默认值',
  170. },
  171. storedContent: '存储内容',
  172. updatedAt: '更新时间 ',
  173. },
  174. changeHistory: {
  175. title: '变更历史',
  176. placeholder: '尚未更改任何内容',
  177. clearHistory: '清除历史记录',
  178. hint: '提示',
  179. hintText: '您的编辑操作将被跟踪并存储在您的设备上,直到您离开编辑器。此历史记录将在您离开编辑器时被清除。',
  180. stepBackward_one: '{{count}} 步后退',
  181. stepBackward_other: '{{count}} 步后退',
  182. stepForward_one: '{{count}} 步前进',
  183. stepForward_other: '{{count}} 步前进',
  184. sessionStart: '会话开始',
  185. currentState: '当前状态',
  186. nodeTitleChange: '块标题已更改',
  187. nodeDescriptionChange: '块描述已更改',
  188. nodeDragStop: '块已移动',
  189. nodeChange: '块已更改',
  190. nodeConnect: '块已连接',
  191. nodePaste: '块已粘贴',
  192. nodeDelete: '块已删除',
  193. nodeAdd: '块已添加',
  194. nodeResize: '块已调整大小',
  195. noteAdd: '注释已添加',
  196. noteChange: '注释已更改',
  197. noteDelete: '注释已删除',
  198. edgeDelete: '块已断开连接',
  199. },
  200. errorMsg: {
  201. fieldRequired: '{{field}} 不能为空',
  202. rerankModelRequired: '未配置 Rerank 模型',
  203. authRequired: '请先授权',
  204. invalidJson: '{{field}} 是非法的 JSON',
  205. fields: {
  206. variable: '变量名',
  207. variableValue: '变量值',
  208. code: '代码',
  209. model: '模型',
  210. rerankModel: 'Rerank 模型',
  211. visionVariable: '视觉变量',
  212. },
  213. invalidVariable: '无效的变量',
  214. noValidTool: '{{field}} 无可用工具',
  215. toolParameterRequired: '{{field}}: 参数 [{{param}}] 不能为空',
  216. },
  217. singleRun: {
  218. testRun: '测试运行',
  219. startRun: '开始运行',
  220. preparingDataSource: '准备数据源',
  221. reRun: '重新运行',
  222. running: '运行中',
  223. testRunIteration: '测试运行迭代',
  224. back: '返回',
  225. iteration: '迭代',
  226. loop: '循环',
  227. },
  228. tabs: {
  229. 'searchBlock': '搜索节点',
  230. 'blocks': '节点',
  231. 'searchTool': '搜索工具',
  232. 'tools': '工具',
  233. 'allTool': '全部',
  234. 'plugin': '插件',
  235. 'customTool': '自定义',
  236. 'workflowTool': '工作流',
  237. 'question-understand': '问题理解',
  238. 'logic': '逻辑',
  239. 'transform': '转换',
  240. 'utilities': '工具',
  241. 'noResult': '未找到匹配项',
  242. 'agent': 'Agent 策略',
  243. 'allAdded': '已添加全部',
  244. 'addAll': '添加全部',
  245. 'sources': '数据源',
  246. 'searchDataSource': '搜索数据源',
  247. },
  248. blocks: {
  249. 'start': '开始',
  250. 'end': '结束',
  251. 'answer': '直接回复',
  252. 'llm': 'LLM',
  253. 'knowledge-retrieval': '知识检索',
  254. 'question-classifier': '问题分类器',
  255. 'if-else': '条件分支',
  256. 'code': '代码执行',
  257. 'template-transform': '模板转换',
  258. 'http-request': 'HTTP 请求',
  259. 'variable-assigner': '变量赋值器',
  260. 'variable-aggregator': '变量聚合器',
  261. 'assigner': '变量赋值',
  262. 'iteration-start': '迭代开始',
  263. 'iteration': '迭代',
  264. 'parameter-extractor': '参数提取器',
  265. 'document-extractor': '文档提取器',
  266. 'list-operator': '列表操作',
  267. 'agent': 'Agent',
  268. 'loop-start': '循环开始',
  269. 'loop': '循环',
  270. 'loop-end': '退出循环',
  271. 'knowledge-index': '知识库',
  272. 'datasource': '数据源',
  273. },
  274. blocksAbout: {
  275. 'start': '定义一个 workflow 流程启动的初始参数',
  276. 'end': '定义一个 workflow 流程的结束和结果类型',
  277. 'answer': '定义一个聊天对话的回复内容',
  278. 'llm': '调用大语言模型回答问题或者对自然语言进行处理',
  279. 'knowledge-retrieval': '允许你从知识库中查询与用户问题相关的文本内容',
  280. 'question-classifier': '定义用户问题的分类条件,LLM 能够根据分类描述定义对话的进展方式',
  281. 'if-else': '允许你根据 if/else 条件将 workflow 拆分成两个分支',
  282. 'code': '执行一段 Python 或 NodeJS 代码实现自定义逻辑',
  283. 'template-transform': '使用 Jinja 模板语法将数据转换为字符串',
  284. 'http-request': '允许通过 HTTP 协议发送服务器请求',
  285. 'variable-assigner': '将多路分支的变量聚合为一个变量,以实现下游节点统一配置。',
  286. 'assigner': '变量赋值节点用于向可写入变量(例如会话变量)进行变量赋值。',
  287. 'variable-aggregator': '将多路分支的变量聚合为一个变量,以实现下游节点统一配置。',
  288. 'iteration': '对列表对象执行多次步骤直至输出所有结果。',
  289. 'loop': '循环执行一段逻辑直到满足结束条件或者到达循环次数上限。',
  290. 'loop-end': '相当于“break”此节点没有配置项,当循环体内运行到此节点后循环终止。',
  291. 'parameter-extractor': '利用 LLM 从自然语言内推理提取出结构化参数,用于后置的工具调用或 HTTP 请求。',
  292. 'document-extractor': '用于将用户上传的文档解析为 LLM 便于理解的文本内容。',
  293. 'list-operator': '用于过滤或排序数组内容。',
  294. 'agent': '调用大型语言模型回答问题或处理自然语言',
  295. 'knowledge-index': '知识库节点',
  296. 'datasource': '数据源节点',
  297. },
  298. operator: {
  299. zoomIn: '放大',
  300. zoomOut: '缩小',
  301. zoomTo50: '缩放到 50%',
  302. zoomTo100: '放大到 100%',
  303. zoomToFit: '自适应视图',
  304. alignNodes: '对齐节点',
  305. alignLeft: '左对齐',
  306. alignCenter: '居中对齐',
  307. alignRight: '右对齐',
  308. alignTop: '顶部对齐',
  309. alignMiddle: '中部对齐',
  310. alignBottom: '底部对齐',
  311. vertical: '垂直方向',
  312. horizontal: '水平方向',
  313. distributeHorizontal: '水平等间距',
  314. distributeVertical: '垂直等间距',
  315. selectionAlignment: '选择对齐',
  316. },
  317. variableReference: {
  318. noAvailableVars: '没有可用变量',
  319. noVarsForOperation: '当前选择的操作没有可用的变量进行赋值。',
  320. noAssignedVars: '没有可用的赋值变量',
  321. assignedVarsDescription: '赋值变量必须是可写入的变量,例如:',
  322. conversationVars: '会话变量',
  323. },
  324. panel: {
  325. userInputField: '用户输入字段',
  326. changeBlock: '更改节点',
  327. helpLink: '帮助链接',
  328. about: '关于',
  329. createdBy: '作者',
  330. nextStep: '下一步',
  331. addNextStep: '添加此工作流程中的下一个节点',
  332. selectNextStep: '选择下一个节点',
  333. runThisStep: '运行此步骤',
  334. checklist: '检查清单',
  335. checklistTip: '发布前确保所有问题均已解决',
  336. checklistResolved: '所有问题均已解决',
  337. organizeBlocks: '整理节点',
  338. change: '更改',
  339. optional: '(选填)',
  340. moveToThisNode: '定位至此节点',
  341. maximize: '最大化画布',
  342. minimize: '退出最大化',
  343. },
  344. nodes: {
  345. common: {
  346. outputVars: '输出变量',
  347. insertVarTip: '插入变量',
  348. memory: {
  349. memory: '记忆',
  350. memoryTip: '聊天记忆设置',
  351. windowSize: '记忆窗口',
  352. conversationRoleName: '对话角色名',
  353. user: '用户前缀',
  354. assistant: '助手前缀',
  355. },
  356. memories: {
  357. title: '记忆',
  358. tip: '聊天记忆',
  359. builtIn: '内置',
  360. },
  361. errorHandle: {
  362. title: '异常处理',
  363. tip: '配置异常处理策略,当节点发生异常时触发。',
  364. none: {
  365. title: '无',
  366. desc: '当发生异常且未处理时,节点将停止运行',
  367. },
  368. defaultValue: {
  369. title: '默认值',
  370. desc: '当发生异常时,指定默认输出内容。',
  371. tip: '当发生异常时,将返回以下值。',
  372. inLog: '节点异常,根据默认值输出。',
  373. output: '输出默认值',
  374. },
  375. failBranch: {
  376. title: '异常分支',
  377. desc: '当发生异常时,将执行异常分支',
  378. customize: '在画布自定义失败分支逻辑。',
  379. customizeTip: '当节点发生异常时,将自动执行失败分支。失败分支允许您灵活地提供错误消息、报告、修复或跳过操作。',
  380. inLog: '节点异常,将自动执行失败分支。节点输出将返回错误类型和错误信息,并传递给下游。',
  381. },
  382. partialSucceeded: {
  383. tip: '流程中有 {{num}} 个节点运行异常,请前往追踪查看日志。',
  384. },
  385. },
  386. retry: {
  387. retry: '重试',
  388. retryOnFailure: '失败时重试',
  389. maxRetries: '最大重试次数',
  390. retryInterval: '重试间隔',
  391. retryTimes: '失败时重试 {{times}} 次',
  392. retrying: '重试中...',
  393. retrySuccessful: '重试成功',
  394. retryFailed: '重试失败',
  395. retryFailedTimes: '{{times}} 次重试失败',
  396. times: '次',
  397. ms: '毫秒',
  398. retries: '{{num}} 重试次数',
  399. },
  400. typeSwitch: {
  401. input: '输入值',
  402. variable: '使用变量',
  403. },
  404. inputVars: '输入变量',
  405. },
  406. start: {
  407. required: '必填',
  408. inputField: '输入字段',
  409. builtInVar: '内置变量',
  410. outputVars: {
  411. query: '用户输入',
  412. memories: {
  413. des: '会话历史',
  414. type: '消息类型',
  415. content: '消息内容',
  416. },
  417. files: '文件列表',
  418. },
  419. noVarTip: '设置的输入可在工作流程中使用',
  420. },
  421. end: {
  422. outputs: '输出',
  423. output: {
  424. type: '输出类型',
  425. variable: '输出变量',
  426. },
  427. type: {
  428. 'none': '无',
  429. 'plain-text': '纯文本',
  430. 'structured': '结构化',
  431. },
  432. },
  433. answer: {
  434. answer: '回复',
  435. outputVars: '输出变量',
  436. },
  437. llm: {
  438. model: '模型',
  439. variables: '变量',
  440. context: '上下文',
  441. contextTooltip: '您可以导入知识库作为上下文',
  442. notSetContextInPromptTip: '要启用上下文功能,请在提示中填写上下文变量。',
  443. prompt: '提示词',
  444. addMessage: '添加消息',
  445. roleDescription: {
  446. system: '为对话提供高层指导',
  447. user: '向模型提供指令、查询或任何基于文本的输入',
  448. assistant: '基于用户消息的模型回复',
  449. },
  450. vision: '视觉',
  451. files: '文件',
  452. resolution: {
  453. name: '分辨率',
  454. high: '高',
  455. low: '低',
  456. },
  457. outputVars: {
  458. output: '生成内容',
  459. usage: '模型用量信息',
  460. },
  461. singleRun: {
  462. variable: '变量',
  463. },
  464. sysQueryInUser: 'user message 中必须包含 sys.query',
  465. jsonSchema: {
  466. title: '结构化输出 Schema',
  467. instruction: '指令',
  468. promptTooltip: '将文本描述转换为标准化的 JSON Schema 结构',
  469. promptPlaceholder: '描述你的 JSON Schema...',
  470. generate: '生成',
  471. import: '从 JSON 导入',
  472. generateJsonSchema: '生成 JSON Schema',
  473. generationTip: '可以使用自然语言快速创建 JSON Schema。',
  474. generating: '正在为您生成 JSON Schema...',
  475. generatedResult: '生成结果',
  476. resultTip: '以下是生成的结果。如果你对这个结果不满意,可以返回并修改你的提示词。',
  477. back: '返回',
  478. regenerate: '重新生成',
  479. apply: '应用',
  480. doc: '了解有关结构化输出的更多信息',
  481. resetDefaults: '清空配置',
  482. required: '必填',
  483. addField: '添加字段',
  484. addChildField: '添加子字段',
  485. showAdvancedOptions: '显示高级选项',
  486. stringValidations: '字符串验证',
  487. fieldNamePlaceholder: '字段名',
  488. descriptionPlaceholder: '添加描述',
  489. warningTips: {
  490. saveSchema: '请先完成当前字段的编辑',
  491. },
  492. },
  493. reasoningFormat: {
  494. tooltip: '从think标签中提取内容,并将其存储在reasoning_content字段中。',
  495. title: '启用推理标签分离',
  496. tagged: '保持思考标签',
  497. separated: '分开思考标签',
  498. },
  499. },
  500. knowledgeRetrieval: {
  501. queryVariable: '查询变量',
  502. knowledge: '知识库',
  503. outputVars: {
  504. output: '召回的分段',
  505. content: '分段内容',
  506. title: '分段标题',
  507. icon: '分段图标',
  508. url: '分段链接',
  509. metadata: '其他元数据',
  510. },
  511. metadata: {
  512. title: '元数据过滤',
  513. tip: '元数据过滤是使用元数据属性(例如标签、类别或访问权限)来细化和控制系统内相关信息的检索过程。',
  514. options: {
  515. disabled: {
  516. title: '禁用',
  517. subTitle: '禁用元数据过滤',
  518. },
  519. automatic: {
  520. title: '自动',
  521. subTitle: '根据用户查询自动生成元数据过滤条件',
  522. desc: '根据 Query Variable 自动生成元数据过滤条件',
  523. },
  524. manual: {
  525. title: '手动',
  526. subTitle: '手动添加元数据过滤条件',
  527. },
  528. },
  529. panel: {
  530. title: '元数据过滤条件',
  531. conditions: '条件',
  532. add: '添加条件',
  533. search: '搜索元数据',
  534. placeholder: '输入值',
  535. datePlaceholder: '选择日期...',
  536. select: '选择变量...',
  537. },
  538. },
  539. },
  540. http: {
  541. inputVars: '输入变量',
  542. api: 'API',
  543. apiPlaceholder: '输入 URL,输入变量时请键入‘/’',
  544. extractListPlaceholder: '输入提取列表编号,输入变量时请键入‘/’',
  545. notStartWithHttp: 'API 应该以 http:// 或 https:// 开头',
  546. key: '键',
  547. type: '类型',
  548. value: '值',
  549. bulkEdit: '批量编辑',
  550. keyValueEdit: '键值编辑',
  551. headers: 'Headers',
  552. params: 'Params',
  553. body: 'Body',
  554. binaryFileVariable: 'Binary 文件变量',
  555. outputVars: {
  556. body: '响应内容',
  557. statusCode: '响应状态码',
  558. headers: '响应头列表 JSON',
  559. files: '文件列表',
  560. },
  561. authorization: {
  562. 'authorization': '鉴权',
  563. 'authorizationType': '鉴权类型',
  564. 'no-auth': '无',
  565. 'api-key': 'API-Key',
  566. 'auth-type': 'API 鉴权类型',
  567. 'basic': '基础',
  568. 'bearer': 'Bearer',
  569. 'custom': '自定义',
  570. 'api-key-title': 'API Key',
  571. 'header': 'Header',
  572. },
  573. insertVarPlaceholder: '键入 \'/\' 键快速插入变量',
  574. timeout: {
  575. title: '超时设置',
  576. connectLabel: '连接超时',
  577. connectPlaceholder: '输入连接超时(以秒为单位)',
  578. readLabel: '读取超时',
  579. readPlaceholder: '输入读取超时(以秒为单位)',
  580. writeLabel: '写入超时',
  581. writePlaceholder: '输入写入超时(以秒为单位)',
  582. },
  583. curl: {
  584. title: '导入 cURL',
  585. placeholder: '粘贴 cURL 字符串',
  586. },
  587. verifySSL: {
  588. title: '验证 SSL 证书',
  589. warningTooltip: '不建议在生产环境中禁用 SSL 验证。这仅应在开发或测试中使用,因为它会使连接容易受到诸如中间人攻击等安全威胁。',
  590. },
  591. },
  592. code: {
  593. inputVars: '输入变量',
  594. outputVars: '输出变量',
  595. advancedDependencies: '高级依赖',
  596. advancedDependenciesTip: '在这里添加一些预加载需要消耗较多时间或非默认内置的依赖包',
  597. searchDependencies: '搜索依赖',
  598. syncFunctionSignature: '同步函数签名至代码',
  599. },
  600. templateTransform: {
  601. inputVars: '输入变量',
  602. code: '代码',
  603. codeSupportTip: '只支持 Jinja2',
  604. outputVars: {
  605. output: '转换后内容',
  606. },
  607. },
  608. ifElse: {
  609. if: 'If',
  610. else: 'Else',
  611. elseDescription: '用于定义当 if 条件不满足时应执行的逻辑。',
  612. and: 'and',
  613. or: 'or',
  614. operator: '操作符',
  615. notSetVariable: '请先设置变量',
  616. comparisonOperator: {
  617. 'contains': '包含',
  618. 'not contains': '不包含',
  619. 'start with': '开始是',
  620. 'end with': '结束是',
  621. 'is': '是',
  622. 'is not': '不是',
  623. 'empty': '为空',
  624. 'not empty': '不为空',
  625. 'null': '空',
  626. 'not null': '不为空',
  627. 'in': '在',
  628. 'not in': '不在',
  629. 'all of': '全部是',
  630. 'exists': '存在',
  631. 'not exists': '不存在',
  632. 'before': '早于',
  633. 'after': '晚于',
  634. },
  635. optionName: {
  636. image: '图片',
  637. doc: '文档',
  638. audio: '音频',
  639. video: '视频',
  640. localUpload: '本地上传',
  641. url: 'URL',
  642. },
  643. enterValue: '输入值',
  644. addCondition: '添加条件',
  645. conditionNotSetup: '条件未设置',
  646. selectVariable: '选择变量',
  647. addSubVariable: '添加子变量',
  648. select: '选择',
  649. },
  650. variableAssigner: {
  651. title: '变量赋值',
  652. outputType: '输出类型',
  653. varNotSet: '未设置变量',
  654. noVarTip: '添加需要赋值的变量',
  655. type: {
  656. string: 'String',
  657. number: 'Number',
  658. object: 'Object',
  659. array: 'Array',
  660. },
  661. aggregationGroup: '聚合分组',
  662. aggregationGroupTip: '开启该功能后,变量聚合器内可以同时聚合多组变量',
  663. addGroup: '添加分组',
  664. outputVars: {
  665. varDescribe: '{{groupName}}的输出变量',
  666. },
  667. setAssignVariable: '设置赋值变量',
  668. },
  669. assigner: {
  670. 'assignedVariable': '赋值的变量',
  671. 'varNotSet': '未设置变量',
  672. 'noVarTip': '点击 "+" 按钮添加变量',
  673. 'writeMode': '写入模式',
  674. 'writeModeTip': '使用追加模式时,赋值的变量必须是数组类型。',
  675. 'over-write': '覆盖',
  676. 'append': '追加',
  677. 'plus': '加',
  678. 'clear': '清空',
  679. 'setVariable': '设置变量',
  680. 'selectAssignedVariable': '选择要赋值的变量...',
  681. 'setParameter': '设置参数...',
  682. 'operations': {
  683. 'title': '操作',
  684. 'over-write': '覆盖',
  685. 'overwrite': '覆盖',
  686. 'set': '设置',
  687. 'clear': '清空',
  688. 'extend': '扩展',
  689. 'append': '追加',
  690. 'remove-first': '移除首项',
  691. 'remove-last': '移除末项',
  692. '+=': '+=',
  693. '-=': '-=',
  694. '*=': '*=',
  695. '/=': '/=',
  696. },
  697. 'variable': '变量',
  698. 'variables': '变量',
  699. 'noAssignedVars': '没有可用的赋值变量',
  700. 'assignedVarsDescription': '赋值变量必须是可写入的变量,例如会话变量。',
  701. },
  702. tool: {
  703. authorize: '授权',
  704. inputVars: '输入变量',
  705. settings: '设置',
  706. insertPlaceholder1: '键入',
  707. insertPlaceholder2: '插入变量',
  708. outputVars: {
  709. text: '工具生成的内容',
  710. files: {
  711. title: '工具生成的文件',
  712. type: '支持类型。现在只支持图片',
  713. transfer_method: '传输方式。值为 remote_url 或 local_file',
  714. url: '图片链接',
  715. upload_file_id: '上传文件 ID',
  716. },
  717. json: '工具生成的 json',
  718. },
  719. },
  720. questionClassifiers: {
  721. model: '模型',
  722. inputVars: '输入变量',
  723. outputVars: {
  724. className: '分类名称',
  725. usage: '模型用量信息',
  726. },
  727. class: '分类',
  728. classNamePlaceholder: '输入你的分类名称',
  729. advancedSetting: '高级设置',
  730. topicName: '主题内容',
  731. topicPlaceholder: '在这里输入你的主题内容',
  732. addClass: '添加分类',
  733. instruction: '指令',
  734. instructionTip: '你可以输入额外的附加指令,帮助问题分类器更好的理解如何分类',
  735. instructionPlaceholder: '在这里输入你的指令',
  736. },
  737. parameterExtractor: {
  738. inputVar: '输入变量',
  739. outputVars: {
  740. isSuccess: '是否成功。成功时值为 1,失败时值为 0。',
  741. errorReason: '错误原因',
  742. usage: '模型用量信息',
  743. },
  744. extractParameters: '提取参数',
  745. importFromTool: '从工具导入',
  746. addExtractParameter: '添加提取参数',
  747. addExtractParameterContent: {
  748. name: '名称',
  749. namePlaceholder: '提取参数名称',
  750. type: '类型',
  751. typePlaceholder: '提取参数类型',
  752. description: '描述',
  753. descriptionPlaceholder: '提取参数描述',
  754. required: '必填',
  755. requiredContent: '必填仅作为模型推理的参考,不用于参数输出的强制验证。',
  756. },
  757. extractParametersNotSet: '提取参数未设置',
  758. instruction: '指令',
  759. instructionTip: '你可以输入额外的附加指令,帮助参数提取器理解如何提取参数',
  760. advancedSetting: '高级设置',
  761. reasoningMode: '推理模式',
  762. reasoningModeTip: '你可以根据模型对于 Function calling 或 Prompt 的指令响应能力选择合适的推理模式',
  763. },
  764. iteration: {
  765. deleteTitle: '删除迭代节点?',
  766. deleteDesc: '删除迭代节点将删除所有子节点',
  767. input: '输入',
  768. output: '输出变量',
  769. iteration_one: '{{count}}个迭代',
  770. iteration_other: '{{count}}个迭代',
  771. currentIteration: '当前迭代',
  772. comma: ',',
  773. error_one: '{{count}}个失败',
  774. error_other: '{{count}}个失败',
  775. parallelMode: '并行模式',
  776. parallelModeUpper: '并行模式',
  777. parallelModeEnableTitle: '并行模式启用',
  778. parallelModeEnableDesc: '启用并行模式时迭代内的任务支持并行执行。你可以在右侧的属性面板中进行配置。',
  779. parallelPanelDesc: '在并行模式下,迭代中的任务支持并行执行。',
  780. MaxParallelismTitle: '最大并行度',
  781. MaxParallelismDesc: '最大并行度用于控制单次迭代中同时执行的任务数量。',
  782. errorResponseMethod: '错误响应方法',
  783. ErrorMethod: {
  784. operationTerminated: '错误时终止',
  785. continueOnError: '忽略错误并继续',
  786. removeAbnormalOutput: '移除错误输出',
  787. },
  788. answerNodeWarningDesc: '并行模式警告:在迭代中,回答节点、会话变量赋值和工具持久读/写操作可能会导致异常。',
  789. },
  790. loop: {
  791. deleteTitle: '删除循环节点?',
  792. deleteDesc: '删除循环节点将删除所有子节点',
  793. input: '输入',
  794. output: '输出变量',
  795. loop_one: '{{count}} 个循环',
  796. loop_other: '{{count}} 个循环',
  797. currentLoop: '当前循环',
  798. comma: ',',
  799. error_one: '{{count}}个失败',
  800. error_other: '{{count}}个失败',
  801. breakCondition: '循环终止条件',
  802. breakConditionTip: '支持引用终止条件循环内的变量和会话变量。',
  803. loopMaxCount: '最大循环次数',
  804. loopMaxCountError: '请输入正确的 最大循环次数,范围为 1 到 {{maxCount}}',
  805. errorResponseMethod: '错误响应方法',
  806. ErrorMethod: {
  807. operationTerminated: '错误时终止',
  808. continueOnError: '忽略错误并继续',
  809. removeAbnormalOutput: '移除错误输出',
  810. },
  811. loopVariables: '循环变量',
  812. initialLoopVariables: '初始循环变量',
  813. finalLoopVariables: '最终循环变量',
  814. setLoopVariables: '在循环范围内设置变量',
  815. variableName: '变量名',
  816. inputMode: '输入模式',
  817. exitConditionTip: '循环节点至少需要一个退出条件',
  818. loopNode: '循环节点',
  819. currentLoopCount: '当前循环次数:{{count}}',
  820. totalLoopCount: '总循环次数:{{count}}',
  821. },
  822. note: {
  823. addNote: '添加注释',
  824. editor: {
  825. placeholder: '输入注释...',
  826. small: '小',
  827. medium: '中',
  828. large: '大',
  829. bold: '加粗',
  830. italic: '斜体',
  831. strikethrough: '删除线',
  832. link: '链接',
  833. openLink: '打开',
  834. unlink: '取消链接',
  835. enterUrl: '输入链接...',
  836. invalidUrl: '无效的链接',
  837. bulletList: '列表',
  838. showAuthor: '显示作者',
  839. },
  840. },
  841. docExtractor: {
  842. inputVar: '输入变量',
  843. outputVars: {
  844. text: '提取的文本',
  845. },
  846. supportFileTypes: '支持的文件类型:{{types}}。',
  847. learnMore: '了解更多',
  848. },
  849. listFilter: {
  850. inputVar: '输入变量',
  851. filterCondition: '过滤条件',
  852. filterConditionKey: '过滤条件的 Key',
  853. filterConditionComparisonOperator: '过滤条件比较操作符',
  854. filterConditionComparisonValue: '过滤条件比较值',
  855. selectVariableKeyPlaceholder: '选择子变量的 Key',
  856. extractsCondition: '取第 N 项',
  857. limit: '取前 N 项',
  858. orderBy: '排序',
  859. asc: '升序',
  860. desc: '降序',
  861. outputVars: {
  862. result: '过滤结果',
  863. first_record: '第一条记录',
  864. last_record: '最后一条记录',
  865. },
  866. },
  867. agent: {
  868. strategy: {
  869. label: 'Agent 策略',
  870. tooltip: '不同的 Agent 策略决定了系统如何规划和执行多步工具调用',
  871. shortLabel: '策略',
  872. configureTip: '请配置 Agent 策略。',
  873. configureTipDesc: '配置完成后,此节点将自动加载剩余配置。策略将影响多步工具推理的机制。',
  874. selectTip: '选择 Agent 策略',
  875. searchPlaceholder: '搜索 Agent 策略',
  876. },
  877. learnMore: '了解更多',
  878. pluginNotInstalled: '插件未安装',
  879. pluginNotInstalledDesc: '此插件是从 GitHub 安装的。请转到插件重新安装',
  880. linkToPlugin: '转到插件',
  881. pluginInstaller: {
  882. install: '安装',
  883. installing: '安装中',
  884. },
  885. modelNotInMarketplace: {
  886. title: '模型未安装',
  887. desc: '此模型安装自本地或 GitHub 仓库。请安装后使用。',
  888. manageInPlugins: '在插件中管理',
  889. },
  890. modelNotSupport: {
  891. title: '不支持的模型',
  892. desc: '已安装的插件版本不提供此模型。',
  893. descForVersionSwitch: '已安装的插件版本不提供此模型。点击切换版本。',
  894. },
  895. model: '模型',
  896. toolbox: '工具箱',
  897. strategyNotSet: '代理策略未设置',
  898. configureModel: '配置模型',
  899. notAuthorized: '未授权',
  900. tools: '工具',
  901. maxIterations: '最大迭代次数',
  902. modelNotInstallTooltip: '此模型未安装',
  903. modelNotSelected: '未选择模型',
  904. toolNotInstallTooltip: '{{tool}} 未安装',
  905. toolNotAuthorizedTooltip: '{{tool}} 未授权',
  906. strategyNotInstallTooltip: '{{strategy}} 未安装',
  907. unsupportedStrategy: '不支持的策略',
  908. strategyNotFoundDesc: '安装的插件版本不提供此策略。',
  909. pluginNotFoundDesc: '此插件安装自 GitHub。请转到插件重新安装。',
  910. strategyNotFoundDescAndSwitchVersion: '安装的插件版本不提供此策略。点击切换版本。',
  911. modelSelectorTooltips: {
  912. deprecated: '此模型已弃用',
  913. },
  914. outputVars: {
  915. text: 'agent 生成的内容',
  916. usage: '模型用量信息',
  917. files: {
  918. title: 'agent 生成的文件',
  919. type: '支持类型。现在只支持图片',
  920. transfer_method: '传输方式。值为 remote_url 或 local_file',
  921. url: '图片链接',
  922. upload_file_id: '上传文件 ID',
  923. },
  924. json: 'agent 生成的 json',
  925. },
  926. checkList: {
  927. strategyNotSelected: '未选择策略',
  928. },
  929. installPlugin: {
  930. title: '安装插件',
  931. desc: '即将安装以下插件',
  932. changelog: '更新日志',
  933. install: '安装',
  934. cancel: '取消',
  935. },
  936. clickToViewParameterSchema: '点击查看参数 schema',
  937. parameterSchema: '参数 Schema',
  938. },
  939. dataSource: {
  940. supportedFileFormats: '支持的文件格式',
  941. supportedFileFormatsPlaceholder: '文件格式,例如:doc',
  942. add: '添加数据源',
  943. },
  944. knowledgeBase: {
  945. chunkStructure: '分段结构',
  946. chooseChunkStructure: '选择分段结构',
  947. chunkStructureTip: {
  948. title: '请选择分段结构',
  949. message: 'Dify 知识库支持三种分块结构:通用、父子和问答。每个知识库只能有一种结构。前一节点的输出必须与所选的分块结构相匹配。请注意,分块结构的选择会影响可用的索引方法。',
  950. learnMore: '了解更多',
  951. },
  952. changeChunkStructure: '更改分段结构',
  953. chunksInput: '分块',
  954. chunksInputTip: '知识库节点的输入变量为 Chunks。该变量类型是符合特定 JSON Schema 的对象,必须与所选块结构一致。',
  955. aboutRetrieval: '关于知识检索。',
  956. chunkIsRequired: '分段结构是必需的',
  957. indexMethodIsRequired: '索引方法是必需的',
  958. chunksVariableIsRequired: 'Chunks 变量是必需的',
  959. embeddingModelIsRequired: 'Embedding 模型是必需的',
  960. retrievalSettingIsRequired: '检索设置是必需的',
  961. rerankingModelIsRequired: 'Reranking 模型是必需的',
  962. },
  963. },
  964. tracing: {
  965. stopBy: '由{{user}}终止',
  966. },
  967. versionHistory: {
  968. title: '版本',
  969. currentDraft: '当前草稿',
  970. latest: '最新',
  971. filter: {
  972. all: '全部',
  973. onlyYours: '仅你的',
  974. onlyShowNamedVersions: '只显示已命名版本',
  975. reset: '重置',
  976. empty: '没有匹配的版本',
  977. },
  978. defaultName: '未命名',
  979. nameThisVersion: '命名',
  980. editVersionInfo: '编辑信息',
  981. copyId: '复制 ID',
  982. editField: {
  983. title: '标题',
  984. releaseNotes: '发布说明',
  985. titleLengthLimit: '标题不能超过{{limit}}个字符',
  986. releaseNotesLengthLimit: '发布说明不能超过{{limit}}个字符',
  987. },
  988. releaseNotesPlaceholder: '请描述变更',
  989. restorationTip: '版本回滚后,当前草稿将被覆盖。',
  990. deletionTip: '删除不可逆,请确认。',
  991. action: {
  992. restoreSuccess: '回滚成功',
  993. restoreFailure: '回滚失败',
  994. deleteSuccess: '版本已删除',
  995. deleteFailure: '删除失败',
  996. updateSuccess: '版本信息已更新',
  997. updateFailure: '更新失败',
  998. copyIdSuccess: 'ID 已复制到剪贴板',
  999. },
  1000. },
  1001. debug: {
  1002. settingsTab: '设置',
  1003. lastRunTab: '上次运行',
  1004. relationsTab: '关系',
  1005. copyLastRun: '复制上次运行值',
  1006. noLastRunFound: '未找到上次运行记录',
  1007. noMatchingInputsFound: '上次运行中未找到匹配的输入',
  1008. lastRunInputsCopied: '已复制{{count}}个输入值',
  1009. copyLastRunError: '复制上次运行输入失败',
  1010. noData: {
  1011. description: '上次运行的结果将显示在这里',
  1012. runThisNode: '运行此节点',
  1013. },
  1014. variableInspect: {
  1015. title: '变量检查',
  1016. emptyTip: '在画布上逐步浏览节点或逐步运行节点后,您可以在变量检查中查看节点变量的当前值',
  1017. emptyLink: '了解更多',
  1018. clearAll: '重置所有',
  1019. clearNode: '清除缓存',
  1020. resetConversationVar: '重置会话变量为默认值',
  1021. view: '查看记录',
  1022. edited: '已编辑',
  1023. reset: '还原至上一次运行',
  1024. trigger: {
  1025. normal: '变量检查',
  1026. running: '缓存中',
  1027. stop: '停止运行',
  1028. cached: '查看缓存',
  1029. clear: '清除',
  1030. },
  1031. envNode: '环境变量',
  1032. chatNode: '会话变量',
  1033. systemNode: '系统变量',
  1034. exportToolTip: '导出变量为文件',
  1035. largeData: '大数据 - 仅部分只读预览。请导出查看完整数据。',
  1036. largeDataNoExport: '大数据 - 仅部分预览',
  1037. export: '导出',
  1038. },
  1039. lastOutput: '上次输出',
  1040. relations: {
  1041. dependencies: '依赖',
  1042. dependents: '被依赖',
  1043. dependenciesDescription: '本节点依赖的其他节点',
  1044. dependentsDescription: '依赖于本节点的其他节点',
  1045. noDependencies: '无依赖',
  1046. noDependents: '无被依赖',
  1047. },
  1048. },
  1049. }
  1050. export default translation