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:
-LAN- 2025-09-18 12:49:10 +08:00 • committed by GitHub
commit 85cda47c70
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
1772 changed files with 102407 additions and 31710 deletions

View file

@ -91,6 +91,7 @@ const translation = {
batchAction: {
selected: '選擇的',
delete: '刪除',
cancel: '銷',
},
}

View file

@ -335,6 +335,19 @@ const translation = {
'optional': '可選的',
'jsonSchema': 'JSON Schema',
'json': 'JSON 代碼',
'unit': '單位',
'placeholder': '預留位置',
'displayName': '顯示名稱',
'showAllSettings': '顯示所有設定',
'uploadMethod': '上傳方式',
'noDefaultSelected': '請勿選取',
'tooltipsPlaceholder': '輸入將滑鼠停留在標籤上時顯示的實用文字',
'startSelectedOption': '開始選取的選項',
'unitPlaceholder': '在數字後顯示單位,例如標記',
'placeholderPlaceholder': '輸入欄位空白時要顯示的文字',
'startChecked': '開始勾選',
'tooltips': '工具提示',
'defaultValuePlaceholder': '輸入預設值以預先填入欄位',
},
vision: {
name: '視覺',

View file

@ -79,6 +79,7 @@ const translation = {
chooseAppType: '選擇 App Type',
completionShortDescription: '用於文本生成任務的 AI 助手',
dropDSLToCreateApp: '將 DSL 檔案拖放到此處以創建應用程式',
import: '進口',
},
editApp: '編輯資訊',
editAppTitle: '編輯應用資訊',

View file

@ -93,6 +93,7 @@ const translation = {
teamMember_other: '{{count,number}} 團隊成員',
documentsTooltip: '從知識數據來源導入的文件數量配額。',
documentsRequestQuotaTooltip: '指定工作區在知識基礎中每分鐘可以執行的總操作次數,包括數據集的創建、刪除、更新、文檔上傳、修改、歸檔和知識基礎查詢。這個指標用於評估知識基礎請求的性能。例如,如果一個沙箱用戶在一分鐘內連續執行 10 次命中測試,他們的工作區將在接下來的一分鐘內暫時禁止執行以下操作:數據集的創建、刪除、更新以及文檔上傳或修改。',
startBuilding: '開始建造',
},
plans: {
sandbox: {
@ -115,6 +116,15 @@ const translation = {
description: '獲得大規模關鍵任務系統的完整功能和支援。',
includesTitle: 'Team 計劃中的一切,加上:',
features: {
8: '專業技術支持',
6: '進階安全與控制',
2: '獨家企業功能',
5: 'Dify 合作夥伴協商的 SLA',
4: '單一登入',
7: 'Dify 官方更新和維護',
3: '多個工作區和企業管理',
0: '企業級可擴展部署解決方案',
1: '商業許可證授權',
},
price: '自訂',
btnText: '聯繫銷售',
@ -123,6 +133,9 @@ const translation = {
},
community: {
features: {
1: '單一工作區',
2: '符合 Dify 開源許可證',
0: '所有核心功能在公共存儲庫下發布',
},
includesTitle: '免費功能:',
btnText: '開始使用社區',
@ -133,6 +146,10 @@ const translation = {
},
premium: {
features: {
0: '各種雲端供應商的自我管理可靠性',
1: '單一工作區',
3: '優先電子郵件和聊天支持',
2: 'WebApp 標誌和品牌定制',
},
for: '適用於中型組織和團隊',
comingSoon: '微軟 Azure 與 Google Cloud 支持即將推出',

View file

@ -490,6 +490,15 @@ const translation = {
unAuthorized: '未經授權',
authorizationError: '授權錯誤',
providerManagedTip: '當前的配置由提供者主辦。',
manageCredentials: '管理憑證',
addModel: '新增模型',
removeModel: '移除模型',
editModelCredential: '編輯模型認證',
customModelCredentialsDeleteTip: '認證正在使用中,無法刪除',
modelCredential: '模型認證',
customModelCredentials: '自訂模型認證',
addNewModelCredential: '新增模型認證',
selectModelCredential: '選取模型認證',
},
},
dataSource: {
@ -589,6 +598,7 @@ const translation = {
viewDoc: '檢視文件',
relatedApp: '個關聯應用',
noRelatedApp: '沒有連結的應用程式',
pipeline: '管道',
},
voiceInput: {
speaking: '現在講...',
@ -748,6 +758,9 @@ const translation = {
placeholder: '請描述發生了什麼問題或我們可以如何改進...',
subtitle: '請告訴我們這個回應出了什麼問題',
},
label: {
optional: '(選用)',
},
}
export default translation

View file

@ -88,6 +88,7 @@ const translation = {
waterCrawlNotConfiguredDescription: '配置 Watercrawl 並使用 API 金鑰來使用它。',
configureJinaReader: '配置 Jina Reader',
waterCrawlNotConfigured: 'Watercrawl 尚未配置',
running: '流動的',
},
},
stepTwo: {
@ -172,6 +173,7 @@ const translation = {
fullDoc: '完整文件',
parentChildTip: '當使用 parent-child 模式時,child-chunk 用於檢索,parent-chunk 用於作為上下文調用 call。',
switch: '開關',
qaTip: '使用結構化 Q&A 資料時,您可以建立將問題與答案配對的文件。這些文件根據問題部分進行索引,允許系統根據查詢相似性檢索相關答案。',
},
stepThree: {
creationTitle: '🎉 知識庫已建立',

View file

@ -98,6 +98,9 @@ const translation = {
upload_file: '檔案上傳',
notion: '從 Notion 同步的文件',
github: '從 Github 同步的程式碼',
local_file: '本機檔案',
website_crawl: '網站抓取',
online_document: '線上文件',
},
type: {
book: '書籍',
@ -335,6 +338,7 @@ const translation = {
parentMaxTokens: '父母',
childMaxTokens: '孩子',
pause: '暫停',
waiting: '嵌入等待中...',
},
segment: {
paragraphs: '段落',

View file

@ -0,0 +1,154 @@
const translation = {
creation: {
createFromScratch: {
title: '空白知識管道',
description: '從頭開始建立自訂管道,並完全控制資料處理和結構。',
},
caution: '小心',
backToKnowledge: '返回知識',
errorTip: '無法建立知識庫',
successTip: '成功建立知識庫',
createKnowledge: '創造知識',
importDSL: '從 DSL 檔案匯入',
},
templates: {
customized: '客製化',
},
operations: {
convert: '化',
saveAndProcess: '儲存和處理',
choose: '選',
useTemplate: '使用此知識管道',
dataSource: '資料來源',
editInfo: '編輯資訊',
process: '過程',
backToDataSource: '返回資料來源',
exportPipeline: '匯出管線',
details: '詳',
preview: '預展',
},
deletePipeline: {
title: '您確定要刪除此管線範本嗎?',
content: '刪除管線範本是不可逆的。',
},
publishPipeline: {
success: {
message: '知識管道已發布',
},
error: {
message: '無法發佈知識管道',
},
},
publishTemplate: {
success: {
message: '管道範本已發佈',
tip: '您可以在建立頁面上使用此範本。',
learnMore: '瞭解詳情',
},
error: {
message: '無法發佈管線範本',
},
},
exportDSL: {
errorTip: '無法匯出管線 DSL',
successTip: '成功匯出管線 DSL',
},
details: {
structureTooltip: '區塊結構會決定文件的分割和索引方式 (提供一般、父子和問答模式),而且每個知識庫都是唯一的。',
structure: '建築物',
},
testRun: {
steps: {
documentProcessing: '文件處理',
dataSource: '資料來源',
},
dataSource: {
localFiles: '本機檔案',
},
notion: {
docTitle: '概念文件',
title: '選擇 Notion 頁面',
},
tooltip: '在測試運行模式下,一次只允許匯入一個文檔,以便於調試和觀察。',
title: '試運行',
},
inputFieldPanel: {
uniqueInputs: {
title: '每個入口的獨特輸入',
tooltip: '唯一輸入只能存取選取的資料來源及其下游節點。使用者在選擇其他資料來源時無需填寫。只有資料來源變數引用的輸入欄位才會出現在第一步(資料來源)中。所有其他欄位將顯示在第二步(處理文件)中。',
},
globalInputs: {
title: '所有入口的全域輸入',
tooltip: '全域輸入在所有節點之間共用。用戶在選擇任何數據源時需要填寫它們。例如,分隔符號和最大區塊長度等欄位可以統一套用至多個資料來源。只有資料來源變數所參考的輸入欄位才會出現在第一個步驟 (資料來源) 中。所有其他欄位都會顯示在第二個步驟 (處理文件) 中。',
},
preview: {
stepOneTitle: '資料來源',
stepTwoTitle: '處理文件',
},
error: {
variableDuplicate: '變數名稱已存在。請選擇其他名稱。',
},
editInputField: '編輯輸入欄位',
title: '使用者輸入欄位',
addInputField: '新增輸入欄位',
description: '使用者輸入欄位可用來定義和收集管線執行過程中所需的變數。使用者可以自訂欄位類型,靈活配置輸入值,以滿足不同資料來源或文件處理步驟的需求。',
},
addDocuments: {
steps: {
processingDocuments: '處理文件',
processDocuments: '處理文件',
chooseDatasource: '選擇資料來源',
},
stepOne: {
preview: '預展',
},
stepTwo: {
previewChunks: '預覽區塊',
chunkSettings: '區塊設定',
},
stepThree: {
learnMore: '瞭解詳情',
},
title: '新增文件',
characters: '角色',
backToDataSource: '資料來源',
},
documentSettings: {
title: '文件設定',
},
onlineDocument: {},
onlineDrive: {
breadcrumbs: {
allBuckets: '所有雲端儲存貯體',
searchPlaceholder: '搜尋檔案...',
allFiles: '所有檔案',
},
resetKeywords: '重設關鍵字',
notSupportedFileType: '不支援此檔案類型',
emptySearchResult: '沒有找到任何物品',
emptyFolder: '此資料夾是空的',
},
credentialSelector: {},
conversion: {
confirm: {
title: '證實',
content: '此動作是永久性的。您將無法恢復到以前的方法。請確認轉換。',
},
title: '轉換為知識管道',
warning: '此動作無法復原。',
descriptionChunk2: '— 一種更開放和靈活的方法,可以訪問我們市場中的插件。這會將新的處理方法套用至所有未來的文件。',
successMessage: '已成功將資料集轉換成管線',
errorMessage: '無法將資料集轉換成管線',
descriptionChunk1: '您現在可以轉換現有的知識庫,以使用知識管道進行文件處理',
},
knowledgeDescription: '知識說明',
knowledgeNameAndIconPlaceholder: '請輸入知識庫的名稱',
knowledgeDescriptionPlaceholder: '描述此知識庫中的內容。詳細的描述使人工智慧能夠更準確地存取資料集的內容。如果為空,Dify 將使用預設命中策略。(選用)',
pipelineNameAndIcon: '管線名稱 & 圖示',
knowledgeNameAndIcon: '知識名稱和圖示',
inputField: '輸入欄位',
knowledgePermissions: '權限',
editPipelineInfo: '編輯管線資訊',
}
export default translation

View file

@ -37,6 +37,14 @@ const translation = {
upgradeHighQualityTip: '升級到高品質模式后,無法恢復到經濟模式',
helpText: '瞭解如何編寫良好的數據集描述。',
searchModel: '搜索模型',
chunkStructure: {
learnMore: '瞭解詳情',
title: '區塊結構',
description: '關於塊結構。',
},
numberOfKeywords: '關鍵字數量',
onSearchResults: '沒有成員符合您的搜尋查詢。\n請再次嘗試搜尋。',
nameAndIcon: '名稱和圖示',
},
}

View file

@ -42,6 +42,10 @@ const translation = {
},
change: '更改',
changeRetrievalMethod: '更改檢索方法',
keyword_search: {
title: '倒掛索引',
description: '倒掛索引是一種用於高效檢索的結構。依字詞組織,每個字詞都指向包含它的文件或網頁。',
},
},
docsFailedNotice: '文件無法被索引',
retry: '重試',
@ -149,6 +153,8 @@ const translation = {
chunkingMode: {
parentChild: '父子',
general: '常規',
graph: '圖形',
qa: '問與答',
},
parentMode: {
paragraph: '段',
@ -217,6 +223,9 @@ const translation = {
addMetadata: '添加元數據',
},
embeddingModelNotAvailable: '嵌入模型無法使用。',
externalKnowledgeBase: '外部知識庫',
createFromPipeline: '從知識管線建立',
updated: '更新時間',
}
export default translation

View file

@ -1,4 +1,8 @@
const translation = {
sidebar: {
expandSidebar: '展開側邊欄',
collapseSidebar: '摺疊側邊欄',
},
}
export default translation

View file

@ -0,0 +1,38 @@
const translation = {
common: {
publishAsPipeline: {
description: '知識說明',
descriptionPlaceholder: '請輸入此知識管道的描述。(選用)',
name: '管線名稱 & 圖示',
namePlaceholder: '請輸入此知識管道的名稱。(必填)',
},
testRun: '試運行',
preparingDataSource: '準備資料來源',
publishAs: '發佈為知識管道',
reRun: '重新運行',
processing: '處理',
confirmPublishContent: '成功發布知識管道後,無法修改此知識庫的區塊結構。你確定要發布它嗎?',
confirmPublish: '確認發佈',
goToAddDocuments: '移至新增文件',
},
inputField: {
manage: '司',
create: '建立使用者輸入欄位',
},
publishToast: {
title: '此管線尚未發佈',
desc: '當管道未發佈時,可以在知識庫節點中修改區塊結構,管道編排和變更會自動儲存為草稿。',
},
result: {
resultPreview: {
viewDetails: '查看詳情',
error: '執行期間發生錯誤',
loading: '處理中...請稍候',
},
},
ragToolSuggestions: {
title: 'RAG 的建議',
},
}
export default translation

View file

@ -17,6 +17,7 @@ const translation = {
entertainment: '娛樂',
search: '搜索',
image: '圖像',
rag: '碎布',
},
searchTags: '搜索標籤',
allTags: '所有標籤',

View file

@ -6,6 +6,7 @@ const translation = {
agents: '代理策略',
all: '都',
bundles: '束',
datasources: '資料來源',
},
categorySingle: {
model: '型',
@ -13,6 +14,7 @@ const translation = {
agent: '代理策略',
tool: '工具',
bundle: '捆',
datasource: '資料來源',
},
list: {
source: {
@ -250,6 +252,8 @@ const translation = {
customCredentialUnavailable: '自訂憑證目前無法使用',
credentialUnavailable: '凭證目前無法使用。請聯繫管理員。',
credentialUnavailableInButton: '憑證不可用',
emptyAuth: '請設定驗證',
connectedWorkspace: '連線工作區',
},
deprecated: '不推薦使用的',
autoUpdate: {

View file

@ -244,6 +244,7 @@ const translation = {
publishTip: '應用程式尚未發布。請先發布應用程式。',
},
},
allTools: '所有工具',
}
export default translation

View file

@ -89,7 +89,6 @@ const translation = {
limit: '並行度僅限於 {{num}} 個分支。',
depthLimit: '並行嵌套層限制為 {{num}} 個層',
},
parallelRun: '並行運行',
disconnect: '斷開',
jumpToNode: '跳轉到此節點',
addParallelNode: '添加並行節點',
@ -218,6 +217,8 @@ const translation = {
back: '返回',
iteration: '迭代',
loop: '循環',
preparingDataSource: '準備資料來源',
reRun: '重新運行',
},
tabs: {
'searchBlock': '搜索節點',
@ -236,6 +237,8 @@ const translation = {
'plugin': '插件',
'allAdded': '所有已添加的',
'addAll': '全部添加',
'sources': '來源',
'searchDataSource': '搜尋資料來源',
},
blocks: {
'start': '開始',
@ -260,6 +263,8 @@ const translation = {
'loop-start': '循環開始',
'loop': '循環',
'loop-end': '退出循環',
'knowledge-index': '知識庫',
'datasource': '資料來源',
},
blocksAbout: {
'start': '定義一個 workflow 流程啟動的參數',
@ -282,6 +287,8 @@ const translation = {
'agent': '調用大型語言模型來回答問題或處理自然語言',
'loop-end': '等同於「中斷」。這個節點沒有配置項目。當循環體達到這個節點時,循環終止。',
'loop': '執行邏輯迴圈,直到滿足終止條件或達到最大迴圈次數。',
'datasource': '資料來源 關於',
'knowledge-index': '知識庫 關於',
},
operator: {
zoomIn: '放大',
@ -382,6 +389,7 @@ const translation = {
input: '輸入值',
variable: '使用變數',
},
inputVars: '輸入變數',
},
start: {
required: '必填',
@ -916,6 +924,27 @@ const translation = {
setLoopVariables: '在迴圈範圍內設置變數',
deleteTitle: '刪除循環節點嗎?',
},
dataSource: {
add: '新增資料來源',
supportedFileFormats: '支援的檔案格式',
supportedFileFormatsPlaceholder: '檔案副檔名, e.g. doc',
},
knowledgeBase: {
chunkStructureTip: {
learnMore: '瞭解詳情',
title: '請選擇區塊結構',
message: 'Dify 知識庫支援三種區塊結構:一般、親子和 Q&A。每個知識庫只能有一個結構。前一個節點的輸出必須與選取的區塊結構一致。請注意,區塊結構的選擇會影響可用的索引方法。',
},
chunkIsRequired: '需要區塊結構',
aboutRetrieval: '關於檢索方法。',
chooseChunkStructure: '選擇區塊結構',
indexMethodIsRequired: '索引方法是必填的',
chunkStructure: '區塊結構',
changeChunkStructure: '變更區塊結構',
retrievalSettingIsRequired: '需要檢索設定',
chunksInput: '區塊',
chunksInputTip: '知識庫節點的輸入變數是 Chunks。該變數類型是一個物件,具有特定的 JSON Schema,必須與所選的塊結構一致。',
},
},
tracing: {
stopBy: '由{{user}}終止',
@ -989,6 +1018,10 @@ const translation = {
edited: '編輯的',
emptyTip: '在畫布上逐步執行節點或逐步運行節點後,您可以在變數檢視中查看節點變數的當前值。',
resetConversationVar: '將對話變數重置為默認值',
export: '出口',
largeData: '大數據,唯讀預覽。匯出以檢視全部。',
exportToolTip: '將變數匯出為檔案',
largeDataNoExport: '大型資料 - 僅部分預覽',
},
relations: {
dependencies: '依賴',