@zimtsui/brainswitch 0.0.1 → 0.0.3

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 (60) hide show
  1. package/README.md +98 -83
  2. package/build/adaptor.d.ts +1 -1
  3. package/build/adaptor.js +8 -8
  4. package/build/adaptor.js.map +1 -1
  5. package/build/agentloop.d.ts +1 -1
  6. package/build/agentloop.js +19 -21
  7. package/build/agentloop.js.map +1 -1
  8. package/build/api-types/base.d.ts +0 -2
  9. package/build/api-types/base.js +0 -2
  10. package/build/api-types/base.js.map +1 -1
  11. package/build/api-types/google-base.d.ts +15 -3
  12. package/build/api-types/google-base.js +33 -13
  13. package/build/api-types/google-base.js.map +1 -1
  14. package/build/api-types/google-rest.d.ts +13 -9
  15. package/build/api-types/google-rest.js +102 -89
  16. package/build/api-types/google-rest.js.map +1 -1
  17. package/build/api-types/huggingface-cerebras-qwen3-thinking.d.ts +9 -7
  18. package/build/api-types/huggingface-cerebras-qwen3-thinking.js +46 -41
  19. package/build/api-types/huggingface-cerebras-qwen3-thinking.js.map +1 -1
  20. package/build/api-types/openai-chatcompletions-base.d.ts +2 -6
  21. package/build/api-types/openai-chatcompletions-base.js +5 -12
  22. package/build/api-types/openai-chatcompletions-base.js.map +1 -1
  23. package/build/api-types/openai-chatcompletions-monolith-base.d.ts +1 -1
  24. package/build/api-types/openai-chatcompletions-monolith-base.js +12 -16
  25. package/build/api-types/openai-chatcompletions-monolith-base.js.map +1 -1
  26. package/build/api-types/openai-chatcompletions-stream-base.d.ts +1 -1
  27. package/build/api-types/openai-chatcompletions-stream-base.js +13 -16
  28. package/build/api-types/openai-chatcompletions-stream-base.js.map +1 -1
  29. package/build/api-types/openai-chatcompletions.d.ts +4 -2
  30. package/build/api-types/openai-chatcompletions.js +9 -4
  31. package/build/api-types/openai-chatcompletions.js.map +1 -1
  32. package/build/api-types/openai-responses.d.ts +35 -21
  33. package/build/api-types/openai-responses.js +211 -188
  34. package/build/api-types/openai-responses.js.map +1 -1
  35. package/build/api-types/openrouter-monolith.d.ts +8 -8
  36. package/build/api-types/openrouter-monolith.js +39 -44
  37. package/build/api-types/openrouter-monolith.js.map +1 -1
  38. package/build/api-types/openrouter-stream.d.ts +10 -10
  39. package/build/api-types/openrouter-stream.js +49 -54
  40. package/build/api-types/openrouter-stream.js.map +1 -1
  41. package/build/api-types/qwen.d.ts +5 -3
  42. package/build/api-types/qwen.js +11 -6
  43. package/build/api-types/qwen.js.map +1 -1
  44. package/build/config.js.map +1 -1
  45. package/build/endpoint-spec.js.map +1 -1
  46. package/build/engine.d.ts +1 -1
  47. package/build/engine.js +2 -2
  48. package/build/engine.js.map +1 -1
  49. package/build/function.d.ts +14 -2
  50. package/build/function.js +12 -0
  51. package/build/function.js.map +1 -1
  52. package/build/session.d.ts +105 -38
  53. package/build/session.js +212 -60
  54. package/build/session.js.map +1 -1
  55. package/build/throttle.js.map +1 -1
  56. package/build/tsconfig.tsbuildinfo +1 -1
  57. package/package.json +1 -1
  58. package/build/test.d.ts +0 -1
  59. package/build/test.js +0 -23
  60. package/build/test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"openai-responses.js","sourceRoot":"","sources":["../../src/api-types/openai-responses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-responses.js","sourceRoot":"","sources":["../../src/api-types/openai-responses.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,7 @@
1
1
  import { Engine } from '../engine.ts';
2
2
  import { Function } from '../function.ts';
3
3
  import OpenAI from 'openai';
4
- import type { RoleMessage, Session } from '../session.ts';
5
- import type { InferenceContext } from '../inference-context.ts';
4
+ import { type Session } from '../session.ts';
6
5
  import { OpenAIChatCompletionsMonolithAPIBase } from './openai-chatcompletions-monolith-base.ts';
7
6
  export interface OpenRouterUsage extends OpenAI.CompletionUsage {
8
7
  cost: number;
@@ -12,10 +11,11 @@ export interface OpenRouterMonolithParams extends OpenAI.ChatCompletionCreatePar
12
11
  include: boolean;
13
12
  };
14
13
  }
15
- export declare class OpenRouterMonolithAPI<in out fdm extends Function.Declaration.Map = {}> extends OpenAIChatCompletionsMonolithAPIBase<fdm> {
16
- static create<fdm extends Function.Declaration.Map = {}>(options: Engine.Options<fdm>): Engine<Function.Declaration.From<fdm>>;
17
- protected calcCost(usage: OpenAI.CompletionUsage): number;
18
- protected makeMonolithParams(session: Session<Function.Declaration.From<fdm>>): OpenAI.ChatCompletionCreateParamsNonStreaming;
19
- protected convertToFunctionCall(apifc: OpenAI.ChatCompletionMessageFunctionToolCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
20
- monolith(ctx: InferenceContext, session: Session<Function.Declaration.From<fdm>>, retry?: number): Promise<RoleMessage.AI<Function.Declaration.From<fdm>>>;
14
+ export declare namespace OpenRouterMonolithAPI {
15
+ function makeEngine<fdm extends Function.Declaration.Map = {}>(options: Engine.Options<fdm>): Engine<Function.Declaration.From<fdm>>;
16
+ class Constructor<in out fdm extends Function.Declaration.Map = {}> extends OpenAIChatCompletionsMonolithAPIBase<fdm> {
17
+ protected calcCost(usage: OpenAI.CompletionUsage): number;
18
+ protected makeMonolithParams(session: Session<Function.Declaration.From<fdm>>): OpenAI.ChatCompletionCreateParamsNonStreaming;
19
+ protected convertToFunctionCall(apifc: OpenAI.ChatCompletionMessageFunctionToolCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
20
+ }
21
21
  }
@@ -1,57 +1,52 @@
1
1
  import { Engine } from "../engine.js";
2
2
  import { Function } from "../function.js";
3
3
  import OpenAI from 'openai';
4
+ import {} from "../session.js";
4
5
  import { OpenAIChatCompletionsMonolithAPIBase } from "./openai-chatcompletions-monolith-base.js";
5
6
  const EXCHANGE_RATE_USD_CNY = 8;
6
- export class OpenRouterMonolithAPI extends OpenAIChatCompletionsMonolithAPIBase {
7
- static create(options) {
8
- const api = new OpenRouterMonolithAPI(options);
7
+ export var OpenRouterMonolithAPI;
8
+ (function (OpenRouterMonolithAPI) {
9
+ function makeEngine(options) {
10
+ const api = new Constructor(options);
9
11
  return api.monolith.bind(api);
10
12
  }
11
- calcCost(usage) {
12
- return usage.cost * EXCHANGE_RATE_USD_CNY;
13
- }
14
- makeMonolithParams(session) {
15
- const params = {
16
- model: this.model,
17
- messages: [
18
- ...(session.developerMessage ? this.convertFromRoleMessage(session.developerMessage) : []),
19
- ...session.chatMessages.flatMap(chatMessage => this.convertFromRoleMessage(chatMessage)),
20
- ],
21
- tools: Object.keys(this.functionDeclarationMap).length
22
- ? Object.entries(this.functionDeclarationMap).map(fdentry => this.convertFromFunctionDeclarationEntry(fdentry))
23
- : undefined,
24
- tool_choice: Object.keys(this.functionDeclarationMap).length && this.toolChoice ? this.convertFromFunctionCallMode(this.toolChoice) : undefined,
25
- stream: false,
26
- usage: {
27
- include: true,
28
- },
29
- ...this.customOptions,
30
- };
31
- return params;
32
- }
33
- convertToFunctionCall(apifc) {
34
- if (apifc.function.arguments)
35
- return super.convertToFunctionCall(apifc);
36
- else
37
- return super.convertToFunctionCall({
38
- ...apifc,
39
- function: {
40
- ...apifc.function,
41
- arguments: '{}',
13
+ OpenRouterMonolithAPI.makeEngine = makeEngine;
14
+ class Constructor extends OpenAIChatCompletionsMonolithAPIBase {
15
+ calcCost(usage) {
16
+ return usage.cost * EXCHANGE_RATE_USD_CNY;
17
+ }
18
+ makeMonolithParams(session) {
19
+ const params = {
20
+ model: this.model,
21
+ messages: [
22
+ ...(session.developerMessage ? this.convertFromRoleMessage(session.developerMessage) : []),
23
+ ...session.chatMessages.flatMap(chatMessage => this.convertFromRoleMessage(chatMessage)),
24
+ ],
25
+ tools: Object.keys(this.functionDeclarationMap).length
26
+ ? Object.entries(this.functionDeclarationMap).map(fdentry => this.convertFromFunctionDeclarationEntry(fdentry))
27
+ : undefined,
28
+ tool_choice: Object.keys(this.functionDeclarationMap).length && this.toolChoice ? this.convertFromFunctionCallMode(this.toolChoice) : undefined,
29
+ stream: false,
30
+ usage: {
31
+ include: true,
42
32
  },
43
- });
44
- }
45
- async monolith(ctx, session, retry = 0) {
46
- try {
47
- return await super.monolith(ctx, session, retry);
33
+ ...this.customOptions,
34
+ };
35
+ return params;
48
36
  }
49
- catch (e) {
50
- if (e instanceof TypeError && e.message === 'terminated')
51
- return await this.monolith(ctx, session, retry + 1);
37
+ convertToFunctionCall(apifc) {
38
+ if (apifc.function.arguments)
39
+ return super.convertToFunctionCall(apifc);
52
40
  else
53
- throw e;
41
+ return super.convertToFunctionCall({
42
+ ...apifc,
43
+ function: {
44
+ ...apifc.function,
45
+ arguments: '{}',
46
+ },
47
+ });
54
48
  }
55
49
  }
56
- }
50
+ OpenRouterMonolithAPI.Constructor = Constructor;
51
+ })(OpenRouterMonolithAPI || (OpenRouterMonolithAPI = {}));
57
52
  //# sourceMappingURL=openrouter-monolith.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter-monolith.js","sourceRoot":"","sources":["../../src/api-types/openrouter-monolith.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,oCAAoC,EAAE,MAAM,2CAA2C,CAAC;AAEjG,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAWhC,MAAM,OAAO,qBAAwE,SAAQ,oCAAyC;IAC9H,MAAM,CAAC,MAAM,CAA4C,OAA4B;QAC3F,MAAM,GAAG,GAAG,IAAI,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAEkB,QAAQ,CAAC,KAA6B;QACxD,OAAQ,KAAyB,CAAC,IAAI,GAAG,qBAAqB,CAAC;IAChE,CAAC;IAEkB,kBAAkB,CAAC,OAAgD;QACrF,MAAM,MAAM,GAA6B;YACxC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE;gBACT,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1F,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;aACxF;YACD,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM;gBACrD,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAChD,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,mCAAmC,CAAC,OAA+C,CAAC,CACpG;gBACD,CAAC,CAAC,SAAS;YACZ,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;YAC/I,MAAM,EAAE,KAAK;YACb,KAAK,EAAE;gBACN,OAAO,EAAE,IAAI;aACb;YACD,GAAG,IAAI,CAAC,aAAa;SACrB,CAAC;QACF,OAAO,MAAM,CAAC;IACf,CAAC;IAEkB,qBAAqB,CAAC,KAAmD;QAC3F,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS;YAC3B,OAAO,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;;YAE1C,OAAO,KAAK,CAAC,qBAAqB,CAAC;gBAClC,GAAG,KAAK;gBACR,QAAQ,EAAE;oBACT,GAAG,KAAK,CAAC,QAAQ;oBACjB,SAAS,EAAE,IAAI;iBACf;aACD,CAAC,CAAC;IACL,CAAC;IAEe,KAAK,CAAC,QAAQ,CAC7B,GAAqB,EAAE,OAAgD,EAAE,KAAK,GAAG,CAAC;QAElF,IAAI,CAAC;YACJ,OAAO,MAAM,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,YAAY;gBACvD,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,GAAC,CAAC,CAAC,CAAC;;gBAC9C,MAAM,CAAC,CAAC;QACd,CAAC;IACF,CAAC;CACD"}
1
+ {"version":3,"file":"openrouter-monolith.js","sourceRoot":"","sources":["../../src/api-types/openrouter-monolith.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAgB,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,oCAAoC,EAAE,MAAM,2CAA2C,CAAC;AAEjG,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAWhC,MAAM,KAAW,qBAAqB,CAwDrC;AAxDD,WAAiB,qBAAqB;IACrC,SAAgB,UAAU,CAA4C,OAA4B;QACjG,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;QACrC,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAHe,gCAAU,aAGzB,CAAA;IAED,MAAa,WAA8D,SAAQ,oCAAyC;QACxG,QAAQ,CAAC,KAA6B;YACxD,OAAQ,KAAyB,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAChE,CAAC;QAEkB,kBAAkB,CAAC,OAAgD;YACrF,MAAM,MAAM,GAA6B;gBACxC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,QAAQ,EAAE;oBACT,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1F,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;iBACxF;gBACD,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM;oBACrD,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAChD,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,mCAAmC,CAAC,OAA+C,CAAC,CACpG;oBACD,CAAC,CAAC,SAAS;gBACZ,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC/I,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE;oBACN,OAAO,EAAE,IAAI;iBACb;gBACD,GAAG,IAAI,CAAC,aAAa;aACrB,CAAC;YACF,OAAO,MAAM,CAAC;QACf,CAAC;QAEkB,qBAAqB,CAAC,KAAmD;YAC3F,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS;gBAC3B,OAAO,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;;gBAE1C,OAAO,KAAK,CAAC,qBAAqB,CAAC;oBAClC,GAAG,KAAK;oBACR,QAAQ,EAAE;wBACT,GAAG,KAAK,CAAC,QAAQ;wBACjB,SAAS,EAAE,IAAI;qBACf;iBACD,CAAC,CAAC;QACL,CAAC;KAWD;IAjDY,iCAAW,cAiDvB,CAAA;AACF,CAAC,EAxDgB,qBAAqB,KAArB,qBAAqB,QAwDrC"}
@@ -1,8 +1,7 @@
1
1
  import { Engine } from '../engine.ts';
2
2
  import { Function } from '../function.ts';
3
3
  import OpenAI from 'openai';
4
- import type { RoleMessage, Session } from '../session.ts';
5
- import type { InferenceContext } from '../inference-context.ts';
4
+ import { type Session } from '../session.ts';
6
5
  import { OpenAIChatCompletionsStreamAPIBase } from './openai-chatcompletions-stream-base.ts';
7
6
  export interface OpenRouterUsage extends OpenAI.CompletionUsage {
8
7
  cost: number;
@@ -16,12 +15,13 @@ export interface OpenRouterStreamParams extends OpenAI.ChatCompletionCreateParam
16
15
  export interface OpenRouterChatCompletionChunkChoiceDelta extends OpenAI.ChatCompletionChunk.Choice.Delta {
17
16
  reasoning?: string;
18
17
  }
19
- export declare class OpenRouterStreamAPI<in out fdm extends Function.Declaration.Map = {}> extends OpenAIChatCompletionsStreamAPIBase<fdm> {
20
- static create<fdm extends Function.Declaration.Map = {}>(options: Engine.Options<fdm>): Engine<Function.Declaration.From<fdm>>;
21
- protected calcCost(usage: OpenAI.CompletionUsage): number;
22
- protected getDeltaThoughts(delta: OpenAI.ChatCompletionChunk.Choice.Delta): string;
23
- protected makeStreamParams(session: Session<Function.Declaration.From<fdm>>): OpenAI.ChatCompletionCreateParamsStreaming;
24
- protected convertToFunctionCallFromDelta(apifc: OpenAI.ChatCompletionChunk.Choice.Delta.ToolCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
25
- protected convertToFunctionCall(apifc: OpenAI.ChatCompletionMessageFunctionToolCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
26
- stream(ctx: InferenceContext, session: Session<Function.Declaration.From<fdm>>, retry?: number): Promise<RoleMessage.AI<Function.Declaration.From<fdm>>>;
18
+ export declare namespace OpenRouterStreamAPI {
19
+ function makeEngine<fdm extends Function.Declaration.Map = {}>(options: Engine.Options<fdm>): Engine<Function.Declaration.From<fdm>>;
20
+ class Constructor<in out fdm extends Function.Declaration.Map = {}> extends OpenAIChatCompletionsStreamAPIBase<fdm> {
21
+ protected calcCost(usage: OpenAI.CompletionUsage): number;
22
+ protected getDeltaThoughts(delta: OpenAI.ChatCompletionChunk.Choice.Delta): string;
23
+ protected makeStreamParams(session: Session<Function.Declaration.From<fdm>>): OpenAI.ChatCompletionCreateParamsStreaming;
24
+ protected convertToFunctionCallFromDelta(apifc: OpenAI.ChatCompletionChunk.Choice.Delta.ToolCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
25
+ protected convertToFunctionCall(apifc: OpenAI.ChatCompletionMessageFunctionToolCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
26
+ }
27
27
  }
@@ -1,68 +1,63 @@
1
1
  import { Engine } from "../engine.js";
2
2
  import { Function } from "../function.js";
3
3
  import OpenAI from 'openai';
4
+ import {} from "../session.js";
4
5
  import assert from 'node:assert';
5
6
  import { OpenAIChatCompletionsStreamAPIBase } from "./openai-chatcompletions-stream-base.js";
6
7
  const EXCHANGE_RATE_USD_CNY = 8;
7
- export class OpenRouterStreamAPI extends OpenAIChatCompletionsStreamAPIBase {
8
- static create(options) {
9
- const api = new OpenRouterStreamAPI(options);
8
+ export var OpenRouterStreamAPI;
9
+ (function (OpenRouterStreamAPI) {
10
+ function makeEngine(options) {
11
+ const api = new Constructor(options);
10
12
  return api.stream.bind(api);
11
13
  }
12
- calcCost(usage) {
13
- return usage.cost * EXCHANGE_RATE_USD_CNY;
14
- }
15
- getDeltaThoughts(delta) {
16
- return delta.reasoning ?? '';
17
- }
18
- makeStreamParams(session) {
19
- const params = {
20
- model: this.model,
21
- messages: [
22
- ...(session.developerMessage ? this.convertFromRoleMessage(session.developerMessage) : []),
23
- ...session.chatMessages.flatMap(chatMessage => this.convertFromRoleMessage(chatMessage)),
24
- ],
25
- tools: Object.keys(this.functionDeclarationMap).length
26
- ? Object.entries(this.functionDeclarationMap).map(fdentry => this.convertFromFunctionDeclarationEntry(fdentry))
27
- : undefined,
28
- tool_choice: Object.keys(this.functionDeclarationMap).length && this.toolChoice ? this.convertFromFunctionCallMode(this.toolChoice) : undefined,
29
- stream: true,
30
- usage: {
31
- include: true,
32
- },
33
- ...this.customOptions,
34
- };
35
- return params;
36
- }
37
- convertToFunctionCallFromDelta(apifc) {
38
- assert(apifc.id, new Error(undefined, { cause: apifc }));
39
- assert(apifc.function?.name, new Error(undefined, { cause: apifc }));
40
- assert(typeof apifc.function?.arguments === 'string', new Error(undefined, { cause: apifc }));
41
- assert(apifc.type === 'function', new Error(undefined, { cause: apifc }));
42
- return this.convertToFunctionCall(apifc);
43
- }
44
- convertToFunctionCall(apifc) {
45
- if (apifc.function.arguments)
46
- return super.convertToFunctionCall(apifc);
47
- else
48
- return super.convertToFunctionCall({
49
- ...apifc,
50
- function: {
51
- ...apifc.function,
52
- arguments: '{}',
14
+ OpenRouterStreamAPI.makeEngine = makeEngine;
15
+ class Constructor extends OpenAIChatCompletionsStreamAPIBase {
16
+ calcCost(usage) {
17
+ return usage.cost * EXCHANGE_RATE_USD_CNY;
18
+ }
19
+ getDeltaThoughts(delta) {
20
+ return delta.reasoning ?? '';
21
+ }
22
+ makeStreamParams(session) {
23
+ const params = {
24
+ model: this.model,
25
+ messages: [
26
+ ...(session.developerMessage ? this.convertFromRoleMessage(session.developerMessage) : []),
27
+ ...session.chatMessages.flatMap(chatMessage => this.convertFromRoleMessage(chatMessage)),
28
+ ],
29
+ tools: Object.keys(this.functionDeclarationMap).length
30
+ ? Object.entries(this.functionDeclarationMap).map(fdentry => this.convertFromFunctionDeclarationEntry(fdentry))
31
+ : undefined,
32
+ tool_choice: Object.keys(this.functionDeclarationMap).length && this.toolChoice ? this.convertFromFunctionCallMode(this.toolChoice) : undefined,
33
+ stream: true,
34
+ usage: {
35
+ include: true,
53
36
  },
54
- });
55
- }
56
- async stream(ctx, session, retry = 0) {
57
- try {
58
- return await super.stream(ctx, session, retry);
37
+ ...this.customOptions,
38
+ };
39
+ return params;
40
+ }
41
+ convertToFunctionCallFromDelta(apifc) {
42
+ assert(apifc.id, new Error(undefined, { cause: apifc }));
43
+ assert(apifc.function?.name, new Error(undefined, { cause: apifc }));
44
+ assert(typeof apifc.function?.arguments === 'string', new Error(undefined, { cause: apifc }));
45
+ assert(apifc.type === 'function', new Error(undefined, { cause: apifc }));
46
+ return this.convertToFunctionCall(apifc);
59
47
  }
60
- catch (e) {
61
- if (e instanceof TypeError && e.message === 'terminated')
62
- return await this.stream(ctx, session, retry + 1);
48
+ convertToFunctionCall(apifc) {
49
+ if (apifc.function.arguments)
50
+ return super.convertToFunctionCall(apifc);
63
51
  else
64
- throw e;
52
+ return super.convertToFunctionCall({
53
+ ...apifc,
54
+ function: {
55
+ ...apifc.function,
56
+ arguments: '{}',
57
+ },
58
+ });
65
59
  }
66
60
  }
67
- }
61
+ OpenRouterStreamAPI.Constructor = Constructor;
62
+ })(OpenRouterStreamAPI || (OpenRouterStreamAPI = {}));
68
63
  //# sourceMappingURL=openrouter-stream.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter-stream.js","sourceRoot":"","sources":["../../src/api-types/openrouter-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openrouter-stream.js","sourceRoot":"","sources":["../../src/api-types/openrouter-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAgB,MAAM,eAAe,CAAC;AAC7C,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AAE7F,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAgBhC,MAAM,KAAW,mBAAmB,CA0DnC;AA1DD,WAAiB,mBAAmB;IACnC,SAAgB,UAAU,CAA4C,OAA4B;QACjG,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;QACrC,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAHe,8BAAU,aAGzB,CAAA;IAED,MAAa,WAA8D,SAAQ,kCAAuC;QACtG,QAAQ,CAAC,KAA6B;YACxD,OAAQ,KAAyB,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAChE,CAAC;QAEkB,gBAAgB,CAAC,KAA8C;YACjF,OAAQ,KAAkD,CAAC,SAAS,IAAI,EAAE,CAAC;QAC5E,CAAC;QAEkB,gBAAgB,CAAC,OAAgD;YACnF,MAAM,MAAM,GAA2B;gBACtC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,QAAQ,EAAE;oBACT,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1F,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;iBACxF;gBACD,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM;oBACrD,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAChD,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,mCAAmC,CAAC,OAA+C,CAAC,CACpG;oBACD,CAAC,CAAC,SAAS;gBACZ,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC/I,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE;oBACN,OAAO,EAAE,IAAI;iBACb;gBACD,GAAG,IAAI,CAAC,aAAa;aACrB,CAAC;YACF,OAAO,MAAM,CAAC;QACf,CAAC;QAEkB,8BAA8B,CAAC,KAAuD;YACxG,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YACzD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YACrE,MAAM,CAAC,OAAO,KAAK,CAAC,QAAQ,EAAE,SAAS,KAAK,QAAQ,EAAE,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YAC9F,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YAC1E,OAAO,IAAI,CAAC,qBAAqB,CAAC,KAAqD,CAAC,CAAC;QAC1F,CAAC;QAEkB,qBAAqB,CAAC,KAAmD;YAC3F,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS;gBAC3B,OAAO,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;;gBAE1C,OAAO,KAAK,CAAC,qBAAqB,CAAC;oBAClC,GAAG,KAAK;oBACR,QAAQ,EAAE;wBACT,GAAG,KAAK,CAAC,QAAQ;wBACjB,SAAS,EAAE,IAAI;qBACf;iBACD,CAAC,CAAC;QACL,CAAC;KACD;IAnDY,+BAAW,cAmDvB,CAAA;AACF,CAAC,EA1DgB,mBAAmB,KAAnB,mBAAmB,QA0DnC"}
@@ -5,7 +5,9 @@ import { OpenAIChatCompletionsStreamAPIBase } from './openai-chatcompletions-str
5
5
  export interface QwenChatCompletionChunkChoiceDelta extends OpenAI.ChatCompletionChunk.Choice.Delta {
6
6
  reasoning_content?: string;
7
7
  }
8
- export declare class QwenAPI<in out fdm extends Function.Declaration.Map = {}> extends OpenAIChatCompletionsStreamAPIBase<fdm> {
9
- static create<fdm extends Function.Declaration.Map = never>(options: Engine.Options<fdm>): Engine<Function.Declaration.From<fdm>>;
10
- protected getDeltaThoughts(delta: OpenAI.ChatCompletionChunk.Choice.Delta): string;
8
+ export declare namespace QwenAPI {
9
+ function makeEngine<fdm extends Function.Declaration.Map = never>(options: Engine.Options<fdm>): Engine<Function.Declaration.From<fdm>>;
10
+ class Constructor<in out fdm extends Function.Declaration.Map = {}> extends OpenAIChatCompletionsStreamAPIBase<fdm> {
11
+ protected getDeltaThoughts(delta: OpenAI.ChatCompletionChunk.Choice.Delta): string;
12
+ }
11
13
  }
@@ -1,13 +1,18 @@
1
1
  import { Engine } from "../engine.js";
2
2
  import { Function } from "../function.js";
3
3
  import { OpenAIChatCompletionsStreamAPIBase } from "./openai-chatcompletions-stream-base.js";
4
- export class QwenAPI extends OpenAIChatCompletionsStreamAPIBase {
5
- static create(options) {
6
- const api = new QwenAPI(options);
4
+ export var QwenAPI;
5
+ (function (QwenAPI) {
6
+ function makeEngine(options) {
7
+ const api = new Constructor(options);
7
8
  return api.stream.bind(api);
8
9
  }
9
- getDeltaThoughts(delta) {
10
- return delta.reasoning_content ?? '';
10
+ QwenAPI.makeEngine = makeEngine;
11
+ class Constructor extends OpenAIChatCompletionsStreamAPIBase {
12
+ getDeltaThoughts(delta) {
13
+ return delta.reasoning_content ?? '';
14
+ }
11
15
  }
12
- }
16
+ QwenAPI.Constructor = Constructor;
17
+ })(QwenAPI || (QwenAPI = {}));
13
18
  //# sourceMappingURL=qwen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"qwen.js","sourceRoot":"","sources":["../../src/api-types/qwen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AAQ7F,MAAM,OAAO,OAA0D,SAAQ,kCAAuC;IAC9G,MAAM,CAAC,MAAM,CAA+C,OAA4B;QAC9F,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;QACjC,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAEkB,gBAAgB,CAAC,KAA8C;QACjF,OAAQ,KAA4C,CAAC,iBAAiB,IAAI,EAAE,CAAC;IAC9E,CAAC;CACD"}
1
+ {"version":3,"file":"qwen.js","sourceRoot":"","sources":["../../src/api-types/qwen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AAQ7F,MAAM,KAAW,OAAO,CAUvB;AAVD,WAAiB,OAAO;IACvB,SAAgB,UAAU,CAA+C,OAA4B;QACpG,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;QACrC,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAHe,kBAAU,aAGzB,CAAA;IACD,MAAa,WAA8D,SAAQ,kCAAuC;QACtG,gBAAgB,CAAC,KAA8C;YACjF,OAAQ,KAA4C,CAAC,iBAAiB,IAAI,EAAE,CAAC;QAC9E,CAAC;KACD;IAJY,mBAAW,cAIvB,CAAA;AACF,CAAC,EAVgB,OAAO,KAAP,OAAO,QAUvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAe,MAAM,mBAAmB,CAAC;AAIhD,MAAM,KAAW,MAAM,CAMtB;AAND,WAAiB,MAAM;IACT,aAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACjC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;YACxB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,MAAM,CAAC;SAC1D,CAAC;KACF,CAAC,CAAC;AACJ,CAAC,EANgB,MAAM,KAAN,MAAM,QAMtB"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAe,MAAM,mBAAmB,CAAC;AAIhD,MAAM,KAAW,MAAM,CAMtB;AAND,WAAiB,MAAM;IACN,aAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC9B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;YACrB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,MAAM,CAAC;SAC7D,CAAC;KACL,CAAC,CAAC;AACP,CAAC,EANgB,MAAM,KAAN,MAAM,QAMtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint-spec.js","sourceRoot":"","sources":["../src/endpoint-spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,mBAAmB,CAAC;AAItD,MAAM,KAAW,YAAY,CAwB5B;AAxBD,WAAiB,YAAY;IACf,mBAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACjC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;QACtB,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACnC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;QACrB,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;QACpB,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE;QACnB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC;YACnB,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC;YACtC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YACtB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC;YACnC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;YACjC,IAAI,CAAC,OAAO,CAAC,qCAAqC,CAAC;SACnD,CAAC;QACF,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACxC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACpE,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;KACrC,CAAC,CAAC;AACJ,CAAC,EAxBgB,YAAY,KAAZ,YAAY,QAwB5B"}
1
+ {"version":3,"file":"endpoint-spec.js","sourceRoot":"","sources":["../src/endpoint-spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,mBAAmB,CAAC;AAItD,MAAM,KAAW,YAAY,CAwB5B;AAxBD,WAAiB,YAAY;IACZ,mBAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC9B,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;QACtB,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACnC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;QACrB,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;QACpB,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE;QACnB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC;YAChB,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC;YACtC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YACtB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC;YACnC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;YACjC,IAAI,CAAC,OAAO,CAAC,qCAAqC,CAAC;SACtD,CAAC;QACF,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACxC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACpE,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;KACxC,CAAC,CAAC;AACP,CAAC,EAxBgB,YAAY,KAAZ,YAAY,QAwB5B"}
package/build/engine.d.ts CHANGED
@@ -19,5 +19,5 @@ export declare namespace Engine {
19
19
  /**
20
20
  * @param session mutable
21
21
  */
22
- function apply<fdm extends Function.Declaration.Map = {}>(ctx: InferenceContext, session: Session<Function.Declaration.From<fdm>>, cc: Engine<Function.Declaration.From<fdm>>): Promise<RoleMessage.AI<Function.Declaration.From<fdm>>>;
22
+ function apply<fdm extends Function.Declaration.Map = {}>(ctx: InferenceContext, session: Session<Function.Declaration.From<fdm>>, engine: Engine<Function.Declaration.From<fdm>>): Promise<RoleMessage.AI<Function.Declaration.From<fdm>>>;
23
23
  }
package/build/engine.js CHANGED
@@ -8,8 +8,8 @@ export var Engine;
8
8
  /**
9
9
  * @param session mutable
10
10
  */
11
- async function apply(ctx, session, cc) {
12
- const response = await cc(ctx, session);
11
+ async function apply(ctx, session, engine) {
12
+ const response = await engine(ctx, session);
13
13
  session.chatMessages.push(response);
14
14
  return response;
15
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgB,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAyB,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAOzC,MAAM,KAAW,MAAM,CAwBtB;AAxBD,WAAiB,MAAM;IAYtB;;OAEG;IACI,KAAK,UAAU,KAAK,CAC1B,GAAqB,EACrB,OAAgD,EAChD,EAA0C;QAE1C,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACxC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpC,OAAO,QAAQ,CAAC;IACjB,CAAC;IARqB,YAAK,QAQ1B,CAAA;AACF,CAAC,EAxBgB,MAAM,KAAN,MAAM,QAwBtB"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgB,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAyB,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAOzC,MAAM,KAAW,MAAM,CAwBtB;AAxBD,WAAiB,MAAM;IAYnB;;OAEG;IACI,KAAK,UAAU,KAAK,CACvB,GAAqB,EACrB,OAAgD,EAChD,MAA8C;QAE9C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpC,OAAO,QAAQ,CAAC;IACpB,CAAC;IARqB,YAAK,QAQ1B,CAAA;AACL,CAAC,EAxBgB,MAAM,KAAN,MAAM,QAwBtB"}
@@ -7,9 +7,9 @@ export declare namespace Function {
7
7
  name: name;
8
8
  }
9
9
  namespace Declaration {
10
- type From<fdm extends Map, name extends Map.NameOf<fdm> = Map.NameOf<fdm>> = {
10
+ type From<fdm extends Map, nameu extends Map.NameOf<fdm> = Map.NameOf<fdm>> = {
11
11
  [name in Map.NameOf<fdm>]: Declaration<name, fdm[name]['paraschema']>;
12
- }[name];
12
+ }[nameu];
13
13
  type Map = Record<string, Item<TSchema>>;
14
14
  namespace Map {
15
15
  type NameOf<fdm extends Map> = Extract<keyof fdm, string>;
@@ -34,8 +34,14 @@ export declare namespace Function {
34
34
  args: Static<fd['paraschema']>;
35
35
  private constructor();
36
36
  static create<fdu extends Declaration>(fc: Call.create.Options<fdu>): Call.Distributive<fdu>;
37
+ static restore<fdu extends Declaration>(snapshot: Call.Snapshot.Distributive<fdu>): Call.Distributive<fdu>;
38
+ static capture<fdu extends Declaration>(fc: Call.Distributive<fdu>): Call.Snapshot.Distributive<fdu>;
37
39
  }
38
40
  namespace Call {
41
+ type Snapshot<fd extends Declaration> = Omit<Call<fd>, never>;
42
+ namespace Snapshot {
43
+ type Distributive<fdu extends Declaration> = fdu extends infer fd extends Declaration ? Snapshot<fd> : never;
44
+ }
39
45
  type Distributive<fdu extends Declaration> = fdu extends infer fd extends Declaration ? Call<fd> : never;
40
46
  namespace create {
41
47
  type Options<fdu extends Declaration> = fdu extends infer fd extends Function.Declaration ? Omit<Call<fd>, never> : never;
@@ -49,8 +55,14 @@ export declare namespace Function {
49
55
  text: string;
50
56
  private constructor();
51
57
  static create<fdu extends Declaration>(fr: Response.create.Options<fdu>): Response.Distributive<fdu>;
58
+ static capture<fdu extends Declaration>(response: Response.Distributive<fdu>): Response.Snapshot.Distributive<fdu>;
59
+ static restore<fdu extends Declaration>(snapshot: Response.Snapshot.Distributive<fdu>): Response.Distributive<fdu>;
52
60
  }
53
61
  namespace Response {
62
+ type Snapshot<fd extends Declaration> = Omit<Response<fd>, never>;
63
+ namespace Snapshot {
64
+ type Distributive<fdu extends Declaration> = fdu extends infer fd extends Declaration ? Snapshot<fd> : never;
65
+ }
54
66
  type Distributive<fdu extends Declaration> = fdu extends infer fd extends Declaration ? Response<fd> : never;
55
67
  namespace create {
56
68
  type Options<fdu extends Declaration> = fdu extends infer fd extends Function.Declaration ? Omit<Response<fd>, never> : never;
package/build/function.js CHANGED
@@ -14,6 +14,12 @@ export var Function;
14
14
  static create(fc) {
15
15
  return new Call(fc);
16
16
  }
17
+ static restore(snapshot) {
18
+ return new Call(snapshot);
19
+ }
20
+ static capture(fc) {
21
+ return fc;
22
+ }
17
23
  }
18
24
  Function.Call = Call;
19
25
  class Response {
@@ -29,6 +35,12 @@ export var Function;
29
35
  static create(fr) {
30
36
  return new Response(fr);
31
37
  }
38
+ static capture(response) {
39
+ return response;
40
+ }
41
+ static restore(snapshot) {
42
+ return new Response(snapshot);
43
+ }
32
44
  }
33
45
  Function.Response = Response;
34
46
  let ToolChoice;
@@ -1 +1 @@
1
- {"version":3,"file":"function.js","sourceRoot":"","sources":["../src/function.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,MAAM,mBAAmB,CAAC;AAO9D,MAAM,KAAW,QAAQ,CAsFxB;AAtFD,WAAiB,QAAQ;IA4BxB,MAAa,IAAI;QACT,MAAM,CAAU,YAAY,GAAG,MAAM,EAAE,CAAC;QAExC,EAAE,CAAU;QACZ,IAAI,CAAa;QACjB,IAAI,CAA2B;QACtC,YAAoB,EAAyB;YAC5C,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;YACpB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;QACrB,CAAC;QACM,MAAM,CAAC,MAAM,CAA0B,EAA4B;YACzE,OAAO,IAAI,IAAI,CAAC,EAAE,CAA2B,CAAC;QAC/C,CAAC;;IAbW,aAAI,OAchB,CAAA;IAQD,MAAa,QAAQ;QACb,MAAM,CAAU,gBAAgB,GAAG,MAAM,EAAE,CAAC;QAE5C,EAAE,CAAU;QACZ,IAAI,CAAa;QACjB,IAAI,CAAS;QACpB,YAAoB,EAA6B;YAChD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;YACpB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;QACrB,CAAC;QACM,MAAM,CAAC,MAAM,CAA0B,EAAgC;YAC7E,OAAO,IAAI,QAAQ,CAAC,EAAE,CAA+B,CAAC;QACvD,CAAC;;IAbW,iBAAQ,WAcpB,CAAA;IAaD,IAAiB,UAAU,CAI1B;IAJD,WAAiB,UAAU;QACb,eAAI,GAAG,MAAM,EAAE,CAAC;QAChB,mBAAQ,GAAG,MAAM,EAAE,CAAC;QACpB,eAAI,GAAG,MAAM,EAAE,CAAC;IAC9B,CAAC,EAJgB,UAAU,GAAV,mBAAU,KAAV,mBAAU,QAI1B;AAKF,CAAC,EAtFgB,QAAQ,KAAR,QAAQ,QAsFxB"}
1
+ {"version":3,"file":"function.js","sourceRoot":"","sources":["../src/function.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,MAAM,mBAAmB,CAAC;AAO9D,MAAM,KAAW,QAAQ,CA0GxB;AA1GD,WAAiB,QAAQ;IA4BrB,MAAa,IAAI;QACN,MAAM,CAAU,YAAY,GAAG,MAAM,EAAE,CAAC;QAExC,EAAE,CAAU;QACZ,IAAI,CAAa;QACjB,IAAI,CAA2B;QACtC,YAAoB,EAAyB;YACzC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;YACpB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;QACxB,CAAC;QACM,MAAM,CAAC,MAAM,CAA0B,EAA4B;YACtE,OAAO,IAAI,IAAI,CAAC,EAAE,CAA2B,CAAC;QAClD,CAAC;QACM,MAAM,CAAC,OAAO,CAA0B,QAAyC;YACpF,OAAO,IAAI,IAAI,CAAC,QAAQ,CAA2B,CAAC;QACxD,CAAC;QACM,MAAM,CAAC,OAAO,CAA0B,EAA0B;YACrE,OAAO,EAAqC,CAAC;QACjD,CAAC;;IAnBQ,aAAI,OAoBhB,CAAA;IAYD,MAAa,QAAQ;QACV,MAAM,CAAU,gBAAgB,GAAG,MAAM,EAAE,CAAC;QAE5C,EAAE,CAAU;QACZ,IAAI,CAAa;QACjB,IAAI,CAAS;QACpB,YAAoB,EAA6B;YAC7C,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;YACpB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;QACxB,CAAC;QACM,MAAM,CAAC,MAAM,CAA0B,EAAgC;YAC1E,OAAO,IAAI,QAAQ,CAAC,EAAE,CAA+B,CAAC;QAC1D,CAAC;QACM,MAAM,CAAC,OAAO,CAA0B,QAAoC;YAC/E,OAAO,QAA+C,CAAC;QAC3D,CAAC;QACM,MAAM,CAAC,OAAO,CAA0B,QAA6C;YACxF,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAA+B,CAAC;QAChE,CAAC;;IAnBQ,iBAAQ,WAoBpB,CAAA;IAiBD,IAAiB,UAAU,CAI1B;IAJD,WAAiB,UAAU;QACV,eAAI,GAAG,MAAM,EAAE,CAAC;QAChB,mBAAQ,GAAG,MAAM,EAAE,CAAC;QACpB,eAAI,GAAG,MAAM,EAAE,CAAC;IACjC,CAAC,EAJgB,UAAU,GAAV,mBAAU,KAAV,mBAAU,QAI1B;AAKL,CAAC,EA1GgB,QAAQ,KAAR,QAAQ,QA0GxB"}