dsh-data-domain-knowledge 0.1.0-alpha.12 → 0.1.0-alpha.13
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 +15 -7
- package/lib/client.js +64 -7
- package/lib/types/environment/install.d.ts +2 -1
- package/lib/types/environment/install.d.ts.map +1 -1
- package/lib/types/environment/install.js +20 -11
- package/lib/types/environment/install.js.map +1 -1
- package/lib/types/environment/manifest.d.ts +203 -12
- package/lib/types/environment/manifest.d.ts.map +1 -1
- package/lib/types/environment/manifest.js +23 -21
- package/lib/types/environment/manifest.js.map +1 -1
- package/lib/types/environment/model-catalog.d.ts +191 -0
- package/lib/types/environment/model-catalog.d.ts.map +1 -0
- package/lib/types/environment/model-catalog.js +91 -0
- package/lib/types/environment/model-catalog.js.map +1 -0
- package/lib/types/environment/selection.d.ts +9 -0
- package/lib/types/environment/selection.d.ts.map +1 -0
- package/lib/types/environment/selection.js +29 -0
- package/lib/types/environment/selection.js.map +1 -0
- package/lib/types/environment/service.d.ts +1 -1
- package/lib/types/environment/service.d.ts.map +1 -1
- package/lib/types/environment/service.js +54 -33
- package/lib/types/environment/service.js.map +1 -1
- package/lib/types/environment/types.d.ts +7 -1
- package/lib/types/environment/types.d.ts.map +1 -1
- package/lib/types/images.d.ts +26 -0
- package/lib/types/images.d.ts.map +1 -0
- package/lib/types/images.js +196 -0
- package/lib/types/images.js.map +1 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +25 -3
- package/lib/types/index.js.map +1 -1
- package/lib/types/layout.d.ts +2 -0
- package/lib/types/layout.d.ts.map +1 -1
- package/lib/types/layout.js +2 -0
- package/lib/types/layout.js.map +1 -1
- package/lib/types/runtime.d.ts +9 -3
- package/lib/types/runtime.d.ts.map +1 -1
- package/lib/types/runtime.js +73 -16
- package/lib/types/runtime.js.map +1 -1
- package/lib/types/store/migrate.d.ts.map +1 -1
- package/lib/types/store/migrate.js +5 -4
- package/lib/types/store/migrate.js.map +1 -1
- package/lib/types/types.d.ts +1 -1
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/types.js +3 -4
- package/lib/types/types.js.map +1 -1
- package/package.json +1 -1
- package/python/prepare-models.py +1 -1
- package/scripts/setup-embedding.sh +11 -2
- package/src/client/EnvironmentSetup.tsx +54 -8
- package/src/environment/install.ts +22 -10
- package/src/environment/manifest.ts +25 -22
- package/src/environment/model-catalog.ts +105 -0
- package/src/environment/selection.ts +29 -0
- package/src/environment/service.ts +46 -26
- package/src/environment/types.ts +5 -1
- package/src/images.ts +203 -0
- package/src/index.ts +30 -4
- package/src/layout.ts +2 -0
- package/src/runtime.ts +68 -16
- package/src/store/migrate.ts +4 -4
- package/src/types.ts +4 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/environment/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/environment/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEzF,wEAAwE;AACxE,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,mBAAmB,EAAE,0CAA0C;IAC/D,kBAAkB,EAAE,0CAA0C;IAC9D,mBAAmB,EAAE,0CAA0C;IAC/D,6BAA6B,EAAE,0CAA0C;IACzE,mBAAmB,EAAE,0CAA0C;IAC/D,mBAAmB,EAAE,0CAA0C;IAC/D,oBAAoB,EAAE,0CAA0C;IAChE,qBAAqB,EAAE,0CAA0C;IACjE,mBAAmB,EAAE,0CAA0C;IAC/D,mBAAmB,EAAE,0CAA0C;CACvD,CAAA;AAEV,MAAM,UAAU,kBAAkB,CAAC,SAAS,GAAG,uBAAuB;IACpE,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;IACrD,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAC5C,OAAO;QACL,EAAE,GAAG,SAAS,EAAE,IAAI,EAAE,WAAoB,EAAE,QAAQ,EAAE,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE;QACrF,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,QAAiB,EAAE,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;KAC7E,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;AACnD,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAA;AAClC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAA"}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
/** Models supported by the local embedding and reranking workers. Revisions are pinned in manifest.ts. */
|
|
2
|
+
export declare const EMBEDDING_MODELS: readonly [{
|
|
3
|
+
readonly id: "bge-small-zh-v1.5";
|
|
4
|
+
readonly repo: "BAAI/bge-small-zh-v1.5";
|
|
5
|
+
readonly directory: "bge-small-zh-v1.5";
|
|
6
|
+
readonly label: "BGE Small 中文";
|
|
7
|
+
readonly dimension: 512;
|
|
8
|
+
readonly download: "约 96 MB";
|
|
9
|
+
readonly description: "资源占用最低,适合先跑通本地知识检索。";
|
|
10
|
+
}, {
|
|
11
|
+
readonly id: "bge-base-zh-v1.5";
|
|
12
|
+
readonly repo: "BAAI/bge-base-zh-v1.5";
|
|
13
|
+
readonly directory: "bge-base-zh-v1.5";
|
|
14
|
+
readonly label: "BGE Base 中文";
|
|
15
|
+
readonly dimension: 768;
|
|
16
|
+
readonly download: "约 409 MB";
|
|
17
|
+
readonly description: "效果与资源占用较均衡。";
|
|
18
|
+
}, {
|
|
19
|
+
readonly id: "bge-large-zh-v1.5";
|
|
20
|
+
readonly repo: "BAAI/bge-large-zh-v1.5";
|
|
21
|
+
readonly directory: "bge-large-zh-v1.5";
|
|
22
|
+
readonly label: "BGE Large 中文";
|
|
23
|
+
readonly dimension: 1024;
|
|
24
|
+
readonly download: "约 1.3 GB";
|
|
25
|
+
readonly description: "中文向量效果优先,需要更多内存与磁盘。";
|
|
26
|
+
}, {
|
|
27
|
+
readonly id: "wemm-embedding-2b-quantized";
|
|
28
|
+
readonly repo: "ewin-reg/WeMM-Embedding-2B-Quantized";
|
|
29
|
+
readonly directory: "WeMM-Embedding-2B-Quantized";
|
|
30
|
+
readonly label: "WeMM Embedding 2B 社区量化版";
|
|
31
|
+
readonly dimension: 2048;
|
|
32
|
+
readonly download: "约 1.8 GB";
|
|
33
|
+
readonly description: "社区维护的 INT4 / FP8 量化模型,非腾讯官方发布;模型卡标注 license: other,请查看协议。";
|
|
34
|
+
}, {
|
|
35
|
+
readonly id: "wemm-embedding-2b";
|
|
36
|
+
readonly repo: "tencent/WeMM-Embedding-2B";
|
|
37
|
+
readonly directory: "WeMM-Embedding-2B";
|
|
38
|
+
readonly label: "腾讯 WeMM Embedding 2B(BF16)";
|
|
39
|
+
readonly dimension: 2048;
|
|
40
|
+
readonly download: "约 5.5 GB";
|
|
41
|
+
readonly description: "多模态向量模型,支持文本和图片;下载与推理资源占用较高。";
|
|
42
|
+
}];
|
|
43
|
+
export declare const RERANK_MODELS: readonly [{
|
|
44
|
+
readonly id: "bge-reranker-base";
|
|
45
|
+
readonly repo: "BAAI/bge-reranker-base";
|
|
46
|
+
readonly directory: "bge-reranker-base";
|
|
47
|
+
readonly label: "BGE Reranker Base";
|
|
48
|
+
readonly download: "约 1.1 GB";
|
|
49
|
+
readonly description: "中文重排的轻量选项。";
|
|
50
|
+
}, {
|
|
51
|
+
readonly id: "qwen3-reranker-0.6b";
|
|
52
|
+
readonly repo: "Qwen/Qwen3-Reranker-0.6B";
|
|
53
|
+
readonly directory: "Qwen3-Reranker-0.6B";
|
|
54
|
+
readonly label: "Qwen3 Reranker 0.6B";
|
|
55
|
+
readonly download: "约 1.2 GB";
|
|
56
|
+
readonly description: "支持 100 多种语言,适合先试用 Qwen 重排。";
|
|
57
|
+
}, {
|
|
58
|
+
readonly id: "bge-reranker-large";
|
|
59
|
+
readonly repo: "BAAI/bge-reranker-large";
|
|
60
|
+
readonly directory: "bge-reranker-large";
|
|
61
|
+
readonly label: "BGE Reranker Large";
|
|
62
|
+
readonly download: "约 2.2 GB";
|
|
63
|
+
readonly description: "中文和英文重排效果优先,推理速度较慢。";
|
|
64
|
+
}, {
|
|
65
|
+
readonly id: "qwen3-reranker-4b";
|
|
66
|
+
readonly repo: "Qwen/Qwen3-Reranker-4B";
|
|
67
|
+
readonly directory: "Qwen3-Reranker-4B";
|
|
68
|
+
readonly label: "Qwen3 Reranker 4B";
|
|
69
|
+
readonly download: "约 8.1 GB";
|
|
70
|
+
readonly description: "Qwen 中档重排模型;请先确认磁盘与内存充足。";
|
|
71
|
+
}, {
|
|
72
|
+
readonly id: "qwen3-reranker-8b";
|
|
73
|
+
readonly repo: "Qwen/Qwen3-Reranker-8B";
|
|
74
|
+
readonly directory: "Qwen3-Reranker-8B";
|
|
75
|
+
readonly label: "Qwen3 Reranker 8B";
|
|
76
|
+
readonly download: "约 16.4 GB";
|
|
77
|
+
readonly description: "资源占用最高;下载前请确认有足够磁盘与内存。";
|
|
78
|
+
}];
|
|
79
|
+
export type EmbeddingModelId = (typeof EMBEDDING_MODELS)[number]['id'];
|
|
80
|
+
export type RerankModelId = (typeof RERANK_MODELS)[number]['id'];
|
|
81
|
+
export interface ModelSelection {
|
|
82
|
+
embedding: EmbeddingModelId;
|
|
83
|
+
rerank: RerankModelId;
|
|
84
|
+
}
|
|
85
|
+
export interface ModelOptionView {
|
|
86
|
+
id: string;
|
|
87
|
+
label: string;
|
|
88
|
+
dimension?: number;
|
|
89
|
+
download: string;
|
|
90
|
+
description: string;
|
|
91
|
+
modelCardUrl?: string;
|
|
92
|
+
}
|
|
93
|
+
export declare const DEFAULT_MODEL_SELECTION: ModelSelection;
|
|
94
|
+
export declare function isModelSelection(value: unknown): value is ModelSelection;
|
|
95
|
+
export declare function parseModelSelection(value: unknown, fallback?: ModelSelection): ModelSelection;
|
|
96
|
+
export declare function embeddingModel(id: EmbeddingModelId): {
|
|
97
|
+
readonly id: "bge-small-zh-v1.5";
|
|
98
|
+
readonly repo: "BAAI/bge-small-zh-v1.5";
|
|
99
|
+
readonly directory: "bge-small-zh-v1.5";
|
|
100
|
+
readonly label: "BGE Small 中文";
|
|
101
|
+
readonly dimension: 512;
|
|
102
|
+
readonly download: "约 96 MB";
|
|
103
|
+
readonly description: "资源占用最低,适合先跑通本地知识检索。";
|
|
104
|
+
} | {
|
|
105
|
+
readonly id: "bge-base-zh-v1.5";
|
|
106
|
+
readonly repo: "BAAI/bge-base-zh-v1.5";
|
|
107
|
+
readonly directory: "bge-base-zh-v1.5";
|
|
108
|
+
readonly label: "BGE Base 中文";
|
|
109
|
+
readonly dimension: 768;
|
|
110
|
+
readonly download: "约 409 MB";
|
|
111
|
+
readonly description: "效果与资源占用较均衡。";
|
|
112
|
+
} | {
|
|
113
|
+
readonly id: "bge-large-zh-v1.5";
|
|
114
|
+
readonly repo: "BAAI/bge-large-zh-v1.5";
|
|
115
|
+
readonly directory: "bge-large-zh-v1.5";
|
|
116
|
+
readonly label: "BGE Large 中文";
|
|
117
|
+
readonly dimension: 1024;
|
|
118
|
+
readonly download: "约 1.3 GB";
|
|
119
|
+
readonly description: "中文向量效果优先,需要更多内存与磁盘。";
|
|
120
|
+
} | {
|
|
121
|
+
readonly id: "wemm-embedding-2b-quantized";
|
|
122
|
+
readonly repo: "ewin-reg/WeMM-Embedding-2B-Quantized";
|
|
123
|
+
readonly directory: "WeMM-Embedding-2B-Quantized";
|
|
124
|
+
readonly label: "WeMM Embedding 2B 社区量化版";
|
|
125
|
+
readonly dimension: 2048;
|
|
126
|
+
readonly download: "约 1.8 GB";
|
|
127
|
+
readonly description: "社区维护的 INT4 / FP8 量化模型,非腾讯官方发布;模型卡标注 license: other,请查看协议。";
|
|
128
|
+
} | {
|
|
129
|
+
readonly id: "wemm-embedding-2b";
|
|
130
|
+
readonly repo: "tencent/WeMM-Embedding-2B";
|
|
131
|
+
readonly directory: "WeMM-Embedding-2B";
|
|
132
|
+
readonly label: "腾讯 WeMM Embedding 2B(BF16)";
|
|
133
|
+
readonly dimension: 2048;
|
|
134
|
+
readonly download: "约 5.5 GB";
|
|
135
|
+
readonly description: "多模态向量模型,支持文本和图片;下载与推理资源占用较高。";
|
|
136
|
+
};
|
|
137
|
+
export declare function rerankModel(id: RerankModelId): {
|
|
138
|
+
readonly id: "bge-reranker-base";
|
|
139
|
+
readonly repo: "BAAI/bge-reranker-base";
|
|
140
|
+
readonly directory: "bge-reranker-base";
|
|
141
|
+
readonly label: "BGE Reranker Base";
|
|
142
|
+
readonly download: "约 1.1 GB";
|
|
143
|
+
readonly description: "中文重排的轻量选项。";
|
|
144
|
+
} | {
|
|
145
|
+
readonly id: "qwen3-reranker-0.6b";
|
|
146
|
+
readonly repo: "Qwen/Qwen3-Reranker-0.6B";
|
|
147
|
+
readonly directory: "Qwen3-Reranker-0.6B";
|
|
148
|
+
readonly label: "Qwen3 Reranker 0.6B";
|
|
149
|
+
readonly download: "约 1.2 GB";
|
|
150
|
+
readonly description: "支持 100 多种语言,适合先试用 Qwen 重排。";
|
|
151
|
+
} | {
|
|
152
|
+
readonly id: "bge-reranker-large";
|
|
153
|
+
readonly repo: "BAAI/bge-reranker-large";
|
|
154
|
+
readonly directory: "bge-reranker-large";
|
|
155
|
+
readonly label: "BGE Reranker Large";
|
|
156
|
+
readonly download: "约 2.2 GB";
|
|
157
|
+
readonly description: "中文和英文重排效果优先,推理速度较慢。";
|
|
158
|
+
} | {
|
|
159
|
+
readonly id: "qwen3-reranker-4b";
|
|
160
|
+
readonly repo: "Qwen/Qwen3-Reranker-4B";
|
|
161
|
+
readonly directory: "Qwen3-Reranker-4B";
|
|
162
|
+
readonly label: "Qwen3 Reranker 4B";
|
|
163
|
+
readonly download: "约 8.1 GB";
|
|
164
|
+
readonly description: "Qwen 中档重排模型;请先确认磁盘与内存充足。";
|
|
165
|
+
} | {
|
|
166
|
+
readonly id: "qwen3-reranker-8b";
|
|
167
|
+
readonly repo: "Qwen/Qwen3-Reranker-8B";
|
|
168
|
+
readonly directory: "Qwen3-Reranker-8B";
|
|
169
|
+
readonly label: "Qwen3 Reranker 8B";
|
|
170
|
+
readonly download: "约 16.4 GB";
|
|
171
|
+
readonly description: "资源占用最高;下载前请确认有足够磁盘与内存。";
|
|
172
|
+
};
|
|
173
|
+
export declare function modelOptionsView(): {
|
|
174
|
+
embedding: {
|
|
175
|
+
dimension?: number | undefined;
|
|
176
|
+
id: string;
|
|
177
|
+
label: string;
|
|
178
|
+
download: string;
|
|
179
|
+
description: string;
|
|
180
|
+
modelCardUrl: string;
|
|
181
|
+
}[];
|
|
182
|
+
rerank: {
|
|
183
|
+
dimension?: number | undefined;
|
|
184
|
+
id: string;
|
|
185
|
+
label: string;
|
|
186
|
+
download: string;
|
|
187
|
+
description: string;
|
|
188
|
+
modelCardUrl: string;
|
|
189
|
+
}[];
|
|
190
|
+
};
|
|
191
|
+
//# sourceMappingURL=model-catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-catalog.d.ts","sourceRoot":"","sources":["../../../src/environment/model-catalog.ts"],"names":[],"mappings":"AAAA,0GAA0G;AAC1G,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0BnB,CAAA;AAEV,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0BhB,CAAA;AAEV,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAA;AACtE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAA;AAChE,MAAM,WAAW,cAAc;IAAG,SAAS,EAAE,gBAAgB,CAAC;IAAC,MAAM,EAAE,aAAa,CAAA;CAAE;AACtF,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AACD,eAAO,MAAM,uBAAuB,EAAE,cAGrC,CAAA;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAKxE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,iBAA0B,GAAG,cAAc,CAItG;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAElD;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE5C;AAED,wBAAgB,gBAAgB;;;;;;;;;;;;;;;;;EAU/B"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/** Models supported by the local embedding and reranking workers. Revisions are pinned in manifest.ts. */
|
|
2
|
+
export const EMBEDDING_MODELS = [
|
|
3
|
+
{
|
|
4
|
+
id: 'bge-small-zh-v1.5', repo: 'BAAI/bge-small-zh-v1.5', directory: 'bge-small-zh-v1.5',
|
|
5
|
+
label: 'BGE Small 中文', dimension: 512, download: '约 96 MB',
|
|
6
|
+
description: '资源占用最低,适合先跑通本地知识检索。',
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
id: 'bge-base-zh-v1.5', repo: 'BAAI/bge-base-zh-v1.5', directory: 'bge-base-zh-v1.5',
|
|
10
|
+
label: 'BGE Base 中文', dimension: 768, download: '约 409 MB',
|
|
11
|
+
description: '效果与资源占用较均衡。',
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
id: 'bge-large-zh-v1.5', repo: 'BAAI/bge-large-zh-v1.5', directory: 'bge-large-zh-v1.5',
|
|
15
|
+
label: 'BGE Large 中文', dimension: 1024, download: '约 1.3 GB',
|
|
16
|
+
description: '中文向量效果优先,需要更多内存与磁盘。',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
id: 'wemm-embedding-2b-quantized', repo: 'ewin-reg/WeMM-Embedding-2B-Quantized', directory: 'WeMM-Embedding-2B-Quantized',
|
|
20
|
+
label: 'WeMM Embedding 2B 社区量化版', dimension: 2048, download: '约 1.8 GB',
|
|
21
|
+
description: '社区维护的 INT4 / FP8 量化模型,非腾讯官方发布;模型卡标注 license: other,请查看协议。',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
id: 'wemm-embedding-2b', repo: 'tencent/WeMM-Embedding-2B', directory: 'WeMM-Embedding-2B',
|
|
25
|
+
label: '腾讯 WeMM Embedding 2B(BF16)', dimension: 2048, download: '约 5.5 GB',
|
|
26
|
+
description: '多模态向量模型,支持文本和图片;下载与推理资源占用较高。',
|
|
27
|
+
},
|
|
28
|
+
];
|
|
29
|
+
export const RERANK_MODELS = [
|
|
30
|
+
{
|
|
31
|
+
id: 'bge-reranker-base', repo: 'BAAI/bge-reranker-base', directory: 'bge-reranker-base',
|
|
32
|
+
label: 'BGE Reranker Base', download: '约 1.1 GB',
|
|
33
|
+
description: '中文重排的轻量选项。',
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
id: 'qwen3-reranker-0.6b', repo: 'Qwen/Qwen3-Reranker-0.6B', directory: 'Qwen3-Reranker-0.6B',
|
|
37
|
+
label: 'Qwen3 Reranker 0.6B', download: '约 1.2 GB',
|
|
38
|
+
description: '支持 100 多种语言,适合先试用 Qwen 重排。',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
id: 'bge-reranker-large', repo: 'BAAI/bge-reranker-large', directory: 'bge-reranker-large',
|
|
42
|
+
label: 'BGE Reranker Large', download: '约 2.2 GB',
|
|
43
|
+
description: '中文和英文重排效果优先,推理速度较慢。',
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
id: 'qwen3-reranker-4b', repo: 'Qwen/Qwen3-Reranker-4B', directory: 'Qwen3-Reranker-4B',
|
|
47
|
+
label: 'Qwen3 Reranker 4B', download: '约 8.1 GB',
|
|
48
|
+
description: 'Qwen 中档重排模型;请先确认磁盘与内存充足。',
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
id: 'qwen3-reranker-8b', repo: 'Qwen/Qwen3-Reranker-8B', directory: 'Qwen3-Reranker-8B',
|
|
52
|
+
label: 'Qwen3 Reranker 8B', download: '约 16.4 GB',
|
|
53
|
+
description: '资源占用最高;下载前请确认有足够磁盘与内存。',
|
|
54
|
+
},
|
|
55
|
+
];
|
|
56
|
+
export const DEFAULT_MODEL_SELECTION = {
|
|
57
|
+
embedding: 'bge-small-zh-v1.5',
|
|
58
|
+
rerank: 'bge-reranker-base',
|
|
59
|
+
};
|
|
60
|
+
export function isModelSelection(value) {
|
|
61
|
+
if (!value || typeof value !== 'object')
|
|
62
|
+
return false;
|
|
63
|
+
const selection = value;
|
|
64
|
+
return EMBEDDING_MODELS.some(model => model.id === selection.embedding)
|
|
65
|
+
&& RERANK_MODELS.some(model => model.id === selection.rerank);
|
|
66
|
+
}
|
|
67
|
+
export function parseModelSelection(value, fallback = DEFAULT_MODEL_SELECTION) {
|
|
68
|
+
if (value === undefined || value === null)
|
|
69
|
+
return { ...fallback };
|
|
70
|
+
if (!isModelSelection(value))
|
|
71
|
+
throw new Error('模型选择无效,请重新选择向量模型和重排模型');
|
|
72
|
+
return { embedding: value.embedding, rerank: value.rerank };
|
|
73
|
+
}
|
|
74
|
+
export function embeddingModel(id) {
|
|
75
|
+
return EMBEDDING_MODELS.find(model => model.id === id);
|
|
76
|
+
}
|
|
77
|
+
export function rerankModel(id) {
|
|
78
|
+
return RERANK_MODELS.find(model => model.id === id);
|
|
79
|
+
}
|
|
80
|
+
export function modelOptionsView() {
|
|
81
|
+
const present = (model) => ({
|
|
82
|
+
id: model.id, label: model.label, download: model.download, description: model.description,
|
|
83
|
+
modelCardUrl: `https://huggingface.co/${model.repo}`,
|
|
84
|
+
...('dimension' in model ? { dimension: model.dimension } : {}),
|
|
85
|
+
});
|
|
86
|
+
return {
|
|
87
|
+
embedding: EMBEDDING_MODELS.map(present),
|
|
88
|
+
rerank: RERANK_MODELS.map(present),
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=model-catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-catalog.js","sourceRoot":"","sources":["../../../src/environment/model-catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type ModelSelection } from './model-catalog.js';
|
|
2
|
+
export declare const MODEL_SELECTION_FILE = "environment-model-selection.json";
|
|
3
|
+
export declare function readModelSelection(resourceRoot: string): ModelSelection;
|
|
4
|
+
export declare function selectedEmbedding(resourceRoot: string | undefined): {
|
|
5
|
+
path?: string;
|
|
6
|
+
dimension?: number;
|
|
7
|
+
};
|
|
8
|
+
export declare function writeModelSelection(resourceRoot: string, selection: ModelSelection): Promise<void>;
|
|
9
|
+
//# sourceMappingURL=selection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../../src/environment/selection.ts"],"names":[],"mappings":"AAGA,OAAO,EAA6D,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnH,eAAO,MAAM,oBAAoB,qCAAqC,CAAA;AAEtE,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,CAMvE;AAED,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAKzG;AAED,wBAAsB,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAMxG"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
2
|
+
import { mkdir, rename, writeFile } from 'node:fs/promises';
|
|
3
|
+
import { join } from 'node:path';
|
|
4
|
+
import { DEFAULT_MODEL_SELECTION, embeddingModel, isModelSelection } from './model-catalog.js';
|
|
5
|
+
export const MODEL_SELECTION_FILE = 'environment-model-selection.json';
|
|
6
|
+
export function readModelSelection(resourceRoot) {
|
|
7
|
+
try {
|
|
8
|
+
const value = JSON.parse(readFileSync(join(resourceRoot, MODEL_SELECTION_FILE), 'utf8'));
|
|
9
|
+
if (isModelSelection(value))
|
|
10
|
+
return { embedding: value.embedding, rerank: value.rerank };
|
|
11
|
+
}
|
|
12
|
+
catch { /* first install or damaged selection: use the shipped defaults */ }
|
|
13
|
+
return { ...DEFAULT_MODEL_SELECTION };
|
|
14
|
+
}
|
|
15
|
+
export function selectedEmbedding(resourceRoot) {
|
|
16
|
+
if (!resourceRoot)
|
|
17
|
+
return {};
|
|
18
|
+
const model = embeddingModel(readModelSelection(resourceRoot).embedding);
|
|
19
|
+
const path = join(resourceRoot, 'models', model.directory);
|
|
20
|
+
return existsSync(path) ? { path, dimension: model.dimension } : {};
|
|
21
|
+
}
|
|
22
|
+
export async function writeModelSelection(resourceRoot, selection) {
|
|
23
|
+
await mkdir(resourceRoot, { recursive: true });
|
|
24
|
+
const destination = join(resourceRoot, MODEL_SELECTION_FILE);
|
|
25
|
+
const temporary = `${destination}.${process.pid}.tmp`;
|
|
26
|
+
await writeFile(temporary, `${JSON.stringify(selection, null, 2)}\n`, 'utf8');
|
|
27
|
+
await rename(temporary, destination);
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=selection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selection.js","sourceRoot":"","sources":["../../../src/environment/selection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,gBAAgB,EAAuB,MAAM,oBAAoB,CAAA;AAEnH,MAAM,CAAC,MAAM,oBAAoB,GAAG,kCAAkC,CAAA;AAEtE,MAAM,UAAU,kBAAkB,CAAC,YAAoB;IACrD,IAAI,CAAC;QACH,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;QACjG,IAAI,gBAAgB,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAA;IAC1F,CAAC;IAAC,MAAM,CAAC,CAAC,kEAAkE,CAAC,CAAC;IAC9E,OAAO,EAAE,GAAG,uBAAuB,EAAE,CAAA;AACvC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,YAAgC;IAChE,IAAI,CAAC,YAAY;QAAE,OAAO,EAAE,CAAA;IAC5B,MAAM,KAAK,GAAG,cAAc,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAA;IACxE,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IAC1D,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AACrE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,YAAoB,EAAE,SAAyB;IACvF,MAAM,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAA;IAC5D,MAAM,SAAS,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,MAAM,CAAA;IACrD,MAAM,SAAS,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC7E,MAAM,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;AACtC,CAAC"}
|
|
@@ -39,7 +39,7 @@ export declare class KnowledgeEnvironment {
|
|
|
39
39
|
check(deep?: boolean): Promise<EnvironmentReport>;
|
|
40
40
|
private item;
|
|
41
41
|
private performCheck;
|
|
42
|
-
start(action: 'check' | 'install'): EnvironmentView;
|
|
42
|
+
start(action: 'check' | 'install', requestedSelection?: unknown): EnvironmentView;
|
|
43
43
|
wait(): Promise<void>;
|
|
44
44
|
cancel(): void;
|
|
45
45
|
close(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/environment/service.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,0BAA0B,EAAoB,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/environment/service.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,0BAA0B,EAAoB,MAAM,cAAc,CAAA;AAG3E,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,KAAK,EAAsC,iBAAiB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAExG,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM;QAAE,MAAM,EAAE,sBAAsB,CAAC;QAAC,KAAK,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAA;IAC1H,KAAK,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,QAAQ,KAAK,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAClF,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,GAAG,CAAC,EAAE,OAAO,UAAU,CAAA;IACvB,OAAO,CAAC,EAAE,OAAO,0BAA0B,CAAA;CAC5C;AAmBD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAWlE;AAED,2EAA2E;AAC3E,qBAAa,oBAAoB;IAQnB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAPpC,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,GAAG,CAAC,CAAwB;IACpC,OAAO,CAAC,YAAY,CAAC,CAA4B;IACjD,OAAO,CAAC,IAAI,CAAC,CAAe;IAC5B,OAAO,CAAC,UAAU,CAAC,CAAiB;IACpC,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAQ;gBACK,OAAO,EAAE,kBAAkB;IAExD,OAAO,CAAC,WAAW;IAWnB,IAAI,IAAI,eAAe;IAKvB,UAAU,IAAI,IAAI;IAEZ,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IASnC,KAAK,CAAC,IAAI,UAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAQ9C,OAAO,CAAC,IAAI;YAIE,YAAY;IAqC1B,KAAK,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,EAAE,kBAAkB,CAAC,EAAE,OAAO,GAAG,eAAe;IAiE3E,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAC3B,MAAM,IAAI,IAAI;IAId,KAAK,IAAI,IAAI;CACd"}
|
|
@@ -4,11 +4,13 @@ import { mkdir, writeFile } from 'node:fs/promises';
|
|
|
4
4
|
import { dirname, isAbsolute, join } from 'node:path';
|
|
5
5
|
import { embeddingFingerprint } from '../compiler/embedding-identity.js';
|
|
6
6
|
import { installRequiredEnvironment, requirementsFile } from './install.js';
|
|
7
|
-
import {
|
|
7
|
+
import { modelOptionsView, parseModelSelection } from './model-catalog.js';
|
|
8
|
+
import { ENVIRONMENT_PROBE_VERSION } from './manifest.js';
|
|
8
9
|
import { runProcess } from './process.js';
|
|
9
|
-
|
|
10
|
+
import { readModelSelection, writeModelSelection } from './selection.js';
|
|
11
|
+
const labels = { embedding: '向量模型', rerank: '重排模型' };
|
|
10
12
|
function blankReport() {
|
|
11
|
-
return { state: 'unchecked', required: true, items: ['
|
|
13
|
+
return { state: 'unchecked', required: true, items: ['embedding', 'rerank'].map(id => ({ id, label: labels[id], state: 'unchecked', message: '首次使用前必须完成模型推理自检' })) };
|
|
12
14
|
}
|
|
13
15
|
function stamp(path) { try {
|
|
14
16
|
const value = statSync(path);
|
|
@@ -17,6 +19,23 @@ function stamp(path) { try {
|
|
|
17
19
|
catch {
|
|
18
20
|
return null;
|
|
19
21
|
} }
|
|
22
|
+
function sitePackagesPath(pythonPath) {
|
|
23
|
+
const environmentRoot = dirname(dirname(pythonPath));
|
|
24
|
+
const windows = join(environmentRoot, 'Lib', 'site-packages');
|
|
25
|
+
try {
|
|
26
|
+
if (statSync(windows).isDirectory())
|
|
27
|
+
return windows;
|
|
28
|
+
}
|
|
29
|
+
catch { /* use the platform-neutral lib layout */ }
|
|
30
|
+
const libraryRoot = join(environmentRoot, 'lib');
|
|
31
|
+
try {
|
|
32
|
+
const versionDirectory = readdirSync(libraryRoot).find(name => /^python\d+\.\d+$/.test(name));
|
|
33
|
+
if (versionDirectory)
|
|
34
|
+
return join(libraryRoot, versionDirectory, 'site-packages');
|
|
35
|
+
}
|
|
36
|
+
catch { /* no venv/site-packages directory */ }
|
|
37
|
+
return join(libraryRoot, 'site-packages');
|
|
38
|
+
}
|
|
20
39
|
export function modelFilesProblem(path) {
|
|
21
40
|
if (!isAbsolute(path))
|
|
22
41
|
return '尚未准备本地模型,请安装默认资源或填写已下载模型的完整路径';
|
|
@@ -56,13 +75,14 @@ export class KnowledgeEnvironment {
|
|
|
56
75
|
probe: ENVIRONMENT_PROBE_VERSION, paths,
|
|
57
76
|
provider: config.embeddingProvider, rerank: config.rerankProvider, device: config.embeddingDevice, dimension: config.embeddingDimension, endpoint: config.embeddingBaseUrl,
|
|
58
77
|
embedding: embeddingFingerprint(paths.embeddingModel, this.options.resourceRoot), rerankModel: embeddingFingerprint(paths.rerankModel, this.options.resourceRoot),
|
|
59
|
-
python: stamp(paths.python), venv: stamp(join(env, 'pyvenv.cfg')), dependencies: stamp(
|
|
78
|
+
python: stamp(paths.python), venv: stamp(join(env, 'pyvenv.cfg')), dependencies: stamp(sitePackagesPath(paths.python)), requirements: stamp(requirementsFile),
|
|
60
79
|
})).digest('hex');
|
|
61
80
|
}
|
|
62
81
|
view() {
|
|
63
82
|
if (!this.checkPending && this.report.state === 'ready' && this.report.fingerprint !== this.fingerprint())
|
|
64
83
|
this.report = blankReport();
|
|
65
|
-
|
|
84
|
+
const selection = readModelSelection(this.options.resourceRoot);
|
|
85
|
+
return structuredClone({ report: this.report, selection, models: modelOptionsView(), ...(this.job ? { job: this.job } : {}) });
|
|
66
86
|
}
|
|
67
87
|
invalidate() { if (!this.checkPending)
|
|
68
88
|
this.report = blankReport(); }
|
|
@@ -97,24 +117,6 @@ export class KnowledgeEnvironment {
|
|
|
97
117
|
const { config, paths } = this.options.snapshot();
|
|
98
118
|
this.report = blankReport();
|
|
99
119
|
this.report.state = 'checking';
|
|
100
|
-
this.item('python', { state: 'checking', path: paths.python, message: '检查解释器与依赖' });
|
|
101
|
-
let pythonReady = false;
|
|
102
|
-
try {
|
|
103
|
-
const output = await (this.options.run ?? runProcess)(paths.python, ['-c', PYTHON_PROBE], { signal, timeoutMs: 60_000 });
|
|
104
|
-
const line = output.split(/\r?\n/).filter(line => line.startsWith('{')).pop();
|
|
105
|
-
const result = JSON.parse(line ?? '{}');
|
|
106
|
-
if (!result.version || result.version[0] !== 3 || result.version[1] < 10 || result.version[1] >= 14)
|
|
107
|
-
throw new Error('需要 Python 3.10–3.13,默认安装 Python 3.11');
|
|
108
|
-
if (!Array.isArray(result.missing))
|
|
109
|
-
throw new Error('Python 自检返回格式不完整');
|
|
110
|
-
if (result.missing.length)
|
|
111
|
-
throw new Error(`依赖缺失或无法导入:${result.missing.join(';')}`);
|
|
112
|
-
pythonReady = true;
|
|
113
|
-
this.item('python', { state: 'ready', message: `Python ${result.version.join('.')} 与推理依赖可用` });
|
|
114
|
-
}
|
|
115
|
-
catch (cause) {
|
|
116
|
-
this.item('python', { state: 'failed', message: cause instanceof Error ? cause.message : String(cause) });
|
|
117
|
-
}
|
|
118
120
|
for (const id of ['embedding', 'rerank']) {
|
|
119
121
|
if (signal.aborted || this.disposed)
|
|
120
122
|
break;
|
|
@@ -127,10 +129,6 @@ export class KnowledgeEnvironment {
|
|
|
127
129
|
this.item(id, { state: 'missing', message: problem });
|
|
128
130
|
continue;
|
|
129
131
|
}
|
|
130
|
-
if (!pythonReady) {
|
|
131
|
-
this.item(id, { state: 'unchecked', message: '先修复 Python,再检查模型推理' });
|
|
132
|
-
continue;
|
|
133
|
-
}
|
|
134
132
|
if (!deep) {
|
|
135
133
|
this.item(id, { state: 'unchecked', message: '资源已找到,尚未完成实际推理自检' });
|
|
136
134
|
continue;
|
|
@@ -146,9 +144,13 @@ export class KnowledgeEnvironment {
|
|
|
146
144
|
}
|
|
147
145
|
const changed = fingerprint !== this.fingerprint();
|
|
148
146
|
if (changed)
|
|
149
|
-
this.item
|
|
147
|
+
this.report.items = this.report.items.map(item => item.state === 'ready'
|
|
148
|
+
? { ...item, state: 'unchecked', message: '自检期间配置或资源发生变化,请重新自检' }
|
|
149
|
+
: item);
|
|
150
150
|
if (signal.aborted || this.disposed)
|
|
151
|
-
this.item
|
|
151
|
+
this.report.items = this.report.items.map(item => item.state === 'checking'
|
|
152
|
+
? { ...item, state: 'unchecked', message: '自检已停止,请重新运行' }
|
|
153
|
+
: item);
|
|
152
154
|
this.report.state = this.report.items.every(item => item.state === 'ready') ? 'ready' : 'blocked';
|
|
153
155
|
this.report.checkedAt = new Date().toISOString();
|
|
154
156
|
this.report.fingerprint = fingerprint;
|
|
@@ -156,11 +158,15 @@ export class KnowledgeEnvironment {
|
|
|
156
158
|
this.checkController = undefined;
|
|
157
159
|
return structuredClone(this.report);
|
|
158
160
|
}
|
|
159
|
-
start(action) {
|
|
161
|
+
start(action, requestedSelection) {
|
|
160
162
|
if (this.disposed)
|
|
161
163
|
throw new Error('环境服务已关闭');
|
|
162
164
|
if (this.job?.state === 'running')
|
|
163
165
|
return this.view();
|
|
166
|
+
const previousSelection = readModelSelection(this.options.resourceRoot);
|
|
167
|
+
const selection = action === 'install'
|
|
168
|
+
? parseModelSelection(requestedSelection, previousSelection)
|
|
169
|
+
: previousSelection;
|
|
164
170
|
this.checkController?.abort();
|
|
165
171
|
this.controller = new AbortController();
|
|
166
172
|
const controller = this.controller;
|
|
@@ -182,9 +188,10 @@ export class KnowledgeEnvironment {
|
|
|
182
188
|
for (const item of this.report.items)
|
|
183
189
|
if (item.state === 'checking')
|
|
184
190
|
this.item(item.id, { state: 'unchecked', message: '准备步骤已完成,等待实际自检' });
|
|
185
|
-
const id = label.includes('向量') ? 'embedding' : label.includes('重排') ? 'rerank' :
|
|
186
|
-
|
|
187
|
-
|
|
191
|
+
const id = label.includes('向量') ? 'embedding' : label.includes('重排') ? 'rerank' : undefined;
|
|
192
|
+
if (id)
|
|
193
|
+
this.item(id, { state: 'checking', message: label });
|
|
194
|
+
}, log, this.options.run ?? runProcess, selection);
|
|
188
195
|
this.options.reload();
|
|
189
196
|
}
|
|
190
197
|
else
|
|
@@ -201,6 +208,20 @@ export class KnowledgeEnvironment {
|
|
|
201
208
|
job.stage = '环境已就绪';
|
|
202
209
|
}
|
|
203
210
|
catch (cause) {
|
|
211
|
+
if (action === 'install') {
|
|
212
|
+
const activeSelection = readModelSelection(this.options.resourceRoot);
|
|
213
|
+
if (activeSelection.embedding !== previousSelection.embedding || activeSelection.rerank !== previousSelection.rerank) {
|
|
214
|
+
try {
|
|
215
|
+
await writeModelSelection(this.options.resourceRoot, previousSelection);
|
|
216
|
+
this.options.reload();
|
|
217
|
+
this.report = blankReport();
|
|
218
|
+
log('所选模型未通过自检,已恢复此前启用的模型');
|
|
219
|
+
}
|
|
220
|
+
catch (rollbackCause) {
|
|
221
|
+
log(`恢复此前模型选择失败:${rollbackCause instanceof Error ? rollbackCause.message : String(rollbackCause)}`);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}
|
|
204
225
|
job.state = controller.signal.aborted ? 'cancelled' : 'failed';
|
|
205
226
|
job.error = controller.signal.aborted ? '已停止,已下载的资源可在下次重试时复用' : cause instanceof Error ? cause.message : String(cause);
|
|
206
227
|
job.stage = controller.signal.aborted ? '已停止' : '准备未完成';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/environment/service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/environment/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/** Installation state is deployment-wide; it is not knowledge or a build artifact. */
|
|
2
|
-
|
|
2
|
+
import type { ModelOptionView, ModelSelection } from './model-catalog.js';
|
|
3
|
+
export type EnvironmentItemId = 'embedding' | 'rerank';
|
|
3
4
|
export type EnvironmentItemState = 'unchecked' | 'checking' | 'ready' | 'missing' | 'failed';
|
|
4
5
|
export interface EnvironmentItem {
|
|
5
6
|
id: EnvironmentItemId;
|
|
@@ -27,5 +28,10 @@ export interface EnvironmentJob {
|
|
|
27
28
|
export interface EnvironmentView {
|
|
28
29
|
report: EnvironmentReport;
|
|
29
30
|
job?: EnvironmentJob;
|
|
31
|
+
selection: ModelSelection;
|
|
32
|
+
models: {
|
|
33
|
+
embedding: ModelOptionView[];
|
|
34
|
+
rerank: ModelOptionView[];
|
|
35
|
+
};
|
|
30
36
|
}
|
|
31
37
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/environment/types.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,MAAM,MAAM,iBAAiB,GAAG,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/environment/types.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEzE,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,QAAQ,CAAA;AACtD,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAA;AAC5F,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,iBAAiB,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,oBAAoB,CAAA;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AACD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAA;IACrD,QAAQ,EAAE,IAAI,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,eAAe,EAAE,CAAA;CACzB;AACD,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAA;IACvD,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,EAAE,CAAA;CACf;AACD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,iBAAiB,CAAA;IACzB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,SAAS,EAAE,cAAc,CAAA;IACzB,MAAM,EAAE;QAAE,SAAS,EAAE,eAAe,EAAE,CAAC;QAAC,MAAM,EAAE,eAAe,EAAE,CAAA;KAAE,CAAA;CACpE"}
|