feat: knowledge pipeline (#25360)
Signed-off-by: -LAN- <laipz8200@outlook.com> Co-authored-by: twwu <twwu@dify.ai> Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com> Co-authored-by: jyong <718720800@qq.com> Co-authored-by: Wu Tianwei <30284043+WTW0313@users.noreply.github.com> Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com> Co-authored-by: lyzno1 <yuanyouhuilyz@gmail.com> Co-authored-by: quicksand <quicksandzn@gmail.com> Co-authored-by: Jyong <76649700+JohnJyong@users.noreply.github.com> Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com> Co-authored-by: zxhlyh <jasonapring2015@outlook.com> Co-authored-by: Yongtao Huang <yongtaoh2022@gmail.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Joel <iamjoel007@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: nite-knite <nkCoding@gmail.com> Co-authored-by: Hanqing Zhao <sherry9277@gmail.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Harry <xh001x@hotmail.com>
This commit is contained in:
@@ -385,8 +385,20 @@ const translation = {
|
||||
'varName': '变量名称',
|
||||
'inputPlaceholder': '请输入',
|
||||
'labelName': '显示名称',
|
||||
'displayName': '显示名称',
|
||||
'required': '必填',
|
||||
'hide': '隐藏',
|
||||
'placeholder': '占位符',
|
||||
'placeholderPlaceholder': '输入字段为空时显示的文本',
|
||||
'defaultValue': '默认值',
|
||||
'defaultValuePlaceholder': '输入默认值以预先填充字段',
|
||||
'unit': '单位',
|
||||
'unitPlaceholder': '在数字后显示的单位,如 token',
|
||||
'tooltips': '提示',
|
||||
'tooltipsPlaceholder': '输入悬停在标签上时显示的提示文本',
|
||||
'showAllSettings': '显示所有设置',
|
||||
'startSelectedOption': '默认选中项',
|
||||
'noDefaultSelected': '不默认选中',
|
||||
'file': {
|
||||
supportFileTypes: '支持的文件类型',
|
||||
image: {
|
||||
@@ -408,6 +420,7 @@ const translation = {
|
||||
},
|
||||
},
|
||||
'uploadFileTypes': '上传文件类型',
|
||||
'uploadMethod': '上传方式',
|
||||
'localUpload': '本地上传',
|
||||
'both': '两者',
|
||||
'maxNumberOfUploads': '最大上传数',
|
||||
@@ -419,7 +432,7 @@ const translation = {
|
||||
atLeastOneOption: '至少需要一个选项',
|
||||
optionRepeat: '选项不能重复',
|
||||
},
|
||||
'defaultValue': '默认值',
|
||||
'startChecked': '默认勾选',
|
||||
'noDefaultValue': '无默认值',
|
||||
'selectDefaultValue': '选择默认值',
|
||||
},
|
||||
|
||||
@@ -77,6 +77,8 @@ const translation = {
|
||||
hideTemplates: '返回应用类型选择',
|
||||
Create: '创建',
|
||||
Cancel: '取消',
|
||||
Confirm: '确认',
|
||||
import: '导入',
|
||||
nameNotEmpty: '名称不能为空',
|
||||
appTemplateNotSelected: '请选择应用模版',
|
||||
appTypeRequired: '请选择应用类型',
|
||||
@@ -90,7 +92,6 @@ const translation = {
|
||||
appCreateDSLErrorPart4: '系统支持 DSL 版本:',
|
||||
appCreateFailed: '应用创建失败',
|
||||
dropDSLToCreateApp: '拖放 DSL 文件到此处创建应用',
|
||||
Confirm: '确认',
|
||||
},
|
||||
newAppFromTemplate: {
|
||||
byCategories: '分类',
|
||||
|
||||
@@ -16,7 +16,10 @@ const translation = {
|
||||
viewBilling: '管理账单及订阅',
|
||||
buyPermissionDeniedTip: '请联系企业管理员订阅',
|
||||
plansCommon: {
|
||||
title: '为您的 AI 之旅提供动力的定价套餐',
|
||||
title: {
|
||||
plans: '套餐',
|
||||
description: '选择最适合您团队需求的套餐。',
|
||||
},
|
||||
freeTrialTipPrefix: '注册即可',
|
||||
freeTrialTip: '免费试用 200 个 OpenAI 消息额度',
|
||||
freeTrialTipSuffix: '。无需信用卡',
|
||||
@@ -32,13 +35,14 @@ const translation = {
|
||||
year: '年',
|
||||
save: '节省',
|
||||
free: '免费',
|
||||
annualBilling: '按年计费',
|
||||
annualBilling: '按年计费节省 {{percent}}%',
|
||||
comparePlanAndFeatures: '对比套餐 & 功能特性',
|
||||
priceTip: '每个团队空间/',
|
||||
currentPlan: '当前计划',
|
||||
contractSales: '联系销售',
|
||||
contractOwner: '联系团队管理员',
|
||||
startForFree: '免费开始',
|
||||
startBuilding: '开始构建',
|
||||
getStarted: '立即开始',
|
||||
contactSales: '联系销售',
|
||||
talkToSales: '联系销售',
|
||||
@@ -106,22 +110,22 @@ const translation = {
|
||||
sandbox: {
|
||||
name: 'Sandbox',
|
||||
for: '核心能力的免费试用',
|
||||
description: '核心功能免费试用',
|
||||
description: '免费试用核心功能。',
|
||||
},
|
||||
professional: {
|
||||
name: 'Professional',
|
||||
for: '适合独立开发者或小团队',
|
||||
description: '对于独立开发者/小团队',
|
||||
description: '适合准备构建生产级 AI 应用的独立开发者和小团队。',
|
||||
},
|
||||
team: {
|
||||
name: 'Team',
|
||||
for: '适合中等规模的团队',
|
||||
description: '对于中型团队',
|
||||
description: '适合需要协作和更高吞吐量的中等规模团队。',
|
||||
},
|
||||
community: {
|
||||
name: 'Community',
|
||||
for: '适用于个人用户、小型团队或非商业项目',
|
||||
description: '适用于个人用户、小型团队或非商业项目',
|
||||
description: '适用于开源爱好者、个人开发者以及非商业项目',
|
||||
price: '免费',
|
||||
btnText: '开始使用',
|
||||
includesTitle: '免费功能:',
|
||||
@@ -134,7 +138,7 @@ const translation = {
|
||||
premium: {
|
||||
name: 'Premium',
|
||||
for: '对于中型组织和团队',
|
||||
description: '对于中型组织和团队',
|
||||
description: '适合需要部署灵活性和增强支持的中型组织和团队',
|
||||
price: '可扩展',
|
||||
priceTip: '基于云市场',
|
||||
btnText: '获得 Premium 版',
|
||||
@@ -150,11 +154,11 @@ const translation = {
|
||||
enterprise: {
|
||||
name: 'Enterprise',
|
||||
for: '适合大人员规模的团队',
|
||||
description: '对于需要组织范围内的安全性、合规性、可扩展性、控制和更高级功能的企业',
|
||||
description: '适合需要组织级安全性、合规性、可扩展性、控制和定制解决方案的企业',
|
||||
price: '定制',
|
||||
priceTip: '仅按年计费',
|
||||
btnText: '联系销售',
|
||||
includesTitle: 'Premium 版的所有功能,加上:',
|
||||
includesTitle: '<highlight>Premium</highlight> 版的所有功能,加上:',
|
||||
features: [
|
||||
'企业级可扩展部署解决方案',
|
||||
'商业许可授权',
|
||||
|
||||
@@ -76,6 +76,9 @@ const translation = {
|
||||
input: '请输入',
|
||||
select: '请选择',
|
||||
},
|
||||
label: {
|
||||
optional: '(可选)',
|
||||
},
|
||||
voice: {
|
||||
language: {
|
||||
zhHans: '中文',
|
||||
@@ -616,6 +619,7 @@ const translation = {
|
||||
viewDoc: '查看文档',
|
||||
relatedApp: '个关联应用',
|
||||
noRelatedApp: '无关联应用',
|
||||
pipeline: '流水线',
|
||||
},
|
||||
voiceInput: {
|
||||
speaking: '现在讲...',
|
||||
|
||||
@@ -38,7 +38,7 @@ const translation = {
|
||||
button: '拖拽文件或文件夹至此,或者',
|
||||
buttonSingleFile: '拖拽文件至此,或者',
|
||||
browse: '选择文件',
|
||||
tip: '已支持 {{supportTypes}},每个文件不超过 {{size}}MB。',
|
||||
tip: '已支持 {{supportTypes}},每批最多 {{batchCount}} 个文件,每个文件不超过 {{size}} MB。',
|
||||
validation: {
|
||||
typeError: '文件类型不支持',
|
||||
size: '文件太大了,不能超过 {{size}}MB',
|
||||
@@ -78,6 +78,7 @@ const translation = {
|
||||
configureFirecrawl: '配置 Firecrawl',
|
||||
configureJinaReader: '配置 Jina Reader',
|
||||
run: '运行',
|
||||
running: '运行中',
|
||||
firecrawlTitle: '使用 🔥Firecrawl 提取网页内容',
|
||||
firecrawlDoc: 'Firecrawl 文档',
|
||||
jinaReaderTitle: '将整个站点内容转换为 Markdown 格式',
|
||||
@@ -121,6 +122,7 @@ const translation = {
|
||||
paragraphTip: '此模式根据分隔符和最大块长度将文本拆分为段落,使用拆分文本作为检索的父块',
|
||||
fullDoc: '全文',
|
||||
fullDocTip: '整个文档用作父块并直接检索。请注意,出于性能原因,超过 10000 个标记的文本将被自动截断。',
|
||||
qaTip: '使用 Q&A 模式时,块将被拆分为问题和答案对。检索时将使用问题部分进行检索,答案部分将作为上下文返回。',
|
||||
separator: '分段标识符',
|
||||
separatorTip: '分隔符是用于分隔文本的字符。\\n\\n 和 \\n 是常用于分隔段落和行的分隔符。用逗号连接分隔符(\\n\\n,\\n),当段落超过最大块长度时,会按行进行分割。你也可以使用自定义的特殊分隔符(例如 ***)。',
|
||||
separatorPlaceholder: '\\n\\n 用于分段;\\n 用于分行',
|
||||
@@ -199,7 +201,7 @@ const translation = {
|
||||
resume: '恢复处理',
|
||||
navTo: '前往文档',
|
||||
sideTipTitle: '接下来做什么',
|
||||
sideTipContent: '当文档完成索引处理后,知识库即可集成至应用内作为上下文使用,你可以在提示词编排页找到上下文设置。你也可以创建成可独立使用的 ChatGPT 索引插件发布。',
|
||||
sideTipContent: '当文档完成索引后,您可以管理和编辑文档、运行检索测试以及修改知识库设置。知识库即可集成到应用程序内作为上下文使用,因此请调整检索设置以确保最佳性能。',
|
||||
modelTitle: '确认停止索引过程吗?',
|
||||
modelContent: '如果您需要稍后恢复处理,则从停止处继续。',
|
||||
modelButtonConfirm: '确认停止',
|
||||
|
||||
@@ -98,6 +98,9 @@ const translation = {
|
||||
upload_file: '文件上传',
|
||||
notion: '从 Notion 同步的文档',
|
||||
github: '从 Github 同步的代码',
|
||||
local_file: '本地文件',
|
||||
website_crawl: '网站爬取',
|
||||
online_document: '在线文档',
|
||||
},
|
||||
type: {
|
||||
book: '书籍',
|
||||
@@ -314,6 +317,7 @@ const translation = {
|
||||
},
|
||||
},
|
||||
embedding: {
|
||||
waiting: '嵌入等待中...',
|
||||
processing: '嵌入处理中...',
|
||||
paused: '嵌入已停止',
|
||||
completed: '嵌入已完成',
|
||||
|
||||
166
web/i18n/zh-Hans/dataset-pipeline.ts
Normal file
166
web/i18n/zh-Hans/dataset-pipeline.ts
Normal file
@@ -0,0 +1,166 @@
|
||||
const translation = {
|
||||
creation: {
|
||||
backToKnowledge: '返回知识库',
|
||||
createFromScratch: {
|
||||
title: '空白知识流水线',
|
||||
description: '从零开始创建一个自定义知识流水线,对数据处理和结构拥有完全控制权。',
|
||||
},
|
||||
importDSL: '从 DSL 文件导入',
|
||||
createKnowledge: '创建知识流水线',
|
||||
errorTip: '创建知识流水线失败',
|
||||
successTip: '成功创建知识流水线',
|
||||
caution: '注意',
|
||||
},
|
||||
templates: {
|
||||
customized: '自定义',
|
||||
},
|
||||
operations: {
|
||||
choose: '选择',
|
||||
details: '详情',
|
||||
editInfo: '编辑信息',
|
||||
useTemplate: '使用此知识流水线',
|
||||
backToDataSource: '返回数据源',
|
||||
process: '处理',
|
||||
dataSource: '数据源',
|
||||
saveAndProcess: '保存并处理',
|
||||
preview: '预览',
|
||||
exportPipeline: '导出知识流水线',
|
||||
convert: '转换',
|
||||
},
|
||||
knowledgeNameAndIcon: '知识库名称和图标',
|
||||
knowledgeNameAndIconPlaceholder: '请输入知识库名称',
|
||||
knowledgeDescription: '知识库描述',
|
||||
knowledgeDescriptionPlaceholder: '描述知识库中的内容。详细的描述可以让 AI 更准确地访问数据集的内容。如果为空,Dify 将使用默认的命中策略。(可选)',
|
||||
knowledgePermissions: '权限',
|
||||
editPipelineInfo: '编辑知识流水线信息',
|
||||
pipelineNameAndIcon: '知识流水线名称和图标',
|
||||
deletePipeline: {
|
||||
title: '要删除此知识流水线模板吗?',
|
||||
content: '删除知识流水线模板是不可逆的。',
|
||||
},
|
||||
publishPipeline: {
|
||||
success: {
|
||||
message: '知识流水线发布成功',
|
||||
tip: '<CustomLink>前往文档</CustomLink>添加或管理文档。',
|
||||
},
|
||||
error: {
|
||||
message: '知识流水线发布失败',
|
||||
},
|
||||
},
|
||||
publishTemplate: {
|
||||
success: {
|
||||
message: '知识流水线模板发布成功',
|
||||
tip: '您可以在创建页使用该模板。',
|
||||
learnMore: '了解更多',
|
||||
},
|
||||
error: {
|
||||
message: '知识流水线模板发布失败',
|
||||
},
|
||||
},
|
||||
exportDSL: {
|
||||
successTip: '成功导出知识流水线 DSL',
|
||||
errorTip: '导出知识流水线 DSL 失败',
|
||||
},
|
||||
details: {
|
||||
createdBy: '由 {{author}} 创建',
|
||||
structure: '文档结构',
|
||||
structureTooltip: '文档结构决定了文档的拆分和索引方式,Dify 提供了通用、父子和问答模式,每个知识库的文档结构是唯一的。',
|
||||
},
|
||||
testRun: {
|
||||
title: '测试运行',
|
||||
tooltip: '在测试运行模式下,每次只能导入一个文档,以便于调试和观察。',
|
||||
steps: {
|
||||
dataSource: '数据源',
|
||||
documentProcessing: '文档处理',
|
||||
},
|
||||
dataSource: {
|
||||
localFiles: '本地文件',
|
||||
},
|
||||
notion: {
|
||||
title: '选择 Notion 页面',
|
||||
docTitle: 'Notion 文档',
|
||||
},
|
||||
},
|
||||
inputField: '输入字段',
|
||||
inputFieldPanel: {
|
||||
title: '用户输入字段',
|
||||
description: '用户输入字段用于定义和收集知识流水线执行过程中所需的变量,用户可以自定义字段类型,并灵活配置输入,以满足不同数据源或文档处理的需求。',
|
||||
uniqueInputs: {
|
||||
title: '非共享输入',
|
||||
tooltip: '非共享输入只能被选定的数据源及其下游节点访问。用户在选择其他数据源时不需要填写它。只有数据源变量引用的输入字段才会出现在第一步(数据源)中。所有其他字段将在第二步(Process Documents)中显示。',
|
||||
},
|
||||
globalInputs: {
|
||||
title: '全局共享输入',
|
||||
tooltip: '全局共享输入在所有节点之间共享。用户在选择任何数据源时都需要填写它们。例如,像分隔符(delimiter)和最大块长度(Maximum Chunk Length)这样的字段可以跨多个数据源统一应用。只有数据源变量引用的输入字段才会出现在第一步(数据源)中。所有其他字段都显示在第二步(Process Documents)中。',
|
||||
},
|
||||
addInputField: '添加输入字段',
|
||||
editInputField: '编辑输入字段',
|
||||
preview: {
|
||||
stepOneTitle: '数据源',
|
||||
stepTwoTitle: '处理文档',
|
||||
},
|
||||
error: {
|
||||
variableDuplicate: '变量名已存在。请选择其他名称。',
|
||||
},
|
||||
},
|
||||
addDocuments: {
|
||||
title: '添加文档',
|
||||
steps: {
|
||||
chooseDatasource: '选择数据源',
|
||||
processDocuments: '处理文档',
|
||||
processingDocuments: '正在处理文档',
|
||||
},
|
||||
backToDataSource: '数据源',
|
||||
stepOne: {
|
||||
preview: '预览',
|
||||
},
|
||||
stepTwo: {
|
||||
chunkSettings: '分段设置',
|
||||
previewChunks: '预览分段',
|
||||
},
|
||||
stepThree: {
|
||||
learnMore: '了解更多',
|
||||
},
|
||||
characters: '字符',
|
||||
selectOnlineDocumentTip: '最多处理 {{count}} 页',
|
||||
selectOnlineDriveTip: '最多处理 {{count}} 个文件,每个文件最大 {{fileSize}} MB',
|
||||
},
|
||||
documentSettings: {
|
||||
title: '文档设置',
|
||||
},
|
||||
onlineDocument: {
|
||||
pageSelectorTitle: '{{name}} 页面',
|
||||
},
|
||||
onlineDrive: {
|
||||
notConnected: '{{name}} 未绑定',
|
||||
notConnectedTip: '同步 {{name}} 内容前, 须先绑定 {{name}}。',
|
||||
breadcrumbs: {
|
||||
allBuckets: '所有云存储桶',
|
||||
allFiles: '所有文件',
|
||||
searchResult: '在 "{{folderName}}" 文件夹中找到 {{searchResultsLength}} 个项目',
|
||||
searchPlaceholder: '搜索文件...',
|
||||
},
|
||||
notSupportedFileType: '不支持此文件类型',
|
||||
emptyFolder: '此文件夹为空',
|
||||
emptySearchResult: '未找到任何项目',
|
||||
resetKeywords: '重置关键词',
|
||||
},
|
||||
credentialSelector: {
|
||||
name: '{{credentialName}} 的 {{pluginName}}',
|
||||
},
|
||||
configurationTip: '配置 {{pluginName}}',
|
||||
conversion: {
|
||||
title: '转换为知识流水线',
|
||||
descriptionChunk1: '您现在可以将现有知识库转换为使用知识流水线来处理文档',
|
||||
descriptionChunk2: ' —— 这是一种更开放、更灵活的方式,可以访问我们市场中的插件。新的处理方式将应用到后续添加的所有文档。',
|
||||
warning: '此操作无法撤销。',
|
||||
confirm: {
|
||||
title: '确认',
|
||||
content: '此操作是永久性的。您将无法恢复到之前的方式。请确认转换。',
|
||||
},
|
||||
errorMessage: '转换数据集为知识流水线失败',
|
||||
successMessage: '成功将数据集转换为知识流水线',
|
||||
},
|
||||
}
|
||||
|
||||
export default translation
|
||||
@@ -3,9 +3,10 @@ const translation = {
|
||||
desc: '在这里,您可以修改此知识库的属性和检索设置',
|
||||
form: {
|
||||
name: '知识库名称',
|
||||
nameAndIcon: '名称和图标',
|
||||
namePlaceholder: '请输入知识库名称',
|
||||
nameError: '名称不能为空',
|
||||
desc: '知识库描述',
|
||||
desc: '描述',
|
||||
descInfo: '请写出清楚的文字描述来概述知识库的内容。当从多个知识库中进行选择匹配时,该描述将用作匹配的基础。',
|
||||
descPlaceholder: '描述该数据集的内容。详细描述可以让 AI 更快地访问数据集的内容。如果为空,Dify 将使用默认的命中策略。',
|
||||
helpText: '学习如何编写一份优秀的数据集描述。',
|
||||
@@ -15,12 +16,19 @@ const translation = {
|
||||
permissionsAllMember: '所有团队成员',
|
||||
permissionsInvitedMembers: '部分团队成员',
|
||||
me: '(你)',
|
||||
onSearchResults: '没有成员匹配您的搜索查询。\n请尝试其他关键词。',
|
||||
chunkStructure: {
|
||||
title: '分段模式',
|
||||
learnMore: '了解更多',
|
||||
description: '关于分段模式。',
|
||||
},
|
||||
indexMethod: '索引模式',
|
||||
indexMethodHighQuality: '高质量',
|
||||
indexMethodHighQualityTip: '调用嵌入模型来处理文档以实现更精确的检索,可以帮助大语言模型生成高质量的回答。',
|
||||
upgradeHighQualityTip: '一旦升级为高质量模式,将无法切换回经济模式。',
|
||||
indexMethodEconomy: '经济',
|
||||
indexMethodEconomyTip: '每个块使用 10 个关键词进行检索,不消耗 tokens,但会降低检索准确性。',
|
||||
indexMethodEconomyTip: '每个块使用 {{count}} 个关键词进行检索,不消耗 tokens,但会降低检索准确性。',
|
||||
numberOfKeywords: '关键词数量',
|
||||
embeddingModel: 'Embedding 模型',
|
||||
embeddingModelTip: '修改 Embedding 模型,请去',
|
||||
embeddingModelTipLink: '设置',
|
||||
|
||||
@@ -3,6 +3,8 @@ const translation = {
|
||||
chunkingMode: {
|
||||
general: '通用',
|
||||
parentChild: '父子',
|
||||
qa: '问答',
|
||||
graph: '图',
|
||||
},
|
||||
parentMode: {
|
||||
paragraph: '段落',
|
||||
@@ -20,11 +22,18 @@ const translation = {
|
||||
learnHowToWriteGoodKnowledgeDescription: '了解如何编写良好的知识库描述',
|
||||
externalAPIPanelDescription: '外部知识库 API 用于连接到 Dify 之外的知识库并从中检索知识。',
|
||||
externalAPIPanelDocumentation: '了解如何创建外部知识库 API',
|
||||
externalKnowledgeBase: '外部知识库',
|
||||
localDocs: '本地文档',
|
||||
documentCount: ' 文档',
|
||||
docAllEnabled_one: '{{count}} 个文档可用',
|
||||
docAllEnabled_other: '所有 {{count}} 个文档均可用',
|
||||
partialEnabled_one: '共计 {{count}} 个文档, {{num}} 可用',
|
||||
partialEnabled_other: '共计 {{count}} 个文档, {{num}} 可用',
|
||||
wordCount: ' 千字符',
|
||||
appCount: ' 关联应用',
|
||||
updated: '更新于',
|
||||
createDataset: '创建知识库',
|
||||
createFromPipeline: '通过知识流水线创建知识库',
|
||||
noExternalKnowledge: '还没有外部知识库 API,点击此处创建',
|
||||
createExternalAPI: '添加外部知识库 API',
|
||||
createNewExternalAPI: '创建新的外部知识库 API',
|
||||
@@ -117,7 +126,7 @@ const translation = {
|
||||
description: '同时执行全文检索和向量检索,并应用重排序步骤,从两类查询结果中选择匹配用户问题的最佳结果,用户可以选择设置权重或配置重新排序模型。',
|
||||
recommend: '推荐',
|
||||
},
|
||||
invertedIndex: {
|
||||
keyword_search: {
|
||||
title: '倒排索引',
|
||||
description: '倒排索引是一种用于高效检索的结构。按术语组织,每个术语指向包含它的文档或网页',
|
||||
},
|
||||
@@ -217,6 +226,17 @@ const translation = {
|
||||
technicalParameters: '技术参数',
|
||||
},
|
||||
},
|
||||
serviceApi: {
|
||||
title: '服务 API',
|
||||
enabled: '运行中',
|
||||
disabled: '已停用',
|
||||
card: {
|
||||
title: '后端服务 API',
|
||||
endpoint: 'API 端点',
|
||||
apiKey: 'API 密钥',
|
||||
apiReference: 'API 文档',
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
export default translation
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
const translation = {
|
||||
sidebar: {
|
||||
expandSidebar: '展开侧边栏',
|
||||
collapseSidebar: '收起侧边栏',
|
||||
},
|
||||
}
|
||||
|
||||
export default translation
|
||||
|
||||
40
web/i18n/zh-Hans/pipeline.ts
Normal file
40
web/i18n/zh-Hans/pipeline.ts
Normal file
@@ -0,0 +1,40 @@
|
||||
const translation = {
|
||||
common: {
|
||||
goToAddDocuments: '去添加文档',
|
||||
publishAs: '发布为自定义流水线模板',
|
||||
confirmPublish: '确认发布',
|
||||
confirmPublishContent: '成功发布知识流水线后,此知识库的分段结构将无法修改。您确定要发布吗?',
|
||||
publishAsPipeline: {
|
||||
name: '知识流水线名称和图标',
|
||||
namePlaceholder: '请输入此知识流水线的名称。 (必填)',
|
||||
description: '知识流水线描述',
|
||||
descriptionPlaceholder: '请输入此知识流水线的描述。 (可选)',
|
||||
},
|
||||
testRun: '测试运行',
|
||||
preparingDataSource: '准备数据源',
|
||||
reRun: '重新运行',
|
||||
processing: '处理中',
|
||||
},
|
||||
inputField: {
|
||||
create: '创建用户输入字段',
|
||||
manage: '管理',
|
||||
},
|
||||
publishToast: {
|
||||
title: '此知识流水线尚未发布',
|
||||
desc: '当知识流水线未发布时,您可以修改知识库节点中的分块结构,知识流水线编排和更改将自动保存为草稿。',
|
||||
},
|
||||
result: {
|
||||
resultPreview: {
|
||||
loading: '处理中...请稍后',
|
||||
error: '执行过程中出现错误',
|
||||
viewDetails: '查看详情',
|
||||
footerTip: '在测试运行模式下,最多预览 {{count}} 个分段',
|
||||
},
|
||||
},
|
||||
ragToolSuggestions: {
|
||||
title: 'RAG 工具推荐',
|
||||
noRecommendationPluginsInstalled: '暂无已安装的推荐插件,更多插件请在 <CustomLink>Marketplace</CustomLink> 中查找',
|
||||
},
|
||||
}
|
||||
|
||||
export default translation
|
||||
@@ -3,6 +3,7 @@ const translation = {
|
||||
searchTags: '搜索标签',
|
||||
tags: {
|
||||
agent: 'Agent',
|
||||
rag: 'RAG',
|
||||
search: '搜索',
|
||||
image: '图片',
|
||||
videos: '视频',
|
||||
|
||||
@@ -9,6 +9,7 @@ const translation = {
|
||||
agents: 'Agent 策略',
|
||||
extensions: '扩展',
|
||||
bundles: '插件集',
|
||||
datasources: '数据源',
|
||||
},
|
||||
categorySingle: {
|
||||
model: '模型',
|
||||
@@ -16,6 +17,7 @@ const translation = {
|
||||
agent: 'Agent 策略',
|
||||
extension: '扩展',
|
||||
bundle: '插件集',
|
||||
datasource: '数据源',
|
||||
},
|
||||
search: '搜索',
|
||||
allCategories: '所有类别',
|
||||
@@ -301,6 +303,8 @@ const translation = {
|
||||
credentialUnavailableInButton: '凭据不可用',
|
||||
customCredentialUnavailable: '自定义凭据当前不可用',
|
||||
unavailable: '不可用',
|
||||
connectedWorkspace: '已连接的工作区',
|
||||
emptyAuth: '请配置凭据',
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
@@ -244,6 +244,7 @@ const translation = {
|
||||
publishTip: '应用未发布。请先发布应用。',
|
||||
},
|
||||
},
|
||||
allTools: '全部工具',
|
||||
}
|
||||
|
||||
export default translation
|
||||
|
||||
@@ -45,6 +45,7 @@ const translation = {
|
||||
setVarValuePlaceholder: '设置变量值',
|
||||
needConnectTip: '此节点尚未连接到其他节点',
|
||||
maxTreeDepth: '每个分支最大限制 {{depth}} 个节点',
|
||||
needAdd: '必须添加{{node}}节点',
|
||||
needEndNode: '必须添加结束节点',
|
||||
needAnswerNode: '必须添加直接回复节点',
|
||||
workflowProcess: '工作流',
|
||||
@@ -92,7 +93,6 @@ const translation = {
|
||||
importWarning: '注意',
|
||||
importWarningDetails: 'DSL 版本差异可能影响部分功能表现',
|
||||
importSuccess: '导入成功',
|
||||
parallelRun: '并行运行',
|
||||
parallelTip: {
|
||||
click: {
|
||||
title: '点击',
|
||||
@@ -215,8 +215,10 @@ const translation = {
|
||||
toolParameterRequired: '{{field}}: 参数 [{{param}}] 不能为空',
|
||||
},
|
||||
singleRun: {
|
||||
testRun: '测试运行 ',
|
||||
testRun: '测试运行',
|
||||
startRun: '开始运行',
|
||||
preparingDataSource: '准备数据源',
|
||||
reRun: '重新运行',
|
||||
running: '运行中',
|
||||
testRunIteration: '测试运行迭代',
|
||||
back: '返回',
|
||||
@@ -240,6 +242,8 @@ const translation = {
|
||||
'agent': 'Agent 策略',
|
||||
'allAdded': '已添加全部',
|
||||
'addAll': '添加全部',
|
||||
'sources': '数据源',
|
||||
'searchDataSource': '搜索数据源',
|
||||
},
|
||||
blocks: {
|
||||
'start': '开始',
|
||||
@@ -264,6 +268,8 @@ const translation = {
|
||||
'loop-start': '循环开始',
|
||||
'loop': '循环',
|
||||
'loop-end': '退出循环',
|
||||
'knowledge-index': '知识库',
|
||||
'datasource': '数据源',
|
||||
},
|
||||
blocksAbout: {
|
||||
'start': '定义一个 workflow 流程启动的初始参数',
|
||||
@@ -286,6 +292,8 @@ const translation = {
|
||||
'document-extractor': '用于将用户上传的文档解析为 LLM 便于理解的文本内容。',
|
||||
'list-operator': '用于过滤或排序数组内容。',
|
||||
'agent': '调用大型语言模型回答问题或处理自然语言',
|
||||
'knowledge-index': '知识库节点',
|
||||
'datasource': '数据源节点',
|
||||
},
|
||||
operator: {
|
||||
zoomIn: '放大',
|
||||
@@ -393,6 +401,7 @@ const translation = {
|
||||
input: '输入值',
|
||||
variable: '使用变量',
|
||||
},
|
||||
inputVars: '输入变量',
|
||||
},
|
||||
start: {
|
||||
required: '必填',
|
||||
@@ -927,6 +936,27 @@ const translation = {
|
||||
clickToViewParameterSchema: '点击查看参数 schema',
|
||||
parameterSchema: '参数 Schema',
|
||||
},
|
||||
dataSource: {
|
||||
supportedFileFormats: '支持的文件格式',
|
||||
supportedFileFormatsPlaceholder: '文件格式,例如:doc',
|
||||
add: '添加数据源',
|
||||
},
|
||||
knowledgeBase: {
|
||||
chunkStructure: '分段结构',
|
||||
chooseChunkStructure: '选择分段结构',
|
||||
chunkStructureTip: {
|
||||
title: '请选择分段结构',
|
||||
message: 'Dify 知识库支持三种分块结构:通用、父子和问答。每个知识库只能有一种结构。前一节点的输出必须与所选的分块结构相匹配。请注意,分块结构的选择会影响可用的索引方法。',
|
||||
learnMore: '了解更多',
|
||||
},
|
||||
changeChunkStructure: '更改分段结构',
|
||||
chunksInput: '分块',
|
||||
chunksInputTip: '知识库节点的输入变量为 Chunks。该变量类型是符合特定 JSON Schema 的对象,必须与所选块结构一致。',
|
||||
aboutRetrieval: '关于知识检索。',
|
||||
chunkIsRequired: '分段结构是必需的',
|
||||
indexMethodIsRequired: '索引方法是必需的',
|
||||
retrievalSettingIsRequired: '检索设置是必需的',
|
||||
},
|
||||
},
|
||||
tracing: {
|
||||
stopBy: '由{{user}}终止',
|
||||
@@ -998,6 +1028,10 @@ const translation = {
|
||||
envNode: '环境变量',
|
||||
chatNode: '会话变量',
|
||||
systemNode: '系统变量',
|
||||
exportToolTip: '导出变量为文件',
|
||||
largeData: '大数据 - 仅部分只读预览。请导出查看完整数据。',
|
||||
largeDataNoExport: '大数据 - 仅部分预览',
|
||||
export: '导出',
|
||||
},
|
||||
lastOutput: '上次输出',
|
||||
relations: {
|
||||
|
||||
Reference in New Issue
Block a user