kakaotalk-chat-analyzer 0.21.2 → 0.22.0
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 +2 -0
- package/dist/src/analysis-budget.js +3 -1
- package/dist/src/analysis-budget.js.map +1 -1
- package/dist/src/analysis-capability.js +11 -1
- package/dist/src/analysis-capability.js.map +1 -1
- package/dist/src/analysis-preset.js +5 -0
- package/dist/src/analysis-preset.js.map +1 -1
- package/dist/src/llm-resolve.d.ts +1 -1
- package/dist/src/llm-resolve.js +49 -8
- package/dist/src/llm-resolve.js.map +1 -1
- package/dist/src/ml/model-ids.d.ts +10 -2
- package/dist/src/ml/model-ids.js +10 -2
- package/dist/src/ml/model-ids.js.map +1 -1
- package/dist/src/ml/registry.js +2 -2
- package/dist/src/ml/tasks/index.js +6 -2
- package/dist/src/ml/tasks/index.js.map +1 -1
- package/dist/src/ml-bundle-cache.d.ts +1 -0
- package/dist/src/ml-bundle-cache.js +10 -2
- package/dist/src/ml-bundle-cache.js.map +1 -1
- package/dist/src/ml-bundle-ids.d.ts +2 -0
- package/dist/src/ml-bundle-ids.js +2 -0
- package/dist/src/ml-bundle-ids.js.map +1 -1
- package/dist/src/ml-bundled-models.d.ts +7 -3
- package/dist/src/ml-bundled-models.js +53 -25
- package/dist/src/ml-bundled-models.js.map +1 -1
- package/dist/src/ml-hub-access.d.ts +5 -3
- package/dist/src/ml-hub-access.js +20 -6
- package/dist/src/ml-hub-access.js.map +1 -1
- package/dist/src/ml-runtime.d.ts +6 -4
- package/dist/src/ml-runtime.js +5 -19
- package/dist/src/ml-runtime.js.map +1 -1
- package/dist/src/ml-transformers-env.d.ts +6 -1
- package/dist/src/ml-transformers-env.js +18 -4
- package/dist/src/ml-transformers-env.js.map +1 -1
- package/dist/src/semantic-keywords.js +34 -14
- package/dist/src/semantic-keywords.js.map +1 -1
- package/dist/src/semantic-model-resolve.d.ts +5 -5
- package/dist/src/semantic-model-resolve.js +48 -25
- package/dist/src/semantic-model-resolve.js.map +1 -1
- package/dist/src/sentiment-analyze.js +26 -11
- package/dist/src/sentiment-analyze.js.map +1 -1
- package/dist/src/sentiment-policy.d.ts +1 -1
- package/dist/src/sentiment-policy.js +5 -3
- package/dist/src/sentiment-policy.js.map +1 -1
- package/dist/src/toxicity-analyze.js +34 -7
- package/dist/src/toxicity-analyze.js.map +1 -1
- package/dist/src/version.d.ts +2 -2
- package/dist/src/version.js +1 -1
- package/package.json +5 -3
package/README.md
CHANGED
|
@@ -261,6 +261,8 @@ cd kakaotalk-chat-analyzer && npm install && npm run build && npm test
|
|
|
261
261
|
|
|
262
262
|
| 버전 | 요약 |
|
|
263
263
|
|------|------|
|
|
264
|
+
| **0.22.0** | **IBM Granite 97M multilingual R2** 임베딩·**kcELECTRA-toxic-detector** 독성 모델·transformers.js **v4 마이그레이션**·`@huggingface/transformers`·`dtype` API·ONNX 번들 캐시 무결성 검증 |
|
|
265
|
+
| **0.21.3** | macOS **inactive memory 완화**·48GB+ **ultra 자동**·분석 예산 600s·로컬 번들 **HF Hub 폰백 차단**·모델 루트 병합·HF token 이중 전략 |
|
|
264
266
|
| **0.21.2** | KURE ONNX **ml-models-v0.2.1** 우선 다운로드(API→pinned)·models **0.2.1** lock — v0.2.0 404 수정 |
|
|
265
267
|
| **0.21.1** | **KURE·독성 ONNX** 첫 사용 시 Release **자동 다운로드**(CI 업로드)·GitHub API 폴백 URL |
|
|
266
268
|
| **0.21.0** | **`ultra` preset**·quality/ultra **KURE-v1** 로컬 ONNX lazy(Release zip)·KoELECTRA embed 폴백·preset별 시맨틱·독성 ML on(ultra) |
|
|
@@ -9,9 +9,11 @@ export function phaseReserveMs(phase, preset, profile, llmSize) {
|
|
|
9
9
|
const headroom = memoryHeadroomGb(profile);
|
|
10
10
|
if (phase === "semantic") {
|
|
11
11
|
if (preset === "ultra" && headroom >= 20)
|
|
12
|
-
return
|
|
12
|
+
return 90_000;
|
|
13
13
|
if (preset === "ultra" && headroom >= 14)
|
|
14
14
|
return 110_000;
|
|
15
|
+
if (preset === "quality" && headroom >= 20)
|
|
16
|
+
return 60_000;
|
|
15
17
|
if (preset === "quality" && headroom >= 16)
|
|
16
18
|
return 70_000;
|
|
17
19
|
if (preset === "quality" && headroom >= 12)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analysis-budget.js","sourceRoot":"","sources":["../../src/analysis-budget.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAuB,MAAM,0BAA0B,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAKrD,MAAM,eAAe,GAAuE;IAC1F,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;CAClB,CAAC;AAEF,iCAAiC;AACjC,MAAM,UAAU,cAAc,CAC5B,KAA2B,EAC3B,MAA0B,EAC1B,OAAuB,EACvB,OAAoB;IAEpB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzB,IAAI,MAAM,KAAK,OAAO,IAAI,QAAQ,IAAI,EAAE;YAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"analysis-budget.js","sourceRoot":"","sources":["../../src/analysis-budget.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,7 +37,17 @@ export function analysisBudgetMs(preset, _messageCount, profile) {
|
|
|
37
37
|
: preset === "ultra"
|
|
38
38
|
? 480_000
|
|
39
39
|
: 300_000;
|
|
40
|
-
if (headroom >=
|
|
40
|
+
if (headroom >= 20 && profile.totalMemGb >= 48) {
|
|
41
|
+
if (preset === "ultra")
|
|
42
|
+
cap = 600_000;
|
|
43
|
+
else if (preset === "quality")
|
|
44
|
+
cap = 480_000;
|
|
45
|
+
else if (preset === "balanced")
|
|
46
|
+
cap = 420_000;
|
|
47
|
+
else if (preset === "speed")
|
|
48
|
+
cap = 240_000;
|
|
49
|
+
}
|
|
50
|
+
else if (headroom >= 16) {
|
|
41
51
|
if (preset === "ultra")
|
|
42
52
|
cap = 540_000;
|
|
43
53
|
else if (preset === "quality")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analysis-capability.js","sourceRoot":"","sources":["../../src/analysis-capability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAgB/C,MAAM,UAAU,gBAAgB,CAAC,OAAuB;IACtD,OAAO,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,SAAS,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,MAAM,UAAU,GAAG,QAAQ,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,oBAAoB,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,yBAAyB,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;IAC/D,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,GAAG,EAAE;QAC5C,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC,GAAG,EAAE;QAC1C,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,EAAE,CAAC,GAAG,EAAE;QACpD,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM;QACvB,QAAQ,EAAE,QAAQ,EAAE;QACpB,IAAI,EAAE,IAAI,EAAE;QACZ,GAAG,EAAE,MAAM;KACZ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,MAAM,IAAI,GAAG,uBAAuB,EAAE,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,YAAY,EAAE,CAAC;IACjC,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC;AAC1B,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,gBAAgB,CAC9B,MAAc,EACd,aAAqB,EACrB,OAAuB;IAEvB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,GAAG,GACL,MAAM,KAAK,OAAO;QAChB,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,MAAM,KAAK,UAAU;YACrB,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,MAAM,KAAK,SAAS;gBACpB,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,MAAM,KAAK,OAAO;oBAClB,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,OAAO,CAAC;IACpB,IAAI,QAAQ,IAAI,EAAE,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"analysis-capability.js","sourceRoot":"","sources":["../../src/analysis-capability.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,11 @@ export function autoPresetFromMachine(profile, messageCount) {
|
|
|
27
27
|
const n = messageCount ?? 0;
|
|
28
28
|
if (headroom < 4 || (headroom < 6 && total < 16))
|
|
29
29
|
return "speed";
|
|
30
|
+
// 48GB+는 메시지 수 관계없이 풀퀄리티 우선
|
|
31
|
+
if (total >= 48 && headroom >= 20)
|
|
32
|
+
return "ultra";
|
|
33
|
+
if (total >= 48 && headroom >= 14)
|
|
34
|
+
return n >= 150_000 ? "quality" : "ultra";
|
|
30
35
|
if (total >= 32 && headroom >= 18) {
|
|
31
36
|
if (n >= 130_000)
|
|
32
37
|
return "balanced";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analysis-preset.js","sourceRoot":"","sources":["../../src/analysis-preset.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analysis-preset.js","sourceRoot":"","sources":["../../src/analysis-preset.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ export declare function llmRamReserveGb(profile: MachineProfile): number;
|
|
|
7
7
|
* GGUF 로드 시점 가용 RAM — available−예약 우선, free+회수 가능분으로 OOM만 완화.
|
|
8
8
|
*/
|
|
9
9
|
export declare function memoryHeadroomForLlmLoad(profile: MachineProfile): number;
|
|
10
|
-
/** ML dispose 직후 GGUF 로드용 headroom —
|
|
10
|
+
/** ML dispose 직후 GGUF 로드용 headroom — macOS에서 freeMemGb 함정 완화, availableMemGb 우선 */
|
|
11
11
|
export declare function effectiveLlmHeadroomGb(profile: MachineProfile): number;
|
|
12
12
|
export interface LlmRunPlan {
|
|
13
13
|
enabled: boolean;
|
package/dist/src/llm-resolve.js
CHANGED
|
@@ -35,23 +35,64 @@ export function memoryHeadroomForLlmLoad(profile) {
|
|
|
35
35
|
}
|
|
36
36
|
return Math.round(headroom * 10) / 10;
|
|
37
37
|
}
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
/** macOS 등에서 inactive memory를 포함한 실제 가용량 — 환경 변수로 덮어쓰기 가능 */
|
|
39
|
+
function postMlOsSlackGb(profile) {
|
|
40
|
+
const env = Number(process.env.KCA_LLM_POST_ML_SLACK_GB);
|
|
41
|
+
if (Number.isFinite(env) && env >= 0)
|
|
42
|
+
return env;
|
|
43
|
+
// macOS: freeMemGb가 inactive를 포함하지 않아 과소 추정됨.
|
|
44
|
+
// availableMemGb가 충분히 크면(≥total*0.4) OS slack을 줄여 freeMemGb 함정 완화
|
|
45
|
+
if (profile.platform === "darwin") {
|
|
46
|
+
const available = profile.availableMemGb ?? profile.freeMemGb;
|
|
47
|
+
const total = profile.totalMemGb;
|
|
48
|
+
if (total >= 32 && available >= total * 0.4)
|
|
49
|
+
return 0.5;
|
|
50
|
+
if (total >= 16 && available >= total * 0.35)
|
|
51
|
+
return 1;
|
|
52
|
+
return 1.5;
|
|
53
|
+
}
|
|
54
|
+
return 2;
|
|
55
|
+
}
|
|
56
|
+
/** macOS에서 freeMemGb가 inactive memory를 제외해 과소 추정될 때 완화 */
|
|
57
|
+
function isDarwinFreeMemUnderstated(profile) {
|
|
58
|
+
if (profile.platform !== "darwin")
|
|
59
|
+
return false;
|
|
60
|
+
const available = profile.availableMemGb ?? profile.freeMemGb;
|
|
61
|
+
const free = profile.freeMemGb;
|
|
62
|
+
// available이 free보다 3배 이상 크면 inactive memory가 많다는 의미
|
|
63
|
+
return available > free * 3 && available >= 10;
|
|
64
|
+
}
|
|
65
|
+
/** ML dispose 직후 GGUF 로드용 headroom — macOS에서 freeMemGb 함정 완화, availableMemGb 우선 */
|
|
40
66
|
export function effectiveLlmHeadroomGb(profile) {
|
|
41
67
|
const loadHeadroom = memoryHeadroomForLlmLoad(profile);
|
|
68
|
+
const available = profile.availableMemGb ?? profile.freeMemGb;
|
|
42
69
|
const free = profile.freeMemGb;
|
|
43
70
|
const minFree = minFreeGbForLlmRetry();
|
|
71
|
+
const slack = postMlOsSlackGb(profile);
|
|
72
|
+
const isUnderstated = isDarwinFreeMemUnderstated(profile);
|
|
44
73
|
let effective = loadHeadroom;
|
|
45
|
-
|
|
46
|
-
if (
|
|
47
|
-
|
|
48
|
-
|
|
74
|
+
// macOS에서 inactive memory가 많으면 freeMemGb 대신 availableMemGb 기반 제한 사용
|
|
75
|
+
if (isUnderstated) {
|
|
76
|
+
const availableCap = Math.max(0, available - slack);
|
|
77
|
+
if (availableCap < effective)
|
|
78
|
+
effective = availableCap;
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
const freeCap = Math.max(0, free - slack);
|
|
82
|
+
if (freeCap < effective)
|
|
83
|
+
effective = freeCap;
|
|
84
|
+
}
|
|
85
|
+
// free가 극도로 낮으면 최소 모델만 허용
|
|
86
|
+
if (free < minFree && !isUnderstated) {
|
|
87
|
+
effective = Math.min(effective, qwen35Entry("0.8B").minHeadroomGb);
|
|
88
|
+
}
|
|
89
|
+
else if (free < minFree && isUnderstated && available < 6) {
|
|
49
90
|
effective = Math.min(effective, qwen35Entry("0.8B").minHeadroomGb);
|
|
50
91
|
}
|
|
51
|
-
else if (free < 4) {
|
|
92
|
+
else if (free < 4 && !isUnderstated) {
|
|
52
93
|
effective = Math.min(effective, qwen35Entry("2B").minHeadroomGb);
|
|
53
94
|
}
|
|
54
|
-
else if (free < 6) {
|
|
95
|
+
else if (free < 6 && !isUnderstated) {
|
|
55
96
|
effective = Math.min(effective, qwen35Entry("4B").minHeadroomGb - 0.1);
|
|
56
97
|
}
|
|
57
98
|
return Math.round(Math.max(0, effective) * 10) / 10;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-resolve.js","sourceRoot":"","sources":["../../src/llm-resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAuB,MAAM,0BAA0B,CAAC;AAEjF,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,eAAe,GAEhB,MAAM,iBAAiB,CAAC;AACzB,MAAM,0BAA0B,GAAG,CAAC,CAAC;AACrC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AACtC,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAC9B,MAAM,iCAAiC,GAAG,GAAG,CAAC;AAE9C,mDAAmD;AACnD,MAAM,UAAU,eAAe,CAAC,OAAuB;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACvD,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC;IACjD,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC;IACjC,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,CAAC,CAAC;IAC1B,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,CAAC,CAAC;IAC1B,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,CAAC,CAAC;IAC1B,OAAO,0BAA0B,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,OAAuB;IAC9D,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC;IAC/B,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IACzC,IAAI,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;IAEnC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,GAAG,gBAAgB,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,IAAI,WAAW,GAAG,QAAQ,EAAE,CAAC;QAC3B,QAAQ,GAAG,WAAW,CAAC;IACzB,CAAC;IAED,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;AACxC,CAAC;AAED,MAAM,
|
|
1
|
+
{"version":3,"file":"llm-resolve.js","sourceRoot":"","sources":["../../src/llm-resolve.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,8 +18,16 @@ export declare const SEMANTIC_HEADROOM_KURE_GB = 14;
|
|
|
18
18
|
export declare const SEMANTIC_HEADROOM_BGE_GB = 20;
|
|
19
19
|
/** balanced에서 KURE Hub — 번들 유지 하한 */
|
|
20
20
|
export declare const SEMANTIC_HEADROOM_KURE_BALANCED_GB = 16;
|
|
21
|
-
/**
|
|
22
|
-
export declare const
|
|
21
|
+
/** 다국어 임베딩 SOTA — IBM Granite R2 (97M, 384dim, 200+ 언어, 32K ctx) */
|
|
22
|
+
export declare const HUB_GRANITE_EMBED_97M = "ibm-granite/granite-embedding-97m-multilingual-r2";
|
|
23
|
+
/** 다국어 임베딩 flagship — IBM Granite R2 (311M, 768dim, Matryoshka) */
|
|
24
|
+
export declare const HUB_GRANITE_EMBED_311M = "ibm-granite/granite-embedding-311m-multilingual-r2";
|
|
25
|
+
/** 감정 분석 — KR-ELECTRA-small (2024, NSMC fine-tuned) */
|
|
26
|
+
export declare const HUB_KRELECTRA_NSMC = "snunlp/KR-ELECTRA-small";
|
|
27
|
+
/** 독성·공격 톤 — KcELECTRA toxic detector (fine-tuned) */
|
|
28
|
+
export declare const HUB_KCELECTRA_TOXICITY = "jinkyeongk/kcELECTRA-toxic-detector";
|
|
29
|
+
/** 레거시 독성·공격 톤 (base discriminator, 비권장) */
|
|
30
|
+
export declare const HUB_KCELECTRA_TOXICITY_LEGACY = "monologg/koelectra-base-v3-discriminator";
|
|
23
31
|
/** 익명 Hub 401 또는 정책상 금지 — `KCA_*_MODEL` 로만 시도 */
|
|
24
32
|
export declare const DEPRECATED_SENTIMENT_HUB_IDS: readonly ["Xenova/bert-base-multilingual-uncased-sentiment", "Xenova/distilbert-base-multilingual-cased-sentiment", "Xenova/klue-roberta-small-sentiment", "Xenova/klue-roberta-base", "Xenova/twitter-xlm-roberta-base-sentiment", "smilegate-ai/kor_unified_sentiment", "cringepnh/koelectra-korean-sentiment"];
|
|
25
33
|
export declare const DEPRECATED_SEMANTIC_HUB_IDS: readonly ["Xenova/multilingual-e5-small", "dragonkue/multilingual-e5-small-ko-v2", "Xenova/paraphrase-multilingual-MiniLM-L12-v2"];
|
package/dist/src/ml/model-ids.js
CHANGED
|
@@ -18,8 +18,16 @@ export const SEMANTIC_HEADROOM_KURE_GB = 14;
|
|
|
18
18
|
export const SEMANTIC_HEADROOM_BGE_GB = 20;
|
|
19
19
|
/** balanced에서 KURE Hub — 번들 유지 하한 */
|
|
20
20
|
export const SEMANTIC_HEADROOM_KURE_BALANCED_GB = 16;
|
|
21
|
-
/**
|
|
22
|
-
export const
|
|
21
|
+
/** 다국어 임베딩 SOTA — IBM Granite R2 (97M, 384dim, 200+ 언어, 32K ctx) */
|
|
22
|
+
export const HUB_GRANITE_EMBED_97M = "ibm-granite/granite-embedding-97m-multilingual-r2";
|
|
23
|
+
/** 다국어 임베딩 flagship — IBM Granite R2 (311M, 768dim, Matryoshka) */
|
|
24
|
+
export const HUB_GRANITE_EMBED_311M = "ibm-granite/granite-embedding-311m-multilingual-r2";
|
|
25
|
+
/** 감정 분석 — KR-ELECTRA-small (2024, NSMC fine-tuned) */
|
|
26
|
+
export const HUB_KRELECTRA_NSMC = "snunlp/KR-ELECTRA-small";
|
|
27
|
+
/** 독성·공격 톤 — KcELECTRA toxic detector (fine-tuned) */
|
|
28
|
+
export const HUB_KCELECTRA_TOXICITY = "jinkyeongk/kcELECTRA-toxic-detector";
|
|
29
|
+
/** 레거시 독성·공격 톤 (base discriminator, 비권장) */
|
|
30
|
+
export const HUB_KCELECTRA_TOXICITY_LEGACY = "monologg/koelectra-base-v3-discriminator";
|
|
23
31
|
/** 익명 Hub 401 또는 정책상 금지 — `KCA_*_MODEL` 로만 시도 */
|
|
24
32
|
export const DEPRECATED_SENTIMENT_HUB_IDS = [
|
|
25
33
|
"Xenova/bert-base-multilingual-uncased-sentiment",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-ids.js","sourceRoot":"","sources":["../../../src/ml/model-ids.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,4BAA4B;AAC5B,MAAM,CAAC,MAAM,kBAAkB,GAAG,oCAAoC,CAAC;AAEvE,2CAA2C;AAC3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,2CAA2C,CAAC;AAE/E,gCAAgC;AAChC,MAAM,CAAC,MAAM,oBAAoB,GAAG,sCAAsC,CAAC;AAE3E,gDAAgD;AAChD,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAEtD,kCAAkC;AAClC,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAC;AAExC,0CAA0C;AAC1C,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAE5C,yCAAyC;AACzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAE3C,qCAAqC;AACrC,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,CAAC;AAErD,qBAAqB;
|
|
1
|
+
{"version":3,"file":"model-ids.js","sourceRoot":"","sources":["../../../src/ml/model-ids.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,4BAA4B;AAC5B,MAAM,CAAC,MAAM,kBAAkB,GAAG,oCAAoC,CAAC;AAEvE,2CAA2C;AAC3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,2CAA2C,CAAC;AAE/E,gCAAgC;AAChC,MAAM,CAAC,MAAM,oBAAoB,GAAG,sCAAsC,CAAC;AAE3E,gDAAgD;AAChD,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAEtD,kCAAkC;AAClC,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAC;AAExC,0CAA0C;AAC1C,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAE5C,yCAAyC;AACzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAE3C,qCAAqC;AACrC,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,CAAC;AAErD,oEAAoE;AACpE,MAAM,CAAC,MAAM,qBAAqB,GAAG,mDAAmD,CAAC;AAEzF,mEAAmE;AACnE,MAAM,CAAC,MAAM,sBAAsB,GAAG,oDAAoD,CAAC;AAE3F,uDAAuD;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAE5D,sDAAsD;AACtD,MAAM,CAAC,MAAM,sBAAsB,GAAG,qCAAqC,CAAC;AAE5E,4CAA4C;AAC5C,MAAM,CAAC,MAAM,6BAA6B,GAAG,0CAA0C,CAAC;AAExF,iDAAiD;AACjD,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,iDAAiD;IACjD,qDAAqD;IACrD,qCAAqC;IACrC,0BAA0B;IAC1B,2CAA2C;IAC3C,oCAAoC;IACpC,sCAAsC;CAC9B,CAAC;AAEX,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,8BAA8B;IAC9B,uCAAuC;IACvC,8CAA8C;CACtC,CAAC"}
|
package/dist/src/ml/registry.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { BUNDLED_EMBED_MODEL_ID, BUNDLED_SENTIMENT_MODEL_ID, BUNDLED_TOXICITY_MODEL_ID, isBundledEmbedModelReady, isBundledSentimentModelReady, isBundledToxicityModelReady, resolveBundledSentimentModelId, } from "../ml-bundled-models.js";
|
|
2
2
|
import { memoryHeadroomGb, probeMachineProfileSync } from "../analysis-capability.js";
|
|
3
3
|
import { resolveDefaultSemanticHubId, shouldPreferBundledSemantic, } from "../semantic-model-resolve.js";
|
|
4
|
-
import { HUB_KCELECTRA_TOXICITY, HUB_KOELECTRA_EMBED,
|
|
4
|
+
import { HUB_KCELECTRA_TOXICITY, HUB_KOELECTRA_EMBED, HUB_KRELECTRA_NSMC, } from "./model-ids.js";
|
|
5
5
|
export const ML_MODEL_REGISTRY = {
|
|
6
6
|
sentiment: {
|
|
7
7
|
task: "sentiment",
|
|
8
8
|
bundledId: BUNDLED_SENTIMENT_MODEL_ID,
|
|
9
|
-
hubFallback:
|
|
9
|
+
hubFallback: HUB_KRELECTRA_NSMC,
|
|
10
10
|
hubTask: "text-classification",
|
|
11
11
|
},
|
|
12
12
|
embedding: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { memoryHeadroomGb, probeMachineProfileSync } from "../../analysis-capability.js";
|
|
2
2
|
import { ensureCoreMlBundles } from "../../ml-bundle-install.js";
|
|
3
3
|
import { ensureKureBundle, ensureToxicityBundle } from "../../ml-bundle-cache.js";
|
|
4
|
-
import { BUNDLED_KURE_MODEL_ID } from "../../ml-bundle-ids.js";
|
|
4
|
+
import { BUNDLED_GRANITE_EMBED_MODEL_ID, BUNDLED_KURE_MODEL_ID } from "../../ml-bundle-ids.js";
|
|
5
5
|
import { semanticEmbeddingModelId } from "../../semantic-policy.js";
|
|
6
6
|
import { preloadSentimentPipeline } from "./sentiment.js";
|
|
7
7
|
import { preloadSemanticPipeline } from "./embedding.js";
|
|
@@ -30,9 +30,13 @@ export async function preloadUtteranceMlTasks(opts) {
|
|
|
30
30
|
if (semanticModel === BUNDLED_KURE_MODEL_ID) {
|
|
31
31
|
await ensureKureBundle().catch((error) => {
|
|
32
32
|
const msg = error instanceof Error ? error.message : String(error);
|
|
33
|
-
process.stderr.write(`[kca] KURE 번들 준비
|
|
33
|
+
process.stderr.write(`[kca] KURE 번들 준비 걸너뜀: ${msg}\n`);
|
|
34
34
|
});
|
|
35
35
|
}
|
|
36
|
+
if (semanticModel === BUNDLED_GRANITE_EMBED_MODEL_ID) {
|
|
37
|
+
// Granite 번들은 npm 패키지 또는 data/ml-models에 포함
|
|
38
|
+
// 별도 lazy download 불필요
|
|
39
|
+
}
|
|
36
40
|
}
|
|
37
41
|
const sequential = memoryHeadroomGb(probeMachineProfileSync()) < 12;
|
|
38
42
|
const runners = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ml/tasks/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ml/tasks/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ export declare function isSentimentBundleReady(): boolean;
|
|
|
12
12
|
export declare function isEmbedBundleReady(): boolean;
|
|
13
13
|
export declare function isToxicityBundleReady(): boolean;
|
|
14
14
|
export declare function isKureBundleReady(): boolean;
|
|
15
|
+
export declare function isGraniteEmbedBundleReady(): boolean;
|
|
15
16
|
export declare function isCoreBundleReady(): boolean;
|
|
16
17
|
/** npm models 패키지 → monorepo data → user cache */
|
|
17
18
|
export declare function listMlModelRoots(): string[];
|
|
@@ -87,8 +87,13 @@ export async function listReleaseAssetUrls(assetName) {
|
|
|
87
87
|
return [...new Set([...fromApi, pinned])];
|
|
88
88
|
}
|
|
89
89
|
function modelOnnxReady(root, modelId) {
|
|
90
|
-
|
|
91
|
-
|
|
90
|
+
const modelDir = join(root, modelId);
|
|
91
|
+
const hasConfig = existsSync(join(modelDir, "config.json"));
|
|
92
|
+
const hasOnnx = existsSync(join(modelDir, "onnx", "model.onnx"));
|
|
93
|
+
// tokenizer_config.json 또는 tokenizer.json 중 하나는 필수 (transformers.js가 tokenizer 로딩에 필요)
|
|
94
|
+
const hasTokenizer = existsSync(join(modelDir, "tokenizer.json")) ||
|
|
95
|
+
existsSync(join(modelDir, "tokenizer_config.json"));
|
|
96
|
+
return hasConfig && hasOnnx && hasTokenizer;
|
|
92
97
|
}
|
|
93
98
|
function kureOnnxReady(root) {
|
|
94
99
|
return (modelOnnxReady(root, BUNDLED_KURE_MODEL_ID) &&
|
|
@@ -106,6 +111,9 @@ export function isToxicityBundleReady() {
|
|
|
106
111
|
export function isKureBundleReady() {
|
|
107
112
|
return listMlModelRoots().some((r) => kureOnnxReady(r));
|
|
108
113
|
}
|
|
114
|
+
export function isGraniteEmbedBundleReady() {
|
|
115
|
+
return listMlModelRoots().some((r) => modelOnnxReady(r, "kca-granite-embed-97m"));
|
|
116
|
+
}
|
|
109
117
|
export function isCoreBundleReady() {
|
|
110
118
|
return isSentimentBundleReady() && isEmbedBundleReady();
|
|
111
119
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ml-bundle-cache.js","sourceRoot":"","sources":["../../src/ml-bundle-cache.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ml-bundle-cache.js","sourceRoot":"","sources":["../../src/ml-bundle-cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,3 +6,5 @@ export declare const BUNDLED_EMBED_MODEL_ID = "kca-koelectra-small-v3-embed";
|
|
|
6
6
|
export declare const BUNDLED_TOXICITY_MODEL_ID = "kca-kcelectra-base-toxicity";
|
|
7
7
|
/** KURE-v1 feature-extraction (~2.1GB ONNX, Release zip lazy) */
|
|
8
8
|
export declare const BUNDLED_KURE_MODEL_ID = "kca-kure-v1";
|
|
9
|
+
/** IBM Granite 97M multilingual R2 embedding (2026 SOTA, 390MB ONNX) */
|
|
10
|
+
export declare const BUNDLED_GRANITE_EMBED_MODEL_ID = "kca-granite-embed-97m";
|
|
@@ -6,4 +6,6 @@ export const BUNDLED_EMBED_MODEL_ID = "kca-koelectra-small-v3-embed";
|
|
|
6
6
|
export const BUNDLED_TOXICITY_MODEL_ID = "kca-kcelectra-base-toxicity";
|
|
7
7
|
/** KURE-v1 feature-extraction (~2.1GB ONNX, Release zip lazy) */
|
|
8
8
|
export const BUNDLED_KURE_MODEL_ID = "kca-kure-v1";
|
|
9
|
+
/** IBM Granite 97M multilingual R2 embedding (2026 SOTA, 390MB ONNX) */
|
|
10
|
+
export const BUNDLED_GRANITE_EMBED_MODEL_ID = "kca-granite-embed-97m";
|
|
9
11
|
//# sourceMappingURL=ml-bundle-ids.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ml-bundle-ids.js","sourceRoot":"","sources":["../../src/ml-bundle-ids.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,CAAC,MAAM,0BAA0B,GAAG,6BAA6B,CAAC;AAExE,kCAAkC;AAClC,MAAM,CAAC,MAAM,sBAAsB,GAAG,8BAA8B,CAAC;AAErE,8BAA8B;AAC9B,MAAM,CAAC,MAAM,yBAAyB,GAAG,6BAA6B,CAAC;AAEvE,iEAAiE;AACjE,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"ml-bundle-ids.js","sourceRoot":"","sources":["../../src/ml-bundle-ids.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,CAAC,MAAM,0BAA0B,GAAG,6BAA6B,CAAC;AAExE,kCAAkC;AAClC,MAAM,CAAC,MAAM,sBAAsB,GAAG,8BAA8B,CAAC;AAErE,8BAA8B;AAC9B,MAAM,CAAC,MAAM,yBAAyB,GAAG,6BAA6B,CAAC;AAEvE,iEAAiE;AACjE,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC;AAEnD,wEAAwE;AACxE,MAAM,CAAC,MAAM,8BAA8B,GAAG,uBAAuB,CAAC"}
|
|
@@ -1,20 +1,24 @@
|
|
|
1
|
-
export { BUNDLED_EMBED_MODEL_ID, BUNDLED_KURE_MODEL_ID, BUNDLED_SENTIMENT_MODEL_ID, BUNDLED_TOXICITY_MODEL_ID, } from "./ml-bundle-ids.js";
|
|
2
|
-
/** transformers `env.localModelPath` —
|
|
1
|
+
export { BUNDLED_EMBED_MODEL_ID, BUNDLED_GRANITE_EMBED_MODEL_ID, BUNDLED_KURE_MODEL_ID, BUNDLED_SENTIMENT_MODEL_ID, BUNDLED_TOXICITY_MODEL_ID, } from "./ml-bundle-ids.js";
|
|
2
|
+
/** transformers `env.localModelPath` — 모든 루트 병합 디렉토리 우선 */
|
|
3
3
|
export declare function bundledMlModelsDir(): string;
|
|
4
4
|
export declare function bundledModelDir(modelId: string): string;
|
|
5
5
|
export declare function bundledSentimentModelDir(): string;
|
|
6
6
|
export declare function resolveBundledSentimentModelId(): string;
|
|
7
7
|
export declare function isBundledSentimentModelReady(): boolean;
|
|
8
8
|
export declare function isBundledEmbedModelReady(): boolean;
|
|
9
|
+
export declare function isBundledGraniteEmbedModelReady(): boolean;
|
|
9
10
|
export declare function isBundledToxicityModelReady(): boolean;
|
|
10
11
|
export declare function isBundledKureModelReady(): boolean;
|
|
11
12
|
/** ONNX 외부 가중치(model.onnx_data) — 세션 cwd를 onnx/ 로 맞춤 */
|
|
12
13
|
export declare function hasBundledOnnxExternalData(modelId: string): boolean;
|
|
13
14
|
/** ORT external data는 model.onnx 기준 상대 경로 — 직렬화된 chdir */
|
|
14
15
|
export declare function withBundledOnnxSessionCwd<T>(modelId: string, fn: () => Promise<T>): Promise<T>;
|
|
15
|
-
/**
|
|
16
|
+
/** 모든 모델 루트를 심볼릭 링크로 병합한 임시 디렉토리 — localModelPath가 하나의 경로에서 모든 모델을 찾을 수 있도록 */
|
|
17
|
+
export declare function mergedMlModelsDir(): string;
|
|
18
|
+
/** 번들 ONNX가 있으면 transformers `env.localModelPath` 로 쓸 루트 — 병합 디렉토리 우선 */
|
|
16
19
|
export declare function bundledMlModelsRoot(): string | undefined;
|
|
17
20
|
export declare function isLocalBundledSentimentModel(modelId: string): boolean;
|
|
18
21
|
export declare function isLocalBundledEmbedModel(modelId: string): boolean;
|
|
19
22
|
export declare function isLocalBundledToxicityModel(modelId: string): boolean;
|
|
20
23
|
export declare function isLocalBundledKureModel(modelId: string): boolean;
|
|
24
|
+
export declare function isLocalBundledGraniteEmbedModel(modelId: string): boolean;
|
|
@@ -1,29 +1,14 @@
|
|
|
1
|
-
import { existsSync } from "node:fs";
|
|
1
|
+
import { existsSync, mkdirSync, readdirSync, rmSync, symlinkSync } from "node:fs";
|
|
2
|
+
import { tmpdir } from "node:os";
|
|
2
3
|
import { join, dirname } from "node:path";
|
|
3
4
|
import { fileURLToPath } from "node:url";
|
|
4
|
-
import { BUNDLED_EMBED_MODEL_ID, BUNDLED_KURE_MODEL_ID, BUNDLED_SENTIMENT_MODEL_ID, BUNDLED_TOXICITY_MODEL_ID, } from "./ml-bundle-ids.js";
|
|
5
|
-
import { isEmbedBundleReady, isKureBundleReady, isSentimentBundleReady, isToxicityBundleReady, listMlModelRoots, resolveMlModelRootFor, } from "./ml-bundle-cache.js";
|
|
5
|
+
import { BUNDLED_EMBED_MODEL_ID, BUNDLED_GRANITE_EMBED_MODEL_ID, BUNDLED_KURE_MODEL_ID, BUNDLED_SENTIMENT_MODEL_ID, BUNDLED_TOXICITY_MODEL_ID, } from "./ml-bundle-ids.js";
|
|
6
|
+
import { isEmbedBundleReady, isGraniteEmbedBundleReady, isKureBundleReady, isSentimentBundleReady, isToxicityBundleReady, listMlModelRoots, resolveMlModelRootFor, } from "./ml-bundle-cache.js";
|
|
6
7
|
const PKG_DATA_ML = join(dirname(fileURLToPath(import.meta.url)), "..", "..", "data", "ml-models");
|
|
7
|
-
export { BUNDLED_EMBED_MODEL_ID, BUNDLED_KURE_MODEL_ID, BUNDLED_SENTIMENT_MODEL_ID, BUNDLED_TOXICITY_MODEL_ID, } from "./ml-bundle-ids.js";
|
|
8
|
-
/** transformers `env.localModelPath` —
|
|
8
|
+
export { BUNDLED_EMBED_MODEL_ID, BUNDLED_GRANITE_EMBED_MODEL_ID, BUNDLED_KURE_MODEL_ID, BUNDLED_SENTIMENT_MODEL_ID, BUNDLED_TOXICITY_MODEL_ID, } from "./ml-bundle-ids.js";
|
|
9
|
+
/** transformers `env.localModelPath` — 모든 루트 병합 디렉토리 우선 */
|
|
9
10
|
export function bundledMlModelsDir() {
|
|
10
|
-
|
|
11
|
-
const sent = join(root, BUNDLED_SENTIMENT_MODEL_ID, "onnx", "model.onnx");
|
|
12
|
-
const embed = join(root, BUNDLED_EMBED_MODEL_ID, "onnx", "model.onnx");
|
|
13
|
-
if (existsSync(sent) && existsSync(embed))
|
|
14
|
-
return root;
|
|
15
|
-
}
|
|
16
|
-
for (const modelId of [
|
|
17
|
-
BUNDLED_SENTIMENT_MODEL_ID,
|
|
18
|
-
BUNDLED_EMBED_MODEL_ID,
|
|
19
|
-
BUNDLED_TOXICITY_MODEL_ID,
|
|
20
|
-
]) {
|
|
21
|
-
const root = resolveMlModelRootFor(modelId);
|
|
22
|
-
if (root)
|
|
23
|
-
return root;
|
|
24
|
-
}
|
|
25
|
-
const roots = listMlModelRoots();
|
|
26
|
-
return roots[0] ?? PKG_DATA_ML;
|
|
11
|
+
return mergedMlModelsDir();
|
|
27
12
|
}
|
|
28
13
|
export function bundledModelDir(modelId) {
|
|
29
14
|
const root = resolveMlModelRootFor(modelId) ?? bundledMlModelsDir();
|
|
@@ -41,6 +26,9 @@ export function isBundledSentimentModelReady() {
|
|
|
41
26
|
export function isBundledEmbedModelReady() {
|
|
42
27
|
return isEmbedBundleReady();
|
|
43
28
|
}
|
|
29
|
+
export function isBundledGraniteEmbedModelReady() {
|
|
30
|
+
return isGraniteEmbedBundleReady();
|
|
31
|
+
}
|
|
44
32
|
export function isBundledToxicityModelReady() {
|
|
45
33
|
return isToxicityBundleReady();
|
|
46
34
|
}
|
|
@@ -70,12 +58,49 @@ export async function withBundledOnnxSessionCwd(modelId, fn) {
|
|
|
70
58
|
onnxSessionCwdChain = run.then(() => undefined, () => undefined);
|
|
71
59
|
return run;
|
|
72
60
|
}
|
|
73
|
-
|
|
61
|
+
let _mergedMlModelsDir = null;
|
|
62
|
+
/** 모든 모델 루트를 심볼릭 링크로 병합한 임시 디렉토리 — localModelPath가 하나의 경로에서 모든 모델을 찾을 수 있도록 */
|
|
63
|
+
export function mergedMlModelsDir() {
|
|
64
|
+
if (_mergedMlModelsDir)
|
|
65
|
+
return _mergedMlModelsDir;
|
|
66
|
+
const tmpDir = join(tmpdir(), `kca-ml-models-${process.pid}`);
|
|
67
|
+
if (existsSync(tmpDir))
|
|
68
|
+
rmSync(tmpDir, { recursive: true, force: true });
|
|
69
|
+
mkdirSync(tmpDir, { recursive: true });
|
|
70
|
+
for (const root of listMlModelRoots()) {
|
|
71
|
+
let entries;
|
|
72
|
+
try {
|
|
73
|
+
entries = readdirSync(root, { withFileTypes: true });
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
continue;
|
|
77
|
+
}
|
|
78
|
+
for (const entry of entries) {
|
|
79
|
+
if (!entry.isDirectory())
|
|
80
|
+
continue;
|
|
81
|
+
const src = join(root, entry.name);
|
|
82
|
+
const dest = join(tmpDir, entry.name);
|
|
83
|
+
if (existsSync(dest))
|
|
84
|
+
continue; // 첫 번째 루트 우선
|
|
85
|
+
try {
|
|
86
|
+
symlinkSync(src, dest);
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
// 심볼릭 링크 실패 시 skip (Windows 비관리자 등)
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
_mergedMlModelsDir = tmpDir;
|
|
94
|
+
return tmpDir;
|
|
95
|
+
}
|
|
96
|
+
/** 번들 ONNX가 있으면 transformers `env.localModelPath` 로 쓸 루트 — 병합 디렉토리 우선 */
|
|
74
97
|
export function bundledMlModelsRoot() {
|
|
75
98
|
if (isBundledSentimentModelReady() ||
|
|
76
99
|
isBundledEmbedModelReady() ||
|
|
77
|
-
|
|
78
|
-
|
|
100
|
+
isBundledGraniteEmbedModelReady() ||
|
|
101
|
+
isBundledToxicityModelReady() ||
|
|
102
|
+
isBundledKureModelReady()) {
|
|
103
|
+
return mergedMlModelsDir();
|
|
79
104
|
}
|
|
80
105
|
return undefined;
|
|
81
106
|
}
|
|
@@ -91,4 +116,7 @@ export function isLocalBundledToxicityModel(modelId) {
|
|
|
91
116
|
export function isLocalBundledKureModel(modelId) {
|
|
92
117
|
return modelId === BUNDLED_KURE_MODEL_ID && isBundledKureModelReady();
|
|
93
118
|
}
|
|
119
|
+
export function isLocalBundledGraniteEmbedModel(modelId) {
|
|
120
|
+
return modelId === BUNDLED_GRANITE_EMBED_MODEL_ID && isBundledGraniteEmbedModelReady();
|
|
121
|
+
}
|
|
94
122
|
//# sourceMappingURL=ml-bundled-models.js.map
|