@agentix-e/nl2spel 1.2.1 → 1.3.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 +3 -1
- package/dist/index.cjs +3062 -0
- package/dist/index.d.cts +917 -0
- package/dist/index.d.ts +917 -28
- package/dist/index.js +3021 -24
- package/package.json +18 -7
- package/dist/context/context-extractor.d.ts +0 -86
- package/dist/context/context-extractor.d.ts.map +0 -1
- package/dist/context/context-extractor.js +0 -181
- package/dist/context/context-extractor.js.map +0 -1
- package/dist/context/schema-formatter.d.ts +0 -20
- package/dist/context/schema-formatter.d.ts.map +0 -1
- package/dist/context/schema-formatter.js +0 -104
- package/dist/context/schema-formatter.js.map +0 -1
- package/dist/engine/nl2spel-engine.d.ts +0 -145
- package/dist/engine/nl2spel-engine.d.ts.map +0 -1
- package/dist/engine/nl2spel-engine.js +0 -130
- package/dist/engine/nl2spel-engine.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/pattern/builtin-patterns.d.ts +0 -12
- package/dist/pattern/builtin-patterns.d.ts.map +0 -1
- package/dist/pattern/builtin-patterns.js +0 -812
- package/dist/pattern/builtin-patterns.js.map +0 -1
- package/dist/pattern/pattern-definition.d.ts +0 -49
- package/dist/pattern/pattern-definition.d.ts.map +0 -1
- package/dist/pattern/pattern-definition.js +0 -2
- package/dist/pattern/pattern-definition.js.map +0 -1
- package/dist/pattern/pattern-matcher.d.ts +0 -55
- package/dist/pattern/pattern-matcher.d.ts.map +0 -1
- package/dist/pattern/pattern-matcher.js +0 -216
- package/dist/pattern/pattern-matcher.js.map +0 -1
- package/dist/provider/llm-provider.d.ts +0 -146
- package/dist/provider/llm-provider.d.ts.map +0 -1
- package/dist/provider/llm-provider.js +0 -2
- package/dist/provider/llm-provider.js.map +0 -1
- package/dist/provider/provider-registry.d.ts +0 -28
- package/dist/provider/provider-registry.d.ts.map +0 -1
- package/dist/provider/provider-registry.js +0 -65
- package/dist/provider/provider-registry.js.map +0 -1
- package/dist/strategy/strategy-router.d.ts +0 -79
- package/dist/strategy/strategy-router.d.ts.map +0 -1
- package/dist/strategy/strategy-router.js +0 -182
- package/dist/strategy/strategy-router.js.map +0 -1
- package/dist/template/intent-classifier.d.ts +0 -56
- package/dist/template/intent-classifier.d.ts.map +0 -1
- package/dist/template/intent-classifier.js +0 -251
- package/dist/template/intent-classifier.js.map +0 -1
- package/dist/template/nl-intent.d.ts +0 -38
- package/dist/template/nl-intent.d.ts.map +0 -1
- package/dist/template/nl-intent.js +0 -39
- package/dist/template/nl-intent.js.map +0 -1
- package/dist/template/prompts/prompt-builder.d.ts +0 -20
- package/dist/template/prompts/prompt-builder.d.ts.map +0 -1
- package/dist/template/prompts/prompt-builder.js +0 -243
- package/dist/template/prompts/prompt-builder.js.map +0 -1
- package/dist/template/template-engine.d.ts +0 -27
- package/dist/template/template-engine.d.ts.map +0 -1
- package/dist/template/template-engine.js +0 -378
- package/dist/template/template-engine.js.map +0 -1
- package/dist/utils/chinese-number-parser.d.ts +0 -30
- package/dist/utils/chinese-number-parser.d.ts.map +0 -1
- package/dist/utils/chinese-number-parser.js +0 -92
- package/dist/utils/chinese-number-parser.js.map +0 -1
- package/dist/validation/auto-fixer.d.ts +0 -13
- package/dist/validation/auto-fixer.d.ts.map +0 -1
- package/dist/validation/auto-fixer.js +0 -110
- package/dist/validation/auto-fixer.js.map +0 -1
- package/dist/validation/self-correction-loop.d.ts +0 -46
- package/dist/validation/self-correction-loop.d.ts.map +0 -1
- package/dist/validation/self-correction-loop.js +0 -132
- package/dist/validation/self-correction-loop.js.map +0 -1
- package/dist/validation/validation-pipeline.d.ts +0 -81
- package/dist/validation/validation-pipeline.d.ts.map +0 -1
- package/dist/validation/validation-pipeline.js +0 -306
- package/dist/validation/validation-pipeline.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"builtin-patterns.js","sourceRoot":"","sources":["../../src/pattern/builtin-patterns.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Pattern definition — core data structures for Layer 0.
|
|
3
|
-
*
|
|
4
|
-
* Each PatternDefinition describes a mapping from natural language pattern to SpEL expression.
|
|
5
|
-
* Supports both Chinese and English languages.
|
|
6
|
-
*/
|
|
7
|
-
export interface PatternDefinition {
|
|
8
|
-
/** Unique identifier */
|
|
9
|
-
id: string;
|
|
10
|
-
/**
|
|
11
|
-
* Match regex (at least one language)
|
|
12
|
-
* Uses named capture groups (?<slotName>...) to extract slots
|
|
13
|
-
*/
|
|
14
|
-
match: RegExp;
|
|
15
|
-
/**
|
|
16
|
-
* SpEL template string
|
|
17
|
-
* Uses {slotName} placeholders to reference capture groups
|
|
18
|
-
*/
|
|
19
|
-
spelTemplate: string;
|
|
20
|
-
/**
|
|
21
|
-
* Slot definitions (capture groups mapped to SpEL types)
|
|
22
|
-
*/
|
|
23
|
-
slots: Record<string, SlotDefinition>;
|
|
24
|
-
/** Priority (0-100), higher priority matched first */
|
|
25
|
-
priority: number;
|
|
26
|
-
/** Tags (for classification and debugging) */
|
|
27
|
-
tags: string[];
|
|
28
|
-
/** Example input/output pairs */
|
|
29
|
-
examples: Array<{
|
|
30
|
-
nl: string;
|
|
31
|
-
spel: string;
|
|
32
|
-
}>;
|
|
33
|
-
/** Difficulty level */
|
|
34
|
-
difficulty: 'easy' | 'medium';
|
|
35
|
-
/** Confidence (0-1) */
|
|
36
|
-
confidence: number;
|
|
37
|
-
}
|
|
38
|
-
export interface SlotDefinition {
|
|
39
|
-
/** Key appearing in spelTemplate */
|
|
40
|
-
key: string;
|
|
41
|
-
/** SpEL value type: 'number' | 'string' | 'boolean' | 'variable' | 'literal' */
|
|
42
|
-
type: 'number' | 'string' | 'boolean' | 'variable' | 'literal';
|
|
43
|
-
/** Optional: value transformer (e.g. Chinese numbers → number) */
|
|
44
|
-
transform?: SlotTransform;
|
|
45
|
-
/** Optional: default value */
|
|
46
|
-
defaultValue?: string;
|
|
47
|
-
}
|
|
48
|
-
export type SlotTransform = 'toNumber' | 'toBoolean' | 'toString' | 'trim' | 'lowercase' | 'normalize';
|
|
49
|
-
//# sourceMappingURL=pattern-definition.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pattern-definition.d.ts","sourceRoot":"","sources":["../../src/pattern/pattern-definition.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IAEX;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEtC,sDAAsD;IACtD,QAAQ,EAAE,MAAM,CAAC;IAEjB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,EAAE,CAAC;IAEf,iCAAiC;IACjC,QAAQ,EAAE,KAAK,CAAC;QACd,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;IAEH,uBAAuB;IACvB,UAAU,EAAE,MAAM,GAAG,QAAQ,CAAC;IAE9B,uBAAuB;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,oCAAoC;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,gFAAgF;IAChF,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAC/D,kEAAkE;IAClE,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,8BAA8B;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,aAAa,GACvB,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,WAAW,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pattern-definition.js","sourceRoot":"","sources":["../../src/pattern/pattern-definition.ts"],"names":[],"mappings":""}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import type { PatternDefinition } from './pattern-definition.js';
|
|
2
|
-
export interface PatternMatchResult {
|
|
3
|
-
/** Whether matched */
|
|
4
|
-
matched: boolean;
|
|
5
|
-
/** The matching PatternDefinition */
|
|
6
|
-
pattern?: PatternDefinition;
|
|
7
|
-
/** Generated SpEL expression (if matched) */
|
|
8
|
-
spel?: string;
|
|
9
|
-
/** Confidence (0-1) */
|
|
10
|
-
confidence: number;
|
|
11
|
-
/** Match latency (ms) */
|
|
12
|
-
latencyMs: number;
|
|
13
|
-
/** Extracted slot values */
|
|
14
|
-
slots?: Record<string, string>;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* PatternMatcher — Layer 0 pattern matching core.
|
|
18
|
-
*/
|
|
19
|
-
export declare class PatternMatcher {
|
|
20
|
-
private _patterns;
|
|
21
|
-
constructor(patterns?: PatternDefinition[]);
|
|
22
|
-
get patternCount(): number;
|
|
23
|
-
register(pattern: PatternDefinition): void;
|
|
24
|
-
registerAll(patterns: PatternDefinition[]): void;
|
|
25
|
-
private sortByPriority;
|
|
26
|
-
/**
|
|
27
|
-
* Match natural language input, return the best match
|
|
28
|
-
*/
|
|
29
|
-
match(nl: string): PatternMatchResult;
|
|
30
|
-
/**
|
|
31
|
-
* Batch match
|
|
32
|
-
*/
|
|
33
|
-
matchAll(nl: string, maxResults?: number): PatternMatchResult[];
|
|
34
|
-
/**
|
|
35
|
-
* Input normalization
|
|
36
|
-
*/
|
|
37
|
-
private normalize;
|
|
38
|
-
/**
|
|
39
|
-
* Infer SpEL root object name from Chinese input
|
|
40
|
-
*/
|
|
41
|
-
private inferRoot;
|
|
42
|
-
/**
|
|
43
|
-
* Extract Chinese field names from input and map to SpEL fields
|
|
44
|
-
*/
|
|
45
|
-
private extractChineseField;
|
|
46
|
-
/**
|
|
47
|
-
* Template filling and value transformation
|
|
48
|
-
*/
|
|
49
|
-
private fillTemplate;
|
|
50
|
-
/**
|
|
51
|
-
* Infer SpEL field name from capture group
|
|
52
|
-
*/
|
|
53
|
-
private inferFieldFromCapture;
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=pattern-matcher.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pattern-matcher.d.ts","sourceRoot":"","sources":["../../src/pattern/pattern-matcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,MAAM,WAAW,kBAAkB;IACjC,sBAAsB;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,qCAAqC;IACrC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uBAAuB;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAAsB;gBAE3B,QAAQ,GAAE,iBAAiB,EAAO;IAK9C,IAAW,YAAY,IAAI,MAAM,CAEhC;IAEM,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAK1C,WAAW,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAKvD,OAAO,CAAC,cAAc;IAItB;;OAEG;IACI,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB;IA2B5C;;OAEG;IACI,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,GAAE,MAAU,GAAG,kBAAkB,EAAE;IA8BzE;;OAEG;IACH,OAAO,CAAC,SAAS;IAQjB;;OAEG;IACH,OAAO,CAAC,SAAS;IASjB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8C3B;;OAEG;IACH,OAAO,CAAC,YAAY;IA+DpB;;OAEG;IACH,OAAO,CAAC,qBAAqB;CAM9B"}
|
|
@@ -1,216 +0,0 @@
|
|
|
1
|
-
import { ChineseNumberParser } from '../utils/chinese-number-parser.js';
|
|
2
|
-
/**
|
|
3
|
-
* PatternMatcher — Layer 0 pattern matching core.
|
|
4
|
-
*/
|
|
5
|
-
export class PatternMatcher {
|
|
6
|
-
_patterns;
|
|
7
|
-
constructor(patterns = []) {
|
|
8
|
-
this._patterns = [...patterns];
|
|
9
|
-
this.sortByPriority();
|
|
10
|
-
}
|
|
11
|
-
get patternCount() {
|
|
12
|
-
return this._patterns.length;
|
|
13
|
-
}
|
|
14
|
-
register(pattern) {
|
|
15
|
-
this._patterns.push(pattern);
|
|
16
|
-
this.sortByPriority();
|
|
17
|
-
}
|
|
18
|
-
registerAll(patterns) {
|
|
19
|
-
this._patterns.push(...patterns);
|
|
20
|
-
this.sortByPriority();
|
|
21
|
-
}
|
|
22
|
-
sortByPriority() {
|
|
23
|
-
this._patterns.sort((a, b) => b.priority - a.priority);
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Match natural language input, return the best match
|
|
27
|
-
*/
|
|
28
|
-
match(nl) {
|
|
29
|
-
const startTime = Date.now();
|
|
30
|
-
const normalized = this.normalize(nl);
|
|
31
|
-
for (const pattern of this._patterns) {
|
|
32
|
-
const matchResult = pattern.match.exec(normalized);
|
|
33
|
-
if (!matchResult)
|
|
34
|
-
continue;
|
|
35
|
-
const slots = {};
|
|
36
|
-
if (matchResult.groups) {
|
|
37
|
-
for (const [key, value] of Object.entries(matchResult.groups)) {
|
|
38
|
-
if (value !== undefined) {
|
|
39
|
-
slots[key] = value;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
const spel = this.fillTemplate(pattern, slots, normalized, matchResult);
|
|
44
|
-
const latencyMs = Date.now() - startTime;
|
|
45
|
-
return { matched: true, pattern, spel, confidence: pattern.confidence, latencyMs, slots };
|
|
46
|
-
}
|
|
47
|
-
const latencyMs = Date.now() - startTime;
|
|
48
|
-
return { matched: false, confidence: 0, latencyMs };
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Batch match
|
|
52
|
-
*/
|
|
53
|
-
matchAll(nl, maxResults = 5) {
|
|
54
|
-
const normalized = this.normalize(nl);
|
|
55
|
-
const results = [];
|
|
56
|
-
for (const pattern of this._patterns) {
|
|
57
|
-
if (results.length >= maxResults)
|
|
58
|
-
break;
|
|
59
|
-
const matchResult = pattern.match.exec(normalized);
|
|
60
|
-
if (!matchResult)
|
|
61
|
-
continue;
|
|
62
|
-
const slots = {};
|
|
63
|
-
if (matchResult.groups) {
|
|
64
|
-
for (const [key, value] of Object.entries(matchResult.groups)) {
|
|
65
|
-
if (value !== undefined)
|
|
66
|
-
slots[key] = value;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
results.push({
|
|
70
|
-
matched: true,
|
|
71
|
-
pattern,
|
|
72
|
-
spel: this.fillTemplate(pattern, slots, normalized, matchResult),
|
|
73
|
-
confidence: pattern.confidence,
|
|
74
|
-
latencyMs: 0,
|
|
75
|
-
slots,
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
return results;
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* Input normalization
|
|
82
|
-
*/
|
|
83
|
-
normalize(input) {
|
|
84
|
-
return input
|
|
85
|
-
.trim()
|
|
86
|
-
.replace(/[\uFF01-\uFF5E]/g, (ch) => String.fromCharCode(ch.charCodeAt(0) - 0xfee0))
|
|
87
|
-
.replace(/\s+/g, ' ')
|
|
88
|
-
.replace(/[,,。.!!??;;::]+$/, '');
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Infer SpEL root object name from Chinese input
|
|
92
|
-
*/
|
|
93
|
-
inferRoot(input) {
|
|
94
|
-
if (/^(?:订单|order)/i.test(input))
|
|
95
|
-
return 'order';
|
|
96
|
-
if (/^(?:用户|user)/i.test(input))
|
|
97
|
-
return 'user';
|
|
98
|
-
if (/^(?:文件|file)/i.test(input))
|
|
99
|
-
return 'file';
|
|
100
|
-
if (/^(?:账号|account)/i.test(input))
|
|
101
|
-
return 'account';
|
|
102
|
-
if (/^(?:商品|product|item)/i.test(input))
|
|
103
|
-
return 'product';
|
|
104
|
-
return 'order';
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Extract Chinese field names from input and map to SpEL fields
|
|
108
|
-
*/
|
|
109
|
-
extractChineseField(input) {
|
|
110
|
-
// Extract first word chunk as field identifier
|
|
111
|
-
const m = input.match(/^[^\s,,、]+/);
|
|
112
|
-
if (!m)
|
|
113
|
-
return 'value';
|
|
114
|
-
const first = m[0];
|
|
115
|
-
// If input already contains a SpEL field name, return it directly
|
|
116
|
-
// Otherwise preserve the original word for template filling
|
|
117
|
-
// Common Chinese → English mapping
|
|
118
|
-
const cnMap = {
|
|
119
|
-
备注: 'remark',
|
|
120
|
-
说明: 'description',
|
|
121
|
-
描述: 'description',
|
|
122
|
-
金额: 'amount',
|
|
123
|
-
数量: 'count',
|
|
124
|
-
个数: 'count',
|
|
125
|
-
状态: 'status',
|
|
126
|
-
类型: 'type',
|
|
127
|
-
名称: 'name',
|
|
128
|
-
标题: 'title',
|
|
129
|
-
地址: 'address',
|
|
130
|
-
邮箱: 'email',
|
|
131
|
-
手机: 'phone',
|
|
132
|
-
电话: 'phone',
|
|
133
|
-
日期: 'date',
|
|
134
|
-
时间: 'time',
|
|
135
|
-
年龄: 'age',
|
|
136
|
-
价格: 'price',
|
|
137
|
-
用户名: 'name',
|
|
138
|
-
权限: 'role',
|
|
139
|
-
标签: 'tags',
|
|
140
|
-
列表: 'list',
|
|
141
|
-
数组: 'items',
|
|
142
|
-
文件: 'file',
|
|
143
|
-
文件名: 'name',
|
|
144
|
-
过期: 'expiryDate',
|
|
145
|
-
创建: 'createdAt',
|
|
146
|
-
有效: 'valid',
|
|
147
|
-
活跃: 'active',
|
|
148
|
-
激活: 'active',
|
|
149
|
-
};
|
|
150
|
-
return cnMap[first] ?? first;
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* Template filling and value transformation
|
|
154
|
-
*/
|
|
155
|
-
fillTemplate(pattern, slots, originalInput, _matchResult) {
|
|
156
|
-
let result = pattern.spelTemplate;
|
|
157
|
-
const hasFieldSlot = 'field' in slots;
|
|
158
|
-
// field: prefer capture group 'field', otherwise infer from input
|
|
159
|
-
const field = hasFieldSlot
|
|
160
|
-
? this.inferFieldFromCapture(slots['field'])
|
|
161
|
-
: this.extractChineseField(originalInput);
|
|
162
|
-
// root: infer from input
|
|
163
|
-
const root = this.inferRoot(originalInput);
|
|
164
|
-
result = result.replace(/\{field\}/g, field);
|
|
165
|
-
result = result.replace(/\{root\}/g, root);
|
|
166
|
-
// Replace operator placeholder {op}
|
|
167
|
-
if (originalInput.includes('>=') || originalInput.includes('≥')) {
|
|
168
|
-
result = result.replace(/\{op\}/g, '>=');
|
|
169
|
-
}
|
|
170
|
-
else if (originalInput.includes('<=') || originalInput.includes('≤')) {
|
|
171
|
-
result = result.replace(/\{op\}/g, '<=');
|
|
172
|
-
}
|
|
173
|
-
else if (originalInput.includes('!=') || originalInput.includes('≠')) {
|
|
174
|
-
result = result.replace(/\{op\}/g, '!=');
|
|
175
|
-
}
|
|
176
|
-
else if (originalInput.includes('>') ||
|
|
177
|
-
originalInput.includes('大于') ||
|
|
178
|
-
originalInput.includes('超过')) {
|
|
179
|
-
result = result.replace(/\{op\}/g, '>');
|
|
180
|
-
}
|
|
181
|
-
else if (originalInput.includes('<') ||
|
|
182
|
-
originalInput.includes('小于') ||
|
|
183
|
-
originalInput.includes('低于')) {
|
|
184
|
-
result = result.replace(/\{op\}/g, '<');
|
|
185
|
-
}
|
|
186
|
-
else {
|
|
187
|
-
result = result.replace(/\{op\}/g, '>');
|
|
188
|
-
}
|
|
189
|
-
// Replace specific slots
|
|
190
|
-
for (const [key, value] of Object.entries(slots)) {
|
|
191
|
-
if (key === 'field')
|
|
192
|
-
continue; // field already handled
|
|
193
|
-
const def = pattern.slots[key];
|
|
194
|
-
let transformedValue = value;
|
|
195
|
-
if (def?.transform === 'toNumber') {
|
|
196
|
-
const cnNumber = ChineseNumberParser.parseSafe(value);
|
|
197
|
-
transformedValue = cnNumber !== null ? String(cnNumber) : value;
|
|
198
|
-
}
|
|
199
|
-
result = result.replace(`{${key}}`, transformedValue ?? '');
|
|
200
|
-
}
|
|
201
|
-
// Clean up unfilled placeholders
|
|
202
|
-
result = result.replace(/\{[a-zA-Z_]+\}/g, '');
|
|
203
|
-
return result.trim();
|
|
204
|
-
}
|
|
205
|
-
/**
|
|
206
|
-
* Infer SpEL field name from capture group
|
|
207
|
-
*/
|
|
208
|
-
inferFieldFromCapture(captured) {
|
|
209
|
-
// If already an English identifier, return as-is
|
|
210
|
-
if (/^[a-zA-Z_]\w*$/.test(captured))
|
|
211
|
-
return captured;
|
|
212
|
-
// Chinese, attempt mapping
|
|
213
|
-
return this.extractChineseField(captured);
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
//# sourceMappingURL=pattern-matcher.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pattern-matcher.js","sourceRoot":"","sources":["../../src/pattern/pattern-matcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
import type { ContextSchema } from '@agentix-e/spel-ts';
|
|
2
|
-
/**
|
|
3
|
-
* LLMProvider interface — NL2Spel's pluggable LLM contract.
|
|
4
|
-
*
|
|
5
|
-
* Design principles:
|
|
6
|
-
* 1. Minimal interface: only exposes generate + generateStream + lifecycle
|
|
7
|
-
* 2. Capability declaration: capabilities let StrategyRouter make routing decisions
|
|
8
|
-
* 3. Async lifecycle: supports Providers that need init/dispose (e.g. WebLLM)
|
|
9
|
-
* 4. Stream support: optional generateStream for progressive generation
|
|
10
|
-
*/
|
|
11
|
-
export interface LLMProvider {
|
|
12
|
-
/** Provider unique name, used for logging/debugging/Provider selection */
|
|
13
|
-
readonly name: string;
|
|
14
|
-
/** Provider capability declaration */
|
|
15
|
-
readonly capabilities: LLMCapabilities;
|
|
16
|
-
/**
|
|
17
|
-
* Generate a SpEL expression (core method)
|
|
18
|
-
*/
|
|
19
|
-
generate(prompt: LLMPrompt, options?: LLMGenerateOptions): Promise<LLMResponse>;
|
|
20
|
-
/**
|
|
21
|
-
* Stream generate a SpEL expression (optional implementation)
|
|
22
|
-
*/
|
|
23
|
-
generateStream?(prompt: LLMPrompt, options?: LLMGenerateOptions): AsyncIterable<LLMStreamChunk>;
|
|
24
|
-
/**
|
|
25
|
-
* Check if the Provider is currently available
|
|
26
|
-
*/
|
|
27
|
-
isAvailable(): Promise<boolean>;
|
|
28
|
-
/**
|
|
29
|
-
* Initialize the Provider (optional)
|
|
30
|
-
*/
|
|
31
|
-
initialize?(): Promise<void>;
|
|
32
|
-
/**
|
|
33
|
-
* Release Provider resources (optional)
|
|
34
|
-
*/
|
|
35
|
-
dispose?(): Promise<void>;
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* LLMProvider capability declaration.
|
|
39
|
-
*/
|
|
40
|
-
export interface LLMCapabilities {
|
|
41
|
-
/** Maximum context window (tokens) */
|
|
42
|
-
maxContextTokens: number;
|
|
43
|
-
/** Whether Grammar Constraint (GBNF, etc.) is supported */
|
|
44
|
-
supportsGrammarConstraint: boolean;
|
|
45
|
-
/** Whether streaming output is supported */
|
|
46
|
-
supportsStreaming: boolean;
|
|
47
|
-
/** Whether Structured Output (JSON mode) is supported */
|
|
48
|
-
supportsStructuredOutput: boolean;
|
|
49
|
-
/** Whether available offline */
|
|
50
|
-
offlineAvailable: boolean;
|
|
51
|
-
/**
|
|
52
|
-
* Estimated cost per request (USD)
|
|
53
|
-
*/
|
|
54
|
-
estimatedCostPerRequest?: number;
|
|
55
|
-
/** Estimated latency (ms) */
|
|
56
|
-
estimatedLatencyMs: number;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Standardized LLM Prompt structure.
|
|
60
|
-
*/
|
|
61
|
-
export interface LLMPrompt {
|
|
62
|
-
/** System prompt */
|
|
63
|
-
system: string;
|
|
64
|
-
/** User input */
|
|
65
|
-
user: string;
|
|
66
|
-
/** Context Schema */
|
|
67
|
-
contextSchema: ContextSchema;
|
|
68
|
-
/** Few-Shot example list */
|
|
69
|
-
examples: FewShotExample[];
|
|
70
|
-
/** Grammar constraint string (GBNF format) */
|
|
71
|
-
grammar?: string;
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Few-Shot example
|
|
75
|
-
*/
|
|
76
|
-
export interface FewShotExample {
|
|
77
|
-
/** Natural language input */
|
|
78
|
-
nl: string;
|
|
79
|
-
/** Expected SpEL expression */
|
|
80
|
-
spel: string;
|
|
81
|
-
/** Difficulty level */
|
|
82
|
-
difficulty: 'easy' | 'medium' | 'hard';
|
|
83
|
-
/** Category */
|
|
84
|
-
category: string;
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* LLM generation options
|
|
88
|
-
*/
|
|
89
|
-
export interface LLMGenerateOptions {
|
|
90
|
-
/** Temperature (0-2), default 0.1 */
|
|
91
|
-
temperature?: number;
|
|
92
|
-
/** Maximum output tokens */
|
|
93
|
-
maxTokens?: number;
|
|
94
|
-
/** Top-p sampling */
|
|
95
|
-
topP?: number;
|
|
96
|
-
/** Stop sequences */
|
|
97
|
-
stopSequences?: string[];
|
|
98
|
-
/** Whether to enable stream */
|
|
99
|
-
stream?: boolean;
|
|
100
|
-
/** Custom model override */
|
|
101
|
-
model?: string;
|
|
102
|
-
/** Timeout (ms), default 30000 */
|
|
103
|
-
timeout?: number;
|
|
104
|
-
/** Maximum retry count */
|
|
105
|
-
maxRetries?: number;
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* LLM generation response
|
|
109
|
-
*/
|
|
110
|
-
export interface LLMResponse {
|
|
111
|
-
/** Raw generated text */
|
|
112
|
-
text: string;
|
|
113
|
-
/** Actual model used */
|
|
114
|
-
model: string;
|
|
115
|
-
/** Token usage statistics */
|
|
116
|
-
usage: LLMUsage;
|
|
117
|
-
/** Generation latency (ms) */
|
|
118
|
-
latencyMs: number;
|
|
119
|
-
/** Finish reason */
|
|
120
|
-
finishReason: 'stop' | 'length' | 'content_filter' | 'error';
|
|
121
|
-
/** Provider name */
|
|
122
|
-
providerName: string;
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* LLM Stream Chunk
|
|
126
|
-
*/
|
|
127
|
-
export interface LLMStreamChunk {
|
|
128
|
-
/** Delta text */
|
|
129
|
-
delta: string;
|
|
130
|
-
/** Accumulated text */
|
|
131
|
-
accumulated: string;
|
|
132
|
-
/** Whether done */
|
|
133
|
-
done: boolean;
|
|
134
|
-
/** Finish reason */
|
|
135
|
-
finishReason?: string;
|
|
136
|
-
}
|
|
137
|
-
/**
|
|
138
|
-
* Token usage statistics
|
|
139
|
-
*/
|
|
140
|
-
export interface LLMUsage {
|
|
141
|
-
promptTokens: number;
|
|
142
|
-
completionTokens: number;
|
|
143
|
-
totalTokens: number;
|
|
144
|
-
}
|
|
145
|
-
export type { ContextSchema } from '@agentix-e/spel-ts';
|
|
146
|
-
//# sourceMappingURL=llm-provider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"llm-provider.d.ts","sourceRoot":"","sources":["../../src/provider/llm-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"llm-provider.js","sourceRoot":"","sources":["../../src/provider/llm-provider.ts"],"names":[],"mappings":""}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { LLMProvider } from './llm-provider.js';
|
|
2
|
-
/**
|
|
3
|
-
* ProviderRegistry — manages registered LLMProvider instances.
|
|
4
|
-
*
|
|
5
|
-
* Responsibilities:
|
|
6
|
-
* 1. Register/unregister Providers
|
|
7
|
-
* 2. Sort by priority (offline first > low latency > high accuracy)
|
|
8
|
-
* 3. Look up Providers by name (for forced selection)
|
|
9
|
-
*/
|
|
10
|
-
export declare class ProviderRegistry {
|
|
11
|
-
private _providers;
|
|
12
|
-
/** Register a Provider */
|
|
13
|
-
register(provider: LLMProvider): void;
|
|
14
|
-
/** Unregister a Provider */
|
|
15
|
-
unregister(name: string): void;
|
|
16
|
-
/** Get a Provider by name */
|
|
17
|
-
get(name: string): LLMProvider | undefined;
|
|
18
|
-
/**
|
|
19
|
-
* Get available Providers sorted by priority.
|
|
20
|
-
* Sort rule: offline > low cost > low latency > high accuracy
|
|
21
|
-
*/
|
|
22
|
-
getPrioritized(): Promise<LLMProvider[]>;
|
|
23
|
-
/** List all registered Providers */
|
|
24
|
-
list(): LLMProvider[];
|
|
25
|
-
/** Number of registered Providers */
|
|
26
|
-
get count(): number;
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=provider-registry.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"provider-registry.d.ts","sourceRoot":"","sources":["../../src/provider/provider-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;;;;;GAOG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,UAAU,CAAqB;IAEvC,0BAA0B;IACnB,QAAQ,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAO5C,4BAA4B;IACrB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIrC,6BAA6B;IACtB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIjD;;;OAGG;IACU,cAAc,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAuBrD,oCAAoC;IAC7B,IAAI,IAAI,WAAW,EAAE;IAI5B,qCAAqC;IACrC,IAAW,KAAK,IAAI,MAAM,CAEzB;CACF"}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ProviderRegistry — manages registered LLMProvider instances.
|
|
3
|
-
*
|
|
4
|
-
* Responsibilities:
|
|
5
|
-
* 1. Register/unregister Providers
|
|
6
|
-
* 2. Sort by priority (offline first > low latency > high accuracy)
|
|
7
|
-
* 3. Look up Providers by name (for forced selection)
|
|
8
|
-
*/
|
|
9
|
-
export class ProviderRegistry {
|
|
10
|
-
_providers = [];
|
|
11
|
-
/** Register a Provider */
|
|
12
|
-
register(provider) {
|
|
13
|
-
if (this._providers.some((p) => p.name === provider.name)) {
|
|
14
|
-
throw new Error(`Provider '${provider.name}' already registered`);
|
|
15
|
-
}
|
|
16
|
-
this._providers.push(provider);
|
|
17
|
-
}
|
|
18
|
-
/** Unregister a Provider */
|
|
19
|
-
unregister(name) {
|
|
20
|
-
this._providers = this._providers.filter((p) => p.name !== name);
|
|
21
|
-
}
|
|
22
|
-
/** Get a Provider by name */
|
|
23
|
-
get(name) {
|
|
24
|
-
return this._providers.find((p) => p.name === name);
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Get available Providers sorted by priority.
|
|
28
|
-
* Sort rule: offline > low cost > low latency > high accuracy
|
|
29
|
-
*/
|
|
30
|
-
async getPrioritized() {
|
|
31
|
-
const available = [];
|
|
32
|
-
for (const p of this._providers) {
|
|
33
|
-
if (await p.isAvailable()) {
|
|
34
|
-
available.push(p);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
return available.sort((a, b) => {
|
|
38
|
-
// 1. Offline first
|
|
39
|
-
const aOffline = a.capabilities.offlineAvailable;
|
|
40
|
-
const bOffline = b.capabilities.offlineAvailable;
|
|
41
|
-
if (aOffline && !bOffline)
|
|
42
|
-
return -1;
|
|
43
|
-
if (!aOffline && bOffline)
|
|
44
|
-
return 1;
|
|
45
|
-
// 2. Cheaper first
|
|
46
|
-
const costA = a.capabilities.estimatedCostPerRequest ?? Infinity;
|
|
47
|
-
const costB = b.capabilities.estimatedCostPerRequest ?? Infinity;
|
|
48
|
-
if (costA < costB)
|
|
49
|
-
return -1;
|
|
50
|
-
if (costB < costA)
|
|
51
|
-
return 1;
|
|
52
|
-
// 3. Lower latency first
|
|
53
|
-
return a.capabilities.estimatedLatencyMs - b.capabilities.estimatedLatencyMs;
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
/** List all registered Providers */
|
|
57
|
-
list() {
|
|
58
|
-
return [...this._providers];
|
|
59
|
-
}
|
|
60
|
-
/** Number of registered Providers */
|
|
61
|
-
get count() {
|
|
62
|
-
return this._providers.length;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=provider-registry.js.map
|