kakaotalk-chat-analyzer 0.21.2 → 0.22.1

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.
Files changed (66) hide show
  1. package/README.md +3 -0
  2. package/dist/src/analysis-budget.js +3 -1
  3. package/dist/src/analysis-budget.js.map +1 -1
  4. package/dist/src/analysis-capability.js +11 -1
  5. package/dist/src/analysis-capability.js.map +1 -1
  6. package/dist/src/analysis-preset.js +5 -0
  7. package/dist/src/analysis-preset.js.map +1 -1
  8. package/dist/src/llm-deck-validate.d.ts +2 -0
  9. package/dist/src/llm-deck-validate.js +19 -0
  10. package/dist/src/llm-deck-validate.js.map +1 -1
  11. package/dist/src/llm-infer-cli.js +1 -0
  12. package/dist/src/llm-infer-cli.js.map +1 -1
  13. package/dist/src/llm-infer-internal.d.ts +3 -1
  14. package/dist/src/llm-infer-internal.js +4 -2
  15. package/dist/src/llm-infer-internal.js.map +1 -1
  16. package/dist/src/llm-input.d.ts +1 -1
  17. package/dist/src/llm-input.js +20 -2
  18. package/dist/src/llm-input.js.map +1 -1
  19. package/dist/src/llm-llama-core.d.ts +2 -0
  20. package/dist/src/llm-llama-core.js.map +1 -1
  21. package/dist/src/llm-resolve.d.ts +1 -1
  22. package/dist/src/llm-resolve.js +49 -8
  23. package/dist/src/llm-resolve.js.map +1 -1
  24. package/dist/src/llm-subprocess.d.ts +2 -0
  25. package/dist/src/llm-subprocess.js.map +1 -1
  26. package/dist/src/llm-summarize.js +13 -5
  27. package/dist/src/llm-summarize.js.map +1 -1
  28. package/dist/src/ml/model-ids.d.ts +10 -2
  29. package/dist/src/ml/model-ids.js +10 -2
  30. package/dist/src/ml/model-ids.js.map +1 -1
  31. package/dist/src/ml/registry.js +2 -2
  32. package/dist/src/ml/tasks/index.js +6 -2
  33. package/dist/src/ml/tasks/index.js.map +1 -1
  34. package/dist/src/ml-bundle-cache.d.ts +1 -0
  35. package/dist/src/ml-bundle-cache.js +10 -2
  36. package/dist/src/ml-bundle-cache.js.map +1 -1
  37. package/dist/src/ml-bundle-ids.d.ts +2 -0
  38. package/dist/src/ml-bundle-ids.js +2 -0
  39. package/dist/src/ml-bundle-ids.js.map +1 -1
  40. package/dist/src/ml-bundled-models.d.ts +7 -3
  41. package/dist/src/ml-bundled-models.js +53 -25
  42. package/dist/src/ml-bundled-models.js.map +1 -1
  43. package/dist/src/ml-hub-access.d.ts +5 -3
  44. package/dist/src/ml-hub-access.js +20 -6
  45. package/dist/src/ml-hub-access.js.map +1 -1
  46. package/dist/src/ml-runtime.d.ts +6 -4
  47. package/dist/src/ml-runtime.js +5 -19
  48. package/dist/src/ml-runtime.js.map +1 -1
  49. package/dist/src/ml-transformers-env.d.ts +6 -1
  50. package/dist/src/ml-transformers-env.js +18 -4
  51. package/dist/src/ml-transformers-env.js.map +1 -1
  52. package/dist/src/semantic-keywords.js +34 -14
  53. package/dist/src/semantic-keywords.js.map +1 -1
  54. package/dist/src/semantic-model-resolve.d.ts +5 -5
  55. package/dist/src/semantic-model-resolve.js +48 -25
  56. package/dist/src/semantic-model-resolve.js.map +1 -1
  57. package/dist/src/sentiment-analyze.js +26 -11
  58. package/dist/src/sentiment-analyze.js.map +1 -1
  59. package/dist/src/sentiment-policy.d.ts +1 -1
  60. package/dist/src/sentiment-policy.js +5 -3
  61. package/dist/src/sentiment-policy.js.map +1 -1
  62. package/dist/src/toxicity-analyze.js +34 -7
  63. package/dist/src/toxicity-analyze.js.map +1 -1
  64. package/dist/src/version.d.ts +2 -2
  65. package/dist/src/version.js +1 -1
  66. package/package.json +5 -3
package/README.md CHANGED
@@ -261,6 +261,9 @@ cd kakaotalk-chat-analyzer && npm install && npm run build && npm test
261
261
 
262
262
  | 버전 | 요약 |
263
263
  |------|------|
264
+ | **0.22.1** | **LLM JSON Grammar Constraint** 핫픽스(Child Process)·**템플릿 잔여물 필터링**·**Few-shot 프롬프트**·리포트 출력 품질 개선 |
265
+ | **0.22.0** | **IBM Granite 97M multilingual R2** 임베딩·**kcELECTRA-toxic-detector** 독성 모델·transformers.js **v4 마이그레이션**·`@huggingface/transformers`·`dtype` API·ONNX 번들 캐시 무결성 검증 |
266
+ | **0.21.3** | macOS **inactive memory 완화**·48GB+ **ultra 자동**·분석 예산 600s·로컬 번들 **HF Hub 폰백 차단**·모델 루트 병합·HF token 이중 전략 |
264
267
  | **0.21.2** | KURE ONNX **ml-models-v0.2.1** 우선 다운로드(API→pinned)·models **0.2.1** lock — v0.2.0 404 수정 |
265
268
  | **0.21.1** | **KURE·독성 ONNX** 첫 사용 시 Release **자동 다운로드**(CI 업로드)·GitHub API 폴백 URL |
266
269
  | **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 100_000;
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":"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"}
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 >= 16) {
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":"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"}
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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"}
@@ -1,4 +1,6 @@
1
1
  import type { ReportData } from "./types.js";
2
2
  import type { LlmJsonShape } from "./llm-json.js";
3
3
  import type { LlmInsights } from "./types.js";
4
+ /** LLM 출력의 템플릿 잔여물·오류 메시지 필터링 */
5
+ export declare function isLlmGarbageText(value: string): boolean;
4
6
  export declare function sanitizeLlmDeck(parsed: LlmJsonShape, data: ReportData): Partial<LlmInsights>;
@@ -1,4 +1,23 @@
1
1
  const KEYWORD_POOL_MAX = 80;
2
+ /** LLM 출력의 템플릿 잔여물·오류 메시지 필터링 */
3
+ export function isLlmGarbageText(value) {
4
+ const v = value.trim();
5
+ if (v.length < 4)
6
+ return true;
7
+ // JSON 문법 잔여물
8
+ if (/[\]}{]/.test(v))
9
+ return true;
10
+ // 오류/메타 메시지
11
+ if (/this is not correct|please wait|json|schema|format|template/i.test(v))
12
+ return true;
13
+ // 통계 숫자만 나열 (쉼표·공백·%·숫자 외 문자 없음)
14
+ if (/^[\d\s,%\.]+$/.test(v))
15
+ return true;
16
+ // 키워드 없이 구두점·숫자만 있는 경우
17
+ if (!/[\p{L}]/u.test(v))
18
+ return true;
19
+ return false;
20
+ }
2
21
  function keywordPool(data) {
3
22
  const pool = new Set();
4
23
  for (const k of data.keywords.slice(0, KEYWORD_POOL_MAX)) {
@@ -1 +1 @@
1
- {"version":3,"file":"llm-deck-validate.js","sourceRoot":"","sources":["../../src/llm-deck-validate.ts"],"names":[],"mappings":"AAIA,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAE5B,SAAS,WAAW,CAAC,IAAgB;IACnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,EAAE,CAAC;QACzD,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;QAC9B,IAAI,KAAK;YAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC;YACnD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC;gBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,IAAgB;IAClC,MAAM,CAAC,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5B,MAAM,OAAO,GAAG,CAAC,CAA4B,EAAE,EAAE;QAC/C,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,OAAO;QAC7D,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACpC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACnC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACjC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACnC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;IACnD,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,IAAI;QAAE,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtE,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,SAAS,CAAC,GAAW,EAAE,IAAgB;IAC9C,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACrB,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3D,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;IACtD,CAAC;IACD,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAoB,EAAE,IAAgB;IACpE,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,GAAG,GAAyB,EAAE,CAAC;IAErC,MAAM,IAAI,GAAG,MAAM,CAAC,aAAa,CAAC;IAClC,IAAI,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC;QACnD,GAAG,CAAC,aAAa,GAAG;YAClB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YACnC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;YAClD,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SAC1F,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;SACnC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;SACpF,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,QAAQ,EAAE,CAAC,CAAC,QAAS,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;QAC1C,OAAO,EAAE,CAAC,CAAC,OAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;KACxC,CAAC,CAAC,CAAC;IACN,IAAI,OAAO,CAAC,MAAM;QAAE,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;IAE1C,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,iBAAiB,IAAI,EAAE,CAAC;SAC3C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;SAC/C,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,IAAI,EAAE,CAAC,CAAC,IAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACjC,IAAI,EAAE,CAAC,CAAC,IAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;QAClC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;KAClC,CAAC,CAAC,CAAC;IACN,IAAI,KAAK,CAAC,MAAM;QAAE,GAAG,CAAC,iBAAiB,GAAG,KAAK,CAAC;IAEhD,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;SACzC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;SAC9B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QAC5C,KAAK,EAAE,CAAC,CAAC,KAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACnC,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QAC9C,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI;KACpD,CAAC,CAAC,CAAC;IACN,IAAI,QAAQ,CAAC,MAAM;QAAE,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAC;IAEjD,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;SAClC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;SAC9B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,KAAK,EAAE,CAAC,CAAC,KAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;KAC9C,CAAC,CAAC,CAAC;IACN,IAAI,IAAI,CAAC,MAAM;QAAE,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;IAEtC,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;SACrC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;SAC9B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,gBAAgB,IAAI,EAAE,CAAC;aACxC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC7B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACf,OAAO;YACL,KAAK,EAAE,CAAC,CAAC,KAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YACnC,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;YACjD,gBAAgB,EAAE,QAAQ;SAC3B,CAAC;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACzE,IAAI,KAAK,CAAC,MAAM;QAAE,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC;IAE1C,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;SACxC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;SAC9B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,KAAK,EAAE,CAAC,CAAC,KAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACnC,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QAC9C,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;KACjD,CAAC,CAAC,CAAC;IACN,IAAI,KAAK,CAAC,MAAM;QAAE,GAAG,CAAC,cAAc,GAAG,KAAK,CAAC;IAE7C,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;SACxC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;SAC/C,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,IAAI,EAAE,CAAC,CAAC,IAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACjC,IAAI,EAAE,CAAC,CAAC,IAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;KACnC,CAAC,CAAC,CAAC;IACN,IAAI,IAAI,CAAC,MAAM;QAAE,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC;IAE5C,IAAI,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC;QAC7B,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACxD,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxG,IAAI,IAAI,CAAC,MAAM;QAAE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAEhE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;SACtC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;SAC7B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACxD,IAAI,EAAE,CAAC,MAAM;QAAE,GAAG,CAAC,eAAe,GAAG,EAAE,CAAC;IAExC,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"llm-deck-validate.js","sourceRoot":"","sources":["../../src/llm-deck-validate.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,7 @@ async function main() {
38
38
  maxTokens: req.maxTokens,
39
39
  inferTimeoutMs: req.inferTimeoutMs,
40
40
  loadTimeoutMs: req.loadTimeoutMs,
41
+ grammarJsonSchema: req.grammarJsonSchema,
41
42
  });
42
43
  writeResponse({ ok: true, text });
43
44
  process.exit(0);
@@ -1 +1 @@
1
- {"version":3,"file":"llm-infer-cli.js","sourceRoot":"","sources":["../../src/llm-infer-cli.ts"],"names":[],"mappings":";AACA;;;;GAIG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAElE,SAAS,aAAa,CAAC,GAAqB;IAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3C,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IACD,IAAI,GAAoB,CAAC;IACzB,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACpG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,GAAG,KAAK,MAAM;QAAE,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC;SACpD,IAAI,GAAG,CAAC,GAAG,KAAK,OAAO;QAAE,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC;;QAC3D,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAEpC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC;YACzC,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,aAAa,EAAE,GAAG,CAAC,aAAa;SACjC,CAAC,CAAC;QACH,aAAa,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;QACzE,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"llm-infer-cli.js","sourceRoot":"","sources":["../../src/llm-infer-cli.ts"],"names":[],"mappings":";AACA;;;;GAIG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAElE,SAAS,aAAa,CAAC,GAAqB;IAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3C,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IACD,IAAI,GAAoB,CAAC;IACzB,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACpG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,GAAG,KAAK,MAAM;QAAE,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC;SACpD,IAAI,GAAG,CAAC,GAAG,KAAK,OAAO;QAAE,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC;;QAC3D,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAEpC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC;YACzC,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;SACzC,CAAC,CAAC;QACH,aAAa,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;QACzE,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC"}
@@ -1,3 +1,5 @@
1
1
  import { type RunLlamaPromptOptions } from "./llm-llama-core.js";
2
2
  /** child·in-process 공용 — node-llama-cpp 직접 호출 */
3
- export declare function runLlamaPromptInProcess(options: RunLlamaPromptOptions): Promise<string>;
3
+ export declare function runLlamaPromptInProcess(options: RunLlamaPromptOptions & {
4
+ grammarJsonSchema?: unknown;
5
+ }): Promise<string>;
@@ -13,11 +13,13 @@ function raceTimeout(promise, timeoutMs, label) {
13
13
  }
14
14
  /** child·in-process 공용 — node-llama-cpp 직접 호출 */
15
15
  export async function runLlamaPromptInProcess(options) {
16
- const { modelPath, prompt, maxTokens = 768, inferTimeoutMs, loadTimeoutMs } = options;
16
+ const { modelPath, prompt, maxTokens = 768, inferTimeoutMs, loadTimeoutMs, grammarJsonSchema } = options;
17
17
  const mod = "node-llama-cpp";
18
18
  const { LlamaChatSession } = await import(mod);
19
19
  const llama = await getLlamaForKca();
20
- const grammar = await getKcaLlmGrammar(llama);
20
+ const grammar = grammarJsonSchema
21
+ ? await llama.createGrammarForJsonSchema(grammarJsonSchema)
22
+ : await getKcaLlmGrammar(llama);
21
23
  const sampling = resolveLlmSamplingParams();
22
24
  let model;
23
25
  let context;
@@ -1 +1 @@
1
- {"version":3,"file":"llm-infer-internal.js","sourceRoot":"","sources":["../../src/llm-infer-internal.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,wBAAwB,GAKzB,MAAM,qBAAqB,CAAC;AAE7B,SAAS,WAAW,CAAI,OAAmB,EAAE,SAAiB,EAAE,KAAa;IAC3E,IAAI,aAAwD,CAAC;IAC7D,OAAO,OAAO,CAAC,IAAI,CAAC;QAClB,OAAO;QACP,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;YAC/B,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QACxE,CAAC,CAAC;KACH,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;QACd,IAAI,aAAa,KAAK,SAAS;YAAE,YAAY,CAAC,aAAa,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,iDAAiD;AACjD,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,OAA8B;IAC1E,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,GAAG,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IACtF,MAAM,GAAG,GAAG,gBAAgB,CAAC;IAC7B,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAM,cAAc,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACpC,KAA+C,CAChD,CAAC;IACF,MAAM,QAAQ,GAAG,wBAAwB,EAAE,CAAC;IAE5C,IAAI,KAAiC,CAAC;IACtC,IAAI,OAAqC,CAAC;IAC1C,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,WAAW,CACtB,KAAsB,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC,EAChD,aAAa,EACb,kBAAkB,CACnB,CAAC;QACF,OAAO,GAAG,MAAM,WAAW,CACzB,KAAK,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAC1C,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,EAC/B,qBAAqB,CACtB,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC;YACnC,eAAe,EAAE,OAAO,CAAC,WAAW,EAAE;SACvC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,WAAW,CAC7B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;YACrB,SAAS;YACT,OAAO,EAAE,OAAO,IAAI,SAAS;YAC7B,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;SAC9B,CAAC,EACF,cAAc,EACd,aAAa,CACd,CAAC;QACF,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3D,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC;QAC3B,MAAM,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"llm-infer-internal.js","sourceRoot":"","sources":["../../src/llm-infer-internal.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,wBAAwB,GAKzB,MAAM,qBAAqB,CAAC;AAE7B,SAAS,WAAW,CAAI,OAAmB,EAAE,SAAiB,EAAE,KAAa;IAC3E,IAAI,aAAwD,CAAC;IAC7D,OAAO,OAAO,CAAC,IAAI,CAAC;QAClB,OAAO;QACP,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;YAC/B,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QACxE,CAAC,CAAC;KACH,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;QACd,IAAI,aAAa,KAAK,SAAS;YAAE,YAAY,CAAC,aAAa,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,iDAAiD;AACjD,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAgE;IAEhE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,GAAG,EAAE,cAAc,EAAE,aAAa,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;IACzG,MAAM,GAAG,GAAG,gBAAgB,CAAC;IAC7B,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAM,cAAc,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,iBAAiB;QAC/B,CAAC,CAAC,MAAO,KAAgD,CAAC,0BAA0B,CAAC,iBAAiB,CAAC;QACvG,CAAC,CAAC,MAAM,gBAAgB,CAAC,KAA+C,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,wBAAwB,EAAE,CAAC;IAE5C,IAAI,KAAiC,CAAC;IACtC,IAAI,OAAqC,CAAC;IAC1C,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,WAAW,CACtB,KAAsB,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC,EAChD,aAAa,EACb,kBAAkB,CACnB,CAAC;QACF,OAAO,GAAG,MAAM,WAAW,CACzB,KAAK,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAC1C,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,EAC/B,qBAAqB,CACtB,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC;YACnC,eAAe,EAAE,OAAO,CAAC,WAAW,EAAE;SACvC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,WAAW,CAC7B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;YACrB,SAAS;YACT,OAAO,EAAE,OAAO,IAAI,SAAS;YAC7B,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;SAC9B,CAAC,EACF,cAAc,EACd,aAAa,CACd,CAAC;QACF,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3D,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC;QAC3B,MAAM,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC"}
@@ -4,4 +4,4 @@ export interface BuildLlmPromptOptions {
4
4
  }
5
5
  /** LLM 입력 — 원문 메시지·PII 없이 통계·키워드·주제만 */
6
6
  export declare function buildLlmPromptPayload(data: ReportData, opts?: BuildLlmPromptOptions): string;
7
- export declare const LLM_SYSTEM_PROMPT = "\uB2F9\uC2E0\uC740 \uCE74\uCE74\uC624\uD1A1 \uB300\uD654\uBC29 \uD1B5\uACC4 \uB9AC\uD3EC\uD2B8 \uD3B8\uC9D1\uC790\uC785\uB2C8\uB2E4.\n\uC0AC\uC6A9\uC790 \uBA54\uC2DC\uC9C0 \uC6D0\uBB38\uC740 \uC5C6\uC2B5\uB2C8\uB2E4. \uD1B5\uACC4\uB9CC \uBCF4\uACE0 JSON \uAC1D\uCCB4 \uD558\uB098\uB9CC \uCD9C\uB825\uD558\uC138\uC694. \uB2E4\uB978 \uD14D\uC2A4\uD2B8\u00B7\uB9C8\uD06C\uB2E4\uC6B4 fence \uAE08\uC9C0.\n\uD544\uC218 \uD0A4: paragraphs (2~3\uAC1C \uBB38\uC790\uC5F4).\n\uC120\uD0DD \uD0A4: topicTitles, topicProposals, insightBullets, shopSearchSummary, dyadInsight,\nroomArchetype{name,description,traits[]}, moments[{headline,statRef}], relationshipBeats[{pair,beat,role}],\nepisodeCards[{period,title,tagline,emoji}], eraLabels[{label,detail}], insideJokes[{label,whyFunny,evidenceKeywords[]}(\uD0A4\uC6CC\uB4DC \uBAA9\uB85D \uB2E8\uC5B4\uB9CC)],\ncharacterCards[{alias,tagline,statHook}], dayMicroStories[{date,line}], shareLine, hashtags[], counterfactuals[{text}](\uAC00\uC0C1 \uC720\uBA38).\ntopicProposals\u00B7insideJokes\uC758 evidence\uB294 \uC785\uB825 \uD0A4\uC6CC\uB4DC\uC5D0 \uC788\uB294 \uB2E8\uC5B4\uB9CC.\nmoments\uC758 statRef \uC22B\uC790\uB294 \uC785\uB825 \uD1B5\uACC4\u00B7\uD558\uC774\uB77C\uC774\uD2B8\uC5D0 \uC788\uB294 \uAC83\uB9CC.\nparagraphs\uB294 2~3\uAC1C, \uAC01 120\uC790 \uC774\uB0B4, \uB9C8\uD06C\uB2E4\uC6B4 **\uAC15\uC870**\uB9CC \uD5C8\uC6A9.\ninsightBullets 2~4\uAC1C(\uC22B\uC790\uB294 \uC785\uB825\uC5D0 \uC788\uB294 \uAC83\uB9CC).";
7
+ export declare const LLM_SYSTEM_PROMPT = "\uB2F9\uC2E0\uC740 \uCE74\uCE74\uC624\uD1A1 \uB300\uD654\uBC29 \uD1B5\uACC4 \uB9AC\uD3EC\uD2B8 \uD3B8\uC9D1\uC790\uC785\uB2C8\uB2E4.\n\uC0AC\uC6A9\uC790 \uBA54\uC2DC\uC9C0 \uC6D0\uBB38\uC740 \uC5C6\uC2B5\uB2C8\uB2E4. \uD1B5\uACC4\uB9CC \uBCF4\uACE0 JSON \uAC1D\uCCB4 \uD558\uB098\uB9CC \uCD9C\uB825\uD558\uC138\uC694. \uB2E4\uB978 \uD14D\uC2A4\uD2B8\u00B7\uB9C8\uD06C\uB2E4\uC6B4 fence\u00B7\uC124\uBA85 \uAE08\uC9C0.\n\uD544\uC218 \uD0A4: paragraphs (2~3\uAC1C \uBB38\uC790\uC5F4).\n\uC120\uD0DD \uD0A4: topicTitles, topicProposals, insightBullets, shopSearchSummary, dyadInsight,\nroomArchetype{name,description,traits[]}, moments[{headline,statRef}], relationshipBeats[{pair,beat,role}],\nepisodeCards[{period,title,tagline,emoji}], eraLabels[{label,detail}], insideJokes[{label,whyFunny,evidenceKeywords[]}(\uD0A4\uC6CC\uB4DC \uBAA9\uB85D \uB2E8\uC5B4\uB9CC)],\ncharacterCards[{alias,tagline,statHook}], dayMicroStories[{date,line}], shareLine, hashtags[], counterfactuals[{text}](\uAC00\uC0C1 \uC720\uBA38).\ntopicProposals\u00B7insideJokes\uC758 evidence\uB294 \uC785\uB825 \uD0A4\uC6CC\uB4DC\uC5D0 \uC788\uB294 \uB2E8\uC5B4\uB9CC.\nmoments\uC758 statRef \uC22B\uC790\uB294 \uC785\uB825 \uD1B5\uACC4\u00B7\uD558\uC774\uB77C\uC774\uD2B8\uC5D0 \uC788\uB294 \uAC83\uB9CC.\nparagraphs\uB294 2~3\uAC1C, \uAC01 120\uC790 \uC774\uB0B4, \uB9C8\uD06C\uB2E4\uC6B4 **\uAC15\uC870**\uB9CC \uD5C8\uC6A9.\ninsightBullets 2~4\uAC1C(\uC22B\uC790\uB294 \uC785\uB825\uC5D0 \uC788\uB294 \uAC83\uB9CC).\n\n\uC62C\uBC14\uB978 \uCD9C\uB825 \uC608\uC2DC(\uC785\uB825 \uD1B5\uACC4\uB294 \uC608\uC2DC\uC774\uBA70 \uC2E4\uC81C \uC785\uB825\uACFC \uB2E4\uB984):\n{\n \"paragraphs\": [\n \"\uC774 \uBC29\uC740 **AI \uB3C4\uAD6C**\uC5D0 \uB300\uD55C \uC5F4\uC815\uC801\uC778 \uD1A0\uB860 \uACF5\uAC04\uC785\uB2C8\uB2E4. \uD074\uB85C\uB4DC\uC640 \uCF54\uB371\uC2A4\uAC00 \uD575\uC2EC \uD0A4\uC6CC\uB4DC\uB85C, \uAC1C\uBC1C\uC790\uB4E4\uC758 \uC2E4\uBB34 \uACE0\uBBFC\uC774 \uC624\uAC11\uB2C8\uB2E4.\",\n \"\uCC38\uC5EC\uB294 \uC18C\uC218\uC5D0\uAC8C \uC9D1\uC911\uB418\uC9C0\uB9CC(\uC9C0\uB2C8 0.85), \uD575\uC2EC \uBA64\uBC84 \uAC04 \uC751\uB2F5\uC774 \uD65C\uBC1C\uD574 **\uC815\uBCF4 \uACF5\uC720\uD615** \uCEE4\uBBA4\uB2C8\uD2F0\uC758 \uD2B9\uC9D5\uC744 \uBCF4\uC785\uB2C8\uB2E4.\"\n ],\n \"roomArchetype\": {\n \"name\": \"AI \uAC1C\uBC1C\uC790 \uC0B4\uB871\",\n \"description\": \"\uC0C8\uB85C\uC6B4 AI \uB3C4\uAD6C\uB97C \uD0D0\uAD6C\uD558\uACE0 \uC11C\uB85C\uC758 \uACBD\uD5D8\uC744 \uACF5\uC720\uD558\uB294 \uACF5\uAC04\",\n \"traits\": [\"AI \uB3C4\uAD6C\", \"\uC2E4\uBB34 \uC911\uC2EC\", \"\uC815\uBCF4 \uACF5\uC720\"]\n },\n \"moments\": [\n {\"headline\": \"\uD074\uB85C\uB4DC \uCF54\uB4DC \uCD9C\uC2DC\uC77C \uB300\uD654 \uD3ED\uC99D\", \"statRef\": \"5\uC6D4 15\uC77C 4,200\uAC74\"}\n ]\n}\n\n\uC808\uB300\uB85C JSON \uC678\uC758 \uD14D\uC2A4\uD2B8\uB97C \uCD9C\uB825\uD558\uC9C0 \uB9C8\uC138\uC694. \"This is not correct\" \uAC19\uC740 \uC624\uB958 \uBA54\uC2DC\uC9C0\uB3C4 \uAE08\uC9C0.";
@@ -61,7 +61,7 @@ export function buildLlmPromptPayload(data, opts) {
61
61
  return lines.join("\n");
62
62
  }
63
63
  export const LLM_SYSTEM_PROMPT = `당신은 카카오톡 대화방 통계 리포트 편집자입니다.
64
- 사용자 메시지 원문은 없습니다. 통계만 보고 JSON 객체 하나만 출력하세요. 다른 텍스트·마크다운 fence 금지.
64
+ 사용자 메시지 원문은 없습니다. 통계만 보고 JSON 객체 하나만 출력하세요. 다른 텍스트·마크다운 fence·설명 금지.
65
65
  필수 키: paragraphs (2~3개 문자열).
66
66
  선택 키: topicTitles, topicProposals, insightBullets, shopSearchSummary, dyadInsight,
67
67
  roomArchetype{name,description,traits[]}, moments[{headline,statRef}], relationshipBeats[{pair,beat,role}],
@@ -70,5 +70,23 @@ characterCards[{alias,tagline,statHook}], dayMicroStories[{date,line}], shareLin
70
70
  topicProposals·insideJokes의 evidence는 입력 키워드에 있는 단어만.
71
71
  moments의 statRef 숫자는 입력 통계·하이라이트에 있는 것만.
72
72
  paragraphs는 2~3개, 각 120자 이내, 마크다운 **강조**만 허용.
73
- insightBullets 2~4개(숫자는 입력에 있는 것만).`;
73
+ insightBullets 2~4개(숫자는 입력에 있는 것만).
74
+
75
+ 올바른 출력 예시(입력 통계는 예시이며 실제 입력과 다름):
76
+ {
77
+ "paragraphs": [
78
+ "이 방은 **AI 도구**에 대한 열정적인 토론 공간입니다. 클로드와 코덱스가 핵심 키워드로, 개발자들의 실무 고민이 오갑니다.",
79
+ "참여는 소수에게 집중되지만(지니 0.85), 핵심 멤버 간 응답이 활발해 **정보 공유형** 커뮤니티의 특징을 보입니다."
80
+ ],
81
+ "roomArchetype": {
82
+ "name": "AI 개발자 살롱",
83
+ "description": "새로운 AI 도구를 탐구하고 서로의 경험을 공유하는 공간",
84
+ "traits": ["AI 도구", "실무 중심", "정보 공유"]
85
+ },
86
+ "moments": [
87
+ {"headline": "클로드 코드 출시일 대화 폭증", "statRef": "5월 15일 4,200건"}
88
+ ]
89
+ }
90
+
91
+ 절대로 JSON 외의 텍스트를 출력하지 마세요. "This is not correct" 같은 오류 메시지도 금지.`;
74
92
  //# sourceMappingURL=llm-input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"llm-input.js","sourceRoot":"","sources":["../../src/llm-input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-input.js","sourceRoot":"","sources":["../../src/llm-input.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,8 @@ export interface RunLlamaPromptOptions {
34
34
  /** GGUF 로드+컨텍스트 생성 상한(ms) */
35
35
  loadTimeoutMs: number;
36
36
  gpu?: LlamaGpuMode;
37
+ /** JSON Schema for grammar-constrained generation (bypasses cached grammar) */
38
+ grammarJsonSchema?: unknown;
37
39
  }
38
40
  /** Qwen3.5 instruct(non-thinking) 기본 — env로 override */
39
41
  export declare function resolveLlmSamplingParams(): {
@@ -1 +1 @@
1
- {"version":3,"file":"llm-llama-core.js","sourceRoot":"","sources":["../../src/llm-llama-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-llama-core.js","sourceRoot":"","sources":["../../src/llm-llama-core.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 — free RAM을 보수적으로 반영 */
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;
@@ -35,23 +35,64 @@ export function memoryHeadroomForLlmLoad(profile) {
35
35
  }
36
36
  return Math.round(headroom * 10) / 10;
37
37
  }
38
- const POST_ML_OS_SLACK_GB = 2;
39
- /** ML dispose 직후 GGUF 로드용 headroom — free RAM을 더 보수적으로 반영 */
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
- const freeCap = Math.max(0, free - POST_ML_OS_SLACK_GB);
46
- if (freeCap < effective)
47
- effective = freeCap;
48
- if (free < minFree) {
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":"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"}
1
+ {"version":3,"file":"llm-resolve.js","sourceRoot":"","sources":["../../src/llm-resolve.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@ export interface LlmInferRequest {
8
8
  inferTimeoutMs: number;
9
9
  loadTimeoutMs: number;
10
10
  gpu: LlamaGpuMode;
11
+ /** JSON Schema for grammar-constrained generation */
12
+ grammarJsonSchema?: unknown;
11
13
  }
12
14
  export type LlmInferResponse = {
13
15
  ok: true;
@@ -1 +1 @@
1
- {"version":3,"file":"llm-subprocess.js","sourceRoot":"","sources":["../../src/llm-subprocess.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-subprocess.js","sourceRoot":"","sources":["../../src/llm-subprocess.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,8 @@ import { probeMachineProfileSync } from "./analysis-capability.js";
9
9
  import { resolvePresetNameWithAuto } from "./analysis-preset.js";
10
10
  import { parseLlmJsonResponse } from "./llm-json.js";
11
11
  import { mergeTopicProposals } from "./topic-merge.js";
12
- import { sanitizeLlmDeck } from "./llm-deck-validate.js";
12
+ import { sanitizeLlmDeck, isLlmGarbageText } from "./llm-deck-validate.js";
13
+ import { buildKcaLlmJsonSchema } from "./llm-schema.js";
13
14
  import { resolveLlmGpuForInfer } from "./llm-gpu-policy.js";
14
15
  import { runLlamaPrompt, LlmInferProcessError } from "./llm-runtime.js";
15
16
  function debugLlmRaw(raw, label) {
@@ -77,6 +78,7 @@ async function runNodeLlamaOnce(prompt, size, plan, gpu) {
77
78
  loadTimeoutMs: llmLoadTimeoutMs(size),
78
79
  inferTimeoutMs: llmInferTimeoutMs(size, plan),
79
80
  gpu,
81
+ grammarJsonSchema: buildKcaLlmJsonSchema(),
80
82
  });
81
83
  }
82
84
  async function runNodeLlama(prompt, size, plan) {
@@ -212,7 +214,9 @@ function mergeTopics(data, parsed) {
212
214
  return topics;
213
215
  }
214
216
  function mergeNarrative(data, parsed, base) {
215
- const llmParas = (parsed.paragraphs ?? []).filter((p) => p.trim().length > 8).slice(0, 3);
217
+ const llmParas = (parsed.paragraphs ?? [])
218
+ .filter((p) => p.trim().length > 8 && !isLlmGarbageText(p))
219
+ .slice(0, 3);
216
220
  if (llmParas.length === 0)
217
221
  return base;
218
222
  const merged = [...llmParas, ...base.paragraphs.slice(0, 2)];
@@ -222,9 +226,13 @@ function mergeNarrative(data, parsed, base) {
222
226
  };
223
227
  }
224
228
  function mergeLlmInsights(data, parsed, proposals) {
225
- const insightBullets = (parsed.insightBullets ?? []).filter((s) => s.trim().length > 4).slice(0, 5);
226
- const shopSearchSummary = parsed.shopSearchSummary?.trim().slice(0, 200);
227
- const dyadInsight = parsed.dyadInsight?.trim().slice(0, 200);
229
+ const insightBullets = (parsed.insightBullets ?? [])
230
+ .filter((s) => s.trim().length > 4 && !isLlmGarbageText(s))
231
+ .slice(0, 5);
232
+ const rawShop = parsed.shopSearchSummary?.trim().slice(0, 200);
233
+ const shopSearchSummary = rawShop && !isLlmGarbageText(rawShop) ? rawShop : undefined;
234
+ const rawDyad = parsed.dyadInsight?.trim().slice(0, 200);
235
+ const dyadInsight = rawDyad && !isLlmGarbageText(rawDyad) ? rawDyad : undefined;
228
236
  const topicProposals = (proposals ?? [])
229
237
  .filter((p) => p.title?.trim())
230
238
  .slice(0, 4)