dsh-data-domain-knowledge 0.1.0-alpha.2 → 0.1.0-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +147 -19
- package/cordis.patch.yml +25 -10
- package/lib/client.js +6400 -3326
- package/lib/doc-page.js +7761 -0
- package/lib/types/convert/host.d.ts.map +1 -1
- package/lib/types/convert/host.js +63 -11
- package/lib/types/convert/host.js.map +1 -1
- package/lib/types/convert/ingest.d.ts +7 -4
- package/lib/types/convert/ingest.d.ts.map +1 -1
- package/lib/types/convert/ingest.js +52 -14
- package/lib/types/convert/ingest.js.map +1 -1
- package/lib/types/convert/types.d.ts +2 -2
- package/lib/types/convert/types.d.ts.map +1 -1
- package/lib/types/convert/types.js +2 -2
- package/lib/types/convert/types.js.map +1 -1
- package/lib/types/diagnosis/cards.d.ts +8 -7
- package/lib/types/diagnosis/cards.d.ts.map +1 -1
- package/lib/types/diagnosis/cards.js +119 -49
- package/lib/types/diagnosis/cards.js.map +1 -1
- package/lib/types/diagnosis/run.d.ts +57 -0
- package/lib/types/diagnosis/run.d.ts.map +1 -0
- package/lib/types/diagnosis/run.js +245 -0
- package/lib/types/diagnosis/run.js.map +1 -0
- package/lib/types/diagnosis/schema.d.ts +25 -2
- package/lib/types/diagnosis/schema.d.ts.map +1 -1
- package/lib/types/diagnosis/schema.js +64 -25
- package/lib/types/diagnosis/schema.js.map +1 -1
- package/lib/types/diagnosis/seed-source.d.ts +17 -2
- package/lib/types/diagnosis/seed-source.d.ts.map +1 -1
- package/lib/types/diagnosis/seed-source.js +19 -2
- package/lib/types/diagnosis/seed-source.js.map +1 -1
- package/lib/types/diagnosis/seed.d.ts +32 -42
- package/lib/types/diagnosis/seed.d.ts.map +1 -1
- package/lib/types/diagnosis/seed.js +187 -51
- package/lib/types/diagnosis/seed.js.map +1 -1
- package/lib/types/diagnosis/store.d.ts +95 -25
- package/lib/types/diagnosis/store.d.ts.map +1 -1
- package/lib/types/diagnosis/store.js +297 -166
- package/lib/types/diagnosis/store.js.map +1 -1
- package/lib/types/diagnosis/types.d.ts +168 -16
- package/lib/types/diagnosis/types.d.ts.map +1 -1
- package/lib/types/diagnosis/types.js +1 -1
- package/lib/types/diagnosis/types.js.map +1 -1
- package/lib/types/document-page.d.ts +39 -0
- package/lib/types/document-page.d.ts.map +1 -0
- package/lib/types/document-page.js +43 -0
- package/lib/types/document-page.js.map +1 -0
- package/lib/types/extract-model.d.ts +67 -27
- package/lib/types/extract-model.d.ts.map +1 -1
- package/lib/types/extract-model.js +225 -97
- package/lib/types/extract-model.js.map +1 -1
- package/lib/types/extract.d.ts +16 -0
- package/lib/types/extract.d.ts.map +1 -1
- package/lib/types/extract.js +19 -2
- package/lib/types/extract.js.map +1 -1
- package/lib/types/fs-atomic.d.ts +11 -0
- package/lib/types/fs-atomic.d.ts.map +1 -0
- package/lib/types/fs-atomic.js +41 -0
- package/lib/types/fs-atomic.js.map +1 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +466 -63
- package/lib/types/index.js.map +1 -1
- package/lib/types/intent/types.js +1 -1
- package/lib/types/intent/types.js.map +1 -1
- package/lib/types/knowledge-bases.d.ts +23 -12
- package/lib/types/knowledge-bases.d.ts.map +1 -1
- package/lib/types/knowledge-bases.js +37 -44
- package/lib/types/knowledge-bases.js.map +1 -1
- package/lib/types/layout.d.ts +3 -3
- package/lib/types/layout.d.ts.map +1 -1
- package/lib/types/layout.js +4 -4
- package/lib/types/layout.js.map +1 -1
- package/lib/types/migrate.d.ts +1 -1
- package/lib/types/migrate.js +2 -2
- package/lib/types/migrate.js.map +1 -1
- package/lib/types/model-text.d.ts +99 -0
- package/lib/types/model-text.d.ts.map +1 -0
- package/lib/types/model-text.js +103 -0
- package/lib/types/model-text.js.map +1 -0
- package/lib/types/present.d.ts +239 -0
- package/lib/types/present.d.ts.map +1 -0
- package/lib/types/present.js +255 -0
- package/lib/types/present.js.map +1 -0
- package/lib/types/recall-rank.d.ts +37 -0
- package/lib/types/recall-rank.d.ts.map +1 -1
- package/lib/types/recall-rank.js +41 -1
- package/lib/types/recall-rank.js.map +1 -1
- package/lib/types/runtime.d.ts +564 -31
- package/lib/types/runtime.d.ts.map +1 -1
- package/lib/types/runtime.js +2645 -292
- package/lib/types/runtime.js.map +1 -1
- package/lib/types/settings-schema.d.ts +4 -2
- package/lib/types/settings-schema.d.ts.map +1 -1
- package/lib/types/settings-schema.js +2 -0
- package/lib/types/settings-schema.js.map +1 -1
- package/lib/types/source-images.d.ts +118 -0
- package/lib/types/source-images.d.ts.map +1 -0
- package/lib/types/source-images.js +288 -0
- package/lib/types/source-images.js.map +1 -0
- package/lib/types/types.d.ts +356 -28
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/types.js +112 -18
- package/lib/types/types.js.map +1 -1
- package/lib/types/wiki-finalize.d.ts +140 -0
- package/lib/types/wiki-finalize.d.ts.map +1 -0
- package/lib/types/wiki-finalize.js +269 -0
- package/lib/types/wiki-finalize.js.map +1 -0
- package/lib/types/wiki-types.d.ts +10 -2
- package/lib/types/wiki-types.d.ts.map +1 -1
- package/lib/types/wiki-types.js +27 -30
- package/lib/types/wiki-types.js.map +1 -1
- package/package.json +4 -3
- package/preset/tita-data-agent/agent.cordis.yml +25 -10
- package/src/client/DirectoryPicker.tsx +12 -12
- package/src/client/DrawerSection.tsx +18 -0
- package/src/client/InfoHint.tsx +21 -8
- package/src/client/IntentTab.tsx +20 -26
- package/src/client/KnowledgeBaseTab.tsx +458 -158
- package/src/client/KnowledgePanel.tsx +44 -10
- package/src/client/KnowledgeStepRail.tsx +3 -0
- package/src/client/KnowledgeToolRow.tsx +331 -0
- package/src/client/NodeSettings.tsx +20 -22
- package/src/client/PreviewSections.tsx +178 -43
- package/src/client/RecallPanel.tsx +418 -127
- package/src/client/TypeDefinitionDrawer.tsx +154 -54
- package/src/client/WikiCardReview.tsx +266 -0
- package/src/client/WikiFlowCard.tsx +57 -95
- package/src/client/WikiTypeEditor.tsx +197 -95
- package/src/client/arch/AgentArchitectureGraph.tsx +30 -14
- package/src/client/arch/NodeLogicPanel.tsx +6 -3
- package/src/client/arch/model.ts +164 -26
- package/src/client/architecture.css +25 -10
- package/src/client/architecture.tsx +66 -41
- package/src/client/asset-images.ts +125 -0
- package/src/client/attribution/AttributionGraph.tsx +481 -34
- package/src/client/attribution/AttributionTab.tsx +501 -106
- package/src/client/attribution/CaseView.tsx +9 -14
- package/src/client/attribution/GraphStage.tsx +25 -18
- package/src/client/attribution/RunView.tsx +27 -9
- package/src/client/attribution/StageChrome.tsx +280 -140
- package/src/client/attribution/graph-options.ts +611 -47
- package/src/client/attribution/model.ts +559 -30
- package/src/client/convert/ConvertPanel.tsx +36 -4
- package/src/client/doc-page.css +134 -0
- package/src/client/doc-page.tsx +242 -0
- package/src/client/index.ts +18 -0
- package/src/client/panel-state.ts +105 -0
- package/src/client/problem-domains.ts +1 -1
- package/src/client/request.ts +36 -0
- package/src/client/styles.css +397 -54
- package/src/client/useFitScale.ts +15 -2
- package/src/client/wiki-type-groups.ts +86 -0
- package/src/convert/host.ts +68 -9
- package/src/convert/ingest.ts +61 -18
- package/src/convert/types.ts +2 -2
- package/src/diagnosis/cards.ts +120 -50
- package/src/diagnosis/run.ts +251 -0
- package/src/diagnosis/schema.ts +67 -26
- package/src/diagnosis/seed-source.ts +29 -4
- package/src/diagnosis/seed.ts +187 -85
- package/src/diagnosis/store.ts +310 -173
- package/src/diagnosis/types.ts +181 -16
- package/src/document-page.ts +51 -0
- package/src/extract-model.ts +254 -99
- package/src/extract.ts +35 -3
- package/src/fs-atomic.ts +41 -0
- package/src/index.ts +499 -62
- package/src/intent/types.ts +1 -1
- package/src/knowledge-bases.ts +50 -49
- package/src/layout.ts +4 -4
- package/src/migrate.ts +2 -2
- package/src/model-text.ts +126 -0
- package/src/present.ts +367 -0
- package/src/recall-rank.ts +57 -2
- package/src/runtime.ts +2802 -293
- package/src/settings-schema.ts +2 -0
- package/src/source-images.ts +326 -0
- package/src/types.ts +446 -45
- package/src/wiki-finalize.ts +310 -0
- package/src/wiki-types.ts +28 -32
|
@@ -1,120 +1,93 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* 「Wiki 抽取流程」卡片(issue 0024
|
|
2
|
+
* 「Wiki 抽取流程」卡片(issue 0024;0049 重写文案)。
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* 它把「原文件 → Wiki 卡片」画成四段。**这张图是给人看的契约**,所以 0049 做了三件
|
|
5
|
+
* 与内容有关的事:
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
7
|
+
* 1. **段名改成动作**(抽取实体 / 合并实体 / 写入 wiki / 编译结果)。原来的
|
|
8
|
+
* `Pass 0` / `归一` / `落卡` / `Finalize` 是实现的内部词,人得先学一遍才知道在说什么。
|
|
9
|
+
* 2. **撤掉状态徽标**(已实现 / 部分实现 / 待实现)。四段都实现了,徽标只剩下噪音;
|
|
10
|
+
* 哪一格真的没做完,由「架构」那一页统一说,不在这一张卡上重复一遍。
|
|
11
|
+
* 3. **删掉实现细节**(指纹、slug 命名空间、图上的边叫什么、WeKnora 的四段对应),
|
|
12
|
+
* 只留「这一段吃什么、吐什么、做哪几件事」。要看细节有 README 与架构页。
|
|
10
13
|
*/
|
|
11
14
|
|
|
12
15
|
import type { ReactNode } from 'react'
|
|
13
16
|
import {
|
|
14
17
|
ArrowDown, Box, Check, FileText, GitBranch, Layers3, RefreshCw, ShieldCheck, Sparkles, Wrench,
|
|
15
18
|
} from '@tita-data-agent/ui/icons'
|
|
16
|
-
import {
|
|
19
|
+
import { Card, cn } from '@tita-data-agent/ui/components'
|
|
17
20
|
import { styles } from './styles.ts'
|
|
18
21
|
|
|
19
|
-
type StageStatus = 'done' | 'partial' | 'todo'
|
|
20
|
-
|
|
21
22
|
interface Stage {
|
|
22
23
|
id: string
|
|
23
24
|
icon: typeof FileText
|
|
24
25
|
tone: 'blue' | 'violet' | 'green' | 'amber'
|
|
25
|
-
pass
|
|
26
|
-
|
|
26
|
+
/** 段名:**动词**,不是实现里的 pass 名。 */
|
|
27
|
+
name: string
|
|
27
28
|
/** 这一段的输入 → 输出。 */
|
|
28
29
|
io: string
|
|
29
|
-
/**
|
|
30
|
+
/** 这一段做哪几件事(`**…**` 会被渲染成粗体)。 */
|
|
30
31
|
body: string[]
|
|
31
|
-
/**
|
|
32
|
-
|
|
33
|
-
/** 与 WeKnora 四阶段的对应关系。 */
|
|
34
|
-
weknora: string
|
|
35
|
-
status: StageStatus
|
|
36
|
-
statusNote: string
|
|
32
|
+
/** 这一段的模型参与情况,一句话。 */
|
|
33
|
+
model: string
|
|
37
34
|
}
|
|
38
35
|
|
|
39
36
|
const STAGES: Stage[] = [
|
|
40
37
|
{
|
|
41
|
-
id: '
|
|
38
|
+
id: 'extract',
|
|
42
39
|
icon: Sparkles,
|
|
43
40
|
tone: 'violet',
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
io: '一个 SourceRaw → 候选项列表',
|
|
41
|
+
name: '抽取实体',
|
|
42
|
+
io: '一份原始文档 → 实体清单',
|
|
47
43
|
body: [
|
|
48
|
-
'
|
|
49
|
-
'
|
|
50
|
-
'
|
|
44
|
+
'模型按卡片类型的**必填小节与字段**写正文,并给一句话摘要。',
|
|
45
|
+
'规则同时跑一遍:抓小节标题、正文里的 `[[链接]]`,以及文档自己声明的关系。',
|
|
46
|
+
'模型不可用时整段退回规则抽取,并在报告里说清原因 —— 不静默降级。',
|
|
51
47
|
],
|
|
52
|
-
|
|
53
|
-
weknora: '对应它的 Pass 0(抽 entities + concepts,强制复用已有 slug)。',
|
|
54
|
-
status: 'partial',
|
|
55
|
-
statusNote: '已实现**规则抽取**(正文标题、[[链接]]、frontmatter 的 candidates / entities / concepts / relations),编译时自动跑、增量跳过没变的来源;模型驱动的候选工具(propose_wiki_cards)还没有 —— 所以「抽什么」目前由文档结构决定,不是由模型判断。',
|
|
48
|
+
model: '模型 + 规则',
|
|
56
49
|
},
|
|
57
50
|
{
|
|
58
|
-
id: '
|
|
51
|
+
id: 'merge',
|
|
59
52
|
icon: GitBranch,
|
|
60
53
|
tone: 'blue',
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
io: '候选项列表 + 库内已有卡片 → 去重后的落点',
|
|
54
|
+
name: '合并实体',
|
|
55
|
+
io: '实体清单 + 库里已有的卡片 → 落点',
|
|
64
56
|
body: [
|
|
65
|
-
'
|
|
66
|
-
'
|
|
67
|
-
'
|
|
68
|
-
'WeKnora 的「批内 Taxonomy 规划」在单文档场景退化成**库内复用**:优先沿用已有的类型与命名,不为了一个新页面另起一套。',
|
|
57
|
+
'**同指一物就并进已有卡片**,不新建。判据是类型 + 名称 / 标题 / 别名。',
|
|
58
|
+
'模型再判一次语义:同一件东西换个说法,不该落成两张卡。',
|
|
59
|
+
'**相关 ≠ 相同**:只是相关的话题不合并,关系另走图谱。',
|
|
69
60
|
],
|
|
70
|
-
|
|
71
|
-
weknora: '对应它的 Taxonomy 规划 + WikiDeduplicationPrompt(related ≠ same);批内统筹改为库内复用。',
|
|
72
|
-
status: 'done',
|
|
73
|
-
statusNote: '已实现:按 entityId / title / metadata.aliases 建别名索引判重,同指一物就合并 source_refs(重复的出处不会写第二遍),关系候选不参与合并。',
|
|
61
|
+
model: '模型 + 规则',
|
|
74
62
|
},
|
|
75
63
|
{
|
|
76
64
|
id: 'write',
|
|
77
65
|
icon: FileText,
|
|
78
66
|
tone: 'green',
|
|
79
|
-
|
|
80
|
-
title: '写卡片:命中的增量合并,没命中的按模板新建',
|
|
67
|
+
name: '写入 wiki',
|
|
81
68
|
io: '落点 + 证据 → 02_wiki/<类型>/<id>.md',
|
|
82
69
|
body: [
|
|
83
|
-
'
|
|
84
|
-
'
|
|
85
|
-
'
|
|
86
|
-
'正文必须**严格接地**:只写证据里有的东西,去重,不写自链接。',
|
|
70
|
+
'**直接入库**,状态是未审核 —— 入库在前、审核在后,不需要谁先确认。',
|
|
71
|
+
'缺必填小节或字段也照写,只在卡片上标成「待补」。',
|
|
72
|
+
'每个来源都必须真实存在;**正文只读**,编译追加,人只能加备注。',
|
|
87
73
|
],
|
|
88
|
-
|
|
89
|
-
weknora: '对应它的 Reduce:按 slug 增量合并页面,提示词硬约束接地 / 禁幻觉 / 去重 / 禁自链接。',
|
|
90
|
-
status: 'done',
|
|
91
|
-
statusNote: '已实现:write_knowledge_card + 类型 schema 与三层校验(0024)',
|
|
74
|
+
model: '编译落盘',
|
|
92
75
|
},
|
|
93
76
|
{
|
|
94
|
-
id: '
|
|
77
|
+
id: 'compile',
|
|
95
78
|
icon: Wrench,
|
|
96
79
|
tone: 'amber',
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
io: '02_wiki → wikiNotes / 图谱 / 待补清单',
|
|
80
|
+
name: '编译结果',
|
|
81
|
+
io: '卡片 → 召回单元 / 图谱 / 索引页',
|
|
100
82
|
body: [
|
|
101
|
-
'
|
|
102
|
-
'
|
|
103
|
-
'
|
|
83
|
+
'切召回单元:长卡片按小节切开,图片跟着讲它的那一段走。',
|
|
84
|
+
'装配图谱:卡片到来源的溯源边,以及卡片之间的关系边。',
|
|
85
|
+
'给每张卡片补一块「相关」,把断链写成引用问题,并写一份索引页。',
|
|
104
86
|
],
|
|
105
|
-
|
|
106
|
-
weknora: '对应它的 Finalize(重建索引 / 清死链 / 补交叉链接,纯 SQL + 图算法)。',
|
|
107
|
-
status: 'partial',
|
|
108
|
-
statusNote: '部分实现:三层质检已实现;索引页 / 死链 / 交叉链接待实现',
|
|
87
|
+
model: '不调模型',
|
|
109
88
|
},
|
|
110
89
|
]
|
|
111
90
|
|
|
112
|
-
const STATUS_META: Record<StageStatus, { label: string; tone: 'success' | 'warning' | 'neutral' }> = {
|
|
113
|
-
done: { label: '已实现', tone: 'success' },
|
|
114
|
-
partial: { label: '部分实现', tone: 'warning' },
|
|
115
|
-
todo: { label: '待实现', tone: 'neutral' },
|
|
116
|
-
}
|
|
117
|
-
|
|
118
91
|
const TONE_CLASS: Record<Stage['tone'], string> = {
|
|
119
92
|
blue: styles.wikiFlowBlue,
|
|
120
93
|
violet: styles.wikiFlowViolet,
|
|
@@ -122,22 +95,22 @@ const TONE_CLASS: Record<Stage['tone'], string> = {
|
|
|
122
95
|
amber: styles.wikiFlowAmber,
|
|
123
96
|
}
|
|
124
97
|
|
|
125
|
-
/**
|
|
98
|
+
/** 三条判定规则。它们决定了卡片会不会被拆成两张,所以常驻在这一屏。 */
|
|
126
99
|
const RULES: Array<{ order: string; title: string; body: string }> = [
|
|
127
100
|
{
|
|
128
101
|
order: '1',
|
|
129
|
-
title: '
|
|
130
|
-
body: '
|
|
102
|
+
title: '类型在抽取时就要定',
|
|
103
|
+
body: '卡片的身份是「类型 + 名称」。类型晚定一步,名称就得重算一次。',
|
|
131
104
|
},
|
|
132
105
|
{
|
|
133
106
|
order: '2',
|
|
134
|
-
title: '
|
|
135
|
-
body: '
|
|
107
|
+
title: '类型只能来自注册表',
|
|
108
|
+
body: '不命中就落 `concept`,不要自创 —— 自创等于这张卡片没有 schema。',
|
|
136
109
|
},
|
|
137
110
|
{
|
|
138
111
|
order: '3',
|
|
139
|
-
title: '
|
|
140
|
-
body: '
|
|
112
|
+
title: '判重按名称与别名,不按标题',
|
|
113
|
+
body: '标题可以改,名称是稳定标识。相关不等于相同:相近的话题不要合并。',
|
|
141
114
|
},
|
|
142
115
|
]
|
|
143
116
|
|
|
@@ -150,13 +123,11 @@ export function WikiFlowCard(): ReactNode {
|
|
|
150
123
|
return <Card className={styles.kbCard}>
|
|
151
124
|
<div className={styles.kbCardHead}>
|
|
152
125
|
<div><h3><RefreshCw size={13} />Wiki 抽取流程(原文件 → Wiki)</h3></div>
|
|
153
|
-
<span className={styles.kbCount}>4
|
|
126
|
+
<span className={styles.kbCount}>4 段</span>
|
|
154
127
|
</div>
|
|
155
128
|
<p className={styles.kbHint}>
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
前两段现在由编译管线用**规则**完成(编译时自动跑,正文没变的来源按指纹跳过);
|
|
159
|
-
设计里那两次模型调用(候选抽取工具、归一提示词)还没有,所以这两段标的是「部分实现」。
|
|
129
|
+
一份文档变成卡片要走的四段。<b>合并是这条链路的中心</b>:它决定这次是新建一页还是补进已有页面。
|
|
130
|
+
四段都在编译时自动跑,正文没变的来源按指纹跳过。
|
|
160
131
|
</p>
|
|
161
132
|
|
|
162
133
|
<div className={styles.wikiFlow}>
|
|
@@ -164,28 +135,23 @@ export function WikiFlowCard(): ReactNode {
|
|
|
164
135
|
<FileText size={14} />
|
|
165
136
|
<span>
|
|
166
137
|
<strong>SourceRaw</strong>
|
|
167
|
-
<small>
|
|
138
|
+
<small>01_source_raw/*.md — 原始文档,本身不进召回</small>
|
|
168
139
|
</span>
|
|
169
140
|
</div>
|
|
170
141
|
|
|
171
|
-
{STAGES.map(stage => {
|
|
142
|
+
{STAGES.map((stage, index) => {
|
|
172
143
|
const Icon = stage.icon
|
|
173
|
-
const status = STATUS_META[stage.status]
|
|
174
144
|
return <div className={styles.wikiFlowStageWrap} key={stage.id}>
|
|
175
145
|
<span className={styles.wikiFlowArrow} aria-hidden="true"><ArrowDown size={14} /></span>
|
|
176
146
|
<div className={cn(styles.wikiFlowStage, TONE_CLASS[stage.tone])}>
|
|
177
147
|
<div className={styles.wikiFlowStageHead}>
|
|
178
|
-
<span className={styles.wikiFlowPass}><Icon size={13} />{stage.
|
|
179
|
-
<
|
|
180
|
-
<Badge tone={status.tone}>{status.label}</Badge>
|
|
181
|
-
<span className={styles.wikiFlowLlm}>{stage.llm ? '调用模型' : '不调用模型'}</span>
|
|
148
|
+
<span className={styles.wikiFlowPass}><Icon size={13} />{index + 1} · {stage.name}</span>
|
|
149
|
+
<span className={styles.wikiFlowLlm}>{stage.model}</span>
|
|
182
150
|
</div>
|
|
183
151
|
<p className={styles.wikiFlowIo}>{stage.io}</p>
|
|
184
152
|
<ul className={styles.wikiFlowBody}>
|
|
185
153
|
{stage.body.map(line => <li key={line}>{rich(line)}</li>)}
|
|
186
154
|
</ul>
|
|
187
|
-
<p className={styles.wikiFlowNote}><b>对应 WeKnora:</b>{stage.weknora}</p>
|
|
188
|
-
<p className={styles.wikiFlowNote}>{stage.statusNote}</p>
|
|
189
155
|
</div>
|
|
190
156
|
</div>
|
|
191
157
|
})}
|
|
@@ -194,7 +160,7 @@ export function WikiFlowCard(): ReactNode {
|
|
|
194
160
|
<div className={styles.wikiFlowSink}>
|
|
195
161
|
<Layers3 size={14} />
|
|
196
162
|
<span>
|
|
197
|
-
<strong>Wiki 卡片 →
|
|
163
|
+
<strong>Wiki 卡片 → 召回单元 / 向量 / 图谱</strong>
|
|
198
164
|
<small>02_wiki/<类型>/<id>.md → 03_compiled/* — 召回单元在编译段才产生</small>
|
|
199
165
|
</span>
|
|
200
166
|
</div>
|
|
@@ -213,11 +179,7 @@ export function WikiFlowCard(): ReactNode {
|
|
|
213
179
|
|
|
214
180
|
<div className={styles.wikiFlowDiff}>
|
|
215
181
|
<Box size={13} />
|
|
216
|
-
<span>
|
|
217
|
-
WeKnora 是<b>知识库级后台管道</b>(Redis 队列 + 每 KB 并发治理 + Neo4j),本仓库不照抄:
|
|
218
|
-
模型调用一律经 Agent,所以前两段由工具驱动、由人复核。<b>抽取粒度</b>
|
|
219
|
-
(focused / standard / exhaustive)这个旋钮值得抄——它把"抽多少"变成用户能理解的东西。
|
|
220
|
-
</span>
|
|
182
|
+
<span>四段与腾讯 WeKnora 的 Map-Reduce 四段对应。差别在单文档:它的批内统筹退化成按库复用已有类型,它的后台管道(队列 + 图数据库)不照抄 —— 模型调用一律经 Agent。</span>
|
|
221
183
|
</div>
|
|
222
184
|
</Card>
|
|
223
185
|
}
|