@zimtsui/typechat 0.0.91 → 0.0.93
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/build/api-types/google/billing.js +1 -1
- package/build/api-types/google/billing.js.map +1 -1
- package/build/api-types/openai-chatcompletions/tool-codec.d.ts +0 -1
- package/build/compatible-engine/validation.d.ts +14 -7
- package/build/compatible-engine/validation.js +14 -5
- package/build/compatible-engine/validation.js.map +1 -1
- package/build/compatible-engine.d/aliyun.d.ts +0 -3
- package/build/compatible-engine.d/aliyun.js +0 -8
- package/build/compatible-engine.d/aliyun.js.map +1 -1
- package/build/compatible-engine.d/anthropic/choice-codec.d.ts +1 -1
- package/build/compatible-engine.d/anthropic/choice-codec.js +7 -6
- package/build/compatible-engine.d/anthropic/choice-codec.js.map +1 -1
- package/build/compatible-engine.d/anthropic/transport.d.ts +0 -3
- package/build/compatible-engine.d/anthropic/transport.js +17 -14
- package/build/compatible-engine.d/anthropic/transport.js.map +1 -1
- package/build/compatible-engine.d/anthropic.d.ts +0 -3
- package/build/compatible-engine.d/anthropic.js +0 -7
- package/build/compatible-engine.d/anthropic.js.map +1 -1
- package/build/compatible-engine.d/google/transport.d.ts +0 -2
- package/build/compatible-engine.d/google/transport.js +15 -16
- package/build/compatible-engine.d/google/transport.js.map +1 -1
- package/build/compatible-engine.d/google.d.ts +0 -3
- package/build/compatible-engine.d/google.js +1 -8
- package/build/compatible-engine.d/google.js.map +1 -1
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.d.ts +3 -10
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.js +11 -12
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.js.map +1 -1
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.d.ts +0 -3
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.js +14 -12
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.js.map +1 -1
- package/build/compatible-engine.d/openai-responses/transport.d.ts +0 -3
- package/build/compatible-engine.d/openai-responses/transport.js +7 -8
- package/build/compatible-engine.d/openai-responses/transport.js.map +1 -1
- package/build/compatible-engine.d/openai-responses.d.ts +0 -3
- package/build/compatible-engine.d/openai-responses.js +0 -7
- package/build/compatible-engine.d/openai-responses.js.map +1 -1
- package/build/compatible-engine.d.ts +4 -1
- package/build/compatible-engine.js +6 -1
- package/build/compatible-engine.js.map +1 -1
- package/build/config.d.ts +0 -1
- package/build/endpoint-spec.d.ts +0 -1
- package/build/endpoint-spec.js +0 -1
- package/build/endpoint-spec.js.map +1 -1
- package/build/engine/validation.d.ts +10 -5
- package/build/engine.d.ts +8 -7
- package/build/engine.js +33 -21
- package/build/engine.js.map +1 -1
- package/build/native-engines.d/google/transport.d.ts +0 -2
- package/build/native-engines.d/google/transport.js +18 -20
- package/build/native-engines.d/google/transport.js.map +1 -1
- package/build/native-engines.d/google/validation.d.ts +16 -10
- package/build/native-engines.d/google/validation.js +19 -15
- package/build/native-engines.d/google/validation.js.map +1 -1
- package/build/native-engines.d/google.d.ts +4 -3
- package/build/native-engines.d/google.js +7 -8
- package/build/native-engines.d/google.js.map +1 -1
- package/build/native-engines.d/openai-responses/transport.d.ts +0 -3
- package/build/native-engines.d/openai-responses/transport.js +8 -9
- package/build/native-engines.d/openai-responses/transport.js.map +1 -1
- package/build/native-engines.d/openai-responses/validation.d.ts +15 -7
- package/build/native-engines.d/openai-responses/validation.js +12 -5
- package/build/native-engines.d/openai-responses/validation.js.map +1 -1
- package/build/native-engines.d/openai-responses.d.ts +4 -3
- package/build/native-engines.d/openai-responses.js +6 -7
- package/build/native-engines.d/openai-responses.js.map +1 -1
- package/build/repetition.d.ts +1 -0
- package/build/repetition.js +90 -0
- package/build/repetition.js.map +1 -0
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -5,7 +5,7 @@ export class Billing {
|
|
|
5
5
|
this.ctx = ctx;
|
|
6
6
|
}
|
|
7
7
|
charge(usageMetadata) {
|
|
8
|
-
loggers.message.
|
|
8
|
+
loggers.message.info(usageMetadata);
|
|
9
9
|
if (usageMetadata.promptTokenCount) { }
|
|
10
10
|
else
|
|
11
11
|
throw new Error('Prompt token count missing.', { cause: usageMetadata });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"billing.js","sourceRoot":"","sources":["../../../src/api-types/google/billing.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,MAAM,OAAO,OAAO;IACa;IAA7B,YAA6B,GAAoB;QAApB,QAAG,GAAH,GAAG,CAAiB;IAAG,CAAC;IAE9C,MAAM,CAAC,aAA0D;QACpE,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"billing.js","sourceRoot":"","sources":["../../../src/api-types/google/billing.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,MAAM,OAAO,OAAO;IACa;IAA7B,YAA6B,GAAoB;QAApB,QAAG,GAAH,GAAG,CAAiB;IAAG,CAAC;IAE9C,MAAM,CAAC,aAA0D;QACpE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAEpC,IAAI,aAAa,CAAC,gBAAgB,EAAE,CAAC,CAAA,CAAC;;YAAM,MAAM,IAAI,KAAK,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QACrH,MAAM,oBAAoB,GAAG,aAAa,CAAC,oBAAoB,IAAI,CAAC,CAAC;QACrE,MAAM,kBAAkB,GAAG,aAAa,CAAC,uBAAuB,IAAI,CAAC,CAAC;QACtE,MAAM,mBAAmB,GAAG,aAAa,CAAC,gBAAgB,GAAG,kBAAkB,CAAC;QAChF,MAAM,kBAAkB,GAAG,aAAa,CAAC,kBAAkB,IAAI,CAAC,CAAC;QACjE,MAAM,IAAI,GACN,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,mBAAmB,GAAG,GAAG;YACvD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,kBAAkB,GAAG,GAAG;YACtD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,oBAAoB,GAAG,GAAG;YACzD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,kBAAkB,GAAG,GAAG,CAAC;QAC5D,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
|
|
@@ -11,7 +11,6 @@ export declare class OpenAIChatCompletionsToolCodec<in out fdm extends Function.
|
|
|
11
11
|
}
|
|
12
12
|
export declare namespace OpenAIChatCompletionsToolCodec {
|
|
13
13
|
interface Context<in out fdm extends Function.Decl.Map.Proto> {
|
|
14
|
-
parallelToolCall: boolean;
|
|
15
14
|
fdm: fdm;
|
|
16
15
|
}
|
|
17
16
|
}
|
|
@@ -3,15 +3,14 @@ import { Function } from '../function.ts';
|
|
|
3
3
|
import { Verbatim } from '../verbatim.ts';
|
|
4
4
|
import { RoleMessage } from './session.ts';
|
|
5
5
|
import type { Engine } from '../engine.ts';
|
|
6
|
-
export declare class
|
|
7
|
-
protected ctx:
|
|
8
|
-
constructor(ctx:
|
|
9
|
-
|
|
6
|
+
export declare class StructuringValidator<in out fdu extends Function.Decl.Proto, in out vdu extends Verbatim.Decl.Proto> implements Engine.StructuringValidator<RoleMessage.User<fdu>, RoleMessage.Ai<fdu, vdu>> {
|
|
7
|
+
protected ctx: StructuringValidator.Context<fdu, vdu>;
|
|
8
|
+
constructor(ctx: StructuringValidator.Context<fdu, vdu>);
|
|
9
|
+
validate(aiMessage: RoleMessage.Ai<fdu, vdu>): RoleMessage.User<fdu> | void;
|
|
10
10
|
validateStructuring(fcs: Function.Call.Of<fdu>[], vrs: Verbatim.Request.Of<vdu>[]): RoleMessage.User<fdu> | void;
|
|
11
|
-
validateMessageParts(message: RoleMessage.Ai<fdu, vdu>): void;
|
|
12
11
|
}
|
|
13
|
-
export declare namespace
|
|
14
|
-
type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> =
|
|
12
|
+
export declare namespace StructuringValidator {
|
|
13
|
+
type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = StructuringValidator<Function.Decl.From<fdm>, Verbatim.Decl.From<vdm>>;
|
|
15
14
|
interface Context<in out fdu extends Function.Decl.Proto, in out vdu extends Verbatim.Decl.Proto> {
|
|
16
15
|
choice: Structuring.Choice<fdu, vdu>;
|
|
17
16
|
}
|
|
@@ -19,3 +18,11 @@ export declare namespace Validator {
|
|
|
19
18
|
type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = Context<Function.Decl.From<fdm>, Verbatim.Decl.From<vdm>>;
|
|
20
19
|
}
|
|
21
20
|
}
|
|
21
|
+
export declare class PartsValidator<in out fdu extends Function.Decl.Proto, in out vdu extends Verbatim.Decl.Proto> implements Engine.PartsValidator<RoleMessage.User<fdu>, RoleMessage.Ai<fdu, vdu>> {
|
|
22
|
+
constructor();
|
|
23
|
+
validateMessageTextParts(parts: RoleMessage.Part.Text<vdu>[]): void;
|
|
24
|
+
validate(message: RoleMessage.Ai<fdu, vdu>): void;
|
|
25
|
+
}
|
|
26
|
+
export declare namespace PartsValidator {
|
|
27
|
+
type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = PartsValidator<Function.Decl.From<fdm>, Verbatim.Decl.From<vdm>>;
|
|
28
|
+
}
|
|
@@ -2,12 +2,13 @@ import { Structuring } from "./structuring.js";
|
|
|
2
2
|
import { RoleMessage } from "./session.js";
|
|
3
3
|
import { ResponseInvalid } from "../engine.js";
|
|
4
4
|
import * as VerbatimCodec from "../verbatim/codec.js";
|
|
5
|
-
|
|
5
|
+
import { isRepeating } from "../repetition.js";
|
|
6
|
+
export class StructuringValidator {
|
|
6
7
|
ctx;
|
|
7
8
|
constructor(ctx) {
|
|
8
9
|
this.ctx = ctx;
|
|
9
10
|
}
|
|
10
|
-
|
|
11
|
+
validate(aiMessage) {
|
|
11
12
|
const fcs = aiMessage.getFunctionCalls();
|
|
12
13
|
const vrs = aiMessage.getVerbatimRequests();
|
|
13
14
|
return this.validateStructuring(fcs, vrs);
|
|
@@ -86,11 +87,19 @@ export class Validator {
|
|
|
86
87
|
]);
|
|
87
88
|
}
|
|
88
89
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
90
|
+
}
|
|
91
|
+
export class PartsValidator {
|
|
92
|
+
constructor() { }
|
|
93
|
+
validateMessageTextParts(parts) {
|
|
94
|
+
for (const part of parts)
|
|
95
|
+
if (isRepeating(part.text, 2, 20))
|
|
96
|
+
throw new ResponseInvalid('Repeating');
|
|
97
|
+
}
|
|
98
|
+
validate(message) {
|
|
99
|
+
if (message.getParts().length) { }
|
|
92
100
|
else
|
|
93
101
|
throw new ResponseInvalid('Empty message.');
|
|
102
|
+
this.validateMessageTextParts(message.getTextParts());
|
|
94
103
|
}
|
|
95
104
|
}
|
|
96
105
|
//# sourceMappingURL=validation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/compatible-engine/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,KAAK,aAAa,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/compatible-engine/validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ import { CompatibleEngine } from '../compatible-engine.ts';
|
|
|
3
3
|
import { OpenAIChatCompletionsToolCodec } from '../api-types/openai-chatcompletions/tool-codec.ts';
|
|
4
4
|
import { MessageCodec } from './openai-chatcompletions/message-codec.ts';
|
|
5
5
|
import { OpenAIChatCompletionsBilling } from '../api-types/openai-chatcompletions/billing.ts';
|
|
6
|
-
import { Validator } from '../compatible-engine/validation.ts';
|
|
7
6
|
import * as TransportModule from './aliyun/transport.ts';
|
|
8
7
|
import type { Verbatim } from '../verbatim.ts';
|
|
9
8
|
import { OpenAIChatCompletionsCompatibleEngine } from './openai-chatcompletions.ts';
|
|
@@ -13,9 +12,7 @@ export declare namespace AliyunCompatibleEngine {
|
|
|
13
12
|
protected toolCodec: OpenAIChatCompletionsToolCodec<fdm>;
|
|
14
13
|
protected messageCodec: MessageCodec<fdm, vdm>;
|
|
15
14
|
protected billing: OpenAIChatCompletionsBilling;
|
|
16
|
-
protected validator: Validator.From<fdm, vdm>;
|
|
17
15
|
protected transport: AliyunCompatibleEngine.Transport<fdm, vdm>;
|
|
18
|
-
protected parallelToolCall: boolean;
|
|
19
16
|
constructor(options: AliyunCompatibleEngine.Options<fdm, vdm>);
|
|
20
17
|
}
|
|
21
18
|
interface Options<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> extends CompatibleEngine.Options<fdm, vdm> {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { OpenAIChatCompletionsToolCodec } from "../api-types/openai-chatcompletions/tool-codec.js";
|
|
2
2
|
import { MessageCodec } from "./openai-chatcompletions/message-codec.js";
|
|
3
3
|
import { OpenAIChatCompletionsBilling } from "../api-types/openai-chatcompletions/billing.js";
|
|
4
|
-
import { Validator } from "../compatible-engine/validation.js";
|
|
5
4
|
import * as TransportModule from "./aliyun/transport.js";
|
|
6
5
|
import { OpenAIChatCompletionsCompatibleEngine } from "./openai-chatcompletions.js";
|
|
7
6
|
export var AliyunCompatibleEngine;
|
|
@@ -10,22 +9,17 @@ export var AliyunCompatibleEngine;
|
|
|
10
9
|
toolCodec;
|
|
11
10
|
messageCodec;
|
|
12
11
|
billing;
|
|
13
|
-
validator;
|
|
14
12
|
transport;
|
|
15
|
-
parallelToolCall;
|
|
16
13
|
constructor(options) {
|
|
17
14
|
super(options);
|
|
18
|
-
this.parallelToolCall = options.parallelToolCall ?? false;
|
|
19
15
|
this.toolCodec = new OpenAIChatCompletionsToolCodec({
|
|
20
16
|
fdm: this.fdm,
|
|
21
|
-
parallelToolCall: this.parallelToolCall,
|
|
22
17
|
});
|
|
23
18
|
this.messageCodec = new MessageCodec({
|
|
24
19
|
toolCodec: this.toolCodec,
|
|
25
20
|
vdm: this.vdm,
|
|
26
21
|
});
|
|
27
22
|
this.billing = new OpenAIChatCompletionsBilling({ pricing: this.pricing });
|
|
28
|
-
this.validator = new Validator({ choice: this.choice });
|
|
29
23
|
this.transport = new AliyunCompatibleEngine.Transport({
|
|
30
24
|
inferenceParams: this.inferenceParams,
|
|
31
25
|
providerSpec: this.providerSpec,
|
|
@@ -35,8 +29,6 @@ export var AliyunCompatibleEngine;
|
|
|
35
29
|
messageCodec: this.messageCodec,
|
|
36
30
|
toolCodec: this.toolCodec,
|
|
37
31
|
billing: this.billing,
|
|
38
|
-
validator: this.validator,
|
|
39
|
-
parallelToolCall: this.parallelToolCall,
|
|
40
32
|
});
|
|
41
33
|
}
|
|
42
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aliyun.js","sourceRoot":"","sources":["../../src/compatible-engine.d/aliyun.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,mDAAmD,CAAC;AACnG,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,
|
|
1
|
+
{"version":3,"file":"aliyun.js","sourceRoot":"","sources":["../../src/compatible-engine.d/aliyun.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,mDAAmD,CAAC;AACnG,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,KAAK,eAAe,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,6BAA6B,CAAC;AAQpF,MAAM,KAAW,sBAAsB,CAuCtC;AAvCD,WAAiB,sBAAsB;IACnC,MAAa,QAGX,SAAQ,qCAAqC,CAAC,QAAkB;QACpD,SAAS,CAAsC;QAC/C,YAAY,CAAyB;QACrC,OAAO,CAA+B;QAC7B,SAAS,CAA6C;QAEzE,YAAmB,OAAiD;YAChE,KAAK,CAAC,OAAO,CAAC,CAAC;YACf,IAAI,CAAC,SAAS,GAAG,IAAI,8BAA8B,CAAC;gBAChD,GAAG,EAAE,IAAI,CAAC,GAAG;aAChB,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC;gBACjC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,EAAE,IAAI,CAAC,GAAG;aAChB,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,GAAG,IAAI,4BAA4B,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAsB,CAAC,SAAS,CAAC;gBAClD,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,OAAO,EAAE,IAAI,CAAC,OAAO;aACxB,CAAC,CAAC;QACP,CAAC;KAEJ;IA/BY,+BAAQ,WA+BpB,CAAA;IAMa,gCAAS,GAAG,eAAe,CAAC,SAAS,CAAC;AACxD,CAAC,EAvCgB,sBAAsB,KAAtB,sBAAsB,QAuCtC"}
|
|
@@ -2,4 +2,4 @@ import { Structuring } from '../../compatible-engine/structuring.ts';
|
|
|
2
2
|
import type { Function } from '../../function.ts';
|
|
3
3
|
import type { Verbatim } from '../../verbatim.ts';
|
|
4
4
|
import Anthropic from '@anthropic-ai/sdk';
|
|
5
|
-
export declare function encode<fdu extends Function.Decl.Proto, vdu extends Verbatim.Decl.Proto>(choice: Structuring.Choice<fdu, vdu>, parallelToolCall
|
|
5
|
+
export declare function encode<fdu extends Function.Decl.Proto, vdu extends Verbatim.Decl.Proto>(choice: Structuring.Choice<fdu, vdu>, parallelToolCall?: boolean): Anthropic.ToolChoice;
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import { Structuring } from "../../compatible-engine/structuring.js";
|
|
2
2
|
export function encode(choice, parallelToolCall) {
|
|
3
|
+
const disable_parallel_tool_use = typeof parallelToolCall === 'boolean' ? !parallelToolCall : undefined;
|
|
3
4
|
if (choice === Structuring.Choice.NONE)
|
|
4
5
|
return { type: 'none' };
|
|
5
6
|
else if (choice === Structuring.Choice.REQUIRED)
|
|
6
|
-
return { type: 'auto', disable_parallel_tool_use
|
|
7
|
+
return { type: 'auto', disable_parallel_tool_use };
|
|
7
8
|
else if (choice === Structuring.Choice.ANYONE)
|
|
8
|
-
return { type: 'auto', disable_parallel_tool_use
|
|
9
|
+
return { type: 'auto', disable_parallel_tool_use };
|
|
9
10
|
else if (choice === Structuring.Choice.AUTO)
|
|
10
|
-
return { type: 'auto', disable_parallel_tool_use
|
|
11
|
+
return { type: 'auto', disable_parallel_tool_use };
|
|
11
12
|
else if (choice === Structuring.Choice.FCall.REQUIRED)
|
|
12
|
-
return { type: 'any', disable_parallel_tool_use
|
|
13
|
+
return { type: 'any', disable_parallel_tool_use };
|
|
13
14
|
else if (choice === Structuring.Choice.FCall.ANYONE)
|
|
14
|
-
return { type: 'any', disable_parallel_tool_use
|
|
15
|
+
return { type: 'any', disable_parallel_tool_use };
|
|
15
16
|
else if (choice instanceof Structuring.Choice.FCall)
|
|
16
|
-
return { type: 'tool', name: choice.name, disable_parallel_tool_use
|
|
17
|
+
return { type: 'tool', name: choice.name, disable_parallel_tool_use };
|
|
17
18
|
else if (choice === Structuring.Choice.VRequest.REQUIRED)
|
|
18
19
|
return { type: 'none' };
|
|
19
20
|
else if (choice === Structuring.Choice.VRequest.ANYONE)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"choice-codec.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/anthropic/choice-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAMrE,MAAM,UAAU,MAAM,CAIlB,MAAoC,EACpC,
|
|
1
|
+
{"version":3,"file":"choice-codec.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/anthropic/choice-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAMrE,MAAM,UAAU,MAAM,CAIlB,MAAoC,EACpC,gBAA0B;IAE1B,MAAM,yBAAyB,GAAwB,OAAO,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;IAE7H,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;SAC3D,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;SAC/F,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;SAC7F,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;SAE3F,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC;SACpG,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC;SAClG,IAAI,MAAM,YAAY,WAAW,CAAC,MAAM,CAAC,KAAK;QAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,yBAAyB,EAAE,CAAC;SAErE,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;SAC7E,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;SAC3E,IAAI,MAAM,YAAY,WAAW,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;QAE3E,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;AACvD,CAAC"}
|
|
@@ -8,7 +8,6 @@ import type { MessageCodec } from './message-codec.ts';
|
|
|
8
8
|
import type { Billing } from '../../api-types/anthropic/billing.ts';
|
|
9
9
|
import type { ToolCodec } from '../../api-types/anthropic/tool-codec.ts';
|
|
10
10
|
import type { Verbatim } from '../../verbatim.ts';
|
|
11
|
-
import { Validator } from '../../compatible-engine/validation.ts';
|
|
12
11
|
import type { Structuring } from '../../compatible-engine/structuring.ts';
|
|
13
12
|
import type { Engine } from '../../engine.ts';
|
|
14
13
|
export declare class Transport<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> implements Engine.Transport<RoleMessage.User.From<fdm>, RoleMessage.Ai.From<fdm, vdm>, RoleMessage.Developer, Session.From<fdm, vdm>> {
|
|
@@ -25,10 +24,8 @@ export declare namespace Transport {
|
|
|
25
24
|
fdm: fdm;
|
|
26
25
|
throttle: Throttle;
|
|
27
26
|
choice: Structuring.Choice.From<fdm, vdm>;
|
|
28
|
-
parallelToolCall: boolean;
|
|
29
27
|
messageCodec: MessageCodec<fdm, vdm>;
|
|
30
28
|
toolCodec: ToolCodec<fdm>;
|
|
31
29
|
billing: Billing;
|
|
32
|
-
validator: Validator.From<fdm, vdm>;
|
|
33
30
|
}
|
|
34
31
|
}
|
|
@@ -10,7 +10,7 @@ export class Transport {
|
|
|
10
10
|
this.client = new Anthropic({
|
|
11
11
|
baseURL: this.ctx.providerSpec.baseUrl,
|
|
12
12
|
apiKey: this.ctx.providerSpec.apiKey,
|
|
13
|
-
fetchOptions: { dispatcher: this.ctx.providerSpec.
|
|
13
|
+
fetchOptions: { dispatcher: this.ctx.providerSpec.dispatcher },
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
16
|
makeParams(session) {
|
|
@@ -21,8 +21,8 @@ export class Transport {
|
|
|
21
21
|
messages: session.chatMessages.map(chatMessage => this.ctx.messageCodec.encodeChatMessage(chatMessage)),
|
|
22
22
|
system: session.developerMessage && this.ctx.messageCodec.encodeDeveloperMessage(session.developerMessage),
|
|
23
23
|
tools: tools.length ? tools : undefined,
|
|
24
|
-
tool_choice: tools.length ? ChoiceCodec.encode(this.ctx.choice, this.ctx.parallelToolCall) : undefined,
|
|
25
|
-
max_tokens:
|
|
24
|
+
tool_choice: tools.length ? ChoiceCodec.encode(this.ctx.choice, this.ctx.inferenceSpec.parallelToolCall) : undefined,
|
|
25
|
+
max_tokens: 64 * 1024,
|
|
26
26
|
...this.ctx.inferenceSpec.additionalOptions,
|
|
27
27
|
};
|
|
28
28
|
}
|
|
@@ -30,15 +30,18 @@ export class Transport {
|
|
|
30
30
|
await this.ctx.throttle.requests(wfctx);
|
|
31
31
|
// Prepare request
|
|
32
32
|
const params = this.makeParams(session);
|
|
33
|
-
loggers.message.
|
|
33
|
+
loggers.message.debug(params);
|
|
34
34
|
// Send request
|
|
35
|
-
const stream = this.client.messages.stream(params, {
|
|
35
|
+
const stream = this.client.messages.stream(params, {
|
|
36
|
+
signal,
|
|
37
|
+
fetchOptions: { dispatcher: this.ctx.providerSpec.dispatcher },
|
|
38
|
+
});
|
|
36
39
|
// Get response
|
|
37
40
|
let response = null;
|
|
38
41
|
try {
|
|
39
42
|
for await (const event of stream) {
|
|
40
43
|
if (event.type === 'message_start') {
|
|
41
|
-
loggers.message.
|
|
44
|
+
loggers.message.debug(event);
|
|
42
45
|
response = structuredClone(event.message);
|
|
43
46
|
}
|
|
44
47
|
else {
|
|
@@ -46,7 +49,7 @@ export class Transport {
|
|
|
46
49
|
else
|
|
47
50
|
throw new Error();
|
|
48
51
|
if (event.type === 'message_delta') {
|
|
49
|
-
loggers.message.
|
|
52
|
+
loggers.message.debug(event);
|
|
50
53
|
response.stop_sequence = event.delta.stop_sequence ?? response.stop_sequence;
|
|
51
54
|
response.stop_reason = event.delta.stop_reason ?? response.stop_reason;
|
|
52
55
|
response.usage.input_tokens = event.usage.input_tokens ?? response.usage.input_tokens;
|
|
@@ -56,10 +59,10 @@ export class Transport {
|
|
|
56
59
|
response.usage.server_tool_use = event.usage.server_tool_use ?? response.usage.server_tool_use;
|
|
57
60
|
}
|
|
58
61
|
else if (event.type === 'message_stop') {
|
|
59
|
-
loggers.message.
|
|
62
|
+
loggers.message.debug(event);
|
|
60
63
|
}
|
|
61
64
|
else if (event.type === 'content_block_start') {
|
|
62
|
-
loggers.message.
|
|
65
|
+
loggers.message.debug(event);
|
|
63
66
|
const contentBlock = structuredClone(event.content_block);
|
|
64
67
|
response.content.push(contentBlock);
|
|
65
68
|
if (contentBlock.type === 'tool_use')
|
|
@@ -100,10 +103,10 @@ export class Transport {
|
|
|
100
103
|
else if (event.type === 'content_block_stop') {
|
|
101
104
|
const contentBlock = response.content[event.index];
|
|
102
105
|
if (contentBlock?.type === 'text')
|
|
103
|
-
loggers.inference.
|
|
106
|
+
loggers.inference.info(contentBlock.text);
|
|
104
107
|
else if (contentBlock?.type === 'thinking')
|
|
105
|
-
loggers.inference.
|
|
106
|
-
loggers.message.
|
|
108
|
+
loggers.inference.debug(contentBlock.thinking);
|
|
109
|
+
loggers.message.debug(event);
|
|
107
110
|
if (contentBlock?.type === 'tool_use') {
|
|
108
111
|
if (typeof contentBlock.input === 'string') { }
|
|
109
112
|
else
|
|
@@ -114,7 +117,7 @@ export class Transport {
|
|
|
114
117
|
catch (e) {
|
|
115
118
|
throw new ResponseInvalid('Invalid JSON of tool use input', { cause: contentBlock.input });
|
|
116
119
|
}
|
|
117
|
-
loggers.message.
|
|
120
|
+
loggers.message.info(contentBlock);
|
|
118
121
|
}
|
|
119
122
|
}
|
|
120
123
|
else
|
|
@@ -137,7 +140,7 @@ export class Transport {
|
|
|
137
140
|
if (response.stop_reason === 'end_turn' || response.stop_reason === 'tool_use') { }
|
|
138
141
|
else
|
|
139
142
|
throw new ResponseInvalid('Abnormal stop reason', { cause: response });
|
|
140
|
-
loggers.message.
|
|
143
|
+
loggers.message.info(response.usage);
|
|
141
144
|
wfctx.cost?.(this.ctx.billing.charge(response.usage));
|
|
142
145
|
return this.ctx.messageCodec.decodeAiMessage(response.content);
|
|
143
146
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/anthropic/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAA2C,MAAM,iBAAiB,CAAC;AAGzG,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAG1C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/anthropic/transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,6 @@ import { CompatibleEngine } from '../compatible-engine.ts';
|
|
|
2
2
|
import { Function } from '../function.ts';
|
|
3
3
|
import { ToolCodec } from '../api-types/anthropic/tool-codec.ts';
|
|
4
4
|
import { Billing } from '../api-types/anthropic/billing.ts';
|
|
5
|
-
import { Validator } from '../compatible-engine/validation.ts';
|
|
6
5
|
import * as MessageCodecModule from './anthropic/message-codec.ts';
|
|
7
6
|
import * as TransportModule from './anthropic/transport.ts';
|
|
8
7
|
import * as ChoiceCodecModule from './anthropic/choice-codec.ts';
|
|
@@ -13,9 +12,7 @@ export declare namespace AnthropicCompatibleEngine {
|
|
|
13
12
|
protected toolCodec: ToolCodec<fdm>;
|
|
14
13
|
protected messageCodec: AnthropicCompatibleEngine.MessageCodec<fdm, vdm>;
|
|
15
14
|
protected billing: Billing;
|
|
16
|
-
protected validator: Validator.From<fdm, vdm>;
|
|
17
15
|
protected transport: AnthropicCompatibleEngine.Transport<fdm, vdm>;
|
|
18
|
-
protected parallelToolCall: boolean;
|
|
19
16
|
constructor(options: AnthropicCompatibleEngine.Options<fdm, vdm>);
|
|
20
17
|
}
|
|
21
18
|
interface Options<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> extends CompatibleEngine.Options<fdm, vdm> {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { CompatibleEngine } from "../compatible-engine.js";
|
|
2
2
|
import { ToolCodec } from "../api-types/anthropic/tool-codec.js";
|
|
3
3
|
import { Billing } from "../api-types/anthropic/billing.js";
|
|
4
|
-
import { Validator } from "../compatible-engine/validation.js";
|
|
5
4
|
import * as MessageCodecModule from "./anthropic/message-codec.js";
|
|
6
5
|
import * as TransportModule from "./anthropic/transport.js";
|
|
7
6
|
import * as ChoiceCodecModule from "./anthropic/choice-codec.js";
|
|
@@ -11,30 +10,24 @@ export var AnthropicCompatibleEngine;
|
|
|
11
10
|
toolCodec;
|
|
12
11
|
messageCodec;
|
|
13
12
|
billing;
|
|
14
|
-
validator;
|
|
15
13
|
transport;
|
|
16
|
-
parallelToolCall;
|
|
17
14
|
constructor(options) {
|
|
18
15
|
super(options);
|
|
19
|
-
this.parallelToolCall = options.parallelToolCall ?? false;
|
|
20
16
|
this.toolCodec = new ToolCodec({ fdm: this.fdm });
|
|
21
17
|
this.messageCodec = new AnthropicCompatibleEngine.MessageCodec({
|
|
22
18
|
toolCodec: this.toolCodec,
|
|
23
19
|
vdm: this.vdm,
|
|
24
20
|
});
|
|
25
21
|
this.billing = new Billing({ pricing: this.pricing });
|
|
26
|
-
this.validator = new Validator({ choice: this.choice });
|
|
27
22
|
this.transport = new AnthropicCompatibleEngine.Transport({
|
|
28
23
|
providerSpec: this.providerSpec,
|
|
29
24
|
inferenceSpec: this.inferenceParams,
|
|
30
25
|
fdm: this.fdm,
|
|
31
26
|
throttle: this.throttle,
|
|
32
27
|
choice: this.choice,
|
|
33
|
-
parallelToolCall: this.parallelToolCall,
|
|
34
28
|
messageCodec: this.messageCodec,
|
|
35
29
|
toolCodec: this.toolCodec,
|
|
36
30
|
billing: this.billing,
|
|
37
|
-
validator: this.validator,
|
|
38
31
|
});
|
|
39
32
|
}
|
|
40
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/compatible-engine.d/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAC5D,OAAO,
|
|
1
|
+
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/compatible-engine.d/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAC5D,OAAO,KAAK,kBAAkB,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,eAAe,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,iBAAiB,MAAM,6BAA6B,CAAC;AASjE,MAAM,KAAW,yBAAyB,CAuCzC;AAvCD,WAAiB,yBAAyB;IACtC,MAAa,QAGX,SAAQ,gBAAgB,CAAC,QAAkB;QAC/B,SAAS,CAAiB;QAC1B,YAAY,CAAmD;QAC/D,OAAO,CAAU;QACjB,SAAS,CAAgD;QAEnE,YAAmB,OAAoD;YACnE,KAAK,CAAC,OAAO,CAAC,CAAC;YACf,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAClD,IAAI,CAAC,YAAY,GAAG,IAAI,yBAAyB,CAAC,YAAY,CAAC;gBAC3D,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,EAAE,IAAI,CAAC,GAAG;aAChB,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,SAAS,GAAG,IAAI,yBAAyB,CAAC,SAAS,CAAC;gBACrD,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,aAAa,EAAE,IAAI,CAAC,eAAe;gBACnC,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,OAAO,EAAE,IAAI,CAAC,OAAO;aACxB,CAAC,CAAC;QACP,CAAC;KACJ;IA5BY,kCAAQ,WA4BpB,CAAA;IAOa,sCAAY,GAAG,kBAAkB,CAAC,YAAY,CAAC;IAC/C,mCAAS,GAAG,eAAe,CAAC,SAAS,CAAC;IACtC,qCAAW,GAAG,iBAAiB,CAAC;AAClD,CAAC,EAvCgB,yBAAyB,KAAzB,yBAAyB,QAuCzC"}
|
|
@@ -7,7 +7,6 @@ import type { MessageCodec } from './message-codec.ts';
|
|
|
7
7
|
import type { ToolCodec } from '../../api-types/google/tool-codec.ts';
|
|
8
8
|
import type { Billing } from '../../api-types/google/billing.ts';
|
|
9
9
|
import type { Verbatim } from '../../verbatim.ts';
|
|
10
|
-
import type { Validator } from '../../compatible-engine/validation.ts';
|
|
11
10
|
import type { Structuring } from '../../compatible-engine/structuring.ts';
|
|
12
11
|
export declare class Transport<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> implements Engine.Transport<RoleMessage.User.From<fdm>, RoleMessage.Ai.From<fdm, vdm>, RoleMessage.Developer, Session.From<fdm, vdm>> {
|
|
13
12
|
protected ctx: Transport.Context<fdm, vdm>;
|
|
@@ -25,6 +24,5 @@ export declare namespace Transport {
|
|
|
25
24
|
messageCodec: MessageCodec<fdm, vdm>;
|
|
26
25
|
toolCodec: ToolCodec<fdm>;
|
|
27
26
|
billing: Billing;
|
|
28
|
-
validator: Validator.From<fdm, vdm>;
|
|
29
27
|
}
|
|
30
28
|
}
|
|
@@ -16,22 +16,21 @@ export class Transport {
|
|
|
16
16
|
// Prepare request body
|
|
17
17
|
const systemInstruction = session.developerMessage && this.ctx.messageCodec.encodeDeveloperMessage(session.developerMessage);
|
|
18
18
|
const contents = this.ctx.messageCodec.encodeChatMessages(session.chatMessages);
|
|
19
|
-
const
|
|
19
|
+
const apiFds = this.ctx.toolCodec.encodeFunctionDeclarationMap(this.ctx.fdm);
|
|
20
|
+
const apiTools = [];
|
|
21
|
+
if (apiFds.length)
|
|
22
|
+
apiTools.push({ functionDeclarations: apiFds });
|
|
23
|
+
const apiToolConfig = {};
|
|
24
|
+
if (apiFds.length)
|
|
25
|
+
apiToolConfig.functionCallingConfig = ChoiceCodec.encode(this.ctx.choice);
|
|
20
26
|
const reqbody = {
|
|
21
27
|
contents,
|
|
22
|
-
tools:
|
|
23
|
-
|
|
24
|
-
}] : undefined,
|
|
25
|
-
toolConfig: tools.length ? {
|
|
26
|
-
functionCallingConfig: ChoiceCodec.encode(this.ctx.choice),
|
|
27
|
-
} : undefined,
|
|
28
|
+
tools: apiTools,
|
|
29
|
+
toolConfig: apiToolConfig,
|
|
28
30
|
systemInstruction,
|
|
29
|
-
generationConfig: this.ctx.inferenceParams.
|
|
30
|
-
maxOutputTokens: this.ctx.inferenceParams.maxTokens ?? undefined,
|
|
31
|
-
...this.ctx.inferenceParams.additionalOptions,
|
|
32
|
-
} : undefined,
|
|
31
|
+
generationConfig: this.ctx.inferenceParams.additionalOptions,
|
|
33
32
|
};
|
|
34
|
-
loggers.message.
|
|
33
|
+
loggers.message.debug(reqbody);
|
|
35
34
|
// Send request
|
|
36
35
|
const res = await Undici.fetch(this.apiURL, {
|
|
37
36
|
method: 'POST',
|
|
@@ -40,7 +39,7 @@ export class Transport {
|
|
|
40
39
|
'x-goog-api-key': this.ctx.providerSpec.apiKey,
|
|
41
40
|
},
|
|
42
41
|
body: JSON.stringify(reqbody),
|
|
43
|
-
dispatcher: this.ctx.providerSpec.
|
|
42
|
+
dispatcher: this.ctx.providerSpec.dispatcher,
|
|
44
43
|
signal,
|
|
45
44
|
}).catch(e => {
|
|
46
45
|
if (e instanceof TypeError)
|
|
@@ -64,7 +63,7 @@ export class Transport {
|
|
|
64
63
|
throw new Error(res.statusText, { cause: res });
|
|
65
64
|
}
|
|
66
65
|
const response = await res.json();
|
|
67
|
-
loggers.message.
|
|
66
|
+
loggers.message.debug(response);
|
|
68
67
|
// Validate response
|
|
69
68
|
if (response.candidates?.[0]?.content?.parts?.length) { }
|
|
70
69
|
else
|
|
@@ -79,9 +78,9 @@ export class Transport {
|
|
|
79
78
|
throw new ResponseInvalid('Usage metadata missing', { cause: response });
|
|
80
79
|
for (const part of response.candidates[0].content.parts) {
|
|
81
80
|
if (part.text)
|
|
82
|
-
loggers.inference.
|
|
81
|
+
loggers.inference.info(part.text);
|
|
83
82
|
if (part.functionCall)
|
|
84
|
-
loggers.message.
|
|
83
|
+
loggers.message.info(part.functionCall);
|
|
85
84
|
}
|
|
86
85
|
wfctx.cost?.(this.ctx.billing.charge(response.usageMetadata));
|
|
87
86
|
return this.ctx.messageCodec.decodeAiMessage(response.candidates[0].content);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/google/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,YAAY,EAAE,eAAe,EAA8D,MAAM,iBAAiB,CAAC;AAGpI,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAIjC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/google/transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ import { Function } from '../function.ts';
|
|
|
3
3
|
import * as MessageCodecModule from './google/message-codec.ts';
|
|
4
4
|
import { ToolCodec } from '../api-types/google/tool-codec.ts';
|
|
5
5
|
import { Billing } from '../api-types/google/billing.ts';
|
|
6
|
-
import { Validator } from '../compatible-engine/validation.ts';
|
|
7
6
|
import * as TransportModule from './google/transport.ts';
|
|
8
7
|
import type { Verbatim } from '../verbatim.ts';
|
|
9
8
|
import * as ChoiceCodecModule from './google/choice-codec.ts';
|
|
@@ -13,9 +12,7 @@ export declare namespace GoogleCompatibleEngine {
|
|
|
13
12
|
protected toolCodec: ToolCodec<fdm>;
|
|
14
13
|
protected messageCodec: GoogleCompatibleEngine.MessageCodec<fdm, vdm>;
|
|
15
14
|
protected billing: Billing;
|
|
16
|
-
protected validator: Validator.From<fdm, vdm>;
|
|
17
15
|
protected transport: GoogleCompatibleEngine.Transport<fdm, vdm>;
|
|
18
|
-
protected parallelToolCall: boolean;
|
|
19
16
|
constructor(options: GoogleCompatibleEngine.Options<fdm, vdm>);
|
|
20
17
|
}
|
|
21
18
|
interface Options<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> extends CompatibleEngine.Options<fdm, vdm> {
|
|
@@ -2,7 +2,6 @@ import { CompatibleEngine } from "../compatible-engine.js";
|
|
|
2
2
|
import * as MessageCodecModule from "./google/message-codec.js";
|
|
3
3
|
import { ToolCodec } from "../api-types/google/tool-codec.js";
|
|
4
4
|
import { Billing } from "../api-types/google/billing.js";
|
|
5
|
-
import { Validator } from "../compatible-engine/validation.js";
|
|
6
5
|
import * as TransportModule from "./google/transport.js";
|
|
7
6
|
import * as ChoiceCodecModule from "./google/choice-codec.js";
|
|
8
7
|
export var GoogleCompatibleEngine;
|
|
@@ -11,14 +10,10 @@ export var GoogleCompatibleEngine;
|
|
|
11
10
|
toolCodec;
|
|
12
11
|
messageCodec;
|
|
13
12
|
billing;
|
|
14
|
-
validator;
|
|
15
13
|
transport;
|
|
16
|
-
parallelToolCall;
|
|
17
14
|
constructor(options) {
|
|
18
15
|
super(options);
|
|
19
|
-
|
|
20
|
-
if (this.parallelToolCall) { }
|
|
21
|
-
else
|
|
16
|
+
if (options.parallelToolCall === false)
|
|
22
17
|
throw new Error('Parallel tool calling is required by Google engine.');
|
|
23
18
|
this.toolCodec = new ToolCodec({
|
|
24
19
|
fdm: this.fdm,
|
|
@@ -28,7 +23,6 @@ export var GoogleCompatibleEngine;
|
|
|
28
23
|
vdm: this.vdm,
|
|
29
24
|
});
|
|
30
25
|
this.billing = new Billing({ pricing: this.pricing });
|
|
31
|
-
this.validator = new Validator({ choice: this.choice });
|
|
32
26
|
this.transport = new GoogleCompatibleEngine.Transport({
|
|
33
27
|
inferenceParams: this.inferenceParams,
|
|
34
28
|
providerSpec: this.providerSpec,
|
|
@@ -38,7 +32,6 @@ export var GoogleCompatibleEngine;
|
|
|
38
32
|
messageCodec: this.messageCodec,
|
|
39
33
|
toolCodec: this.toolCodec,
|
|
40
34
|
billing: this.billing,
|
|
41
|
-
validator: this.validator,
|
|
42
35
|
});
|
|
43
36
|
}
|
|
44
37
|
}
|