@ax-llm/ax 9.0.60 → 10.0.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.
- package/ai/google-gemini/api.js +1 -1
- package/ai/google-gemini/api.js.map +1 -1
- package/ai/google-gemini/types.d.ts +1 -1
- package/ai/types.d.ts +1 -0
- package/cjs/ai/google-gemini/api.js +1 -1
- package/cjs/ai/google-gemini/api.js.map +1 -1
- package/cjs/ai/google-gemini/types.d.ts +1 -1
- package/cjs/ai/types.d.ts +1 -0
- package/cjs/docs/manager.js +2 -2
- package/cjs/docs/manager.js.map +1 -1
- package/cjs/docs/reranker.d.ts +4 -4
- package/cjs/docs/reranker.js +5 -5
- package/cjs/docs/reranker.js.map +1 -1
- package/cjs/docs/rewriter.d.ts +3 -3
- package/cjs/docs/rewriter.js +3 -3
- package/cjs/docs/rewriter.js.map +1 -1
- package/cjs/dsp/evaluate.d.ts +4 -1
- package/cjs/dsp/evaluate.js +4 -2
- package/cjs/dsp/evaluate.js.map +1 -1
- package/cjs/dsp/functions.js +2 -1
- package/cjs/dsp/functions.js.map +1 -1
- package/cjs/dsp/generate.d.ts +8 -6
- package/cjs/dsp/generate.js +36 -31
- package/cjs/dsp/generate.js.map +1 -1
- package/cjs/dsp/index.d.ts +0 -1
- package/cjs/dsp/index.js +0 -1
- package/cjs/dsp/index.js.map +1 -1
- package/cjs/dsp/optimize.d.ts +4 -1
- package/cjs/dsp/optimize.js +4 -2
- package/cjs/dsp/optimize.js.map +1 -1
- package/cjs/dsp/program.d.ts +7 -4
- package/cjs/dsp/program.js +10 -3
- package/cjs/dsp/program.js.map +1 -1
- package/cjs/dsp/prompt.js +19 -8
- package/cjs/dsp/prompt.js.map +1 -1
- package/cjs/dsp/util.js +6 -3
- package/cjs/dsp/util.js.map +1 -1
- package/cjs/funcs/code.js +1 -1
- package/cjs/funcs/code.js.map +1 -1
- package/cjs/prompts/agent.d.ts +8 -4
- package/cjs/prompts/agent.js +23 -11
- package/cjs/prompts/agent.js.map +1 -1
- package/cjs/prompts/cot.d.ts +3 -4
- package/cjs/prompts/cot.js +3 -3
- package/cjs/prompts/cot.js.map +1 -1
- package/cjs/prompts/rag.d.ts +4 -4
- package/cjs/prompts/rag.js +6 -6
- package/cjs/prompts/rag.js.map +1 -1
- package/cjs/prompts/react.d.ts +2 -3
- package/cjs/prompts/react.js +2 -2
- package/cjs/prompts/react.js.map +1 -1
- package/cjs/util/apicall.js +2 -2
- package/cjs/util/apicall.js.map +1 -1
- package/cjs/util/sse.d.ts +12 -0
- package/cjs/util/sse.js +97 -0
- package/cjs/util/sse.js.map +1 -0
- package/cjs/util/transform.d.ts +0 -3
- package/cjs/util/transform.js +1 -32
- package/cjs/util/transform.js.map +1 -1
- package/docs/manager.js +2 -2
- package/docs/manager.js.map +1 -1
- package/docs/reranker.d.ts +4 -4
- package/docs/reranker.js +6 -6
- package/docs/reranker.js.map +1 -1
- package/docs/rewriter.d.ts +3 -3
- package/docs/rewriter.js +4 -4
- package/docs/rewriter.js.map +1 -1
- package/dsp/evaluate.d.ts +4 -1
- package/dsp/evaluate.js +4 -2
- package/dsp/evaluate.js.map +1 -1
- package/dsp/functions.js +2 -1
- package/dsp/functions.js.map +1 -1
- package/dsp/generate.d.ts +8 -6
- package/dsp/generate.js +33 -29
- package/dsp/generate.js.map +1 -1
- package/dsp/index.d.ts +0 -1
- package/dsp/index.js +0 -1
- package/dsp/index.js.map +1 -1
- package/dsp/optimize.d.ts +4 -1
- package/dsp/optimize.js +4 -2
- package/dsp/optimize.js.map +1 -1
- package/dsp/program.d.ts +7 -4
- package/dsp/program.js +10 -3
- package/dsp/program.js.map +1 -1
- package/dsp/prompt.js +19 -8
- package/dsp/prompt.js.map +1 -1
- package/dsp/util.js +6 -3
- package/dsp/util.js.map +1 -1
- package/funcs/code.js +1 -1
- package/funcs/code.js.map +1 -1
- package/package.json +1 -1
- package/prompts/agent.d.ts +8 -4
- package/prompts/agent.js +23 -11
- package/prompts/agent.js.map +1 -1
- package/prompts/cot.d.ts +3 -4
- package/prompts/cot.js +4 -4
- package/prompts/cot.js.map +1 -1
- package/prompts/rag.d.ts +4 -4
- package/prompts/rag.js +7 -7
- package/prompts/rag.js.map +1 -1
- package/prompts/react.d.ts +2 -3
- package/prompts/react.js +2 -2
- package/prompts/react.js.map +1 -1
- package/util/apicall.js +2 -2
- package/util/apicall.js.map +1 -1
- package/util/sse.d.ts +12 -0
- package/util/sse.js +93 -0
- package/util/sse.js.map +1 -0
- package/util/transform.d.ts +0 -3
- package/util/transform.js +0 -30
- package/util/transform.js.map +1 -1
- package/cjs/dsp/gen2.d.ts +0 -8
- package/cjs/dsp/gen2.js +0 -15
- package/cjs/dsp/gen2.js.map +0 -1
- package/dsp/gen2.d.ts +0 -8
- package/dsp/gen2.js +0 -11
- package/dsp/gen2.js.map +0 -1
package/cjs/prompts/cot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cot.js","sourceRoot":"","sources":["../../../prompts/cot.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"cot.js","sourceRoot":"","sources":["../../../prompts/cot.ts"],"names":[],"mappings":";;;AAAA,oDAA8D;AAE9D,0CAA4C;AAE5C,MAAa,gBAGX,SAAQ,mBAAmC;IAC3C,YACE,SAAyC,EACzC,OAAgC;QAEhC,MAAM,GAAG,GAAG,IAAI,oBAAW,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,WAAW,GAAG,wFAAwF,CAAC;QAE7G,GAAG,CAAC,eAAe,CAAC;YAClB;gBACE,IAAI,EAAE,QAAQ;gBACd,WAAW;aACZ;YACD,GAAG,GAAG,CAAC,eAAe,EAAE;SACzB,CAAC,CAAC;QAEH,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACtB,CAAC;CACF;AArBD,4CAqBC"}
|
package/cjs/prompts/rag.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import { type AxGenerateOptions } from '../dsp/index.js';
|
|
1
|
+
import { type AxGenOptions } from '../dsp/index.js';
|
|
3
2
|
import { type AxProgramForwardOptions } from '../dsp/program.js';
|
|
3
|
+
import type { AxAIService } from '../index.js';
|
|
4
4
|
import { AxChainOfThought } from './cot.js';
|
|
5
5
|
export declare class AxRAG extends AxChainOfThought<{
|
|
6
6
|
context: string[];
|
|
@@ -11,10 +11,10 @@ export declare class AxRAG extends AxChainOfThought<{
|
|
|
11
11
|
private genQuery;
|
|
12
12
|
private queryFn;
|
|
13
13
|
private maxHops;
|
|
14
|
-
constructor(
|
|
14
|
+
constructor(queryFn: (query: string) => Promise<string>, options: Readonly<AxGenOptions & {
|
|
15
15
|
maxHops?: number;
|
|
16
16
|
}>);
|
|
17
|
-
forward({ question }: Readonly<{
|
|
17
|
+
forward(ai: Readonly<AxAIService>, { question }: Readonly<{
|
|
18
18
|
question: string;
|
|
19
19
|
}>, options?: Readonly<AxProgramForwardOptions>): Promise<{
|
|
20
20
|
answer: string;
|
package/cjs/prompts/rag.js
CHANGED
|
@@ -7,26 +7,26 @@ class AxRAG extends cot_js_1.AxChainOfThought {
|
|
|
7
7
|
genQuery;
|
|
8
8
|
queryFn;
|
|
9
9
|
maxHops;
|
|
10
|
-
constructor(
|
|
10
|
+
constructor(queryFn, options) {
|
|
11
11
|
const sig = '"Answer questions with short factoid answers." context:string[] "may contain relevant facts", question -> answer';
|
|
12
|
-
super(
|
|
12
|
+
super(sig, options);
|
|
13
13
|
this.maxHops = options?.maxHops ?? 3;
|
|
14
14
|
const qsig = new index_js_1.AxSignature('"Write a simple search query that will help answer a complex question." context?:string[] "may contain relevant facts", question -> query "question to further our understanding"');
|
|
15
|
-
this.genQuery = new index_js_1.
|
|
15
|
+
this.genQuery = new index_js_1.AxGen(qsig);
|
|
16
16
|
this.queryFn = queryFn;
|
|
17
17
|
this.register(this.genQuery);
|
|
18
18
|
}
|
|
19
|
-
async forward({ question }, options) {
|
|
19
|
+
async forward(ai, { question }, options) {
|
|
20
20
|
let context = [];
|
|
21
21
|
for (let i = 0; i < this.maxHops; i++) {
|
|
22
|
-
const { query } = await this.genQuery.forward({
|
|
22
|
+
const { query } = await this.genQuery.forward(ai, {
|
|
23
23
|
context,
|
|
24
24
|
question
|
|
25
25
|
}, options);
|
|
26
26
|
const val = await this.queryFn(query);
|
|
27
27
|
context = index_js_1.axStringUtil.dedup([...context, val]);
|
|
28
28
|
}
|
|
29
|
-
return super.forward({ context, question }, options);
|
|
29
|
+
return super.forward(ai, { context, question }, options);
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
exports.AxRAG = AxRAG;
|
package/cjs/prompts/rag.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rag.js","sourceRoot":"","sources":["../../../prompts/rag.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"rag.js","sourceRoot":"","sources":["../../../prompts/rag.ts"],"names":[],"mappings":";;;AAAA,8CAKyB;AAIzB,qCAA4C;AAE5C,MAAa,KAAM,SAAQ,yBAG1B;IACS,QAAQ,CAGd;IACM,OAAO,CAAqC;IAC5C,OAAO,CAAS;IAExB,YACE,OAA2C,EAC3C,OAAsD;QAEtD,MAAM,GAAG,GACP,kHAAkH,CAAC;QACrH,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAEpB,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,CAAC,CAAC;QAErC,MAAM,IAAI,GAAG,IAAI,sBAAW,CAC1B,mLAAmL,CACpL,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAK,CAGvB,IAAI,CAAC,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAEe,KAAK,CAAC,OAAO,CAC3B,EAAyB,EACzB,EAAE,QAAQ,EAAkC,EAC5C,OAA2C;QAE3C,IAAI,OAAO,GAAa,EAAE,CAAC;QAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAC3C,EAAE,EACF;gBACE,OAAO;gBACP,QAAQ;aACT,EACD,OAAO,CACR,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,GAAG,uBAAY,CAAC,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;CACF;AAtDD,sBAsDC"}
|
package/cjs/prompts/react.d.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { AxGenerateOptions } from '../dsp/generate.js';
|
|
1
|
+
import type { AxGenOptions } from '../dsp/generate.js';
|
|
3
2
|
import type { AxGenIn, AxGenOut } from '../dsp/program.js';
|
|
4
3
|
import { AxSignature } from '../dsp/sig.js';
|
|
5
4
|
import { AxChainOfThought } from './cot.js';
|
|
6
5
|
export declare class AxReAct<IN extends AxGenIn = AxGenIn, OUT extends AxGenOut = AxGenOut> extends AxChainOfThought<IN, OUT> {
|
|
7
|
-
constructor(
|
|
6
|
+
constructor(signature: Readonly<AxSignature | string>, options: Readonly<AxGenOptions>);
|
|
8
7
|
}
|
package/cjs/prompts/react.js
CHANGED
|
@@ -4,7 +4,7 @@ exports.AxReAct = void 0;
|
|
|
4
4
|
const sig_js_1 = require("../dsp/sig.js");
|
|
5
5
|
const cot_js_1 = require("./cot.js");
|
|
6
6
|
class AxReAct extends cot_js_1.AxChainOfThought {
|
|
7
|
-
constructor(
|
|
7
|
+
constructor(signature, options) {
|
|
8
8
|
if (!options?.functions || options.functions.length === 0) {
|
|
9
9
|
throw new Error('No functions provided');
|
|
10
10
|
}
|
|
@@ -24,7 +24,7 @@ class AxReAct extends cot_js_1.AxChainOfThought {
|
|
|
24
24
|
// type: { name: 'string', isArray: true }
|
|
25
25
|
// });
|
|
26
26
|
sig.setOutputFields(sig.getOutputFields().map((v) => ({ ...v, isOptional: true })));
|
|
27
|
-
super(
|
|
27
|
+
super(sig, options);
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
exports.AxReAct = AxReAct;
|
package/cjs/prompts/react.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.js","sourceRoot":"","sources":["../../../prompts/react.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"react.js","sourceRoot":"","sources":["../../../prompts/react.ts"],"names":[],"mappings":";;;AAEA,0CAA4C;AAE5C,qCAA4C;AAE5C,MAAa,OAGX,SAAQ,yBAAyB;IACjC,YACE,SAAyC,EACzC,OAA+B;QAE/B,IAAI,CAAC,OAAO,EAAE,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC1C,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;gBACtB,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC;YAC7B,CAAC;YACD,OAAO,CAAC,CAAC,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEjE,MAAM,GAAG,GAAG,IAAI,oBAAW,CAAC,SAAS,CAAC,CAAC;QACvC,GAAG,CAAC,cAAc,CAChB,8BAA8B,QAAQ,qDAAqD,CAC5F,CAAC;QAEF,sBAAsB;QACtB,yBAAyB;QACzB,wDAAwD;QACxD,sBAAsB;QACtB,4CAA4C;QAC5C,MAAM;QAEN,GAAG,CAAC,eAAe,CACjB,GAAG,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAC/D,CAAC;QAEF,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACtB,CAAC;CACF;AAvCD,0BAuCC"}
|
package/cjs/util/apicall.js
CHANGED
|
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.apiCall = void 0;
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
const web_1 = require("stream/web");
|
|
9
|
+
const sse_js_1 = require("./sse.js");
|
|
9
10
|
const stream_js_1 = require("./stream.js");
|
|
10
|
-
const transform_js_1 = require("./transform.js");
|
|
11
11
|
const textDecoderStream = web_1.TextDecoderStream ?? stream_js_1.TextDecoderStreamPolyfill;
|
|
12
12
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
13
13
|
const apiCall = async (api, json) => {
|
|
@@ -42,7 +42,7 @@ const apiCall = async (api, json) => {
|
|
|
42
42
|
}
|
|
43
43
|
const st = res.body
|
|
44
44
|
.pipeThrough(new textDecoderStream())
|
|
45
|
-
.pipeThrough(new
|
|
45
|
+
.pipeThrough(new sse_js_1.SSEParser());
|
|
46
46
|
return st;
|
|
47
47
|
}
|
|
48
48
|
catch (e) {
|
package/cjs/util/apicall.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apicall.js","sourceRoot":"","sources":["../../../util/apicall.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,oCAGoB;AAIpB,
|
|
1
|
+
{"version":3,"file":"apicall.js","sourceRoot":"","sources":["../../../util/apicall.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,oCAGoB;AAIpB,qCAAqC;AACrC,2CAAwD;AAaxD,MAAM,iBAAiB,GAAG,uBAAuB,IAAI,qCAAyB,CAAC;AAE/E,gEAAgE;AACzD,MAAM,OAAO,GAAG,KAAK,EAC1B,GAQC,EACD,IAAc,EACkC,EAAE;IAClD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,IAAI,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7E,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAEzC,IAAI,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC;QAC5B,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;YACrB,qBAAqB,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;YAC/C,UAAU,EAAE,MAAM,CAAC,IAAI;SACxB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,GAAqD,CAAC;IAE1D,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,MAAM,EAAE;YACvC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;YAChC,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,GAAG,GAAG,CAAC,OAAO;aACf;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC3D,MAAM,IAAI,KAAK,CACb,GAAG,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,UAAU,qBAAqB,QAAQ,EAAE,CAChE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAc,CAAC;QACzC,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI;aAChB,WAAW,CAAC,IAAI,iBAAiB,EAAE,CAAC;aACpC,WAAW,CAAC,IAAI,kBAAS,EAAa,CAAC,CAAC;QAE3C,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC;YAC5B,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAU,CAAC,CAAC;QAC7C,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CACb,cAAc,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,OAAO,EAAE,CAC5D,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAhEW,QAAA,OAAO,WAgElB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TransformStream } from 'stream/web';
|
|
2
|
+
export declare class SSEParser<T = unknown> extends TransformStream<string, T> {
|
|
3
|
+
private readonly dataParser;
|
|
4
|
+
private buffer;
|
|
5
|
+
private currentEvent;
|
|
6
|
+
constructor(dataParser?: (data: string) => T);
|
|
7
|
+
private handleChunk;
|
|
8
|
+
private handleFlush;
|
|
9
|
+
private processBuffer;
|
|
10
|
+
private parseLine;
|
|
11
|
+
private emitEvent;
|
|
12
|
+
}
|
package/cjs/util/sse.js
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SSEParser = void 0;
|
|
4
|
+
const web_1 = require("stream/web");
|
|
5
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
6
|
+
class SSEParser extends web_1.TransformStream {
|
|
7
|
+
dataParser;
|
|
8
|
+
buffer = '';
|
|
9
|
+
currentEvent = { rawData: '' };
|
|
10
|
+
constructor(dataParser = JSON.parse) {
|
|
11
|
+
super({
|
|
12
|
+
transform: (chunk, controller) => this.handleChunk(chunk, controller),
|
|
13
|
+
flush: (controller) => this.handleFlush(controller)
|
|
14
|
+
});
|
|
15
|
+
this.dataParser = dataParser;
|
|
16
|
+
}
|
|
17
|
+
handleChunk(chunk, controller) {
|
|
18
|
+
this.buffer += chunk;
|
|
19
|
+
this.processBuffer(controller);
|
|
20
|
+
}
|
|
21
|
+
handleFlush(controller) {
|
|
22
|
+
this.processBuffer(controller);
|
|
23
|
+
if (this.currentEvent.rawData) {
|
|
24
|
+
this.emitEvent(controller);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
processBuffer(controller) {
|
|
28
|
+
const lines = this.buffer.split(/\r\n|\r|\n/);
|
|
29
|
+
this.buffer = lines.pop() || '';
|
|
30
|
+
for (const line of lines) {
|
|
31
|
+
if (line.trim() === '') {
|
|
32
|
+
this.emitEvent(controller);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
this.parseLine(line);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
parseLine(line) {
|
|
40
|
+
const colonIndex = line.indexOf(':');
|
|
41
|
+
if (colonIndex === -1) {
|
|
42
|
+
// If there's no colon, treat the whole line as data
|
|
43
|
+
this.currentEvent.rawData += this.currentEvent.rawData
|
|
44
|
+
? '\n' + line.trim()
|
|
45
|
+
: line.trim();
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
const field = line.slice(0, colonIndex).trim();
|
|
49
|
+
const value = line.slice(colonIndex + 1).trim();
|
|
50
|
+
switch (field) {
|
|
51
|
+
case 'event':
|
|
52
|
+
this.currentEvent.event = value;
|
|
53
|
+
break;
|
|
54
|
+
case 'data':
|
|
55
|
+
this.currentEvent.rawData += this.currentEvent.rawData
|
|
56
|
+
? '\n' + value
|
|
57
|
+
: value;
|
|
58
|
+
break;
|
|
59
|
+
case 'id':
|
|
60
|
+
this.currentEvent.id = value;
|
|
61
|
+
break;
|
|
62
|
+
case 'retry': {
|
|
63
|
+
const retryValue = parseInt(value, 10);
|
|
64
|
+
if (!isNaN(retryValue)) {
|
|
65
|
+
this.currentEvent.retry = retryValue;
|
|
66
|
+
}
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
emitEvent(controller) {
|
|
72
|
+
if (this.currentEvent.rawData) {
|
|
73
|
+
// Check for special "[DONE]" message or other non-JSON data
|
|
74
|
+
if (this.currentEvent.rawData.trim() === '[DONE]' ||
|
|
75
|
+
this.currentEvent.rawData.trim().startsWith('[')) {
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
try {
|
|
80
|
+
// Attempt to parse the data using the provided dataParser
|
|
81
|
+
const parsedData = this.dataParser(this.currentEvent.rawData);
|
|
82
|
+
// Emit only if we successfully parsed the data
|
|
83
|
+
controller.enqueue(parsedData);
|
|
84
|
+
}
|
|
85
|
+
catch (e) {
|
|
86
|
+
// If parsing fails, log the error without emitting
|
|
87
|
+
console.warn('Failed to parse event data:', e);
|
|
88
|
+
console.log('Raw data that failed to parse:', this.currentEvent.rawData);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
// Reset the current event
|
|
92
|
+
this.currentEvent = { rawData: '' };
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
exports.SSEParser = SSEParser;
|
|
97
|
+
//# sourceMappingURL=sse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sse.js","sourceRoot":"","sources":["../../../util/sse.ts"],"names":[],"mappings":"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"}
|
package/cjs/util/transform.d.ts
CHANGED
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
import { TransformStream } from 'stream/web';
|
|
2
|
-
export declare class JSONStringifyStream<O> extends TransformStream<string, O> {
|
|
3
|
-
constructor();
|
|
4
|
-
}
|
|
5
2
|
export declare class RespTransformStream<I, O> extends TransformStream<I, O> {
|
|
6
3
|
constructor(transformFn: (arg0: I) => O, doneCallback?: (args0: readonly O[]) => Promise<void>);
|
|
7
4
|
}
|
package/cjs/util/transform.js
CHANGED
|
@@ -1,30 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RespTransformStream =
|
|
3
|
+
exports.RespTransformStream = void 0;
|
|
4
4
|
const web_1 = require("stream/web");
|
|
5
|
-
class JSONTransformer {
|
|
6
|
-
async transform(obj, controller) {
|
|
7
|
-
(obj.split('\n') ?? [])
|
|
8
|
-
.map(extractJson)
|
|
9
|
-
.map((v) => {
|
|
10
|
-
try {
|
|
11
|
-
return v && v.length > 0 ? JSON.parse(v) : null;
|
|
12
|
-
}
|
|
13
|
-
catch (e) {
|
|
14
|
-
return null;
|
|
15
|
-
}
|
|
16
|
-
})
|
|
17
|
-
.filter((v) => v)
|
|
18
|
-
.forEach((v) => v && controller.enqueue(v));
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
22
|
-
class JSONStringifyStream extends web_1.TransformStream {
|
|
23
|
-
constructor() {
|
|
24
|
-
super(new JSONTransformer());
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.JSONStringifyStream = JSONStringifyStream;
|
|
28
5
|
class TypeTransformer {
|
|
29
6
|
buffer;
|
|
30
7
|
doneCallback;
|
|
@@ -53,12 +30,4 @@ class RespTransformStream extends web_1.TransformStream {
|
|
|
53
30
|
}
|
|
54
31
|
}
|
|
55
32
|
exports.RespTransformStream = RespTransformStream;
|
|
56
|
-
const extractJson = (str) => {
|
|
57
|
-
const startIndex = str.indexOf('{');
|
|
58
|
-
const endIndex = str.lastIndexOf('}');
|
|
59
|
-
if (startIndex !== -1 && endIndex !== -1) {
|
|
60
|
-
return str.substring(startIndex, endIndex + 1);
|
|
61
|
-
}
|
|
62
|
-
return null;
|
|
63
|
-
};
|
|
64
33
|
//# sourceMappingURL=transform.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../util/transform.ts"],"names":[],"mappings":";;;AAAA,oCAIoB;AAEpB,MAAM,eAAe;
|
|
1
|
+
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../util/transform.ts"],"names":[],"mappings":";;;AAAA,oCAIoB;AAEpB,MAAM,eAAe;IACX,MAAM,CAAO;IACb,YAAY,CAA0C;IACtD,WAAW,CAAiB;IAEpC,YACE,WAA2B,EAC3B,YAAqD;QAErD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAM,EAAE,UAA+C;QACrE,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,GAAG,EAAE,CAAC;YACR,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,UAA+C;QACzD,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QAC7C,UAAU,CAAC,SAAS,EAAE,CAAC;IACzB,CAAC;CACF;AAED,gEAAgE;AAChE,MAAa,mBAA0B,SAAQ,qBAAqB;IAClE,YACE,WAA2B,EAC3B,YAAqD;QAErD,KAAK,CAAC,IAAI,eAAe,CAAO,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;IAC9D,CAAC;CACF;AAPD,kDAOC"}
|
package/docs/manager.js
CHANGED
|
@@ -58,7 +58,7 @@ export class AxDBManager {
|
|
|
58
58
|
const texts = Array.isArray(query) ? query : [query];
|
|
59
59
|
if (typeof texts[0] === 'string' && this.rewriter) {
|
|
60
60
|
for (const [i, text] of texts.entries()) {
|
|
61
|
-
const { rewrittenQuery } = await this.rewriter.forward({
|
|
61
|
+
const { rewrittenQuery } = await this.rewriter.forward(this.ai, {
|
|
62
62
|
query: text
|
|
63
63
|
});
|
|
64
64
|
texts[i] = rewrittenQuery;
|
|
@@ -84,7 +84,7 @@ export class AxDBManager {
|
|
|
84
84
|
const tp = topPercent && topPercent > 1 ? topPercent / 100 : topPercent;
|
|
85
85
|
const resultItems = tp ? getTopInPercent(m, tp) : m;
|
|
86
86
|
if (this.reranker) {
|
|
87
|
-
const { rankedItems } = await this.reranker.forward({
|
|
87
|
+
const { rankedItems } = await this.reranker.forward(this.ai, {
|
|
88
88
|
query: texts[0],
|
|
89
89
|
items: resultItems.map((item) => item.text)
|
|
90
90
|
});
|
package/docs/manager.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../docs/manager.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../docs/manager.ts"],"names":[],"mappings":"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"}
|
package/docs/reranker.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { AxAIService } from '../ai/types.js';
|
|
2
|
-
import {
|
|
2
|
+
import { AxGen, type AxGenOptions, type AxProgramForwardOptions } from '../dsp/index.js';
|
|
3
3
|
import type { AxRerankerIn, AxRerankerOut } from './manager.js';
|
|
4
|
-
export declare class AxDefaultResultReranker extends
|
|
5
|
-
constructor(
|
|
6
|
-
forward: (input: Readonly<AxRerankerIn>, options?: Readonly<AxProgramForwardOptions>) => Promise<AxRerankerOut>;
|
|
4
|
+
export declare class AxDefaultResultReranker extends AxGen<AxRerankerIn, AxRerankerOut> {
|
|
5
|
+
constructor(options?: Readonly<AxGenOptions>);
|
|
6
|
+
forward: (ai: Readonly<AxAIService>, input: Readonly<AxRerankerIn>, options?: Readonly<AxProgramForwardOptions>) => Promise<AxRerankerOut>;
|
|
7
7
|
}
|
package/docs/reranker.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export class AxDefaultResultReranker extends
|
|
3
|
-
constructor(
|
|
1
|
+
import { AxGen, axStringUtil } from '../dsp/index.js';
|
|
2
|
+
export class AxDefaultResultReranker extends AxGen {
|
|
3
|
+
constructor(options) {
|
|
4
4
|
const signature = `"You are a re-ranker assistant tasked with evaluating a set of content items in relation to a specific question. Your role involves critically analyzing each content item to determine its relevance to the question and re-ranking them accordingly. This process includes assigning a relevance score from 0 to 10 to each content item based on how well it answers the question, its coverage of the topic, and the reliability of its information. This re-ranked list should start with the content item that is most relevant to the question and end with the least relevant. Output only the list."
|
|
5
5
|
query: string, items: string[] -> rankedItems: string[] "list of id, 5-words Rationale, relevance score"`;
|
|
6
|
-
super(
|
|
6
|
+
super(signature, options);
|
|
7
7
|
}
|
|
8
|
-
forward = async (input, options) => {
|
|
9
|
-
const { rankedItems } = await super.forward(input, options);
|
|
8
|
+
forward = async (ai, input, options) => {
|
|
9
|
+
const { rankedItems } = await super.forward(ai, input, options);
|
|
10
10
|
const sortedIndexes = rankedItems.map((item) => {
|
|
11
11
|
const { id: index } = axStringUtil.extractIdAndText(item);
|
|
12
12
|
return index;
|
package/docs/reranker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reranker.js","sourceRoot":"","sources":["../../docs/reranker.ts"],"names":[],"mappings":"AACA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"reranker.js","sourceRoot":"","sources":["../../docs/reranker.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,EAGL,YAAY,EACb,MAAM,iBAAiB,CAAC;AAIzB,MAAM,OAAO,uBAAwB,SAAQ,KAG5C;IACC,YAAY,OAAgC;QAC1C,MAAM,SAAS,GAAG;6GACuF,CAAC;QAE1G,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5B,CAAC;IAEe,OAAO,GAAG,KAAK,EAC7B,EAAyB,EACzB,KAA6B,EAC7B,OAA2C,EACnB,EAAE;QAC1B,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAEhE,MAAM,aAAa,GAAa,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACvD,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAC1D,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,mEAAmE;QACnE,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK;aAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YAChB,MAAM,aAAa,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;YAC3C,OAAO,aAAa,KAAK,SAAS;gBAChC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;gBAC5B,CAAC,CAAC,SAAS,CAAC;QAChB,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAExD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;IACtC,CAAC,CAAC;CACH"}
|
package/docs/rewriter.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare class AxDefaultQueryRewriter extends
|
|
3
|
-
constructor(
|
|
1
|
+
import { AxGen, type AxGenOptions, type AxRewriteIn, type AxRewriteOut } from '../index.js';
|
|
2
|
+
export declare class AxDefaultQueryRewriter extends AxGen<AxRewriteIn, AxRewriteOut> {
|
|
3
|
+
constructor(options?: Readonly<AxGenOptions>);
|
|
4
4
|
}
|
package/docs/rewriter.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export class AxDefaultQueryRewriter extends
|
|
3
|
-
constructor(
|
|
1
|
+
import { AxGen } from '../index.js';
|
|
2
|
+
export class AxDefaultQueryRewriter extends AxGen {
|
|
3
|
+
constructor(options) {
|
|
4
4
|
const signature = `"You are a query rewriter assistant tasked with rewriting a given query to improve its clarity, specificity, and relevance. Your role involves analyzing the query to identify any ambiguities, generalizations, or irrelevant information and then rephrasing it to make it more focused and precise. The rewritten query should be concise, easy to understand, and directly related to the original query. Output only the rewritten query."
|
|
5
5
|
query: string -> rewrittenQuery: string`;
|
|
6
|
-
super(
|
|
6
|
+
super(signature, options);
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
//# sourceMappingURL=rewriter.js.map
|
package/docs/rewriter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewriter.js","sourceRoot":"","sources":["../../docs/rewriter.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"rewriter.js","sourceRoot":"","sources":["../../docs/rewriter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAIN,MAAM,aAAa,CAAC;AAErB,MAAM,OAAO,sBAAuB,SAAQ,KAAgC;IAC1E,YAAY,OAAgC;QAC1C,MAAM,SAAS,GAAG;4CACsB,CAAC;QAEzC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5B,CAAC;CACF"}
|
package/dsp/evaluate.d.ts
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
|
+
import type { AxAIService } from '../ai/types.js';
|
|
1
2
|
import type { AxExample, AxMetricFn } from './optimize.js';
|
|
2
3
|
import type { AxGenIn, AxGenOut, AxProgram } from './program.js';
|
|
3
4
|
export type AxEvaluateArgs<IN extends AxGenIn, OUT extends AxGenOut> = {
|
|
5
|
+
ai: AxAIService;
|
|
4
6
|
program: Readonly<AxProgram<IN, OUT>>;
|
|
5
7
|
examples: Readonly<AxExample[]>;
|
|
6
8
|
};
|
|
7
9
|
export declare class AxTestPrompt<IN extends AxGenIn = AxGenIn, OUT extends AxGenOut = AxGenOut> {
|
|
10
|
+
private ai;
|
|
8
11
|
private program;
|
|
9
12
|
private examples;
|
|
10
|
-
constructor({ program, examples }: Readonly<AxEvaluateArgs<IN, OUT>>);
|
|
13
|
+
constructor({ ai, program, examples }: Readonly<AxEvaluateArgs<IN, OUT>>);
|
|
11
14
|
run(metricFn: AxMetricFn): Promise<void>;
|
|
12
15
|
}
|
package/dsp/evaluate.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { updateProgressBar } from './util.js';
|
|
2
2
|
export class AxTestPrompt {
|
|
3
|
+
ai;
|
|
3
4
|
program;
|
|
4
5
|
examples;
|
|
5
|
-
constructor({ program, examples = [] }) {
|
|
6
|
+
constructor({ ai, program, examples = [] }) {
|
|
6
7
|
if (examples.length == 0) {
|
|
7
8
|
throw new Error('No examples found');
|
|
8
9
|
}
|
|
10
|
+
this.ai = ai;
|
|
9
11
|
this.program = program;
|
|
10
12
|
this.examples = examples;
|
|
11
13
|
}
|
|
@@ -18,7 +20,7 @@ export class AxTestPrompt {
|
|
|
18
20
|
if (!ex) {
|
|
19
21
|
throw new Error('Invalid example');
|
|
20
22
|
}
|
|
21
|
-
const res = await this.program.forward(ex);
|
|
23
|
+
const res = await this.program.forward(this.ai, ex);
|
|
22
24
|
const success = metricFn({ prediction: res, example: ex });
|
|
23
25
|
if (success) {
|
|
24
26
|
successCount++;
|
package/dsp/evaluate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../dsp/evaluate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../dsp/evaluate.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAQ9C,MAAM,OAAO,YAAY;IAIf,EAAE,CAAc;IAChB,OAAO,CAA+B;IACtC,QAAQ,CAAwB;IAExC,YAAY,EACV,EAAE,EACF,OAAO,EACP,QAAQ,GAAG,EAAE,EACqB;QAClC,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,QAAoB;QACnC,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QACnC,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACrC,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAQ,CAAC,CAAC;YAC1D,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3D,IAAI,OAAO,EAAE,CAAC;gBACZ,YAAY,EAAE,CAAC;YACjB,CAAC;YAED,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC;YACrC,iBAAiB,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,EAAE,gBAAgB,CAAC,CAAC;QACtE,CAAC;QAED,OAAO,CAAC,GAAG,CACT,iBAAiB,EACjB,YAAY,EACZ,GAAG,EACH,KAAK,EACL,YAAY,EACZ,YAAY,GAAG,KAAK,EACpB,IAAI,CACL,CAAC;IACJ,CAAC;CACF"}
|
package/dsp/functions.js
CHANGED
package/dsp/functions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../../dsp/functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAarD,MAAM,OAAO,mBAAmB;IACtB,QAAQ,CAAwB;IAExC,YAAY,QAA+B;QACzC,QAAQ;aACL,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;aAC3B,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,UAAW,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAEO,eAAe,GAAG,KAAK,EAC7B,MAA4B,EAC5B,IAA0C,EAC1C,OAA4C,EACnB,EAAE;QAC3B,IAAI,IAAI,CAAC;QAET,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;QAED,MAAM,GAAG,GAAG,OAAO;YACjB,CAAC,CAAC;gBACE,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../../dsp/functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAarD,MAAM,OAAO,mBAAmB;IACtB,QAAQ,CAAwB;IAExC,YAAY,QAA+B;QACzC,QAAQ;aACL,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;aAC3B,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,UAAW,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAEO,eAAe,GAAG,KAAK,EAC7B,MAA4B,EAC5B,IAA0C,EAC1C,OAA4C,EACnB,EAAE;QAC3B,IAAI,IAAI,CAAC;QAET,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;QAED,MAAM,GAAG,GAAG,OAAO;YACjB,CAAC,CAAC;gBACE,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,EAAE,EAAE,OAAO,CAAC,EAAE;aACf;YACH,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACvB,MAAM,GAAG,GACP,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAE1E,OAAO;gBACL,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;aACrC,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GACP,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;YACtB,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC;YAC9B,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE9B,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;SACrC,CAAC;IACJ,CAAC,CAAC;IAEK,OAAO,GAAG,KAAK,EACpB,IAA0C,EAC1C,OAA4C,EACnB,EAAE;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAC7C,CAAC;QACF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;QAED,+BAA+B;QAC/B,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC,CAAC;CACH"}
|
package/dsp/generate.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import { type AxChatResponseFunctionCall } from './functions.js';
|
|
|
6
6
|
import { type AxGenIn, type AxGenOut, type AxProgramForwardOptions, AxProgramWithSignature } from './program.js';
|
|
7
7
|
import { AxPromptTemplate } from './prompt.js';
|
|
8
8
|
import { AxSignature } from './sig.js';
|
|
9
|
-
export interface
|
|
9
|
+
export interface AxGenOptions {
|
|
10
10
|
maxCompletions?: number;
|
|
11
11
|
maxRetries?: number;
|
|
12
12
|
maxSteps?: number;
|
|
@@ -15,6 +15,7 @@ export interface AxGenerateOptions {
|
|
|
15
15
|
rateLimiter?: AxRateLimiterFunction;
|
|
16
16
|
stream?: boolean;
|
|
17
17
|
debug?: boolean;
|
|
18
|
+
instructions?: string;
|
|
18
19
|
functions?: AxFunction[] | {
|
|
19
20
|
toFunction: () => AxFunction;
|
|
20
21
|
}[];
|
|
@@ -27,6 +28,8 @@ export type AxGenerateResult<OUT extends AxGenOut> = OUT & {
|
|
|
27
28
|
functions?: AxChatResponseFunctionCall[];
|
|
28
29
|
};
|
|
29
30
|
export interface AxResponseHandlerArgs<T> {
|
|
31
|
+
ai: Readonly<AxAIService>;
|
|
32
|
+
sig: Readonly<AxSignature>;
|
|
30
33
|
res: T;
|
|
31
34
|
usageInfo: {
|
|
32
35
|
ai: string;
|
|
@@ -36,8 +39,7 @@ export interface AxResponseHandlerArgs<T> {
|
|
|
36
39
|
sessionId?: string;
|
|
37
40
|
traceId?: string;
|
|
38
41
|
}
|
|
39
|
-
export declare class
|
|
40
|
-
private ai;
|
|
42
|
+
export declare class AxGen<IN extends AxGenIn = AxGenIn, OUT extends AxGenerateResult<AxGenOut> = AxGenerateResult<AxGenOut>> extends AxProgramWithSignature<IN, OUT> {
|
|
41
43
|
private pt;
|
|
42
44
|
private asserts;
|
|
43
45
|
private streamingAsserts;
|
|
@@ -45,7 +47,7 @@ export declare class AxGenerate<IN extends AxGenIn = AxGenIn, OUT extends AxGene
|
|
|
45
47
|
private functions?;
|
|
46
48
|
private funcProc?;
|
|
47
49
|
private functionList?;
|
|
48
|
-
constructor(
|
|
50
|
+
constructor(signature: Readonly<AxSignature | string>, options?: Readonly<AxGenOptions>);
|
|
49
51
|
private updateSigForFunctions;
|
|
50
52
|
addAssert: (fn: AxAssertion["fn"], message?: string, optional?: boolean) => void;
|
|
51
53
|
addStreamingAssert: (fieldName: string, fn: AxStreamingAssertion["fn"], message?: string, optional?: boolean) => void;
|
|
@@ -54,6 +56,6 @@ export declare class AxGenerate<IN extends AxGenIn = AxGenIn, OUT extends AxGene
|
|
|
54
56
|
private processSteamingResponse;
|
|
55
57
|
private processResponse;
|
|
56
58
|
private _forward;
|
|
57
|
-
forward(values: IN, options?: Readonly<AxProgramForwardOptions>): Promise<OUT>;
|
|
58
|
-
processFunctions: (functionCalls: readonly AxChatResponseFunctionCall[], mem: Readonly<AxMemory>, sessionId?: string, traceId?: string) => Promise<void>;
|
|
59
|
+
forward(ai: Readonly<AxAIService>, values: IN, options?: Readonly<AxProgramForwardOptions>): Promise<OUT>;
|
|
60
|
+
processFunctions: (ai: Readonly<AxAIService>, functionCalls: readonly AxChatResponseFunctionCall[], mem: Readonly<AxMemory>, sessionId?: string, traceId?: string) => Promise<void>;
|
|
59
61
|
}
|