@zimtsui/typechat 0.0.116 → 0.0.117
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/engine/message.js +13 -13
- package/build/engine/message.js.map +1 -1
- package/build/engine/tool-choice-validator.js +10 -10
- package/build/engine/tool-choice-validator.js.map +1 -1
- package/build/engine.js +43 -20
- package/build/engine.js.map +1 -1
- package/build/engines/anthropic/message-codec.js +4 -4
- package/build/engines/anthropic/message-codec.js.map +1 -1
- package/build/engines/anthropic/tool-codec.d.ts +2 -2
- package/build/engines/anthropic/tool-codec.js +9 -9
- package/build/engines/anthropic/tool-codec.js.map +1 -1
- package/build/engines/dashscope/message-codec.js +4 -4
- package/build/engines/dashscope/message-codec.js.map +1 -1
- package/build/engines/google/message-codec.js +5 -5
- package/build/engines/google/message-codec.js.map +1 -1
- package/build/engines/google/tool-codec.d.ts +2 -2
- package/build/engines/google/tool-codec.js +9 -9
- package/build/engines/google/tool-codec.js.map +1 -1
- package/build/engines/google.js +43 -20
- package/build/engines/google.js.map +1 -1
- package/build/engines/openai-chatcompletions/message-codec.js +4 -4
- package/build/engines/openai-chatcompletions/message-codec.js.map +1 -1
- package/build/engines/openai-chatcompletions/tool-codec.d.ts +2 -2
- package/build/engines/openai-chatcompletions/tool-codec.js +13 -13
- package/build/engines/openai-chatcompletions/tool-codec.js.map +1 -1
- package/build/engines/openai-responses/message-codec.js +4 -4
- package/build/engines/openai-responses/message-codec.js.map +1 -1
- package/build/engines/openai-responses/tool-codec.d.ts +2 -2
- package/build/engines/openai-responses/tool-codec.js +13 -13
- package/build/engines/openai-responses/tool-codec.js.map +1 -1
- package/build/engines/openai-responses.js +47 -24
- package/build/engines/openai-responses.js.map +1 -1
- package/build/function.d.ts +9 -8
- package/build/function.js +19 -19
- package/build/function.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
package/build/engines/google.js
CHANGED
|
@@ -8,6 +8,7 @@ import { Agent, ProxyAgent } from 'undici';
|
|
|
8
8
|
import { ToolChoiceValidator } from "../engine/tool-choice-validator.js";
|
|
9
9
|
import * as TransportModule from "./google/transport.js";
|
|
10
10
|
import * as MessageModule from "./google/message.js";
|
|
11
|
+
import { Media } from "../media.js";
|
|
11
12
|
export var GoogleEngine;
|
|
12
13
|
(function (GoogleEngine) {
|
|
13
14
|
class Instance extends Engine.Instance {
|
|
@@ -91,33 +92,56 @@ export var GoogleEngine;
|
|
|
91
92
|
const response = await this.stateful(wfctx, session);
|
|
92
93
|
if (response.allText())
|
|
93
94
|
return response.getText();
|
|
94
|
-
const
|
|
95
|
+
const frs = [];
|
|
96
|
+
const images = [];
|
|
95
97
|
for (const part of response.getParts()) {
|
|
96
98
|
if (part instanceof Engine.RoleMessage.Part.Text) {
|
|
97
99
|
yield part.text;
|
|
98
100
|
}
|
|
99
101
|
else if (part instanceof Function.Call) {
|
|
100
|
-
const
|
|
101
|
-
const f = fnm[
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
102
|
+
const fc = part;
|
|
103
|
+
const f = fnm[fc.name];
|
|
104
|
+
try {
|
|
105
|
+
const rawfr = await f.call(fnm, fc.args, fc);
|
|
106
|
+
if (typeof rawfr === 'string') {
|
|
107
|
+
const fr = Function.Response.Successful.of({
|
|
108
|
+
id: fc.id,
|
|
109
|
+
name: fc.name,
|
|
110
|
+
text: rawfr,
|
|
108
111
|
});
|
|
112
|
+
frs.push(fr);
|
|
109
113
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
id: fcall.id,
|
|
116
|
-
name: fcall.name,
|
|
117
|
-
error: e.message,
|
|
114
|
+
else if (rawfr instanceof Media.Image) {
|
|
115
|
+
const fr = Function.Response.Successful.of({
|
|
116
|
+
id: fc.id,
|
|
117
|
+
name: fc.name,
|
|
118
|
+
text: '',
|
|
118
119
|
});
|
|
120
|
+
frs.push(fr);
|
|
121
|
+
images.push(rawfr);
|
|
119
122
|
}
|
|
120
|
-
|
|
123
|
+
else if (rawfr instanceof Media.Text) {
|
|
124
|
+
const fr = Function.Response.Successful.of({
|
|
125
|
+
id: fc.id,
|
|
126
|
+
name: fc.name,
|
|
127
|
+
text: rawfr.quote(),
|
|
128
|
+
});
|
|
129
|
+
frs.push(fr);
|
|
130
|
+
}
|
|
131
|
+
else
|
|
132
|
+
throw new Error('Unsupported function response type');
|
|
133
|
+
}
|
|
134
|
+
catch (e) {
|
|
135
|
+
if (e instanceof Function.Error) { }
|
|
136
|
+
else
|
|
137
|
+
throw e;
|
|
138
|
+
const fr = Function.Response.Failed.of({
|
|
139
|
+
id: fc.id,
|
|
140
|
+
name: fc.name,
|
|
141
|
+
error: e.message,
|
|
142
|
+
});
|
|
143
|
+
frs.push(fr);
|
|
144
|
+
}
|
|
121
145
|
}
|
|
122
146
|
else if (part instanceof GoogleEngine.RoleMessage.Ai.Part.ExecutableCode) {
|
|
123
147
|
yield GoogleEngine.RoleMessage.Ai.encodeExecutableCodePart(part);
|
|
@@ -128,8 +152,7 @@ export var GoogleEngine;
|
|
|
128
152
|
else
|
|
129
153
|
throw new Error();
|
|
130
154
|
}
|
|
131
|
-
|
|
132
|
-
session.chatMessages.push(new GoogleEngine.RoleMessage.User(fress));
|
|
155
|
+
session.chatMessages.push(new GoogleEngine.RoleMessage.User([...frs, ...images]));
|
|
133
156
|
}
|
|
134
157
|
throw new Engine.FunctionCallLimitExceeded('Function call limit exceeded.');
|
|
135
158
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google.js","sourceRoot":"","sources":["../../src/engines/google.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAc,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,KAAK,eAAe,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,aAAa,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"google.js","sourceRoot":"","sources":["../../src/engines/google.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,9 +35,9 @@ export class MessageCodec {
|
|
|
35
35
|
else
|
|
36
36
|
throw new Error('Unsupported part type.');
|
|
37
37
|
const apiMessages = [];
|
|
38
|
-
const
|
|
39
|
-
for (const
|
|
40
|
-
apiMessages.push(this.toolCodec.encodeFunctionResponse(
|
|
38
|
+
const frs = userMessage.getFunctionResponses();
|
|
39
|
+
for (const fr of frs)
|
|
40
|
+
apiMessages.push(this.toolCodec.encodeFunctionResponse(fr));
|
|
41
41
|
const contentParts = [];
|
|
42
42
|
for (const part of userMessage.getParts())
|
|
43
43
|
if (part instanceof Engine.RoleMessage.Part.Text)
|
|
@@ -61,7 +61,7 @@ export class MessageCodec {
|
|
|
61
61
|
return {
|
|
62
62
|
role: 'assistant',
|
|
63
63
|
content: textParts.length ? textParts.map(part => part.text).join('') : undefined,
|
|
64
|
-
tool_calls: fcParts.length ? fcParts.map(
|
|
64
|
+
tool_calls: fcParts.length ? fcParts.map(fc => this.toolCodec.encodeFunctionCall(fc)) : undefined,
|
|
65
65
|
};
|
|
66
66
|
}
|
|
67
67
|
encodeRoleMessage(roleMessage) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-codec.js","sourceRoot":"","sources":["../../../src/engines/openai-chatcompletions/message-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAGvC,MAAM,OAAO,YAAY;IAGX,SAAS,CAAiB;IACpC,YAAmB,OAAkC;QACjD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACvC,CAAC;IAEM,eAAe,CAClB,OAAqC;QAErC,MAAM,KAAK,GAAc,EAAE,CAAC;QAC5B,IAAI,OAAO,CAAC,OAAO;YACf,KAAK,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAClE,IAAI,OAAO,CAAC,UAAU;YAClB,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,UAAU;gBAClC,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;oBACzB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;;oBACpD,MAAM,IAAI,KAAK,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO,IAAI,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;;YACrD,MAAM,IAAI,WAAW,CAAC,6CAA6C,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAClG,CAAC;IAEM,sBAAsB,CAAC,gBAA8C;QACxE,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;SAC/E,CAAC;IACN,CAAC;IAEM,iBAAiB,CACpB,WAA8C;QAE9C,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,QAAQ,EAAE;YACrC,IAAI,IAAI,YAAY,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA,CAAC;iBACpC,IAAI,IAAI,YAAY,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA,CAAC;iBACpD,IAAI,IAAI,YAAY,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA,CAAC;;gBAClC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAEnD,MAAM,WAAW,GAAsF,EAAE,CAAC;QAE1G,MAAM,
|
|
1
|
+
{"version":3,"file":"message-codec.js","sourceRoot":"","sources":["../../../src/engines/openai-chatcompletions/message-codec.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,9 +4,9 @@ export declare class ToolCodec<in out fdm extends Function.Decl.Map.Proto> {
|
|
|
4
4
|
protected fdm: fdm;
|
|
5
5
|
protected apiFds: OpenAI.ChatCompletionTool[];
|
|
6
6
|
constructor(options: ToolCodec.Options<fdm>);
|
|
7
|
-
encodeFunctionCall(
|
|
7
|
+
encodeFunctionCall(fc: Function.Call.From<fdm>): OpenAI.ChatCompletionMessageToolCall;
|
|
8
8
|
decodeFunctionCall(apifc: OpenAI.ChatCompletionMessageFunctionToolCall): Function.Call.From<fdm>;
|
|
9
|
-
encodeFunctionResponse(
|
|
9
|
+
encodeFunctionResponse(fr: Function.Response.From<fdm>): OpenAI.ChatCompletionToolMessageParam;
|
|
10
10
|
protected static encodeFunctionDeclarationEntry<fdu extends Function.Decl.Proto>(fdentry: Function.Decl.Entry.Of<fdu>): OpenAI.ChatCompletionTool;
|
|
11
11
|
encodeFunctionDeclarationMap(): OpenAI.ChatCompletionTool[];
|
|
12
12
|
}
|
|
@@ -8,16 +8,16 @@ export class ToolCodec {
|
|
|
8
8
|
const fdentries = Object.entries(this.fdm);
|
|
9
9
|
this.apiFds = fdentries.map(fdentry => ToolCodec.encodeFunctionDeclarationEntry(fdentry));
|
|
10
10
|
}
|
|
11
|
-
encodeFunctionCall(
|
|
12
|
-
if (
|
|
11
|
+
encodeFunctionCall(fc) {
|
|
12
|
+
if (fc.id) { }
|
|
13
13
|
else
|
|
14
14
|
throw new Error();
|
|
15
15
|
return {
|
|
16
|
-
id:
|
|
16
|
+
id: fc.id,
|
|
17
17
|
type: 'function',
|
|
18
18
|
function: {
|
|
19
|
-
name:
|
|
20
|
-
arguments: JSON.stringify(
|
|
19
|
+
name: fc.name,
|
|
20
|
+
arguments: JSON.stringify(fc.args),
|
|
21
21
|
},
|
|
22
22
|
};
|
|
23
23
|
}
|
|
@@ -49,21 +49,21 @@ export class ToolCodec {
|
|
|
49
49
|
args,
|
|
50
50
|
});
|
|
51
51
|
}
|
|
52
|
-
encodeFunctionResponse(
|
|
53
|
-
if (
|
|
52
|
+
encodeFunctionResponse(fr) {
|
|
53
|
+
if (fr.id) { }
|
|
54
54
|
else
|
|
55
55
|
throw new Error();
|
|
56
|
-
if (
|
|
56
|
+
if (fr instanceof Function.Response.Successful)
|
|
57
57
|
return {
|
|
58
58
|
role: 'tool',
|
|
59
|
-
tool_call_id:
|
|
60
|
-
content:
|
|
59
|
+
tool_call_id: fr.id,
|
|
60
|
+
content: fr.text,
|
|
61
61
|
};
|
|
62
|
-
else if (
|
|
62
|
+
else if (fr instanceof Function.Response.Failed)
|
|
63
63
|
return {
|
|
64
64
|
role: 'tool',
|
|
65
|
-
tool_call_id:
|
|
66
|
-
content:
|
|
65
|
+
tool_call_id: fr.id,
|
|
66
|
+
content: fr.error,
|
|
67
67
|
};
|
|
68
68
|
else
|
|
69
69
|
throw new Error();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/engines/openai-chatcompletions/tool-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAI7C,MAAM,OAAO,SAAS;IACR,GAAG,CAAM;IACT,MAAM,CAA8B;IAC9C,YAAmB,OAA+B;QAC9C,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAoC,CAAC;QAC9E,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9F,CAAC;IAEM,kBAAkB,CACrB,
|
|
1
|
+
{"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/engines/openai-chatcompletions/tool-codec.ts"],"names":[],"mappings":"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"}
|
|
@@ -65,9 +65,9 @@ export class MessageCodec {
|
|
|
65
65
|
file_data: `data:${part.mimeType};base64,${part.base64}`,
|
|
66
66
|
});
|
|
67
67
|
else if (part instanceof Function.Response) {
|
|
68
|
-
const
|
|
68
|
+
const fr = part;
|
|
69
69
|
flush();
|
|
70
|
-
responseInput.push(this.toolCodec.encodeFunctionResponse(
|
|
70
|
+
responseInput.push(this.toolCodec.encodeFunctionResponse(fr));
|
|
71
71
|
}
|
|
72
72
|
else if (part instanceof Tool.ApplyPatch.Response) {
|
|
73
73
|
flush();
|
|
@@ -101,8 +101,8 @@ export class MessageCodec {
|
|
|
101
101
|
content: part.text,
|
|
102
102
|
});
|
|
103
103
|
else if (part instanceof Function.Call) {
|
|
104
|
-
const
|
|
105
|
-
responseInput.push(this.toolCodec.encodeFunctionCall(
|
|
104
|
+
const fc = part;
|
|
105
|
+
responseInput.push(this.toolCodec.encodeFunctionCall(fc));
|
|
106
106
|
}
|
|
107
107
|
else
|
|
108
108
|
throw new Error('Unknown AI message part type', { cause: part });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-codec.js","sourceRoot":"","sources":["../../../src/engines/openai-responses/message-codec.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"message-codec.js","sourceRoot":"","sources":["../../../src/engines/openai-responses/message-codec.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,11 +4,11 @@ export declare class ToolCodec<in out fdm extends Function.Decl.Map.Proto> {
|
|
|
4
4
|
protected fdm: fdm;
|
|
5
5
|
protected apiFds: OpenAI.Responses.FunctionTool[];
|
|
6
6
|
constructor(options: ToolCodec.Options<fdm>);
|
|
7
|
-
encodeFunctionResponse(
|
|
7
|
+
encodeFunctionResponse(fr: Function.Response.From<fdm>): OpenAI.Responses.ResponseInputItem.FunctionCallOutput;
|
|
8
8
|
protected static encodeFunctionDeclarationEntry<fdu extends Function.Decl.Proto>(fdentry: Function.Decl.Entry.Of<fdu>): OpenAI.Responses.FunctionTool;
|
|
9
9
|
encodeFunctionDeclarationMap(): OpenAI.Responses.FunctionTool[];
|
|
10
10
|
decodeFunctionCall(apifc: OpenAI.Responses.ResponseFunctionToolCall): Function.Call.From<fdm>;
|
|
11
|
-
encodeFunctionCall(
|
|
11
|
+
encodeFunctionCall(fc: Function.Call.From<fdm>): OpenAI.Responses.ResponseFunctionToolCall;
|
|
12
12
|
}
|
|
13
13
|
export declare namespace ToolCodec {
|
|
14
14
|
interface Options<in out fdm extends Function.Decl.Map.Proto> {
|
|
@@ -9,21 +9,21 @@ export class ToolCodec {
|
|
|
9
9
|
const fdentries = Object.entries(this.fdm);
|
|
10
10
|
this.apiFds = fdentries.map(fdentry => ToolCodec.encodeFunctionDeclarationEntry(fdentry));
|
|
11
11
|
}
|
|
12
|
-
encodeFunctionResponse(
|
|
13
|
-
if (
|
|
12
|
+
encodeFunctionResponse(fr) {
|
|
13
|
+
if (fr.id) { }
|
|
14
14
|
else
|
|
15
15
|
throw new Error();
|
|
16
|
-
if (
|
|
16
|
+
if (fr instanceof Function.Response.Successful)
|
|
17
17
|
return {
|
|
18
18
|
type: 'function_call_output',
|
|
19
|
-
call_id:
|
|
20
|
-
output:
|
|
19
|
+
call_id: fr.id,
|
|
20
|
+
output: fr.text,
|
|
21
21
|
};
|
|
22
|
-
else if (
|
|
22
|
+
else if (fr instanceof Function.Response.Failed)
|
|
23
23
|
return {
|
|
24
24
|
type: 'function_call_output',
|
|
25
|
-
call_id:
|
|
26
|
-
output:
|
|
25
|
+
call_id: fr.id,
|
|
26
|
+
output: fr.error,
|
|
27
27
|
};
|
|
28
28
|
else
|
|
29
29
|
throw new Error();
|
|
@@ -68,15 +68,15 @@ export class ToolCodec {
|
|
|
68
68
|
args,
|
|
69
69
|
});
|
|
70
70
|
}
|
|
71
|
-
encodeFunctionCall(
|
|
72
|
-
if (
|
|
71
|
+
encodeFunctionCall(fc) {
|
|
72
|
+
if (fc.id) { }
|
|
73
73
|
else
|
|
74
74
|
throw new Error();
|
|
75
75
|
return {
|
|
76
76
|
type: 'function_call',
|
|
77
|
-
call_id:
|
|
78
|
-
name:
|
|
79
|
-
arguments: JSON.stringify(
|
|
77
|
+
call_id: fc.id,
|
|
78
|
+
name: fc.name,
|
|
79
|
+
arguments: JSON.stringify(fc.args),
|
|
80
80
|
};
|
|
81
81
|
}
|
|
82
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/engines/openai-responses/tool-codec.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAIvE,MAAM,OAAO,SAAS;IAGR,GAAG,CAAM;IACT,MAAM,CAAkC;IAClD,YAAmB,OAA+B;QAC9C,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAoC,CAAC;QAC9E,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9F,CAAC;IAEM,sBAAsB,CACzB,
|
|
1
|
+
{"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/engines/openai-responses/tool-codec.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ import * as TransportModule from "./openai-responses/transport.js";
|
|
|
8
8
|
import * as MessageModule from "./openai-responses/message.js";
|
|
9
9
|
import * as ToolModule from "./openai-responses/tool.js";
|
|
10
10
|
import OpenAI from 'openai';
|
|
11
|
+
import { Media } from "../media.js";
|
|
11
12
|
export var OpenAIResponsesEngine;
|
|
12
13
|
(function (OpenAIResponsesEngine) {
|
|
13
14
|
class Instance extends Engine.Instance {
|
|
@@ -83,50 +84,72 @@ export var OpenAIResponsesEngine;
|
|
|
83
84
|
const response = await this.stateful(wfctx, session);
|
|
84
85
|
if (response.allText())
|
|
85
86
|
return response.getText();
|
|
86
|
-
const
|
|
87
|
-
const
|
|
87
|
+
const frs = [];
|
|
88
|
+
const images = [];
|
|
89
|
+
const aprs = [];
|
|
88
90
|
for (const part of response.getParts()) {
|
|
89
91
|
if (part instanceof Engine.RoleMessage.Part.Text) {
|
|
90
92
|
yield part.text;
|
|
91
93
|
}
|
|
92
94
|
else if (part instanceof Function.Call) {
|
|
93
|
-
const
|
|
94
|
-
const f = fnm[
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
95
|
+
const fc = part;
|
|
96
|
+
const f = fnm[fc.name];
|
|
97
|
+
try {
|
|
98
|
+
const rawfr = await f.call(fnm, fc.args, fc);
|
|
99
|
+
if (typeof rawfr === 'string') {
|
|
100
|
+
const fr = Function.Response.Successful.of({
|
|
101
|
+
id: fc.id,
|
|
102
|
+
name: fc.name,
|
|
103
|
+
text: rawfr,
|
|
101
104
|
});
|
|
105
|
+
frs.push(fr);
|
|
102
106
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
id: fcall.id,
|
|
109
|
-
name: fcall.name,
|
|
110
|
-
error: e.message,
|
|
107
|
+
else if (rawfr instanceof Media.Image) {
|
|
108
|
+
const fr = Function.Response.Successful.of({
|
|
109
|
+
id: fc.id,
|
|
110
|
+
name: fc.name,
|
|
111
|
+
text: '',
|
|
111
112
|
});
|
|
113
|
+
frs.push(fr);
|
|
114
|
+
images.push(rawfr);
|
|
112
115
|
}
|
|
113
|
-
|
|
116
|
+
else if (rawfr instanceof Media.Text) {
|
|
117
|
+
const fr = Function.Response.Successful.of({
|
|
118
|
+
id: fc.id,
|
|
119
|
+
name: fc.name,
|
|
120
|
+
text: rawfr.quote(),
|
|
121
|
+
});
|
|
122
|
+
frs.push(fr);
|
|
123
|
+
}
|
|
124
|
+
else
|
|
125
|
+
throw new Error('Unsupported function response type');
|
|
126
|
+
}
|
|
127
|
+
catch (e) {
|
|
128
|
+
if (e instanceof Function.Error) { }
|
|
129
|
+
else
|
|
130
|
+
throw e;
|
|
131
|
+
const fr = Function.Response.Failed.of({
|
|
132
|
+
id: fc.id,
|
|
133
|
+
name: fc.name,
|
|
134
|
+
error: e.message,
|
|
135
|
+
});
|
|
136
|
+
frs.push(fr);
|
|
137
|
+
}
|
|
114
138
|
}
|
|
115
139
|
else if (part instanceof OpenAIResponsesEngine.Tool.ApplyPatch.Call) {
|
|
116
140
|
if (applyPatch) { }
|
|
117
141
|
else
|
|
118
142
|
throw new Error('Apply patch handler missing.');
|
|
119
|
-
|
|
143
|
+
const apr = new OpenAIResponsesEngine.Tool.ApplyPatch.Response({
|
|
120
144
|
id: part.raw.call_id,
|
|
121
145
|
failure: await applyPatch(part.raw.operation),
|
|
122
|
-
})
|
|
146
|
+
});
|
|
147
|
+
aprs.push(apr);
|
|
123
148
|
}
|
|
124
149
|
else
|
|
125
150
|
throw new Error();
|
|
126
151
|
}
|
|
127
|
-
|
|
128
|
-
const aprs = await Promise.all(papress);
|
|
129
|
-
session.chatMessages.push(new OpenAIResponsesEngine.RoleMessage.User([...fress, ...aprs]));
|
|
152
|
+
session.chatMessages.push(new OpenAIResponsesEngine.RoleMessage.User([...frs, ...aprs, ...images]));
|
|
130
153
|
}
|
|
131
154
|
throw new Engine.FunctionCallLimitExceeded('Function call limit exceeded.');
|
|
132
155
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-responses.js","sourceRoot":"","sources":["../../src/engines/openai-responses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAc,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAClF,OAAO,KAAK,eAAe,MAAM,iCAAiC,CAAC;AAEnE,OAAO,KAAK,aAAa,MAAM,+BAA+B,CAAC;AAC/D,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AACzD,OAAO,MAAM,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"openai-responses.js","sourceRoot":"","sources":["../../src/engines/openai-responses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAc,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAClF,OAAO,KAAK,eAAe,MAAM,iCAAiC,CAAC;AAEnE,OAAO,KAAK,aAAa,MAAM,+BAA+B,CAAC;AAC/D,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AACzD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAMpC,MAAM,KAAW,qBAAqB,CAiKrC;AAjKD,WAAiB,qBAAqB;IAClC,MAAa,QAEX,SAAQ,MAAM,CAAC,QAAa;QAQG;QAPnB,SAAS,CAAiB;QAC1B,YAAY,CAAoB;QAChC,OAAO,CAAU;QACR,SAAS,CAAiB;QAC1B,mBAAmB,CAAgC;QAC5D,UAAU,CAAU;QAE9B,YAA6B,OAA2C;YACpE,KAAK,CAAC,OAAO,CAAC,CAAC;YADU,YAAO,GAAP,OAAO,CAAoC;YAEpE,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC;YAE9C,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAClD,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC;gBACjC,SAAS,EAAE,IAAI,CAAC,SAAS;aAC5B,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,sBAAA,SAAS,CAAC;gBAC3B,eAAe,EAAE,IAAI,CAAC,gBAAgB;gBACtC,YAAY,EAAE,IAAI,CAAC,aAAa;gBAChC,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,OAAO,EAAE,IAAI,CAAC,OAAO;aACxB,CAAC,CAAC;YACH,IAAI,CAAC,mBAAmB,GAAG,IAAI,mBAAmB,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QACxF,CAAC;QAEe,KAAK;YACjB,MAAM,MAAM,GAAG,IAAI,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChE,MAAM,CAAC,oBAAoB,GAAG,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAC7D,MAAM,CAAC,mBAAmB,GAAG,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC3D,OAAO,MAAM,CAAC;QAClB,CAAC;QAED;;;;;UAKE;QACiB,KAAK,CAAC,KAAK,CAC1B,KAAuB,EACvB,OAAiC;YAEjC,IAAI,CAAC;gBACD,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAA6B,CAAC;YACzE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,IAAI,CAAC,YAAY,MAAM,CAAC,kBAAkB;oBACtC,MAAM,IAAI,SAAS,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;;oBAC5C,MAAM,CAAC,CAAC;YACjB,CAAC;QACL,CAAC;QAEe,KAAK,CAAC,SAAS,CAAC,KAAuB,EAAE,OAAiC;YACtF,OAAO,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAA6B,CAAC;QAC7E,CAAC;QAEe,KAAK,CAAC,QAAQ,CAAC,KAAuB,EAAE,OAAiC;YACrF,OAAO,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAA6B,CAAC;QAC5E,CAAC;QAEe,YAAY,CAAC,UAAgC;YACzD,OAAO,KAAK,CAAC,YAAY,CAAC,UAAU,CAA+B,CAAC;QACxE,CAAC;QACe,WAAW,CAAC,UAAgC;YACxD,OAAO,KAAK,CAAC,WAAW,CAAC,UAAU,CAA+B,CAAC;QACvE,CAAC;QAED;;WAEG;QACa,KAAK,CAAC,CAAC,SAAS,CAC5B,KAAuB,EACvB,OAAiC,EACjC,GAAsB,EACtB,KAAK,GAAG,MAAM,CAAC,iBAAiB,EAChC,UAA4B;YAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACrD,IAAI,QAAQ,CAAC,OAAO,EAAE;oBAAE,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC;gBAClD,MAAM,GAAG,GAAkC,EAAE,CAAC;gBAC9C,MAAM,MAAM,GAAkB,EAAE,CAAC;gBACjC,MAAM,IAAI,GAA+B,EAAE,CAAC;gBAC5C,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;oBACrC,IAAI,IAAI,YAAY,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;wBAC/C,MAAM,IAAI,CAAC,IAAI,CAAC;oBACpB,CAAC;yBAAM,IAAI,IAAI,YAAY,QAAQ,CAAC,IAAI,EAAE,CAAC;wBACvC,MAAM,EAAE,GAAG,IAA+B,CAAC;wBAC3C,MAAM,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;wBACvB,IAAI,CAAC;4BACD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4BAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gCAC5B,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oCACvC,EAAE,EAAE,EAAE,CAAC,EAAE;oCACT,IAAI,EAAE,EAAE,CAAC,IAAI;oCACb,IAAI,EAAE,KAAK;iCACoC,CAAC,CAAC;gCACrD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACjB,CAAC;iCAAM,IAAI,KAAK,YAAY,KAAK,CAAC,KAAK,EAAE,CAAC;gCACtC,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oCACvC,EAAE,EAAE,EAAE,CAAC,EAAE;oCACT,IAAI,EAAE,EAAE,CAAC,IAAI;oCACb,IAAI,EAAE,EAAE;iCACuC,CAAC,CAAC;gCACrD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCACb,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BACvB,CAAC;iCAAM,IAAI,KAAK,YAAY,KAAK,CAAC,IAAI,EAAE,CAAC;gCACrC,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oCACvC,EAAE,EAAE,EAAE,CAAC,EAAE;oCACT,IAAI,EAAE,EAAE,CAAC,IAAI;oCACb,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE;iCAC4B,CAAC,CAAC;gCACrD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACjB,CAAC;;gCAAM,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;wBACjE,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACT,IAAI,CAAC,YAAY,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA,CAAC;;gCAAM,MAAM,CAAC,CAAC;4BACjD,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gCACnC,EAAE,EAAE,EAAE,CAAC,EAAE;gCACT,IAAI,EAAE,EAAE,CAAC,IAAI;gCACb,KAAK,EAAE,CAAC,CAAC,OAAO;6BAC2B,CAAC,CAAC;4BACjD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACjB,CAAC;oBACL,CAAC;yBAAM,IAAI,IAAI,YAAY,sBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;wBAC9C,IAAI,UAAU,EAAE,CAAC,CAAA,CAAC;;4BAAM,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;wBACxE,MAAM,GAAG,GAAG,IAAI,sBAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;4BACrC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO;4BACpB,OAAO,EAAE,MAAM,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;yBAChD,CAAC,CAAC;wBACH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACnB,CAAC;;wBAAM,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC7B,CAAC;gBACD,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,sBAAA,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAClF,CAAC;YACD,MAAM,IAAI,MAAM,CAAC,yBAAyB,CAAC,+BAA+B,CAAC,CAAC;QAChF,CAAC;KACJ;IA/IY,8BAAQ,WA+IpB,CAAA;IAQY,4BAAM,GAAkB,UAEnC,OAA4B;QAC1B,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC,CAAA;IAEa,0BAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IACvB,iCAAW,GAAG,aAAa,CAAC,WAAW,CAAC;IACxC,+BAAS,GAAG,eAAe,CAAC,SAAS,CAAC;AACxD,CAAC,EAjKgB,qBAAqB,KAArB,qBAAqB,QAiKrC"}
|
package/build/function.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { type Static, type TObject, type TSchema } from 'typebox';
|
|
2
|
+
import { Media } from './media.ts';
|
|
2
3
|
declare const NOMINAL: unique symbol;
|
|
3
4
|
export interface Function<in out fd extends Function.Decl.Proto> {
|
|
4
|
-
(params: Static<fd['parameters']>,
|
|
5
|
+
(params: Static<fd['parameters']>, fc: Function.Call<fd>): Promise<string | Media>;
|
|
5
6
|
}
|
|
6
7
|
export declare namespace Function {
|
|
7
8
|
namespace Name {
|
|
@@ -47,8 +48,8 @@ export declare namespace Function {
|
|
|
47
48
|
id?: string;
|
|
48
49
|
name: fd['name'];
|
|
49
50
|
args: Static<fd['parameters']>;
|
|
50
|
-
protected constructor(
|
|
51
|
-
static of<fdu extends Function.Decl.Proto>(
|
|
51
|
+
protected constructor(fc: Omit<Call<fd>, never>);
|
|
52
|
+
static of<fdu extends Function.Decl.Proto>(fc: Function.Call.Options.Of<fdu>): Function.Call.Of<fdu>;
|
|
52
53
|
}
|
|
53
54
|
namespace Call {
|
|
54
55
|
type Of<fdu extends Function.Decl.Proto> = fdu extends infer fd extends Function.Decl.Proto ? Function.Call<fd> : never;
|
|
@@ -62,7 +63,7 @@ export declare namespace Function {
|
|
|
62
63
|
abstract class Response<in out fd extends Function.Decl.Proto> {
|
|
63
64
|
id?: string;
|
|
64
65
|
name: fd['name'];
|
|
65
|
-
protected constructor(
|
|
66
|
+
protected constructor(fr: Omit<Function.Response<fd>, never>);
|
|
66
67
|
}
|
|
67
68
|
namespace Response {
|
|
68
69
|
type Of<fdu extends Function.Decl.Proto> = fdu extends infer fd extends Function.Decl.Proto ? Function.Response<fd> : never;
|
|
@@ -70,8 +71,8 @@ export declare namespace Function {
|
|
|
70
71
|
class Successful<in out fd extends Function.Decl.Proto> extends Function.Response<fd> {
|
|
71
72
|
protected [NOMINAL]: never;
|
|
72
73
|
text: string;
|
|
73
|
-
protected constructor(
|
|
74
|
-
static of<fdu extends Function.Decl.Proto>(
|
|
74
|
+
protected constructor(fr: Function.Response.Successful.Options<fd>);
|
|
75
|
+
static of<fdu extends Function.Decl.Proto>(fr: Function.Response.Successful.Options.Of<fdu>): Function.Response.Successful.Of<fdu>;
|
|
75
76
|
}
|
|
76
77
|
namespace Successful {
|
|
77
78
|
type Of<fdu extends Function.Decl.Proto> = fdu extends infer fd extends Function.Decl.Proto ? Function.Response.Successful<fd> : never;
|
|
@@ -85,8 +86,8 @@ export declare namespace Function {
|
|
|
85
86
|
class Failed<in out fd extends Function.Decl.Proto> extends Function.Response<fd> {
|
|
86
87
|
protected [NOMINAL]: never;
|
|
87
88
|
error: string;
|
|
88
|
-
protected constructor(
|
|
89
|
-
static of<fdu extends Function.Decl.Proto>(
|
|
89
|
+
protected constructor(fr: Function.Response.Failed.Options<fd>);
|
|
90
|
+
static of<fdu extends Function.Decl.Proto>(fr: Function.Response.Failed.Options.Of<fdu>): Function.Response.Failed.Of<fdu>;
|
|
90
91
|
}
|
|
91
92
|
namespace Failed {
|
|
92
93
|
type Options<fd extends Function.Decl.Proto> = Omit<Function.Response.Failed<fd>, never>;
|