@zimtsui/brainswitch 0.0.41 → 0.0.43

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 (74) hide show
  1. package/build/agentloop.d.ts +1 -1
  2. package/build/agentloop.js +2 -2
  3. package/build/agentloop.js.map +1 -1
  4. package/build/api-types/anthropic.d.ts +18 -22
  5. package/build/api-types/anthropic.js +81 -79
  6. package/build/api-types/anthropic.js.map +1 -1
  7. package/build/api-types/google.d.ts +13 -18
  8. package/build/api-types/google.js +23 -31
  9. package/build/api-types/google.js.map +1 -1
  10. package/build/api-types/openai-chat-completions.d.ts +17 -19
  11. package/build/api-types/openai-chat-completions.js +101 -96
  12. package/build/api-types/openai-chat-completions.js.map +1 -1
  13. package/build/api-types/openai-responses.d.ts +13 -13
  14. package/build/api-types/openai-responses.js +59 -56
  15. package/build/api-types/openai-responses.js.map +1 -1
  16. package/build/compatible-engine.d.ts +19 -24
  17. package/build/compatible-engine.js +55 -56
  18. package/build/compatible-engine.js.map +1 -1
  19. package/build/compatible-engines.d/aliyun.d.ts +36 -55
  20. package/build/compatible-engines.d/aliyun.js +88 -143
  21. package/build/compatible-engines.d/aliyun.js.map +1 -1
  22. package/build/compatible-engines.d/anthropic.d.ts +33 -60
  23. package/build/compatible-engines.d/anthropic.js +228 -296
  24. package/build/compatible-engines.d/anthropic.js.map +1 -1
  25. package/build/compatible-engines.d/google.d.ts +36 -59
  26. package/build/compatible-engines.d/google.js +163 -237
  27. package/build/compatible-engines.d/google.js.map +1 -1
  28. package/build/compatible-engines.d/openai-chatcompletions.d/monolith.d.ts +7 -14
  29. package/build/compatible-engines.d/openai-chatcompletions.d/monolith.js +65 -71
  30. package/build/compatible-engines.d/openai-chatcompletions.d/monolith.js.map +1 -1
  31. package/build/compatible-engines.d/openai-chatcompletions.d/stream.d.ts +10 -16
  32. package/build/compatible-engines.d/openai-chatcompletions.d/stream.js +170 -184
  33. package/build/compatible-engines.d/openai-chatcompletions.d/stream.js.map +1 -1
  34. package/build/compatible-engines.d/openai-chatcompletions.d.ts +12 -18
  35. package/build/compatible-engines.d/openai-chatcompletions.js +64 -67
  36. package/build/compatible-engines.d/openai-chatcompletions.js.map +1 -1
  37. package/build/compatible-engines.d/openai-responses.d.ts +44 -68
  38. package/build/compatible-engines.d/openai-responses.js +216 -281
  39. package/build/compatible-engines.d/openai-responses.js.map +1 -1
  40. package/build/engine.d.ts +7 -24
  41. package/build/engine.js +23 -38
  42. package/build/engine.js.map +1 -1
  43. package/build/exports.d.ts +1 -0
  44. package/build/exports.js +1 -0
  45. package/build/exports.js.map +1 -1
  46. package/build/inference-context.d.ts +1 -10
  47. package/build/inference-context.js +0 -2
  48. package/build/inference-context.js.map +1 -1
  49. package/build/native-engines.d/google/agentloop.d.ts +1 -1
  50. package/build/native-engines.d/google/agentloop.js +2 -2
  51. package/build/native-engines.d/google/agentloop.js.map +1 -1
  52. package/build/native-engines.d/google/engine.d.ts +54 -73
  53. package/build/native-engines.d/google/engine.js +260 -309
  54. package/build/native-engines.d/google/engine.js.map +1 -1
  55. package/build/native-engines.d/google/exports.d.ts +3 -2
  56. package/build/native-engines.d/google/exports.js +3 -2
  57. package/build/native-engines.d/google/exports.js.map +1 -1
  58. package/build/native-engines.d/openai-responses/agentloop.d.ts +1 -1
  59. package/build/native-engines.d/openai-responses/agentloop.js +2 -2
  60. package/build/native-engines.d/openai-responses/agentloop.js.map +1 -1
  61. package/build/native-engines.d/openai-responses/engine.d.ts +57 -78
  62. package/build/native-engines.d/openai-responses/engine.js +279 -334
  63. package/build/native-engines.d/openai-responses/engine.js.map +1 -1
  64. package/build/native-engines.d/openai-responses/exports.d.ts +4 -2
  65. package/build/native-engines.d/openai-responses/exports.js +4 -2
  66. package/build/native-engines.d/openai-responses/exports.js.map +1 -1
  67. package/build/telemetry.d.ts +6 -0
  68. package/build/telemetry.js +18 -0
  69. package/build/telemetry.js.map +1 -0
  70. package/build/throttle.d.ts +1 -1
  71. package/build/throttle.js +6 -6
  72. package/build/throttle.js.map +1 -1
  73. package/build/tsconfig.tsbuildinfo +1 -1
  74. package/package.json +2 -2
@@ -5,7 +5,7 @@ import { type CompatibleEngine } from './compatible-engine.ts';
5
5
  /**
6
6
  * @param session mutable
7
7
  */
8
- export declare function agentloop<fdm extends Function.Declaration.Map>(ctx: InferenceContext, session: Session<Function.Declaration.From<fdm>>, engine: CompatibleEngine<fdm>, fnm: Function.Map<fdm>, limit?: number): AsyncGenerator<string, string, void>;
8
+ export declare function agentloop<fdm extends Function.Declaration.Map>(wfctx: InferenceContext, session: Session<Function.Declaration.From<fdm>>, engine: CompatibleEngine<fdm>, fnm: Function.Map<fdm>, limit?: number): AsyncGenerator<string, string, void>;
9
9
  export declare namespace agentloop {
10
10
  class FunctionCallLimitExceeded extends Error {
11
11
  }
@@ -5,9 +5,9 @@ import {} from "./compatible-engine.js";
5
5
  /**
6
6
  * @param session mutable
7
7
  */
8
- export async function* agentloop(ctx, session, engine, fnm, limit = Number.POSITIVE_INFINITY) {
8
+ export async function* agentloop(wfctx, session, engine, fnm, limit = Number.POSITIVE_INFINITY) {
9
9
  for (let i = 0; i < limit; i++) {
10
- const response = await engine.stateful(ctx, session);
10
+ const response = await engine.stateful(wfctx, session);
11
11
  const fcs = response.getFunctionCalls();
12
12
  if (!fcs.length)
13
13
  return response.getOnlyText();
@@ -1 +1 @@
1
- {"version":3,"file":"agentloop.js","sourceRoot":"","sources":["../src/agentloop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAgB,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAyB,MAAM,wBAAwB,CAAC;AAG/D;;GAEG;AACH,MAAM,CAAC,KAAK,SAAU,CAAC,CAAA,SAAS,CAC5B,GAAqB,EACrB,OAAgD,EAChD,MAA6B,EAC7B,GAAsB,EACtB,KAAK,GAAG,MAAM,CAAC,iBAAiB;IAGhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QACxC,IAAI,CAAC,GAAG,CAAC,MAAM;YAAE,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAmD,EAAE,CAAC;QAChE,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;YACrC,IAAI,IAAI,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACjD,MAAM,IAAI,CAAC,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,IAAI,YAAY,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACvC,MAAM,EAAE,GAAG,IAAuC,CAAC;gBACnD,MAAM,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBACvB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE;oBAClB,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAM;wBACjC,EAAE,EAAE,EAAE,CAAC,EAAE;wBACT,IAAI,EAAE,EAAE,CAAC,IAAI;wBACb,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC;qBACM,CAAC,CAAC;gBAChD,CAAC,CAAC,EAAE,CAAC,CAAC;YACV,CAAC;;gBAAM,MAAM,IAAI,KAAK,EAAE,CAAC;QAC7B,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAM,GAAG,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,SAAS,CAAC,yBAAyB,CAAC,+BAA+B,CAAC,CAAC;AACnF,CAAC;AAED,WAAiB,SAAS;IACtB,MAAa,yBAA0B,SAAQ,KAAK;KAAG;IAA1C,mCAAyB,4BAAiB,CAAA;AAC3D,CAAC,EAFgB,SAAS,KAAT,SAAS,QAEzB"}
1
+ {"version":3,"file":"agentloop.js","sourceRoot":"","sources":["../src/agentloop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAgB,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAyB,MAAM,wBAAwB,CAAC;AAG/D;;GAEG;AACH,MAAM,CAAC,KAAK,SAAU,CAAC,CAAA,SAAS,CAC5B,KAAuB,EACvB,OAAgD,EAChD,MAA6B,EAC7B,GAAsB,EACtB,KAAK,GAAG,MAAM,CAAC,iBAAiB;IAGhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QACxC,IAAI,CAAC,GAAG,CAAC,MAAM;YAAE,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAmD,EAAE,CAAC;QAChE,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;YACrC,IAAI,IAAI,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACjD,MAAM,IAAI,CAAC,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,IAAI,YAAY,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACvC,MAAM,EAAE,GAAG,IAAuC,CAAC;gBACnD,MAAM,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBACvB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE;oBAClB,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAM;wBACjC,EAAE,EAAE,EAAE,CAAC,EAAE;wBACT,IAAI,EAAE,EAAE,CAAC,IAAI;wBACb,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC;qBACM,CAAC,CAAC;gBAChD,CAAC,CAAC,EAAE,CAAC,CAAC;YACV,CAAC;;gBAAM,MAAM,IAAI,KAAK,EAAE,CAAC;QAC7B,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAM,GAAG,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,SAAS,CAAC,yBAAyB,CAAC,+BAA+B,CAAC,CAAC;AACnF,CAAC;AAED,WAAiB,SAAS;IACtB,MAAa,yBAA0B,SAAQ,KAAK;KAAG;IAA1C,mCAAyB,4BAAiB,CAAA;AAC3D,CAAC,EAFgB,SAAS,KAAT,SAAS,QAEzB"}
@@ -1,33 +1,29 @@
1
1
  import { Function } from '../function.ts';
2
- import { Engine } from '../engine.ts';
2
+ import { type Engine } from '../engine.ts';
3
3
  import Anthropic from '@anthropic-ai/sdk';
4
4
  export declare namespace AnthropicEngine {
5
- interface Base<fdm extends Function.Declaration.Map> {
5
+ interface Options<in out fdm extends Function.Declaration.Map> extends Engine.Options<fdm> {
6
+ }
7
+ interface OwnProps {
8
+ parallelToolCall: boolean;
6
9
  anthropic: Anthropic;
7
- parallel: boolean;
10
+ }
11
+ namespace OwnProps {
12
+ function init<fdm extends Function.Declaration.Map>(this: Engine.Underhood<fdm>, options: Options<fdm>): OwnProps;
13
+ }
14
+ interface Underhood<in out fdm extends Function.Declaration.Map> extends Engine.Underhood<fdm>, OwnProps {
15
+ parallelToolCall: boolean;
8
16
  convertFromFunctionCall(fc: Function.Call.Distributive<Function.Declaration.From<fdm>>): Anthropic.ToolUseBlock;
9
17
  convertToFunctionCall(apifc: Anthropic.ToolUseBlock): Function.Call.Distributive<Function.Declaration.From<fdm>>;
10
18
  convertFromFunctionResponse(fr: Function.Response.Distributive<Function.Declaration.From<fdm>>): Anthropic.ToolResultBlockParam;
11
19
  convertFromFunctionDeclarationEntry(fdentry: Function.Declaration.Entry.From<fdm>): Anthropic.Tool;
12
- convertFromToolChoice(toolChoice: Function.ToolChoice<fdm>, parallel: boolean): Anthropic.ToolChoice;
20
+ convertFromToolChoice(toolChoice: Function.ToolChoice<fdm>, parallelToolCall: boolean): Anthropic.ToolChoice;
13
21
  calcCost(usage: Anthropic.Usage): number;
14
22
  }
15
- interface Instance<fdm extends Function.Declaration.Map> extends Engine.Instance<fdm>, AnthropicEngine.Base<fdm> {
16
- }
17
- namespace Base {
18
- class Instance<in out fdm extends Function.Declaration.Map> implements AnthropicEngine.Base<fdm> {
19
- protected instance: AnthropicEngine.Instance<fdm>;
20
- anthropic: Anthropic;
21
- parallel: boolean;
22
- constructor(instance: AnthropicEngine.Instance<fdm>, options: AnthropicEngine.Options<fdm>);
23
- convertFromFunctionCall(fc: Function.Call.Distributive<Function.Declaration.From<fdm>>): Anthropic.ToolUseBlock;
24
- convertToFunctionCall(apifc: Anthropic.ToolUseBlock): Function.Call.Distributive<Function.Declaration.From<fdm>>;
25
- convertFromFunctionResponse(fr: Function.Response.Distributive<Function.Declaration.From<fdm>>): Anthropic.ToolResultBlockParam;
26
- convertFromFunctionDeclarationEntry(fdentry: Function.Declaration.Entry.From<fdm>): Anthropic.Tool;
27
- convertFromToolChoice(toolChoice: Function.ToolChoice<fdm>, parallel: boolean): Anthropic.ToolChoice;
28
- calcCost(usage: Anthropic.Usage): number;
29
- }
30
- }
31
- interface Options<fdm extends Function.Declaration.Map> extends Engine.Options<fdm> {
32
- }
23
+ function convertFromFunctionCall<fdm extends Function.Declaration.Map>(fc: Function.Call.Distributive<Function.Declaration.From<fdm>>): Anthropic.ToolUseBlock;
24
+ function convertToFunctionCall<fdm extends Function.Declaration.Map>(this: Engine.Underhood<fdm>, apifc: Anthropic.ToolUseBlock): Function.Call.Distributive<Function.Declaration.From<fdm>>;
25
+ function convertFromFunctionResponse<fdm extends Function.Declaration.Map>(fr: Function.Response.Distributive<Function.Declaration.From<fdm>>): Anthropic.ToolResultBlockParam;
26
+ function convertFromFunctionDeclarationEntry<fdm extends Function.Declaration.Map>(fdentry: Function.Declaration.Entry.From<fdm>): Anthropic.Tool;
27
+ function convertFromToolChoice<fdm extends Function.Declaration.Map>(toolChoice: Function.ToolChoice<fdm>, parallelToolCall: boolean): Anthropic.ToolChoice;
28
+ function calcCost<fdm extends Function.Declaration.Map>(this: Engine.Underhood<fdm>, usage: Anthropic.Usage): number;
33
29
  }
@@ -1,91 +1,93 @@
1
1
  import { Function } from "../function.js";
2
- import { Engine, ResponseInvalid } from "../engine.js";
2
+ import { ResponseInvalid } from "../engine.js";
3
3
  import Anthropic from '@anthropic-ai/sdk';
4
4
  import Ajv from 'ajv';
5
5
  import {} from '@sinclair/typebox';
6
6
  const ajv = new Ajv();
7
7
  export var AnthropicEngine;
8
8
  (function (AnthropicEngine) {
9
- let Base;
10
- (function (Base) {
11
- class Instance {
12
- instance;
13
- anthropic;
14
- parallel;
15
- constructor(instance, options) {
16
- this.instance = instance;
17
- this.parallel = options.parallelToolCall ?? false;
18
- this.anthropic = new Anthropic({
19
- baseURL: this.instance.baseUrl,
20
- apiKey: this.instance.apiKey,
21
- fetchOptions: { dispatcher: this.instance.proxyAgent },
22
- });
23
- }
24
- convertFromFunctionCall(fc) {
25
- throw new Error('Anthropic compatible engine requires native function calls.');
26
- }
27
- convertToFunctionCall(apifc) {
28
- const fditem = this.instance.fdm[apifc.name];
29
- if (fditem) { }
30
- else
31
- throw new ResponseInvalid('Unknown function call', { cause: apifc });
32
- const args = (() => {
33
- try {
34
- return JSON.parse(apifc.input);
35
- }
36
- catch (e) {
37
- throw new ResponseInvalid('Invalid JSON of function call', { cause: apifc });
38
- }
39
- })();
40
- if (ajv.validate(fditem.paraschema, args)) { }
41
- else
42
- throw new ResponseInvalid('Function call not conforming to schema', { cause: apifc });
43
- return Function.Call.create({
44
- id: apifc.id,
45
- name: apifc.name,
46
- args,
47
- });
48
- }
49
- convertFromFunctionResponse(fr) {
50
- if (fr.id) { }
51
- else
52
- throw new Error();
53
- return {
54
- type: 'tool_result',
55
- tool_use_id: fr.id,
56
- content: fr.text,
57
- };
58
- }
59
- convertFromFunctionDeclarationEntry(fdentry) {
60
- return {
61
- name: fdentry[0],
62
- description: fdentry[1].description,
63
- input_schema: fdentry[1].paraschema,
64
- };
65
- }
66
- convertFromToolChoice(toolChoice, parallel) {
67
- if (toolChoice === Function.ToolChoice.NONE)
68
- return { type: 'none' };
69
- else if (toolChoice === Function.ToolChoice.REQUIRED)
70
- return { type: 'any', disable_parallel_tool_use: !parallel };
71
- else if (toolChoice === Function.ToolChoice.AUTO)
72
- return { type: 'auto', disable_parallel_tool_use: !parallel };
73
- else {
74
- if (toolChoice.length === 1) { }
75
- else
76
- throw new Error();
77
- return { type: 'tool', name: toolChoice[0], disable_parallel_tool_use: !parallel };
78
- }
9
+ let OwnProps;
10
+ (function (OwnProps) {
11
+ function init(options) {
12
+ return {
13
+ parallelToolCall: options.parallelToolCall ?? false,
14
+ anthropic: new Anthropic({
15
+ baseURL: this.baseUrl,
16
+ apiKey: this.apiKey,
17
+ fetchOptions: { dispatcher: this.proxyAgent },
18
+ }),
19
+ };
20
+ }
21
+ OwnProps.init = init;
22
+ })(OwnProps = AnthropicEngine.OwnProps || (AnthropicEngine.OwnProps = {}));
23
+ function convertFromFunctionCall(fc) {
24
+ throw new Error('Anthropic compatible engine requires native function calls.');
25
+ }
26
+ AnthropicEngine.convertFromFunctionCall = convertFromFunctionCall;
27
+ function convertToFunctionCall(apifc) {
28
+ const fditem = this.fdm[apifc.name];
29
+ if (fditem) { }
30
+ else
31
+ throw new ResponseInvalid('Unknown function call', { cause: apifc });
32
+ const args = (() => {
33
+ try {
34
+ return JSON.parse(apifc.input);
79
35
  }
80
- calcCost(usage) {
81
- const cacheHitTokenCount = usage.cache_read_input_tokens || 0;
82
- const cacheMissTokenCount = usage.input_tokens - cacheHitTokenCount;
83
- return this.instance.inputPrice * cacheMissTokenCount / 1e6 +
84
- this.instance.cachedPrice * cacheHitTokenCount / 1e6 +
85
- this.instance.outputPrice * usage.output_tokens / 1e6;
36
+ catch (e) {
37
+ throw new ResponseInvalid('Invalid JSON of function call', { cause: apifc });
86
38
  }
39
+ })();
40
+ if (ajv.validate(fditem.paraschema, args)) { }
41
+ else
42
+ throw new ResponseInvalid('Function call not conforming to schema', { cause: apifc });
43
+ return Function.Call.create({
44
+ id: apifc.id,
45
+ name: apifc.name,
46
+ args,
47
+ });
48
+ }
49
+ AnthropicEngine.convertToFunctionCall = convertToFunctionCall;
50
+ function convertFromFunctionResponse(fr) {
51
+ if (fr.id) { }
52
+ else
53
+ throw new Error();
54
+ return {
55
+ type: 'tool_result',
56
+ tool_use_id: fr.id,
57
+ content: fr.text,
58
+ };
59
+ }
60
+ AnthropicEngine.convertFromFunctionResponse = convertFromFunctionResponse;
61
+ function convertFromFunctionDeclarationEntry(fdentry) {
62
+ return {
63
+ name: fdentry[0],
64
+ description: fdentry[1].description,
65
+ input_schema: fdentry[1].paraschema,
66
+ };
67
+ }
68
+ AnthropicEngine.convertFromFunctionDeclarationEntry = convertFromFunctionDeclarationEntry;
69
+ function convertFromToolChoice(toolChoice, parallelToolCall) {
70
+ if (toolChoice === Function.ToolChoice.NONE)
71
+ return { type: 'none' };
72
+ else if (toolChoice === Function.ToolChoice.REQUIRED)
73
+ return { type: 'any', disable_parallel_tool_use: !parallelToolCall };
74
+ else if (toolChoice === Function.ToolChoice.AUTO)
75
+ return { type: 'auto', disable_parallel_tool_use: !parallelToolCall };
76
+ else {
77
+ if (toolChoice.length === 1) { }
78
+ else
79
+ throw new Error();
80
+ return { type: 'tool', name: toolChoice[0], disable_parallel_tool_use: !parallelToolCall };
87
81
  }
88
- Base.Instance = Instance;
89
- })(Base = AnthropicEngine.Base || (AnthropicEngine.Base = {}));
82
+ }
83
+ AnthropicEngine.convertFromToolChoice = convertFromToolChoice;
84
+ function calcCost(usage) {
85
+ const cacheHitTokenCount = usage.cache_read_input_tokens || 0;
86
+ const cacheMissTokenCount = usage.input_tokens - cacheHitTokenCount;
87
+ return this.inputPrice * cacheMissTokenCount / 1e6 +
88
+ this.cachePrice * cacheHitTokenCount / 1e6 +
89
+ this.outputPrice * usage.output_tokens / 1e6;
90
+ }
91
+ AnthropicEngine.calcCost = calcCost;
90
92
  })(AnthropicEngine || (AnthropicEngine = {}));
91
93
  //# sourceMappingURL=anthropic.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/api-types/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAC1C,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAgB,MAAM,mBAAmB,CAAC;AAEjD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;AAItB,MAAM,KAAW,eAAe,CAiG/B;AAjGD,WAAiB,eAAe;IAiB5B,IAAiB,IAAI,CA6EpB;IA7ED,WAAiB,IAAI;QAEjB,MAAa,QAAQ;YAKH;YAJP,SAAS,CAAY;YACrB,QAAQ,CAAU;YAEzB,YACc,QAAuC,EACjD,OAAqC;gBAD3B,aAAQ,GAAR,QAAQ,CAA+B;gBAGjD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,gBAAgB,IAAI,KAAK,CAAC;gBAClD,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC;oBAC3B,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO;oBAC9B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;oBAC5B,YAAY,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;iBACzD,CAAC,CAAC;YACP,CAAC;YAEM,uBAAuB,CAAC,EAA8D;gBACzF,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;YACnF,CAAC;YAEM,qBAAqB,CAAC,KAA6B;gBACtD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAoD,CAAC;gBAChG,IAAI,MAAM,EAAE,CAAC,CAAA,CAAC;;oBAAM,MAAM,IAAI,eAAe,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;gBACzF,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE;oBACf,IAAI,CAAC;wBACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAe,CAAC,CAAC;oBAC7C,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACT,MAAM,IAAI,eAAe,CAAC,+BAA+B,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;oBACjF,CAAC;gBACL,CAAC,CAAC,EAAE,CAAC;gBACL,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA,CAAC;;oBACxC,MAAM,IAAI,eAAe,CAAC,wCAAwC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC3F,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;oBACxB,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI;iBACyD,CAAC,CAAC;YACvE,CAAC;YAEM,2BAA2B,CAAC,EAAkE;gBACjG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA,CAAC;;oBAAM,MAAM,IAAI,KAAK,EAAE,CAAC;gBACrC,OAAO;oBACH,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,EAAE,CAAC,EAAE;oBAClB,OAAO,EAAE,EAAE,CAAC,IAAI;iBACnB,CAAC;YACN,CAAC;YAEM,mCAAmC,CAAC,OAA6C;gBACpF,OAAO;oBACH,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;oBAChB,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW;oBACnC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,UAAqB;iBACjD,CAAC;YACN,CAAC;YAEM,qBAAqB,CAAC,UAAoC,EAAE,QAAiB;gBAChF,IAAI,UAAU,KAAK,QAAQ,CAAC,UAAU,CAAC,IAAI;oBAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;qBAChE,IAAI,UAAU,KAAK,QAAQ,CAAC,UAAU,CAAC,QAAQ;oBAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,QAAQ,EAAE,CAAC;qBAC9G,IAAI,UAAU,KAAK,QAAQ,CAAC,UAAU,CAAC,IAAI;oBAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC,QAAQ,EAAE,CAAC;qBAC3G,CAAC;oBACF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC,CAAA,CAAC;;wBAAM,MAAM,IAAI,KAAK,EAAE,CAAC;oBACvD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAE,EAAE,yBAAyB,EAAE,CAAC,QAAQ,EAAE,CAAC;gBACxF,CAAC;YACL,CAAC;YAEM,QAAQ,CAAC,KAAsB;gBAClC,MAAM,kBAAkB,GAAG,KAAK,CAAC,uBAAuB,IAAI,CAAC,CAAC;gBAC9D,MAAM,mBAAmB,GAAG,KAAK,CAAC,YAAY,GAAG,kBAAkB,CAAC;gBACpE,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,GAAG,mBAAmB,GAAG,GAAG;oBACnD,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,kBAAkB,GAAG,GAAG;oBACpD,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC;YAClE,CAAC;SAEJ;QA1EY,aAAQ,WA0EpB,CAAA;IACL,CAAC,EA7EgB,IAAI,GAAJ,oBAAI,KAAJ,oBAAI,QA6EpB;AAGL,CAAC,EAjGgB,eAAe,KAAf,eAAe,QAiG/B"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/api-types/anthropic.ts"],"names":[],"mappings":"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"}
@@ -1,28 +1,23 @@
1
- import { Engine } from '../engine.ts';
1
+ import { type Engine } from '../engine.ts';
2
2
  import { Function } from '../function.ts';
3
3
  import * as Google from '@google/genai';
4
- import { CompatibleEngine } from '../compatible-engine.ts';
5
4
  export declare namespace GoogleEngine {
6
- interface Base<in out fdm extends Function.Declaration.Map> {
7
- parallel: boolean;
5
+ interface Options<in out fdm extends Function.Declaration.Map> extends Engine.Options<fdm> {
6
+ }
7
+ interface OwnProps {
8
+ parallelToolCall: boolean;
9
+ }
10
+ namespace OwnProps {
11
+ function init<fdm extends Function.Declaration.Map>(options: Options<fdm>): OwnProps;
12
+ }
13
+ interface Underhood<in out fdm extends Function.Declaration.Map> extends Engine.Underhood<fdm>, OwnProps {
8
14
  convertFromFunctionCall(fc: Function.Call.Distributive<Function.Declaration.From<fdm>>): Google.FunctionCall;
9
15
  convertToFunctionCall(googlefc: Google.FunctionCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
10
16
  convertFromFunctionDeclarationEntry(fdentry: Function.Declaration.Entry.From<fdm>): Google.FunctionDeclaration;
11
17
  }
12
- interface Instance<in out fdm extends Function.Declaration.Map> extends Engine.Instance<fdm>, GoogleEngine.Base<fdm> {
13
- }
14
- namespace Base {
15
- class Instance<in out fdm extends Function.Declaration.Map> implements GoogleEngine.Base<fdm> {
16
- protected instance: GoogleEngine.Instance<fdm>;
17
- parallel: boolean;
18
- constructor(instance: GoogleEngine.Instance<fdm>, options: CompatibleEngine.Options<fdm>);
19
- convertFromFunctionCall(fc: Function.Call.Distributive<Function.Declaration.From<fdm>>): Google.FunctionCall;
20
- convertToFunctionCall(googlefc: Google.FunctionCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
21
- convertFromFunctionDeclarationEntry(fdentry: Function.Declaration.Entry.From<fdm>): Google.FunctionDeclaration;
22
- }
23
- }
24
- function convertFromFunctionDeclarationEntry<fdm extends Function.Declaration.Map>(fdentry: Function.Declaration.Entry.From<fdm>): Google.FunctionDeclaration;
25
- function convertToFunctionCall<fdm extends Function.Declaration.Map>(googlefc: Google.FunctionCall, fdm: fdm): Function.Call.Distributive<Function.Declaration.From<fdm>>;
18
+ function convertFromFunctionCall<fdm extends Function.Declaration.Map>(this: GoogleEngine.Underhood<fdm>, fc: Function.Call.Distributive<Function.Declaration.From<fdm>>): Google.FunctionCall;
19
+ function convertFromFunctionDeclarationEntry<fdm extends Function.Declaration.Map>(this: GoogleEngine.Underhood<fdm>, fdentry: Function.Declaration.Entry.From<fdm>): Google.FunctionDeclaration;
20
+ function convertToFunctionCall<fdm extends Function.Declaration.Map>(this: GoogleEngine.Underhood<fdm>, googlefc: Google.FunctionCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
26
21
  interface RestfulRequest {
27
22
  contents: Google.Content[];
28
23
  tools?: Google.Tool[];
@@ -1,39 +1,31 @@
1
- import { Engine, ResponseInvalid } from "../engine.js";
1
+ import { ResponseInvalid } from "../engine.js";
2
2
  import { Function } from "../function.js";
3
3
  import * as Google from '@google/genai';
4
- import { CompatibleEngine } from "../compatible-engine.js";
5
4
  import Ajv from 'ajv';
6
5
  const ajv = new Ajv();
7
6
  export var GoogleEngine;
8
7
  (function (GoogleEngine) {
9
- let Base;
10
- (function (Base) {
11
- class Instance {
12
- instance;
13
- parallel;
14
- constructor(instance, options) {
15
- this.instance = instance;
16
- this.parallel = options.parallelToolCall ?? true;
17
- if (this.parallel) { }
18
- else
19
- throw new Error('Google API requires parallel tool calls.');
20
- }
21
- convertFromFunctionCall(fc) {
22
- return {
23
- id: fc.id,
24
- name: fc.name,
25
- args: fc.args,
26
- };
27
- }
28
- convertToFunctionCall(googlefc) {
29
- return GoogleEngine.convertToFunctionCall(googlefc, this.instance.fdm);
30
- }
31
- convertFromFunctionDeclarationEntry(fdentry) {
32
- return GoogleEngine.convertFromFunctionDeclarationEntry(fdentry);
33
- }
8
+ let OwnProps;
9
+ (function (OwnProps) {
10
+ function init(options) {
11
+ const parallelToolCall = options.parallelToolCall ?? true;
12
+ if (parallelToolCall) { }
13
+ else
14
+ throw new Error('Google API requires parallel tool calls.');
15
+ return {
16
+ parallelToolCall,
17
+ };
34
18
  }
35
- Base.Instance = Instance;
36
- })(Base = GoogleEngine.Base || (GoogleEngine.Base = {}));
19
+ OwnProps.init = init;
20
+ })(OwnProps = GoogleEngine.OwnProps || (GoogleEngine.OwnProps = {}));
21
+ function convertFromFunctionCall(fc) {
22
+ return {
23
+ id: fc.id,
24
+ name: fc.name,
25
+ args: fc.args,
26
+ };
27
+ }
28
+ GoogleEngine.convertFromFunctionCall = convertFromFunctionCall;
37
29
  function convertFromFunctionDeclarationEntry(fdentry) {
38
30
  const json = JSON.stringify(fdentry[1].paraschema);
39
31
  const parsed = JSON.parse(json, (key, value) => {
@@ -63,11 +55,11 @@ export var GoogleEngine;
63
55
  };
64
56
  }
65
57
  GoogleEngine.convertFromFunctionDeclarationEntry = convertFromFunctionDeclarationEntry;
66
- function convertToFunctionCall(googlefc, fdm) {
58
+ function convertToFunctionCall(googlefc) {
67
59
  if (googlefc.name) { }
68
60
  else
69
61
  throw new Error();
70
- const fditem = fdm[googlefc.name];
62
+ const fditem = this.fdm[googlefc.name];
71
63
  if (fditem) { }
72
64
  else
73
65
  throw new ResponseInvalid('Unknown function call', { cause: googlefc });
@@ -1 +1 @@
1
- {"version":3,"file":"google.js","sourceRoot":"","sources":["../../src/api-types/google.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"google.js","sourceRoot":"","sources":["../../src/api-types/google.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,15 @@ import { type Engine } from '../engine.ts';
2
2
  import { Function } from '../function.ts';
3
3
  import OpenAI from 'openai';
4
4
  export declare namespace OpenAIChatCompletionsEngine {
5
- interface Base<in out fdm extends Function.Declaration.Map> {
6
- parallel: boolean;
5
+ interface Options<in out fdm extends Function.Declaration.Map> extends Engine.Options<fdm> {
6
+ }
7
+ interface OwnProps {
8
+ parallelToolCall: boolean;
9
+ }
10
+ namespace OwnProps {
11
+ function init<fdm extends Function.Declaration.Map>(options: Options<fdm>): OwnProps;
12
+ }
13
+ interface Underhood<in out fdm extends Function.Declaration.Map> extends Engine.Underhood<fdm>, OwnProps {
7
14
  convertFromFunctionCall(fc: Function.Call.Distributive<Function.Declaration.From<fdm>>): OpenAI.ChatCompletionMessageToolCall;
8
15
  convertToFunctionCall(apifc: OpenAI.ChatCompletionMessageFunctionToolCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
9
16
  convertFromFunctionResponse(fr: Function.Response.Distributive<Function.Declaration.From<fdm>>): OpenAI.ChatCompletionToolMessageParam;
@@ -13,21 +20,12 @@ export declare namespace OpenAIChatCompletionsEngine {
13
20
  extractContent(completionContent: string): string;
14
21
  handleFinishReason(completion: OpenAI.ChatCompletion, finishReason: OpenAI.ChatCompletion.Choice['finish_reason']): void;
15
22
  }
16
- interface Instance<in out fdm extends Function.Declaration.Map> extends Engine.Instance<fdm>, OpenAIChatCompletionsEngine.Base<fdm> {
17
- }
18
- namespace Base {
19
- class Instance<in out fdm extends Function.Declaration.Map> implements OpenAIChatCompletionsEngine.Base<fdm> {
20
- protected instance: Engine.Instance<fdm>;
21
- parallel: boolean;
22
- constructor(instance: Engine.Instance<fdm>, options: Engine.Options<fdm>);
23
- convertFromFunctionCall(fc: Function.Call.Distributive<Function.Declaration.From<fdm>>): OpenAI.ChatCompletionMessageToolCall;
24
- convertToFunctionCall(apifc: OpenAI.ChatCompletionMessageFunctionToolCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
25
- convertFromFunctionResponse(fr: Function.Response.Distributive<Function.Declaration.From<fdm>>): OpenAI.ChatCompletionToolMessageParam;
26
- convertFromFunctionDeclarationEntry(fdentry: Function.Declaration.Entry.From<fdm>): OpenAI.ChatCompletionTool;
27
- convertFromToolChoice(toolChoice: Function.ToolChoice<fdm>): OpenAI.ChatCompletionToolChoiceOption;
28
- calcCost(usage: OpenAI.CompletionUsage): number;
29
- extractContent(completionContent: string): string;
30
- handleFinishReason(completion: OpenAI.ChatCompletion, finishReason: OpenAI.ChatCompletion.Choice['finish_reason']): void;
31
- }
32
- }
23
+ function convertFromFunctionCall<fdm extends Function.Declaration.Map>(fc: Function.Call.Distributive<Function.Declaration.From<fdm>>): OpenAI.ChatCompletionMessageToolCall;
24
+ function convertToFunctionCall<fdm extends Function.Declaration.Map>(this: Engine.Underhood<fdm>, apifc: OpenAI.ChatCompletionMessageFunctionToolCall): Function.Call.Distributive<Function.Declaration.From<fdm>>;
25
+ function convertFromFunctionResponse<fdm extends Function.Declaration.Map>(fr: Function.Response.Distributive<Function.Declaration.From<fdm>>): OpenAI.ChatCompletionToolMessageParam;
26
+ function convertFromFunctionDeclarationEntry<fdm extends Function.Declaration.Map>(fdentry: Function.Declaration.Entry.From<fdm>): OpenAI.ChatCompletionTool;
27
+ function convertFromToolChoice<fdm extends Function.Declaration.Map>(toolChoice: Function.ToolChoice<fdm>): OpenAI.ChatCompletionToolChoiceOption;
28
+ function calcCost<fdm extends Function.Declaration.Map>(this: Engine.Underhood<fdm>, usage: OpenAI.CompletionUsage): number;
29
+ function extractContent(completionContent: string): string;
30
+ function handleFinishReason(completion: OpenAI.ChatCompletion, finishReason: OpenAI.ChatCompletion.Choice['finish_reason']): void;
33
31
  }