@effect/ai-openai 4.0.0-beta.2 → 4.0.0-beta.21
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/dist/Generated.d.ts +4045 -4037
- package/dist/Generated.d.ts.map +1 -1
- package/dist/Generated.js +1 -1
- package/dist/Generated.js.map +1 -1
- package/dist/OpenAiClient.d.ts +3 -3
- package/dist/OpenAiClient.d.ts.map +1 -1
- package/dist/OpenAiError.d.ts +22 -32
- package/dist/OpenAiError.d.ts.map +1 -1
- package/dist/OpenAiLanguageModel.d.ts.map +1 -1
- package/dist/OpenAiLanguageModel.js +70 -20
- package/dist/OpenAiLanguageModel.js.map +1 -1
- package/dist/OpenAiTool.d.ts +24 -24
- package/package.json +3 -3
- package/src/Generated.ts +105 -121
- package/src/OpenAiClient.ts +3 -3
- package/src/OpenAiError.ts +24 -32
- package/src/OpenAiLanguageModel.ts +97 -20
package/dist/OpenAiClient.d.ts
CHANGED
|
@@ -102,7 +102,7 @@ export declare const layerConfig: (options?: {
|
|
|
102
102
|
/**
|
|
103
103
|
* The config value to load for the API key.
|
|
104
104
|
*/
|
|
105
|
-
readonly apiKey?: Config.Config<Redacted.Redacted<string
|
|
105
|
+
readonly apiKey?: Config.Config<Redacted.Redacted<string> | undefined> | undefined;
|
|
106
106
|
/**
|
|
107
107
|
* The config value to load for the API URL.
|
|
108
108
|
*/
|
|
@@ -110,11 +110,11 @@ export declare const layerConfig: (options?: {
|
|
|
110
110
|
/**
|
|
111
111
|
* The config value to load for the organization ID.
|
|
112
112
|
*/
|
|
113
|
-
readonly organizationId?: Config.Config<Redacted.Redacted<string
|
|
113
|
+
readonly organizationId?: Config.Config<Redacted.Redacted<string> | undefined> | undefined;
|
|
114
114
|
/**
|
|
115
115
|
* The config value to load for the project ID.
|
|
116
116
|
*/
|
|
117
|
-
readonly projectId?: Config.Config<Redacted.Redacted<string
|
|
117
|
+
readonly projectId?: Config.Config<Redacted.Redacted<string> | undefined> | undefined;
|
|
118
118
|
/**
|
|
119
119
|
* Optional transformer for the HTTP client.
|
|
120
120
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAiClient.d.ts","sourceRoot":"","sources":["../src/OpenAiClient.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"OpenAiClient.d.ts","sourceRoot":"","sources":["../src/OpenAiClient.ts"],"names":[],"mappings":"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"}
|
package/dist/OpenAiError.d.ts
CHANGED
|
@@ -54,45 +54,35 @@ export type OpenAiRateLimitMetadata = OpenAiErrorMetadata & {
|
|
|
54
54
|
readonly resetTokens: string | null;
|
|
55
55
|
};
|
|
56
56
|
declare module "effect/unstable/ai/AiError" {
|
|
57
|
-
interface
|
|
58
|
-
readonly
|
|
59
|
-
readonly openai?: OpenAiRateLimitMetadata | null;
|
|
60
|
-
};
|
|
57
|
+
interface RateLimitErrorMetadata {
|
|
58
|
+
readonly openai?: OpenAiRateLimitMetadata | null;
|
|
61
59
|
}
|
|
62
|
-
interface
|
|
63
|
-
readonly
|
|
64
|
-
readonly openai?: OpenAiErrorMetadata | null;
|
|
65
|
-
};
|
|
60
|
+
interface QuotaExhaustedErrorMetadata {
|
|
61
|
+
readonly openai?: OpenAiErrorMetadata | null;
|
|
66
62
|
}
|
|
67
|
-
interface
|
|
68
|
-
readonly
|
|
69
|
-
readonly openai?: OpenAiErrorMetadata | null;
|
|
70
|
-
};
|
|
63
|
+
interface AuthenticationErrorMetadata {
|
|
64
|
+
readonly openai?: OpenAiErrorMetadata | null;
|
|
71
65
|
}
|
|
72
|
-
interface
|
|
73
|
-
readonly
|
|
74
|
-
readonly openai?: OpenAiErrorMetadata | null;
|
|
75
|
-
};
|
|
66
|
+
interface ContentPolicyErrorMetadata {
|
|
67
|
+
readonly openai?: OpenAiErrorMetadata | null;
|
|
76
68
|
}
|
|
77
|
-
interface
|
|
78
|
-
readonly
|
|
79
|
-
readonly openai?: OpenAiErrorMetadata | null;
|
|
80
|
-
};
|
|
69
|
+
interface InvalidRequestErrorMetadata {
|
|
70
|
+
readonly openai?: OpenAiErrorMetadata | null;
|
|
81
71
|
}
|
|
82
|
-
interface
|
|
83
|
-
readonly
|
|
84
|
-
readonly openai?: OpenAiErrorMetadata | null;
|
|
85
|
-
};
|
|
72
|
+
interface InternalProviderErrorMetadata {
|
|
73
|
+
readonly openai?: OpenAiErrorMetadata | null;
|
|
86
74
|
}
|
|
87
|
-
interface
|
|
88
|
-
readonly
|
|
89
|
-
readonly openai?: OpenAiErrorMetadata | null;
|
|
90
|
-
};
|
|
75
|
+
interface InvalidOutputErrorMetadata {
|
|
76
|
+
readonly openai?: OpenAiErrorMetadata | null;
|
|
91
77
|
}
|
|
92
|
-
interface
|
|
93
|
-
readonly
|
|
94
|
-
|
|
95
|
-
|
|
78
|
+
interface StructuredOutputErrorMetadata {
|
|
79
|
+
readonly openai?: OpenAiErrorMetadata | null;
|
|
80
|
+
}
|
|
81
|
+
interface UnsupportedSchemaErrorMetadata {
|
|
82
|
+
readonly openai?: OpenAiErrorMetadata | null;
|
|
83
|
+
}
|
|
84
|
+
interface UnknownErrorMetadata {
|
|
85
|
+
readonly openai?: OpenAiErrorMetadata | null;
|
|
96
86
|
}
|
|
97
87
|
}
|
|
98
88
|
//# sourceMappingURL=OpenAiError.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAiError.d.ts","sourceRoot":"","sources":["../src/OpenAiError.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAClC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,uBAAuB,GAAG,mBAAmB,GAAG;IAC1D;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC;;OAEG;IACH,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CACpC,CAAA;AAED,OAAO,QAAQ,4BAA4B,CAAC;IAC1C,UAAiB,
|
|
1
|
+
{"version":3,"file":"OpenAiError.d.ts","sourceRoot":"","sources":["../src/OpenAiError.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAClC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,uBAAuB,GAAG,mBAAmB,GAAG;IAC1D;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC;;OAEG;IACH,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CACpC,CAAA;AAED,OAAO,QAAQ,4BAA4B,CAAC;IAC1C,UAAiB,sBAAsB;QACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,uBAAuB,GAAG,IAAI,CAAA;KACjD;IAED,UAAiB,2BAA2B;QAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;KAC7C;IAED,UAAiB,2BAA2B;QAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;KAC7C;IAED,UAAiB,0BAA0B;QACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;KAC7C;IAED,UAAiB,2BAA2B;QAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;KAC7C;IAED,UAAiB,6BAA6B;QAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;KAC7C;IAED,UAAiB,0BAA0B;QACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;KAC7C;IAED,UAAiB,6BAA6B;QAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;KAC7C;IAED,UAAiB,8BAA8B;QAC7C,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;KAC7C;IAED,UAAiB,oBAAoB;QACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;KAC7C;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAiLanguageModel.d.ts","sourceRoot":"","sources":["../src/OpenAiLanguageModel.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAM/C,OAAO,KAAK,aAAa,MAAM,kCAAkC,CAAA;AACjE,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"OpenAiLanguageModel.d.ts","sourceRoot":"","sources":["../src/OpenAiLanguageModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import * as DateTime from "effect/DateTime";
|
|
10
10
|
import * as Effect from "effect/Effect";
|
|
11
|
-
import * as
|
|
11
|
+
import * as Encoding from "effect/Encoding";
|
|
12
12
|
import { dual } from "effect/Function";
|
|
13
13
|
import * as Layer from "effect/Layer";
|
|
14
14
|
import * as Predicate from "effect/Predicate";
|
|
@@ -21,6 +21,7 @@ import * as AiError from "effect/unstable/ai/AiError";
|
|
|
21
21
|
import * as IdGenerator from "effect/unstable/ai/IdGenerator";
|
|
22
22
|
import * as LanguageModel from "effect/unstable/ai/LanguageModel";
|
|
23
23
|
import * as AiModel from "effect/unstable/ai/Model";
|
|
24
|
+
import { toCodecOpenAI } from "effect/unstable/ai/OpenAiStructuredOutput";
|
|
24
25
|
import * as Tool from "effect/unstable/ai/Tool";
|
|
25
26
|
import * as Generated from "./Generated.js";
|
|
26
27
|
import * as InternalUtilities from "./internal/utilities.js";
|
|
@@ -45,7 +46,7 @@ export class Config extends /*#__PURE__*/ServiceMap.Service()("@effect/ai-openai
|
|
|
45
46
|
* @since 1.0.0
|
|
46
47
|
* @category constructors
|
|
47
48
|
*/
|
|
48
|
-
export const model = (model, config) => AiModel.make("openai", layer({
|
|
49
|
+
export const model = (model, config) => AiModel.make("openai", model, layer({
|
|
49
50
|
model,
|
|
50
51
|
config
|
|
51
52
|
}));
|
|
@@ -58,7 +59,7 @@ export const model = (model, config) => AiModel.make("openai", layer({
|
|
|
58
59
|
// model: (string & {}) | Model,
|
|
59
60
|
// config?: Omit<typeof Config.Service, "model">
|
|
60
61
|
// ): AiModel.Model<"openai", LanguageModel.LanguageModel | Tokenizer.Tokenizer, OpenAiClient> =>
|
|
61
|
-
// AiModel.make("openai", layerWithTokenizer({ model, config }))
|
|
62
|
+
// AiModel.make("openai", model, layerWithTokenizer({ model, config }))
|
|
62
63
|
/**
|
|
63
64
|
* Creates an OpenAI language model service.
|
|
64
65
|
*
|
|
@@ -100,7 +101,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
100
101
|
options,
|
|
101
102
|
toolNameMapper
|
|
102
103
|
});
|
|
103
|
-
const responseFormat = prepareResponseFormat({
|
|
104
|
+
const responseFormat = yield* prepareResponseFormat({
|
|
104
105
|
config,
|
|
105
106
|
options
|
|
106
107
|
});
|
|
@@ -161,7 +162,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
161
162
|
annotateStreamResponse(options.span, response);
|
|
162
163
|
return response;
|
|
163
164
|
})))
|
|
164
|
-
});
|
|
165
|
+
}).pipe(Effect.provideService(LanguageModel.CurrentCodecTransformer, toCodecOpenAI));
|
|
165
166
|
});
|
|
166
167
|
/**
|
|
167
168
|
* Creates a layer for the OpenAI language model.
|
|
@@ -258,7 +259,7 @@ const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
258
259
|
});
|
|
259
260
|
}
|
|
260
261
|
if (part.data instanceof Uint8Array) {
|
|
261
|
-
const base64 =
|
|
262
|
+
const base64 = Encoding.encodeBase64(part.data);
|
|
262
263
|
const imageUrl = `data:${mediaType};base64,${base64}`;
|
|
263
264
|
content.push({
|
|
264
265
|
type: "input_image",
|
|
@@ -280,7 +281,7 @@ const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
280
281
|
});
|
|
281
282
|
}
|
|
282
283
|
if (part.data instanceof Uint8Array) {
|
|
283
|
-
const base64 =
|
|
284
|
+
const base64 = Encoding.encodeBase64(part.data);
|
|
284
285
|
const fileName = part.fileName ?? `part-${index}.pdf`;
|
|
285
286
|
const fileData = `data:application/pdf;base64,${base64}`;
|
|
286
287
|
content.push({
|
|
@@ -669,9 +670,8 @@ const makeResponse = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
669
670
|
{
|
|
670
671
|
hasToolCalls = true;
|
|
671
672
|
const toolName = part.name;
|
|
672
|
-
const toolParams =
|
|
673
|
-
|
|
674
|
-
try: () => Tool.unsafeSecureJsonParse(toolParams),
|
|
673
|
+
const toolParams = yield* Effect.try({
|
|
674
|
+
try: () => Tool.unsafeSecureJsonParse(part.arguments),
|
|
675
675
|
catch: cause => AiError.make({
|
|
676
676
|
module: "OpenAiLanguageModel",
|
|
677
677
|
method: "makeResponse",
|
|
@@ -682,6 +682,7 @@ const makeResponse = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
682
682
|
})
|
|
683
683
|
})
|
|
684
684
|
});
|
|
685
|
+
const params = yield* transformToolCallParams(options.tools, part.name, toolParams);
|
|
685
686
|
parts.push({
|
|
686
687
|
type: "tool-call",
|
|
687
688
|
id: part.call_id,
|
|
@@ -1375,9 +1376,9 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
1375
1376
|
delete activeToolCalls[event.output_index];
|
|
1376
1377
|
hasToolCalls = true;
|
|
1377
1378
|
const toolName = event.item.name;
|
|
1378
|
-
const
|
|
1379
|
-
const
|
|
1380
|
-
try: () => Tool.unsafeSecureJsonParse(
|
|
1379
|
+
const toolArgs = event.item.arguments;
|
|
1380
|
+
const toolParams = yield* Effect.try({
|
|
1381
|
+
try: () => Tool.unsafeSecureJsonParse(toolArgs),
|
|
1381
1382
|
catch: cause => AiError.make({
|
|
1382
1383
|
module: "OpenAiLanguageModel",
|
|
1383
1384
|
method: "makeStreamResponse",
|
|
@@ -1388,6 +1389,7 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
1388
1389
|
})
|
|
1389
1390
|
})
|
|
1390
1391
|
});
|
|
1392
|
+
const params = yield* transformToolCallParams(options.tools, toolName, toolParams);
|
|
1391
1393
|
parts.push({
|
|
1392
1394
|
type: "tool-params-end",
|
|
1393
1395
|
id: event.item.call_id
|
|
@@ -1938,12 +1940,16 @@ const prepareTools = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
1938
1940
|
for (const tool of allowedTools) {
|
|
1939
1941
|
if (Tool.isUserDefined(tool)) {
|
|
1940
1942
|
const strict = Tool.getStrictMode(tool) ?? config.strictJsonSchema ?? true;
|
|
1943
|
+
const description = Tool.getDescription(tool);
|
|
1944
|
+
const parameters = yield* tryJsonSchema(tool.parametersSchema, "prepareTools");
|
|
1941
1945
|
tools.push({
|
|
1942
1946
|
type: "function",
|
|
1943
1947
|
name: tool.name,
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1948
|
+
parameters,
|
|
1949
|
+
strict,
|
|
1950
|
+
...(Predicate.isNotUndefined(description) ? {
|
|
1951
|
+
description
|
|
1952
|
+
} : undefined)
|
|
1947
1953
|
});
|
|
1948
1954
|
}
|
|
1949
1955
|
if (Tool.isProviderDefined(tool)) {
|
|
@@ -2115,25 +2121,43 @@ const makeItemIdMetadata = itemId => Predicate.isNotUndefined(itemId) ? {
|
|
|
2115
2121
|
const makeEncryptedContentMetadata = encryptedContent => Predicate.isNotNullish(encryptedContent) ? {
|
|
2116
2122
|
encryptedContent
|
|
2117
2123
|
} : undefined;
|
|
2118
|
-
const
|
|
2124
|
+
const unsupportedSchemaError = (error, method) => AiError.make({
|
|
2125
|
+
module: "OpenAiLanguageModel",
|
|
2126
|
+
method,
|
|
2127
|
+
reason: new AiError.UnsupportedSchemaError({
|
|
2128
|
+
description: error instanceof Error ? error.message : String(error)
|
|
2129
|
+
})
|
|
2130
|
+
});
|
|
2131
|
+
const tryCodecTransform = (schema, method) => Effect.try({
|
|
2132
|
+
try: () => toCodecOpenAI(schema),
|
|
2133
|
+
catch: error => unsupportedSchemaError(error, method)
|
|
2134
|
+
});
|
|
2135
|
+
const tryJsonSchema = (schema, method) => Effect.try({
|
|
2136
|
+
try: () => Tool.getJsonSchemaFromSchema(schema, {
|
|
2137
|
+
transformer: toCodecOpenAI
|
|
2138
|
+
}),
|
|
2139
|
+
catch: error => unsupportedSchemaError(error, method)
|
|
2140
|
+
});
|
|
2141
|
+
const prepareResponseFormat = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
2119
2142
|
config,
|
|
2120
2143
|
options
|
|
2121
|
-
})
|
|
2144
|
+
}) {
|
|
2122
2145
|
if (options.responseFormat.type === "json") {
|
|
2123
2146
|
const name = options.responseFormat.objectName;
|
|
2124
2147
|
const schema = options.responseFormat.schema;
|
|
2148
|
+
const jsonSchema = yield* tryJsonSchema(schema, "prepareResponseFormat");
|
|
2125
2149
|
return {
|
|
2126
2150
|
type: "json_schema",
|
|
2127
2151
|
name,
|
|
2128
2152
|
description: AST.resolveDescription(schema.ast) ?? "Response with a JSON object",
|
|
2129
|
-
schema:
|
|
2153
|
+
schema: jsonSchema,
|
|
2130
2154
|
strict: config.strictJsonSchema ?? true
|
|
2131
2155
|
};
|
|
2132
2156
|
}
|
|
2133
2157
|
return {
|
|
2134
2158
|
type: "text"
|
|
2135
2159
|
};
|
|
2136
|
-
};
|
|
2160
|
+
});
|
|
2137
2161
|
const getModelCapabilities = modelId => {
|
|
2138
2162
|
const supportsFlexProcessing = modelId.startsWith("o3") || modelId.startsWith("o4-mini") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-chat");
|
|
2139
2163
|
const supportsPriorityProcessing = modelId.startsWith("gpt-4") || modelId.startsWith("gpt-5-mini") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-nano") && !modelId.startsWith("gpt-5-chat") || modelId.startsWith("o3") || modelId.startsWith("o4-mini");
|
|
@@ -2204,4 +2228,30 @@ const getUsage = usage => {
|
|
|
2204
2228
|
}
|
|
2205
2229
|
};
|
|
2206
2230
|
};
|
|
2231
|
+
const transformToolCallParams = /*#__PURE__*/Effect.fnUntraced(function* (tools, toolName, toolParams) {
|
|
2232
|
+
const tool = tools.find(tool => tool.name === toolName);
|
|
2233
|
+
if (Predicate.isUndefined(tool)) {
|
|
2234
|
+
return yield* AiError.make({
|
|
2235
|
+
module: "OpenAiLanguageModel",
|
|
2236
|
+
method: "makeResponse",
|
|
2237
|
+
reason: new AiError.ToolNotFoundError({
|
|
2238
|
+
toolName,
|
|
2239
|
+
availableTools: tools.map(tool => tool.name)
|
|
2240
|
+
})
|
|
2241
|
+
});
|
|
2242
|
+
}
|
|
2243
|
+
const {
|
|
2244
|
+
codec
|
|
2245
|
+
} = yield* tryCodecTransform(tool.parametersSchema, "makeResponse");
|
|
2246
|
+
const transform = Schema.decodeEffect(codec);
|
|
2247
|
+
return yield* transform(toolParams).pipe(Effect.mapError(error => AiError.make({
|
|
2248
|
+
module: "OpenAiLanguageModel",
|
|
2249
|
+
method: "makeResponse",
|
|
2250
|
+
reason: new AiError.ToolParameterValidationError({
|
|
2251
|
+
toolName,
|
|
2252
|
+
toolParams,
|
|
2253
|
+
description: error.issue.toString()
|
|
2254
|
+
})
|
|
2255
|
+
})));
|
|
2256
|
+
});
|
|
2207
2257
|
//# sourceMappingURL=OpenAiLanguageModel.js.map
|