@zimtsui/typechat 0.0.97 → 0.0.99
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/DEVELOPMENT.md +3 -8
- package/README.md +5 -177
- package/assets/verbatim/instruction.md +1 -1
- package/assets/verbatim/response.handlebars +1 -1
- package/build/adaptor.d.ts +9 -9
- package/build/adaptor.js +15 -17
- package/build/adaptor.js.map +1 -1
- package/build/endpoint-spec.d.ts +1 -1
- package/build/endpoint-spec.js +1 -1
- package/build/engine/message.d.ts +75 -0
- package/build/engine/message.js +165 -0
- package/build/engine/message.js.map +1 -0
- package/build/engine/middleware.d.ts +11 -0
- package/build/engine/middleware.js +1 -0
- package/build/engine/middleware.js.map +1 -0
- package/build/engine/parts-validator.d.ts +9 -0
- package/build/engine/parts-validator.js +11 -0
- package/build/engine/parts-validator.js.map +1 -0
- package/build/engine/recoverable.d.ts +13 -0
- package/build/engine/recoverable.js +29 -0
- package/build/engine/recoverable.js.map +1 -0
- package/build/engine/session.d.ts +8 -32
- package/build/engine/session.js +0 -19
- package/build/engine/session.js.map +1 -1
- package/build/engine/structuring-validator.d.ts +15 -0
- package/build/engine/structuring-validator.js +64 -0
- package/build/engine/structuring-validator.js.map +1 -0
- package/build/engine/transport.d.ts +6 -3
- package/build/engine.d.ts +40 -39
- package/build/engine.js +100 -64
- package/build/engine.js.map +1 -1
- package/build/engines/anthropic/billing.js.map +1 -0
- package/build/engines/anthropic/message-codec.d.ts +22 -0
- package/build/engines/anthropic/message-codec.js +79 -0
- package/build/engines/anthropic/message-codec.js.map +1 -0
- package/build/engines/anthropic/message.d.ts +22 -0
- package/build/engines/anthropic/message.js +25 -0
- package/build/engines/anthropic/message.js.map +1 -0
- package/build/{compatible-engine.d/anthropic/choice-codec.d.ts → engines/anthropic/structuring-choice-codec.d.ts} +2 -2
- package/build/engines/anthropic/structuring-choice-codec.js +23 -0
- package/build/engines/anthropic/structuring-choice-codec.js.map +1 -0
- package/build/{api-types → engines}/anthropic/tool-codec.d.ts +5 -4
- package/build/{api-types → engines}/anthropic/tool-codec.js +16 -14
- package/build/engines/anthropic/tool-codec.js.map +1 -0
- package/build/engines/anthropic/transport.d.ts +37 -0
- package/build/{compatible-engine.d → engines}/anthropic/transport.js +8 -12
- package/build/engines/anthropic/transport.js.map +1 -0
- package/build/engines/anthropic.d.ts +22 -0
- package/build/engines/anthropic.js +46 -0
- package/build/engines/anthropic.js.map +1 -0
- package/build/engines/google/billing.js.map +1 -0
- package/build/engines/google/message-codec.d.ts +24 -0
- package/build/engines/google/message-codec.js +113 -0
- package/build/engines/google/message-codec.js.map +1 -0
- package/build/engines/google/message.d.ts +37 -0
- package/build/engines/google/message.js +58 -0
- package/build/engines/google/message.js.map +1 -0
- package/build/engines/google/restful-request.js.map +1 -0
- package/build/{compatible-engine.d/google/choice-codec.d.ts → engines/google/structuring-choice-codec.d.ts} +2 -2
- package/build/engines/google/structuring-choice-codec.js +23 -0
- package/build/engines/google/structuring-choice-codec.js.map +1 -0
- package/build/{api-types → engines}/google/tool-codec.d.ts +5 -4
- package/build/{api-types → engines}/google/tool-codec.js +15 -13
- package/build/engines/google/tool-codec.js.map +1 -0
- package/build/{native-engines.d → engines}/google/transport.d.ts +13 -14
- package/build/{native-engines.d → engines}/google/transport.js +18 -13
- package/build/engines/google/transport.js.map +1 -0
- package/build/engines/google.d.ts +41 -0
- package/build/engines/google.js +151 -0
- package/build/engines/google.js.map +1 -0
- package/build/engines/openai-chatcompletions/billing.js.map +1 -0
- package/build/engines/openai-chatcompletions/message-codec.d.ts +22 -0
- package/build/engines/openai-chatcompletions/message-codec.js +80 -0
- package/build/engines/openai-chatcompletions/message-codec.js.map +1 -0
- package/build/{compatible-engine.d/openai-chatcompletions/choice-codec.d.ts → engines/openai-chatcompletions/structuring-choice-codec.d.ts} +2 -2
- package/build/engines/openai-chatcompletions/structuring-choice-codec.js +22 -0
- package/build/engines/openai-chatcompletions/structuring-choice-codec.js.map +1 -0
- package/build/engines/openai-chatcompletions/tool-codec.d.ts +17 -0
- package/build/{api-types → engines}/openai-chatcompletions/tool-codec.js +19 -17
- package/build/engines/openai-chatcompletions/tool-codec.js.map +1 -0
- package/build/{compatible-engine.d → engines}/openai-chatcompletions/transport.d.ts +13 -15
- package/build/{compatible-engine.d → engines}/openai-chatcompletions/transport.js +8 -18
- package/build/engines/openai-chatcompletions/transport.js.map +1 -0
- package/build/engines/openai-chatcompletions.d.ts +22 -0
- package/build/engines/openai-chatcompletions.js +48 -0
- package/build/engines/openai-chatcompletions.js.map +1 -0
- package/build/engines/openai-responses/billing.js.map +1 -0
- package/build/engines/openai-responses/message-codec.d.ts +24 -0
- package/build/{compatible-engine.d → engines}/openai-responses/message-codec.js +55 -51
- package/build/engines/openai-responses/message-codec.js.map +1 -0
- package/build/engines/openai-responses/message.d.ts +25 -0
- package/build/engines/openai-responses/message.js +43 -0
- package/build/engines/openai-responses/message.js.map +1 -0
- package/build/engines/openai-responses/structuring-choice-codec.d.ts +3 -0
- package/build/engines/openai-responses/structuring-choice-codec.js +22 -0
- package/build/engines/openai-responses/structuring-choice-codec.js.map +1 -0
- package/build/engines/openai-responses/structuring-validator.d.ts +12 -0
- package/build/engines/openai-responses/structuring-validator.js +64 -0
- package/build/engines/openai-responses/structuring-validator.js.map +1 -0
- package/build/engines/openai-responses/tool-codec.d.ts +17 -0
- package/build/{api-types → engines}/openai-responses/tool-codec.js +19 -17
- package/build/engines/openai-responses/tool-codec.js.map +1 -0
- package/build/{native-engines.d → engines}/openai-responses/tool.d.ts +1 -3
- package/build/{native-engines.d → engines}/openai-responses/tool.js +3 -3
- package/build/engines/openai-responses/tool.js.map +1 -0
- package/build/{compatible-engine.d → engines}/openai-responses/transport.d.ts +16 -12
- package/build/{native-engines.d → engines}/openai-responses/transport.js +11 -9
- package/build/engines/openai-responses/transport.js.map +1 -0
- package/build/engines/openai-responses.d.ts +41 -0
- package/build/engines/openai-responses.js +134 -0
- package/build/engines/openai-responses.js.map +1 -0
- package/build/exports.d.ts +5 -5
- package/build/exports.js +5 -5
- package/build/exports.js.map +1 -1
- package/build/function.d.ts +7 -7
- package/build/function.js +19 -19
- package/build/function.js.map +1 -1
- package/build/repetition.d.ts +2 -2
- package/build/repetition.js +21 -20
- package/build/repetition.js.map +1 -1
- package/build/structuring-choice.d.ts +15 -0
- package/build/structuring-choice.js +18 -0
- package/build/structuring-choice.js.map +1 -0
- package/build/tsconfig.tsbuildinfo +1 -1
- package/build/verbatim/codec/declarations.js +0 -2
- package/build/verbatim/codec/declarations.js.map +1 -1
- package/build/verbatim/codec/quotation.js +0 -3
- package/build/verbatim/codec/quotation.js.map +1 -1
- package/build/verbatim/codec/request.js +4 -4
- package/build/verbatim/codec/request.js.map +1 -1
- package/build/verbatim/codec/response.js +0 -3
- package/build/verbatim/codec/response.js.map +1 -1
- package/package.json +2 -4
- package/build/api-types/anthropic/billing.js.map +0 -1
- package/build/api-types/anthropic/tool-codec.js.map +0 -1
- package/build/api-types/google/billing.js.map +0 -1
- package/build/api-types/google/restful-request.js.map +0 -1
- package/build/api-types/google/tool-codec.js.map +0 -1
- package/build/api-types/openai-chatcompletions/billing.js.map +0 -1
- package/build/api-types/openai-chatcompletions/tool-codec.d.ts +0 -16
- package/build/api-types/openai-chatcompletions/tool-codec.js.map +0 -1
- package/build/api-types/openai-responses/billing.js.map +0 -1
- package/build/api-types/openai-responses/tool-codec.d.ts +0 -16
- package/build/api-types/openai-responses/tool-codec.js.map +0 -1
- package/build/compatible-engine/session.d.ts +0 -56
- package/build/compatible-engine/session.js +0 -85
- package/build/compatible-engine/session.js.map +0 -1
- package/build/compatible-engine/structuring.d.ts +0 -36
- package/build/compatible-engine/structuring.js +0 -34
- package/build/compatible-engine/structuring.js.map +0 -1
- package/build/compatible-engine/validation.d.ts +0 -28
- package/build/compatible-engine/validation.js +0 -104
- package/build/compatible-engine/validation.js.map +0 -1
- package/build/compatible-engine.d/agentloop.d.ts +0 -12
- package/build/compatible-engine.d/agentloop.js +0 -52
- package/build/compatible-engine.d/agentloop.js.map +0 -1
- package/build/compatible-engine.d/anthropic/choice-codec.js +0 -27
- package/build/compatible-engine.d/anthropic/choice-codec.js.map +0 -1
- package/build/compatible-engine.d/anthropic/message-codec.d.ts +0 -34
- package/build/compatible-engine.d/anthropic/message-codec.js +0 -85
- package/build/compatible-engine.d/anthropic/message-codec.js.map +0 -1
- package/build/compatible-engine.d/anthropic/transport.d.ts +0 -38
- package/build/compatible-engine.d/anthropic/transport.js.map +0 -1
- package/build/compatible-engine.d/anthropic.d.ts +0 -25
- package/build/compatible-engine.d/anthropic.js +0 -47
- package/build/compatible-engine.d/anthropic.js.map +0 -1
- package/build/compatible-engine.d/google/choice-codec.js +0 -27
- package/build/compatible-engine.d/google/choice-codec.js.map +0 -1
- package/build/compatible-engine.d/google/message-codec.d.ts +0 -34
- package/build/compatible-engine.d/google/message-codec.js +0 -95
- package/build/compatible-engine.d/google/message-codec.js.map +0 -1
- package/build/compatible-engine.d/google/transport.d.ts +0 -35
- package/build/compatible-engine.d/google/transport.js +0 -97
- package/build/compatible-engine.d/google/transport.js.map +0 -1
- package/build/compatible-engine.d/google.d.ts +0 -25
- package/build/compatible-engine.d/google.js +0 -64
- package/build/compatible-engine.d/google.js.map +0 -1
- package/build/compatible-engine.d/openai-chatcompletions/choice-codec.js +0 -31
- package/build/compatible-engine.d/openai-chatcompletions/choice-codec.js.map +0 -1
- package/build/compatible-engine.d/openai-chatcompletions/message-codec.d.ts +0 -22
- package/build/compatible-engine.d/openai-chatcompletions/message-codec.js +0 -68
- package/build/compatible-engine.d/openai-chatcompletions/message-codec.js.map +0 -1
- package/build/compatible-engine.d/openai-chatcompletions/transport.js.map +0 -1
- package/build/compatible-engine.d/openai-chatcompletions.d.ts +0 -25
- package/build/compatible-engine.d/openai-chatcompletions.js +0 -49
- package/build/compatible-engine.d/openai-chatcompletions.js.map +0 -1
- package/build/compatible-engine.d/openai-responses/choice-codec.d.ts +0 -5
- package/build/compatible-engine.d/openai-responses/choice-codec.js +0 -30
- package/build/compatible-engine.d/openai-responses/choice-codec.js.map +0 -1
- package/build/compatible-engine.d/openai-responses/message-codec.d.ts +0 -36
- package/build/compatible-engine.d/openai-responses/message-codec.js.map +0 -1
- package/build/compatible-engine.d/openai-responses/transport.js +0 -91
- package/build/compatible-engine.d/openai-responses/transport.js.map +0 -1
- package/build/compatible-engine.d/openai-responses.d.ts +0 -25
- package/build/compatible-engine.d/openai-responses.js +0 -47
- package/build/compatible-engine.d/openai-responses.js.map +0 -1
- package/build/compatible-engine.d.ts +0 -26
- package/build/compatible-engine.js +0 -34
- package/build/compatible-engine.js.map +0 -1
- package/build/engine/validation.d.ts +0 -6
- package/build/engine/validation.js +0 -1
- package/build/engine/validation.js.map +0 -1
- package/build/native-engines.d/google/message-codec.d.ts +0 -26
- package/build/native-engines.d/google/message-codec.js +0 -70
- package/build/native-engines.d/google/message-codec.js.map +0 -1
- package/build/native-engines.d/google/session.d.ts +0 -58
- package/build/native-engines.d/google/session.js +0 -101
- package/build/native-engines.d/google/session.js.map +0 -1
- package/build/native-engines.d/google/transport.js.map +0 -1
- package/build/native-engines.d/google/validation.d.ts +0 -28
- package/build/native-engines.d/google/validation.js +0 -26
- package/build/native-engines.d/google/validation.js.map +0 -1
- package/build/native-engines.d/google.d/agentloop.d.ts +0 -12
- package/build/native-engines.d/google.d/agentloop.js +0 -57
- package/build/native-engines.d/google.d/agentloop.js.map +0 -1
- package/build/native-engines.d/google.d/exports.d.ts +0 -2
- package/build/native-engines.d/google.d/exports.js +0 -3
- package/build/native-engines.d/google.d/exports.js.map +0 -1
- package/build/native-engines.d/google.d.ts +0 -43
- package/build/native-engines.d/google.js +0 -100
- package/build/native-engines.d/google.js.map +0 -1
- package/build/native-engines.d/openai-responses/choice-codec.d.ts +0 -5
- package/build/native-engines.d/openai-responses/choice-codec.js +0 -30
- package/build/native-engines.d/openai-responses/choice-codec.js.map +0 -1
- package/build/native-engines.d/openai-responses/message-codec.d.ts +0 -25
- package/build/native-engines.d/openai-responses/message-codec.js +0 -99
- package/build/native-engines.d/openai-responses/message-codec.js.map +0 -1
- package/build/native-engines.d/openai-responses/session.d.ts +0 -61
- package/build/native-engines.d/openai-responses/session.js +0 -86
- package/build/native-engines.d/openai-responses/session.js.map +0 -1
- package/build/native-engines.d/openai-responses/structuring.d.ts +0 -19
- package/build/native-engines.d/openai-responses/structuring.js +0 -19
- package/build/native-engines.d/openai-responses/structuring.js.map +0 -1
- package/build/native-engines.d/openai-responses/tool.js.map +0 -1
- package/build/native-engines.d/openai-responses/transport.d.ts +0 -40
- package/build/native-engines.d/openai-responses/transport.js.map +0 -1
- package/build/native-engines.d/openai-responses/validation.d.ts +0 -28
- package/build/native-engines.d/openai-responses/validation.js +0 -101
- package/build/native-engines.d/openai-responses/validation.js.map +0 -1
- package/build/native-engines.d/openai-responses.d/agentloop.d.ts +0 -12
- package/build/native-engines.d/openai-responses.d/agentloop.js +0 -61
- package/build/native-engines.d/openai-responses.d/agentloop.js.map +0 -1
- package/build/native-engines.d/openai-responses.d/exports.d.ts +0 -2
- package/build/native-engines.d/openai-responses.d/exports.js +0 -3
- package/build/native-engines.d/openai-responses.d/exports.js.map +0 -1
- package/build/native-engines.d/openai-responses.d.ts +0 -45
- package/build/native-engines.d/openai-responses.js +0 -82
- package/build/native-engines.d/openai-responses.js.map +0 -1
- /package/build/{api-types → engines}/anthropic/billing.d.ts +0 -0
- /package/build/{api-types → engines}/anthropic/billing.js +0 -0
- /package/build/{api-types → engines}/google/billing.d.ts +0 -0
- /package/build/{api-types → engines}/google/billing.js +0 -0
- /package/build/{api-types → engines}/google/restful-request.d.ts +0 -0
- /package/build/{api-types → engines}/google/restful-request.js +0 -0
- /package/build/{api-types → engines}/openai-chatcompletions/billing.d.ts +0 -0
- /package/build/{api-types → engines}/openai-chatcompletions/billing.js +0 -0
- /package/build/{api-types → engines}/openai-responses/billing.d.ts +0 -0
- /package/build/{api-types → engines}/openai-responses/billing.js +0 -0
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import * as Google from '@google/genai';
|
|
2
|
-
import * as Undici from 'undici';
|
|
3
|
-
import { loggers } from "../../telemetry.js";
|
|
4
|
-
import * as ChoiceCodec from "./choice-codec.js";
|
|
5
|
-
import { MIMEType } from 'whatwg-mimetype';
|
|
6
|
-
export class Transport {
|
|
7
|
-
apiURL;
|
|
8
|
-
inferenceParams;
|
|
9
|
-
providerSpec;
|
|
10
|
-
fdm;
|
|
11
|
-
throttle;
|
|
12
|
-
structuringChoice;
|
|
13
|
-
messageCodec;
|
|
14
|
-
toolCodec;
|
|
15
|
-
billing;
|
|
16
|
-
constructor(options) {
|
|
17
|
-
this.apiURL = new URL(`${options.providerSpec.baseUrl}/v1beta/models/${options.inferenceParams.model}:generateContent`);
|
|
18
|
-
this.inferenceParams = options.inferenceParams;
|
|
19
|
-
this.providerSpec = options.providerSpec;
|
|
20
|
-
this.fdm = options.fdm;
|
|
21
|
-
this.throttle = options.throttle;
|
|
22
|
-
this.structuringChoice = options.choice;
|
|
23
|
-
this.messageCodec = options.messageCodec;
|
|
24
|
-
this.toolCodec = options.toolCodec;
|
|
25
|
-
this.billing = options.billing;
|
|
26
|
-
}
|
|
27
|
-
async fetch(wfctx, session, signal) {
|
|
28
|
-
await this.throttle.requests(wfctx);
|
|
29
|
-
// Prepare request body
|
|
30
|
-
const systemInstruction = session.developerMessage && this.messageCodec.encodeDeveloperMessage(session.developerMessage);
|
|
31
|
-
const contents = this.messageCodec.encodeChatMessages(session.chatMessages);
|
|
32
|
-
const apiFds = this.toolCodec.encodeFunctionDeclarationMap(this.fdm);
|
|
33
|
-
const apiTools = [];
|
|
34
|
-
if (apiFds.length)
|
|
35
|
-
apiTools.push({ functionDeclarations: apiFds });
|
|
36
|
-
const apiToolConfig = {};
|
|
37
|
-
if (apiFds.length)
|
|
38
|
-
apiToolConfig.functionCallingConfig = ChoiceCodec.encode(this.structuringChoice);
|
|
39
|
-
const reqbody = {
|
|
40
|
-
contents,
|
|
41
|
-
tools: apiTools,
|
|
42
|
-
toolConfig: apiToolConfig,
|
|
43
|
-
systemInstruction,
|
|
44
|
-
generationConfig: this.inferenceParams.additionalOptions,
|
|
45
|
-
};
|
|
46
|
-
loggers.message.debug(reqbody);
|
|
47
|
-
// Send request
|
|
48
|
-
const res = await Undici.fetch(this.apiURL, {
|
|
49
|
-
method: 'POST',
|
|
50
|
-
headers: {
|
|
51
|
-
'Content-Type': 'application/json',
|
|
52
|
-
'x-goog-api-key': this.providerSpec.apiKey,
|
|
53
|
-
},
|
|
54
|
-
body: JSON.stringify(reqbody),
|
|
55
|
-
dispatcher: this.providerSpec.dispatcher,
|
|
56
|
-
signal,
|
|
57
|
-
});
|
|
58
|
-
// Get response
|
|
59
|
-
if (res.ok) { }
|
|
60
|
-
else {
|
|
61
|
-
const contentType = res.headers.get('Content-Type');
|
|
62
|
-
if (contentType) { }
|
|
63
|
-
else
|
|
64
|
-
throw new Error(res.statusText, { cause: res });
|
|
65
|
-
const mimeType = new MIMEType(contentType);
|
|
66
|
-
if (mimeType.essence === 'application/json')
|
|
67
|
-
throw new Error(res.statusText, { cause: await res.json() });
|
|
68
|
-
else if (mimeType.type === 'text')
|
|
69
|
-
throw new Error(res.statusText, { cause: await res.text() });
|
|
70
|
-
else
|
|
71
|
-
throw new Error(res.statusText, { cause: res });
|
|
72
|
-
}
|
|
73
|
-
const response = await res.json();
|
|
74
|
-
loggers.message.debug(response);
|
|
75
|
-
// Validate response
|
|
76
|
-
if (response.candidates?.[0]?.content?.parts?.length) { }
|
|
77
|
-
else
|
|
78
|
-
throw new SyntaxError('Content missing', { cause: response });
|
|
79
|
-
if (response.candidates[0].finishReason === Google.FinishReason.MAX_TOKENS)
|
|
80
|
-
throw new SyntaxError('Token limit exceeded.', { cause: response });
|
|
81
|
-
if (response.candidates[0].finishReason === Google.FinishReason.STOP) { }
|
|
82
|
-
else
|
|
83
|
-
throw new SyntaxError('Abnormal finish reason', { cause: response });
|
|
84
|
-
if (response.usageMetadata) { }
|
|
85
|
-
else
|
|
86
|
-
throw new SyntaxError('Usage metadata missing', { cause: response });
|
|
87
|
-
for (const part of response.candidates[0].content.parts) {
|
|
88
|
-
if (part.text)
|
|
89
|
-
loggers.inference.info(part.text);
|
|
90
|
-
if (part.functionCall)
|
|
91
|
-
loggers.message.info(part.functionCall);
|
|
92
|
-
}
|
|
93
|
-
wfctx.cost?.(this.billing.charge(response.usageMetadata));
|
|
94
|
-
return this.messageCodec.decodeAiMessage(response.candidates[0].content);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
//# sourceMappingURL=transport.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/google/transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { CompatibleEngine } from '../compatible-engine.ts';
|
|
2
|
-
import { Function } from '../function.ts';
|
|
3
|
-
import * as MessageCodecModule from './google/message-codec.ts';
|
|
4
|
-
import { ToolCodec } from '../api-types/google/tool-codec.ts';
|
|
5
|
-
import { Billing } from '../api-types/google/billing.ts';
|
|
6
|
-
import * as TransportModule from './google/transport.ts';
|
|
7
|
-
import type { Verbatim } from '../verbatim.ts';
|
|
8
|
-
import * as ChoiceCodecModule from './google/choice-codec.ts';
|
|
9
|
-
export type GoogleCompatibleEngine<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = GoogleCompatibleEngine.Instance<fdm, vdm>;
|
|
10
|
-
export declare namespace GoogleCompatibleEngine {
|
|
11
|
-
class Instance<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> extends CompatibleEngine.Instance<fdm, vdm> {
|
|
12
|
-
protected options: GoogleCompatibleEngine.Options<fdm, vdm>;
|
|
13
|
-
protected toolCodec: ToolCodec<fdm>;
|
|
14
|
-
protected messageCodec: GoogleCompatibleEngine.MessageCodec<fdm, vdm>;
|
|
15
|
-
protected billing: Billing;
|
|
16
|
-
protected transport: GoogleCompatibleEngine.Transport<fdm, vdm>;
|
|
17
|
-
constructor(options: GoogleCompatibleEngine.Options<fdm, vdm>);
|
|
18
|
-
clone(): GoogleCompatibleEngine<fdm, vdm>;
|
|
19
|
-
}
|
|
20
|
-
interface Options<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> extends CompatibleEngine.Options<fdm, vdm> {
|
|
21
|
-
}
|
|
22
|
-
export import Transport = TransportModule.Transport;
|
|
23
|
-
export import MessageCodec = MessageCodecModule.MessageCodec;
|
|
24
|
-
export import ChoiceCodec = ChoiceCodecModule;
|
|
25
|
-
}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { CompatibleEngine } from "../compatible-engine.js";
|
|
2
|
-
import * as MessageCodecModule from "./google/message-codec.js";
|
|
3
|
-
import { ToolCodec } from "../api-types/google/tool-codec.js";
|
|
4
|
-
import { Billing } from "../api-types/google/billing.js";
|
|
5
|
-
import * as TransportModule from "./google/transport.js";
|
|
6
|
-
import * as ChoiceCodecModule from "./google/choice-codec.js";
|
|
7
|
-
import { env } from 'node:process';
|
|
8
|
-
import { Agent, ProxyAgent } from 'undici';
|
|
9
|
-
export var GoogleCompatibleEngine;
|
|
10
|
-
(function (GoogleCompatibleEngine) {
|
|
11
|
-
class Instance extends CompatibleEngine.Instance {
|
|
12
|
-
options;
|
|
13
|
-
toolCodec;
|
|
14
|
-
messageCodec;
|
|
15
|
-
billing;
|
|
16
|
-
transport;
|
|
17
|
-
constructor(options) {
|
|
18
|
-
super(options);
|
|
19
|
-
this.options = options;
|
|
20
|
-
const proxyUrl = options.endpointSpec.proxy || env.https_proxy || env.HTTPS_PROXY;
|
|
21
|
-
this.providerSpec.dispatcher = proxyUrl
|
|
22
|
-
? new ProxyAgent({
|
|
23
|
-
uri: proxyUrl,
|
|
24
|
-
headersTimeout: 0,
|
|
25
|
-
bodyTimeout: 0,
|
|
26
|
-
})
|
|
27
|
-
: new Agent({
|
|
28
|
-
headersTimeout: 0,
|
|
29
|
-
bodyTimeout: 0,
|
|
30
|
-
});
|
|
31
|
-
if (options.endpointSpec.parallelToolCall === false)
|
|
32
|
-
throw new Error('Parallel tool calling is required by Google engine.');
|
|
33
|
-
this.toolCodec = new ToolCodec({
|
|
34
|
-
fdm: this.fdm,
|
|
35
|
-
});
|
|
36
|
-
this.messageCodec = new GoogleCompatibleEngine.MessageCodec({
|
|
37
|
-
toolCodec: this.toolCodec,
|
|
38
|
-
vdm: this.vdm,
|
|
39
|
-
});
|
|
40
|
-
this.billing = new Billing({ pricing: this.pricing });
|
|
41
|
-
this.transport = new GoogleCompatibleEngine.Transport({
|
|
42
|
-
inferenceParams: this.inferenceParams,
|
|
43
|
-
providerSpec: this.providerSpec,
|
|
44
|
-
fdm: this.fdm,
|
|
45
|
-
throttle: this.throttle,
|
|
46
|
-
choice: this.structuringChoice,
|
|
47
|
-
messageCodec: this.messageCodec,
|
|
48
|
-
toolCodec: this.toolCodec,
|
|
49
|
-
billing: this.billing,
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
clone() {
|
|
53
|
-
const engine = new GoogleCompatibleEngine.Instance(this.options);
|
|
54
|
-
engine.middlewares = [...this.middlewares];
|
|
55
|
-
engine.statefulMiddlewares = [...this.statefulMiddlewares];
|
|
56
|
-
return engine;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
GoogleCompatibleEngine.Instance = Instance;
|
|
60
|
-
GoogleCompatibleEngine.Transport = TransportModule.Transport;
|
|
61
|
-
GoogleCompatibleEngine.MessageCodec = MessageCodecModule.MessageCodec;
|
|
62
|
-
GoogleCompatibleEngine.ChoiceCodec = ChoiceCodecModule;
|
|
63
|
-
})(GoogleCompatibleEngine || (GoogleCompatibleEngine = {}));
|
|
64
|
-
//# sourceMappingURL=google.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"google.js","sourceRoot":"","sources":["../../src/compatible-engine.d/google.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { Structuring } from "../../compatible-engine/structuring.js";
|
|
2
|
-
export function encode(choice) {
|
|
3
|
-
if (choice === Structuring.Choice.NONE)
|
|
4
|
-
return 'none';
|
|
5
|
-
else if (choice === Structuring.Choice.REQUIRED)
|
|
6
|
-
return 'auto';
|
|
7
|
-
else if (choice === Structuring.Choice.ANYONE)
|
|
8
|
-
return 'auto';
|
|
9
|
-
else if (choice === Structuring.Choice.AUTO)
|
|
10
|
-
return 'auto';
|
|
11
|
-
else if (choice === Structuring.Choice.FCall.REQUIRED)
|
|
12
|
-
return 'required';
|
|
13
|
-
else if (choice === Structuring.Choice.FCall.ANYONE)
|
|
14
|
-
return 'required';
|
|
15
|
-
else if (choice instanceof Structuring.Choice.FCall)
|
|
16
|
-
return {
|
|
17
|
-
type: 'function',
|
|
18
|
-
function: {
|
|
19
|
-
name: choice.name,
|
|
20
|
-
},
|
|
21
|
-
};
|
|
22
|
-
else if (choice === Structuring.Choice.VRequest.REQUIRED)
|
|
23
|
-
return 'none';
|
|
24
|
-
else if (choice === Structuring.Choice.VRequest.ANYONE)
|
|
25
|
-
return 'none';
|
|
26
|
-
else if (choice instanceof Structuring.Choice.VRequest)
|
|
27
|
-
return 'none';
|
|
28
|
-
else
|
|
29
|
-
throw new Error();
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=choice-codec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"choice-codec.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/openai-chatcompletions/choice-codec.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAGrE,MAAM,UAAU,MAAM,CAIlB,MAAoC;IAGpC,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC;SACjD,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC;SAC1D,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;SACxD,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC;SAEtD,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;SACpE,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,UAAU,CAAC;SAClE,IAAI,MAAM,YAAY,WAAW,CAAC,MAAM,CAAC,KAAK;QAC/C,OAAO;YACH,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACN,IAAI,EAAE,MAAM,CAAC,IAAI;aACpB;SACJ,CAAC;SAED,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC;SACnE,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;SACjE,IAAI,MAAM,YAAY,WAAW,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC;;QAEjE,MAAM,IAAI,KAAK,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { RoleMessage, type Session } from '../../compatible-engine/session.ts';
|
|
2
|
-
import { Function } from '../../function.ts';
|
|
3
|
-
import OpenAI from 'openai';
|
|
4
|
-
import type { ToolCodec } from '../../api-types/openai-chatcompletions/tool-codec.ts';
|
|
5
|
-
import type { Verbatim } from '../../verbatim.ts';
|
|
6
|
-
export declare class MessageCodec<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> {
|
|
7
|
-
protected toolCodec: ToolCodec<fdm>;
|
|
8
|
-
protected vdm: vdm;
|
|
9
|
-
constructor(options: MessageCodec.Options<fdm, vdm>);
|
|
10
|
-
decodeAiMessage(message: OpenAI.ChatCompletionMessage): RoleMessage.Ai.From<fdm, vdm>;
|
|
11
|
-
encodeDeveloperMessage(developerMessage: RoleMessage.Developer): OpenAI.ChatCompletionSystemMessageParam;
|
|
12
|
-
encodeUserMessage(userMessage: RoleMessage.User.From<fdm>): [OpenAI.ChatCompletionUserMessageParam] | OpenAI.ChatCompletionToolMessageParam[];
|
|
13
|
-
encodeAiMessage(aiMessage: RoleMessage.Ai.From<fdm, vdm>): OpenAI.ChatCompletionAssistantMessageParam;
|
|
14
|
-
encodeRoleMessage(roleMessage: Session.ChatMessage.From<fdm, vdm> | RoleMessage.Developer): OpenAI.ChatCompletionMessageParam[];
|
|
15
|
-
encodeRoleMessages(chatMessages: (Session.ChatMessage.From<fdm, vdm> | RoleMessage.Developer)[]): OpenAI.ChatCompletionMessageParam[];
|
|
16
|
-
}
|
|
17
|
-
export declare namespace MessageCodec {
|
|
18
|
-
interface Options<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> {
|
|
19
|
-
toolCodec: ToolCodec<fdm>;
|
|
20
|
-
vdm: vdm;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { RoleMessage } from "../../compatible-engine/session.js";
|
|
2
|
-
import { Function } from "../../function.js";
|
|
3
|
-
import * as VerbatimCodec from "../../verbatim/codec.js";
|
|
4
|
-
export class MessageCodec {
|
|
5
|
-
toolCodec;
|
|
6
|
-
vdm;
|
|
7
|
-
constructor(options) {
|
|
8
|
-
this.toolCodec = options.toolCodec;
|
|
9
|
-
this.vdm = options.vdm;
|
|
10
|
-
}
|
|
11
|
-
decodeAiMessage(message) {
|
|
12
|
-
const parts = [];
|
|
13
|
-
if (message.content) {
|
|
14
|
-
const vrs = VerbatimCodec.Request.decode(message.content, this.vdm);
|
|
15
|
-
parts.push(new RoleMessage.Part.Text(message.content, vrs));
|
|
16
|
-
}
|
|
17
|
-
if (message.tool_calls)
|
|
18
|
-
for (const apifc of message.tool_calls)
|
|
19
|
-
if (apifc.type === 'function')
|
|
20
|
-
parts.push(this.toolCodec.decodeFunctionCall(apifc));
|
|
21
|
-
else
|
|
22
|
-
throw new Error();
|
|
23
|
-
if (parts.length)
|
|
24
|
-
return new RoleMessage.Ai(parts);
|
|
25
|
-
else
|
|
26
|
-
throw new SyntaxError('Content or tool calls not found in Response', { cause: message });
|
|
27
|
-
}
|
|
28
|
-
encodeDeveloperMessage(developerMessage) {
|
|
29
|
-
return {
|
|
30
|
-
role: 'system',
|
|
31
|
-
content: developerMessage.getText(),
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
encodeUserMessage(userMessage) {
|
|
35
|
-
const textParts = userMessage.getParts().filter(part => part instanceof RoleMessage.Part.Text);
|
|
36
|
-
const frs = userMessage.getFunctionResponses();
|
|
37
|
-
if (textParts.length && !frs.length)
|
|
38
|
-
return [{ role: 'user', content: textParts.map(part => ({ type: 'text', text: part.text })) }];
|
|
39
|
-
else if (!textParts.length && frs.length)
|
|
40
|
-
return frs.map(fr => this.toolCodec.encodeFunctionResponse(fr));
|
|
41
|
-
else
|
|
42
|
-
throw new Error('Unsupported user message type.');
|
|
43
|
-
}
|
|
44
|
-
encodeAiMessage(aiMessage) {
|
|
45
|
-
const parts = aiMessage.getParts();
|
|
46
|
-
const textParts = parts.filter(part => part instanceof RoleMessage.Part.Text);
|
|
47
|
-
const fcParts = parts.filter(part => part instanceof Function.Call);
|
|
48
|
-
return {
|
|
49
|
-
role: 'assistant',
|
|
50
|
-
content: textParts.length ? textParts.map(part => part.text).join('') : undefined,
|
|
51
|
-
tool_calls: fcParts.length ? fcParts.map(fc => this.toolCodec.encodeFunctionCall(fc)) : undefined,
|
|
52
|
-
};
|
|
53
|
-
}
|
|
54
|
-
encodeRoleMessage(roleMessage) {
|
|
55
|
-
if (roleMessage instanceof RoleMessage.Developer)
|
|
56
|
-
return [this.encodeDeveloperMessage(roleMessage)];
|
|
57
|
-
else if (roleMessage instanceof RoleMessage.User)
|
|
58
|
-
return this.encodeUserMessage(roleMessage);
|
|
59
|
-
else if (roleMessage instanceof RoleMessage.Ai)
|
|
60
|
-
return [this.encodeAiMessage(roleMessage)];
|
|
61
|
-
else
|
|
62
|
-
throw new Error();
|
|
63
|
-
}
|
|
64
|
-
encodeRoleMessages(chatMessages) {
|
|
65
|
-
return chatMessages.map(chatMessage => this.encodeRoleMessage(chatMessage)).flat();
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=message-codec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"message-codec.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/openai-chatcompletions/message-codec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/openai-chatcompletions/transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Function } from '../function.ts';
|
|
2
|
-
import { CompatibleEngine } from '../compatible-engine.ts';
|
|
3
|
-
import * as MessageCodecModule from './openai-chatcompletions/message-codec.ts';
|
|
4
|
-
import * as TransportModule from './openai-chatcompletions/transport.ts';
|
|
5
|
-
import type { Verbatim } from '../verbatim.ts';
|
|
6
|
-
import * as ChoiceCodecModule from './openai-chatcompletions/choice-codec.ts';
|
|
7
|
-
import { ToolCodec } from '../api-types/openai-chatcompletions/tool-codec.ts';
|
|
8
|
-
import { Billing } from '../api-types/openai-chatcompletions/billing.ts';
|
|
9
|
-
export type OpenAIChatCompletionsCompatibleEngine<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = OpenAIChatCompletionsCompatibleEngine.Instance<fdm, vdm>;
|
|
10
|
-
export declare namespace OpenAIChatCompletionsCompatibleEngine {
|
|
11
|
-
class Instance<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> extends CompatibleEngine.Instance<fdm, vdm> {
|
|
12
|
-
protected options: OpenAIChatCompletionsCompatibleEngine.Options<fdm, vdm>;
|
|
13
|
-
protected toolCodec: ToolCodec<fdm>;
|
|
14
|
-
protected messageCodec: MessageCodec<fdm, vdm>;
|
|
15
|
-
protected billing: Billing;
|
|
16
|
-
protected transport: Transport<fdm, vdm>;
|
|
17
|
-
constructor(options: OpenAIChatCompletionsCompatibleEngine.Options<fdm, vdm>);
|
|
18
|
-
clone(): OpenAIChatCompletionsCompatibleEngine<fdm, vdm>;
|
|
19
|
-
}
|
|
20
|
-
interface Options<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> extends CompatibleEngine.Options<fdm, vdm> {
|
|
21
|
-
}
|
|
22
|
-
export import Transport = TransportModule.Transport;
|
|
23
|
-
export import MessageCodec = MessageCodecModule.MessageCodec;
|
|
24
|
-
export import ChoiceCodec = ChoiceCodecModule;
|
|
25
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { CompatibleEngine } from "../compatible-engine.js";
|
|
2
|
-
import * as MessageCodecModule from "./openai-chatcompletions/message-codec.js";
|
|
3
|
-
import * as TransportModule from "./openai-chatcompletions/transport.js";
|
|
4
|
-
import * as ChoiceCodecModule from "./openai-chatcompletions/choice-codec.js";
|
|
5
|
-
import { ToolCodec } from "../api-types/openai-chatcompletions/tool-codec.js";
|
|
6
|
-
import { Billing } from "../api-types/openai-chatcompletions/billing.js";
|
|
7
|
-
export var OpenAIChatCompletionsCompatibleEngine;
|
|
8
|
-
(function (OpenAIChatCompletionsCompatibleEngine) {
|
|
9
|
-
class Instance extends CompatibleEngine.Instance {
|
|
10
|
-
options;
|
|
11
|
-
toolCodec;
|
|
12
|
-
messageCodec;
|
|
13
|
-
billing;
|
|
14
|
-
transport;
|
|
15
|
-
constructor(options) {
|
|
16
|
-
super(options);
|
|
17
|
-
this.options = options;
|
|
18
|
-
this.toolCodec = new ToolCodec({
|
|
19
|
-
fdm: this.fdm,
|
|
20
|
-
});
|
|
21
|
-
this.messageCodec = new OpenAIChatCompletionsCompatibleEngine.MessageCodec({
|
|
22
|
-
toolCodec: this.toolCodec,
|
|
23
|
-
vdm: this.vdm,
|
|
24
|
-
});
|
|
25
|
-
this.billing = new Billing({ pricing: this.pricing });
|
|
26
|
-
this.transport = new OpenAIChatCompletionsCompatibleEngine.Transport({
|
|
27
|
-
inferenceParams: this.inferenceParams,
|
|
28
|
-
providerSpec: this.providerSpec,
|
|
29
|
-
fdm: this.fdm,
|
|
30
|
-
throttle: this.throttle,
|
|
31
|
-
choice: this.structuringChoice,
|
|
32
|
-
messageCodec: this.messageCodec,
|
|
33
|
-
toolCodec: this.toolCodec,
|
|
34
|
-
billing: this.billing,
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
clone() {
|
|
38
|
-
const engine = new OpenAIChatCompletionsCompatibleEngine.Instance(this.options);
|
|
39
|
-
engine.middlewares = [...this.middlewares];
|
|
40
|
-
engine.statefulMiddlewares = [...this.statefulMiddlewares];
|
|
41
|
-
return engine;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
OpenAIChatCompletionsCompatibleEngine.Instance = Instance;
|
|
45
|
-
OpenAIChatCompletionsCompatibleEngine.Transport = TransportModule.Transport;
|
|
46
|
-
OpenAIChatCompletionsCompatibleEngine.MessageCodec = MessageCodecModule.MessageCodec;
|
|
47
|
-
OpenAIChatCompletionsCompatibleEngine.ChoiceCodec = ChoiceCodecModule;
|
|
48
|
-
})(OpenAIChatCompletionsCompatibleEngine || (OpenAIChatCompletionsCompatibleEngine = {}));
|
|
49
|
-
//# sourceMappingURL=openai-chatcompletions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openai-chatcompletions.js","sourceRoot":"","sources":["../../src/compatible-engine.d/openai-chatcompletions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,kBAAkB,MAAM,2CAA2C,CAAC;AAChF,OAAO,KAAK,eAAe,MAAM,uCAAuC,CAAC;AAEzE,OAAO,KAAK,iBAAiB,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,mDAAmD,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,gDAAgD,CAAC;AAQzE,MAAM,KAAW,qCAAqC,CAiDrD;AAjDD,WAAiB,qCAAqC;IAClD,MAAa,QAGX,SAAQ,gBAAgB,CAAC,QAAkB;QAMZ;QALnB,SAAS,CAAiB;QAC1B,YAAY,CAAyB;QACrC,OAAO,CAAU;QACR,SAAS,CAAsB;QAElD,YAA6B,OAAgE;YACzF,KAAK,CAAC,OAAO,CAAC,CAAC;YADU,YAAO,GAAP,OAAO,CAAyD;YAEzF,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC;gBAC3B,GAAG,EAAE,IAAI,CAAC,GAAG;aAChB,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,IAAI,sCAAA,YAAY,CAAC;gBACjC,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,qCAAqC,CAAC,SAAS,CAAC;gBACjE,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,iBAAiB;gBAC9B,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,OAAO,EAAE,IAAI,CAAC,OAAO;aACxB,CAAC,CAAC;QACP,CAAC;QAEe,KAAK;YACjB,MAAM,MAAM,GAAG,IAAI,qCAAqC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChF,MAAM,CAAC,WAAW,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;YAC3C,MAAM,CAAC,mBAAmB,GAAG,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC3D,OAAO,MAAM,CAAC;QAClB,CAAC;KAEJ;IAtCY,8CAAQ,WAsCpB,CAAA;IAOa,+CAAS,GAAG,eAAe,CAAC,SAAS,CAAC;IACtC,kDAAY,GAAG,kBAAkB,CAAC,YAAY,CAAC;IAC/C,iDAAW,GAAG,iBAAiB,CAAC;AAClD,CAAC,EAjDgB,qCAAqC,KAArC,qCAAqC,QAiDrD"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { Structuring } from '../../compatible-engine/structuring.ts';
|
|
2
|
-
import type { Function } from '../../function.ts';
|
|
3
|
-
import type { Verbatim } from '../../verbatim.ts';
|
|
4
|
-
import type { OpenAI } from 'openai';
|
|
5
|
-
export declare function encode<fdu extends Function.Decl.Proto, vdu extends Verbatim.Decl.Proto>(choice: Structuring.Choice<fdu, vdu>): OpenAI.Responses.ToolChoiceOptions | OpenAI.Responses.ToolChoiceAllowed;
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Structuring } from "../../compatible-engine/structuring.js";
|
|
2
|
-
export function encode(choice) {
|
|
3
|
-
if (choice === Structuring.Choice.NONE)
|
|
4
|
-
return 'none';
|
|
5
|
-
else if (choice === Structuring.Choice.REQUIRED)
|
|
6
|
-
return 'auto';
|
|
7
|
-
else if (choice === Structuring.Choice.ANYONE)
|
|
8
|
-
return 'auto';
|
|
9
|
-
else if (choice === Structuring.Choice.AUTO)
|
|
10
|
-
return 'auto';
|
|
11
|
-
else if (choice === Structuring.Choice.FCall.REQUIRED)
|
|
12
|
-
return 'required';
|
|
13
|
-
else if (choice === Structuring.Choice.FCall.ANYONE)
|
|
14
|
-
return 'required';
|
|
15
|
-
else if (choice instanceof Structuring.Choice.FCall)
|
|
16
|
-
return {
|
|
17
|
-
type: 'allowed_tools',
|
|
18
|
-
mode: 'required',
|
|
19
|
-
tools: [{ type: 'function', name: choice.name }],
|
|
20
|
-
};
|
|
21
|
-
else if (choice === Structuring.Choice.VRequest.REQUIRED)
|
|
22
|
-
return 'none';
|
|
23
|
-
else if (choice === Structuring.Choice.VRequest.ANYONE)
|
|
24
|
-
return 'none';
|
|
25
|
-
else if (choice instanceof Structuring.Choice.VRequest)
|
|
26
|
-
return 'none';
|
|
27
|
-
else
|
|
28
|
-
throw new Error();
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=choice-codec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"choice-codec.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/openai-responses/choice-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAOrE,MAAM,UAAU,MAAM,CAIlB,MAAoC;IAEpC,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC;SACjD,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC;SAC1D,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;SACxD,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC;SAEtD,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;SACpE,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,UAAU,CAAC;SAClE,IAAI,MAAM,YAAY,WAAW,CAAC,MAAM,CAAC,KAAK;QAC/C,OAAO;YACH,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAiD;SACnG,CAAC;SAED,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC;SACnE,IAAI,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;SACjE,IAAI,MAAM,YAAY,WAAW,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC;;QAEjE,MAAM,IAAI,KAAK,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { RoleMessage, type Session } from '../../compatible-engine/session.ts';
|
|
2
|
-
import { Function } from '../../function.ts';
|
|
3
|
-
import OpenAI from 'openai';
|
|
4
|
-
import type { ToolCodec } from '../../api-types/openai-responses/tool-codec.ts';
|
|
5
|
-
import type { Verbatim } from '../../verbatim.ts';
|
|
6
|
-
import { Media } from '../../media.ts';
|
|
7
|
-
declare const NOMINAL: unique symbol;
|
|
8
|
-
export declare class MessageCodec<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> {
|
|
9
|
-
protected toolCodec: ToolCodec<fdm>;
|
|
10
|
-
protected vdm: vdm;
|
|
11
|
-
constructor(options: MessageCodec.Options<fdm, vdm>);
|
|
12
|
-
decodeAiMessage(output: OpenAI.Responses.ResponseOutputItem[]): MessageCodec.Message.Ai.From<fdm, vdm>;
|
|
13
|
-
protected encodeImageResolution(resolution: Media.Image.Resolution): OpenAI.Responses.ResponseInputImage['detail'];
|
|
14
|
-
encodeUserMessage(userMessage: RoleMessage.User.From<fdm>): OpenAI.Responses.ResponseInput;
|
|
15
|
-
encodeAiMessage(aiMessage: RoleMessage.Ai.From<fdm, vdm>): OpenAI.Responses.ResponseInput;
|
|
16
|
-
encodeDeveloperMessage(developerMessage: RoleMessage.Developer): string;
|
|
17
|
-
encodeChatMessage(chatMessage: Session.ChatMessage.From<fdm, vdm>): OpenAI.Responses.ResponseInput;
|
|
18
|
-
}
|
|
19
|
-
export declare namespace MessageCodec {
|
|
20
|
-
interface Options<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> {
|
|
21
|
-
toolCodec: ToolCodec<fdm>;
|
|
22
|
-
vdm: vdm;
|
|
23
|
-
}
|
|
24
|
-
namespace Message {
|
|
25
|
-
class Ai<out fdu extends Function.Decl.Proto, out vdu extends Verbatim.Decl.Proto> extends RoleMessage.Ai<fdu, vdu> {
|
|
26
|
-
protected raw: OpenAI.Responses.ResponseOutputItem[];
|
|
27
|
-
[NOMINAL]: void;
|
|
28
|
-
constructor(parts: RoleMessage.Ai.Part<fdu, vdu>[], raw: OpenAI.Responses.ResponseOutputItem[]);
|
|
29
|
-
getRaw(): OpenAI.Responses.ResponseOutputItem[];
|
|
30
|
-
}
|
|
31
|
-
namespace Ai {
|
|
32
|
-
type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = Ai<Function.Decl.From<fdm>, Verbatim.Decl.From<vdm>>;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"message-codec.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/openai-responses/message-codec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import OpenAI from 'openai';
|
|
2
|
-
import { loggers } from "../../telemetry.js";
|
|
3
|
-
import * as ChoiceCodec from "./choice-codec.js";
|
|
4
|
-
import * as Undici from 'undici';
|
|
5
|
-
export class Transport {
|
|
6
|
-
client;
|
|
7
|
-
inferenceParams;
|
|
8
|
-
providerSpec;
|
|
9
|
-
fdm;
|
|
10
|
-
throttle;
|
|
11
|
-
choice;
|
|
12
|
-
messageCodec;
|
|
13
|
-
toolCodec;
|
|
14
|
-
billing;
|
|
15
|
-
constructor(options) {
|
|
16
|
-
this.client = new OpenAI({
|
|
17
|
-
baseURL: options.providerSpec.baseUrl,
|
|
18
|
-
apiKey: options.providerSpec.apiKey,
|
|
19
|
-
fetch: Undici.fetch,
|
|
20
|
-
fetchOptions: { dispatcher: options.providerSpec.dispatcher },
|
|
21
|
-
});
|
|
22
|
-
this.inferenceParams = options.inferenceParams;
|
|
23
|
-
this.providerSpec = options.providerSpec;
|
|
24
|
-
this.fdm = options.fdm;
|
|
25
|
-
this.throttle = options.throttle;
|
|
26
|
-
this.choice = options.choice;
|
|
27
|
-
this.messageCodec = options.messageCodec;
|
|
28
|
-
this.toolCodec = options.toolCodec;
|
|
29
|
-
this.billing = options.billing;
|
|
30
|
-
}
|
|
31
|
-
makeParams(session) {
|
|
32
|
-
const tools = this.toolCodec.encodeFunctionDeclarationMap(this.fdm);
|
|
33
|
-
return {
|
|
34
|
-
model: this.inferenceParams.model,
|
|
35
|
-
include: ['reasoning.encrypted_content'],
|
|
36
|
-
store: false,
|
|
37
|
-
stream: true,
|
|
38
|
-
input: session.chatMessages.flatMap(chatMessage => this.messageCodec.encodeChatMessage(chatMessage)),
|
|
39
|
-
instructions: session.developerMessage && this.messageCodec.encodeDeveloperMessage(session.developerMessage),
|
|
40
|
-
tools: tools.length ? tools : undefined,
|
|
41
|
-
tool_choice: tools.length ? ChoiceCodec.encode(this.choice) : undefined,
|
|
42
|
-
parallel_tool_calls: tools.length ? this.inferenceParams.parallelToolCall : undefined,
|
|
43
|
-
...this.inferenceParams.additionalOptions,
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
async fetch(wfctx, session, signal) {
|
|
47
|
-
await this.throttle.requests(wfctx);
|
|
48
|
-
// Prepare request
|
|
49
|
-
const params = this.makeParams(session);
|
|
50
|
-
loggers.message.debug(params);
|
|
51
|
-
// Send request
|
|
52
|
-
let response = null;
|
|
53
|
-
const stream = await this.client.responses.create(params, { signal });
|
|
54
|
-
for await (const event of stream) {
|
|
55
|
-
loggers.stream.trace(event);
|
|
56
|
-
if (event.type === 'response.completed')
|
|
57
|
-
response = event.response;
|
|
58
|
-
else if (event.type === 'response.incomplete')
|
|
59
|
-
response = event.response;
|
|
60
|
-
else if (event.type === 'response.failed')
|
|
61
|
-
response = event.response;
|
|
62
|
-
else if (event.type === 'error')
|
|
63
|
-
throw new SyntaxError('Response stream error', { cause: event });
|
|
64
|
-
}
|
|
65
|
-
// Validate response
|
|
66
|
-
if (response) { }
|
|
67
|
-
else
|
|
68
|
-
throw new Error();
|
|
69
|
-
loggers.message.debug(response);
|
|
70
|
-
if (response.status === 'completed') { }
|
|
71
|
-
else
|
|
72
|
-
throw new SyntaxError('Abnormal response status', { cause: response });
|
|
73
|
-
if (response.usage) { }
|
|
74
|
-
else
|
|
75
|
-
throw new Error();
|
|
76
|
-
// Log response
|
|
77
|
-
for (const item of response.output)
|
|
78
|
-
if (item.type === 'message')
|
|
79
|
-
for (const part of item.content)
|
|
80
|
-
if (part.type === 'output_text')
|
|
81
|
-
loggers.inference.info(part.text);
|
|
82
|
-
else if (part.type === 'refusal')
|
|
83
|
-
loggers.inference.warn(part.refusal);
|
|
84
|
-
else
|
|
85
|
-
loggers.message.info(item);
|
|
86
|
-
loggers.message.info(response.usage);
|
|
87
|
-
wfctx.cost?.(this.billing.charge(response.usage));
|
|
88
|
-
return this.messageCodec.decodeAiMessage(response.output);
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
//# sourceMappingURL=transport.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/compatible-engine.d/openai-responses/transport.ts"],"names":[],"mappings":"AAGA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAK7C,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAC;AAGjD,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAGjC,MAAM,OAAO,SAAS;IASR,MAAM,CAAS;IAAA,eAAe,CAAkB;IAChD,YAAY,CAAe;IAC3B,GAAG,CAAM;IACT,QAAQ,CAAW;IACnB,MAAM,CAAoC;IAC1C,YAAY,CAAyB;IACrC,SAAS,CAAiB;IAC1B,OAAO,CAAU;IAE3B,YAAmB,OAAoC;QACnD,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC;YACrB,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,OAAO;YACrC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM;YACnC,KAAK,EAAE,MAAM,CAAC,KAAgC;YAC9C,YAAY,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE;SAChE,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACnC,CAAC;IAES,UAAU,CAChB,OAA+B;QAE/B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,4BAA4B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpE,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK;YACjC,OAAO,EAAE,CAAC,6BAA6B,CAAC;YACxC,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;YACpG,YAAY,EAAE,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAC5G,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACvC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;YACvE,mBAAmB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;YACrF,GAAG,IAAI,CAAC,eAAe,CAAC,iBAAiB;SAC5C,CAAC;IACN,CAAC;IAEM,KAAK,CAAC,KAAK,CACd,KAAuB,EACvB,OAA+B,EAC/B,MAAoB;QAEpB,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEpC,kBAAkB;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE9B,eAAe;QACf,IAAI,QAAQ,GAAqC,IAAI,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACtE,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB;gBACnC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;iBACzB,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB;gBACzC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;iBACzB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB;gBACrC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;iBACzB,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;gBAC3B,MAAM,IAAI,WAAW,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,oBAAoB;QACpB,IAAI,QAAQ,EAAE,CAAC,CAAA,CAAC;;YAAM,MAAM,IAAI,KAAK,EAAE,CAAC;QACxC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,QAAQ,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC,CAAA,CAAC;;YACnC,MAAM,IAAI,WAAW,CAAC,0BAA0B,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC3E,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA,CAAC;;YAAM,MAAM,IAAI,KAAK,EAAE,CAAC;QAE9C,eAAe;QACf,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,MAAM;YAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;gBACvB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO;oBAC3B,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa;wBAC3B,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBACjC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;wBAC5B,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;;wBAC5C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QAElD,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;CACJ"}
|