@effect/ai 0.26.0 → 0.27.0
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/Chat/package.json +6 -0
- package/EmbeddingModel/package.json +6 -0
- package/IdGenerator/package.json +6 -0
- package/LanguageModel/package.json +6 -0
- package/Model/package.json +6 -0
- package/Prompt/package.json +6 -0
- package/Response/package.json +6 -0
- package/Telemetry/package.json +6 -0
- package/Tool/package.json +6 -0
- package/Toolkit/package.json +6 -0
- package/dist/cjs/AiError.js +575 -11
- package/dist/cjs/AiError.js.map +1 -1
- package/dist/cjs/Chat.js +302 -0
- package/dist/cjs/Chat.js.map +1 -0
- package/dist/cjs/EmbeddingModel.js +184 -0
- package/dist/cjs/EmbeddingModel.js.map +1 -0
- package/dist/cjs/IdGenerator.js +255 -0
- package/dist/cjs/IdGenerator.js.map +1 -0
- package/dist/cjs/LanguageModel.js +584 -0
- package/dist/cjs/LanguageModel.js.map +1 -0
- package/dist/cjs/McpServer.js +12 -4
- package/dist/cjs/McpServer.js.map +1 -1
- package/dist/cjs/Model.js +118 -0
- package/dist/cjs/Model.js.map +1 -0
- package/dist/cjs/Prompt.js +649 -0
- package/dist/cjs/Prompt.js.map +1 -0
- package/dist/cjs/Response.js +635 -0
- package/dist/cjs/Response.js.map +1 -0
- package/dist/cjs/Telemetry.js +176 -0
- package/dist/cjs/Telemetry.js.map +1 -0
- package/dist/cjs/Tokenizer.js +87 -8
- package/dist/cjs/Tokenizer.js.map +1 -1
- package/dist/cjs/Tool.js +556 -0
- package/dist/cjs/Tool.js.map +1 -0
- package/dist/cjs/Toolkit.js +279 -0
- package/dist/cjs/Toolkit.js.map +1 -0
- package/dist/cjs/index.js +21 -19
- package/dist/dts/AiError.d.ts +577 -9
- package/dist/dts/AiError.d.ts.map +1 -1
- package/dist/dts/Chat.d.ts +356 -0
- package/dist/dts/Chat.d.ts.map +1 -0
- package/dist/dts/EmbeddingModel.d.ts +153 -0
- package/dist/dts/EmbeddingModel.d.ts.map +1 -0
- package/dist/dts/IdGenerator.d.ts +272 -0
- package/dist/dts/IdGenerator.d.ts.map +1 -0
- package/dist/dts/LanguageModel.d.ts +458 -0
- package/dist/dts/LanguageModel.d.ts.map +1 -0
- package/dist/dts/McpSchema.d.ts +25 -25
- package/dist/dts/McpServer.d.ts +6 -4
- package/dist/dts/McpServer.d.ts.map +1 -1
- package/dist/dts/Model.d.ts +124 -0
- package/dist/dts/Model.d.ts.map +1 -0
- package/dist/dts/Prompt.d.ts +1119 -0
- package/dist/dts/Prompt.d.ts.map +1 -0
- package/dist/dts/Response.d.ts +1519 -0
- package/dist/dts/Response.d.ts.map +1 -0
- package/dist/dts/Telemetry.d.ts +520 -0
- package/dist/dts/Telemetry.d.ts.map +1 -0
- package/dist/dts/Tokenizer.d.ts +131 -13
- package/dist/dts/Tokenizer.d.ts.map +1 -1
- package/dist/dts/Tool.d.ts +876 -0
- package/dist/dts/Tool.d.ts.map +1 -0
- package/dist/dts/Toolkit.d.ts +310 -0
- package/dist/dts/Toolkit.d.ts.map +1 -0
- package/dist/dts/index.d.ts +498 -13
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/esm/AiError.js +570 -10
- package/dist/esm/AiError.js.map +1 -1
- package/dist/esm/Chat.js +291 -0
- package/dist/esm/Chat.js.map +1 -0
- package/dist/esm/EmbeddingModel.js +173 -0
- package/dist/esm/EmbeddingModel.js.map +1 -0
- package/dist/esm/IdGenerator.js +245 -0
- package/dist/esm/IdGenerator.js.map +1 -0
- package/dist/esm/LanguageModel.js +572 -0
- package/dist/esm/LanguageModel.js.map +1 -0
- package/dist/esm/McpServer.js +12 -4
- package/dist/esm/McpServer.js.map +1 -1
- package/dist/esm/Model.js +108 -0
- package/dist/esm/Model.js.map +1 -0
- package/dist/esm/Prompt.js +633 -0
- package/dist/esm/Prompt.js.map +1 -0
- package/dist/esm/Response.js +619 -0
- package/dist/esm/Response.js.map +1 -0
- package/dist/esm/Telemetry.js +166 -0
- package/dist/esm/Telemetry.js.map +1 -0
- package/dist/esm/Tokenizer.js +87 -8
- package/dist/esm/Tokenizer.js.map +1 -1
- package/dist/esm/Tool.js +534 -0
- package/dist/esm/Tool.js.map +1 -0
- package/dist/esm/Toolkit.js +269 -0
- package/dist/esm/Toolkit.js.map +1 -0
- package/dist/esm/index.js +498 -13
- package/dist/esm/index.js.map +1 -1
- package/package.json +76 -68
- package/src/AiError.ts +739 -9
- package/src/Chat.ts +546 -0
- package/src/EmbeddingModel.ts +311 -0
- package/src/IdGenerator.ts +320 -0
- package/src/LanguageModel.ts +1074 -0
- package/src/McpServer.ts +337 -194
- package/src/Model.ts +155 -0
- package/src/Prompt.ts +1616 -0
- package/src/Response.ts +2131 -0
- package/src/Telemetry.ts +655 -0
- package/src/Tokenizer.ts +145 -24
- package/src/Tool.ts +1267 -0
- package/src/Toolkit.ts +516 -0
- package/src/index.ts +499 -13
- package/AiChat/package.json +0 -6
- package/AiEmbeddingModel/package.json +0 -6
- package/AiInput/package.json +0 -6
- package/AiLanguageModel/package.json +0 -6
- package/AiModel/package.json +0 -6
- package/AiResponse/package.json +0 -6
- package/AiTelemetry/package.json +0 -6
- package/AiTool/package.json +0 -6
- package/AiToolkit/package.json +0 -6
- package/dist/cjs/AiChat.js +0 -122
- package/dist/cjs/AiChat.js.map +0 -1
- package/dist/cjs/AiEmbeddingModel.js +0 -109
- package/dist/cjs/AiEmbeddingModel.js.map +0 -1
- package/dist/cjs/AiInput.js +0 -458
- package/dist/cjs/AiInput.js.map +0 -1
- package/dist/cjs/AiLanguageModel.js +0 -351
- package/dist/cjs/AiLanguageModel.js.map +0 -1
- package/dist/cjs/AiModel.js +0 -37
- package/dist/cjs/AiModel.js.map +0 -1
- package/dist/cjs/AiResponse.js +0 -681
- package/dist/cjs/AiResponse.js.map +0 -1
- package/dist/cjs/AiTelemetry.js +0 -58
- package/dist/cjs/AiTelemetry.js.map +0 -1
- package/dist/cjs/AiTool.js +0 -150
- package/dist/cjs/AiTool.js.map +0 -1
- package/dist/cjs/AiToolkit.js +0 -157
- package/dist/cjs/AiToolkit.js.map +0 -1
- package/dist/cjs/internal/common.js +0 -21
- package/dist/cjs/internal/common.js.map +0 -1
- package/dist/dts/AiChat.d.ts +0 -101
- package/dist/dts/AiChat.d.ts.map +0 -1
- package/dist/dts/AiEmbeddingModel.d.ts +0 -65
- package/dist/dts/AiEmbeddingModel.d.ts.map +0 -1
- package/dist/dts/AiInput.d.ts +0 -590
- package/dist/dts/AiInput.d.ts.map +0 -1
- package/dist/dts/AiLanguageModel.d.ts +0 -302
- package/dist/dts/AiLanguageModel.d.ts.map +0 -1
- package/dist/dts/AiModel.d.ts +0 -25
- package/dist/dts/AiModel.d.ts.map +0 -1
- package/dist/dts/AiResponse.d.ts +0 -863
- package/dist/dts/AiResponse.d.ts.map +0 -1
- package/dist/dts/AiTelemetry.d.ts +0 -242
- package/dist/dts/AiTelemetry.d.ts.map +0 -1
- package/dist/dts/AiTool.d.ts +0 -334
- package/dist/dts/AiTool.d.ts.map +0 -1
- package/dist/dts/AiToolkit.d.ts +0 -96
- package/dist/dts/AiToolkit.d.ts.map +0 -1
- package/dist/dts/internal/common.d.ts +0 -2
- package/dist/dts/internal/common.d.ts.map +0 -1
- package/dist/esm/AiChat.js +0 -111
- package/dist/esm/AiChat.js.map +0 -1
- package/dist/esm/AiEmbeddingModel.js +0 -98
- package/dist/esm/AiEmbeddingModel.js.map +0 -1
- package/dist/esm/AiInput.js +0 -433
- package/dist/esm/AiInput.js.map +0 -1
- package/dist/esm/AiLanguageModel.js +0 -340
- package/dist/esm/AiLanguageModel.js.map +0 -1
- package/dist/esm/AiModel.js +0 -29
- package/dist/esm/AiModel.js.map +0 -1
- package/dist/esm/AiResponse.js +0 -657
- package/dist/esm/AiResponse.js.map +0 -1
- package/dist/esm/AiTelemetry.js +0 -48
- package/dist/esm/AiTelemetry.js.map +0 -1
- package/dist/esm/AiTool.js +0 -134
- package/dist/esm/AiTool.js.map +0 -1
- package/dist/esm/AiToolkit.js +0 -147
- package/dist/esm/AiToolkit.js.map +0 -1
- package/dist/esm/internal/common.js +0 -14
- package/dist/esm/internal/common.js.map +0 -1
- package/src/AiChat.ts +0 -251
- package/src/AiEmbeddingModel.ts +0 -169
- package/src/AiInput.ts +0 -602
- package/src/AiLanguageModel.ts +0 -685
- package/src/AiModel.ts +0 -53
- package/src/AiResponse.ts +0 -986
- package/src/AiTelemetry.ts +0 -333
- package/src/AiTool.ts +0 -579
- package/src/AiToolkit.ts +0 -265
- package/src/internal/common.ts +0 -12
|
@@ -1,351 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.streamText = exports.make = exports.generateText = exports.generateObject = exports.CurrentToolCallIdGenerator = exports.AiLanguageModel = void 0;
|
|
7
|
-
var _Context = _interopRequireWildcard(require("effect/Context"));
|
|
8
|
-
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
9
|
-
var JsonSchema = _interopRequireWildcard(require("effect/JSONSchema"));
|
|
10
|
-
var Option = _interopRequireWildcard(require("effect/Option"));
|
|
11
|
-
var Predicate = _interopRequireWildcard(require("effect/Predicate"));
|
|
12
|
-
var Random = _interopRequireWildcard(require("effect/Random"));
|
|
13
|
-
var Schema = _interopRequireWildcard(require("effect/Schema"));
|
|
14
|
-
var AST = _interopRequireWildcard(require("effect/SchemaAST"));
|
|
15
|
-
var Stream = _interopRequireWildcard(require("effect/Stream"));
|
|
16
|
-
var _AiError = require("./AiError.js");
|
|
17
|
-
var AiInput = _interopRequireWildcard(require("./AiInput.js"));
|
|
18
|
-
var AiResponse = _interopRequireWildcard(require("./AiResponse.js"));
|
|
19
|
-
var _AiTelemetry = require("./AiTelemetry.js");
|
|
20
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
21
|
-
/**
|
|
22
|
-
* @since 1.0.0
|
|
23
|
-
*/
|
|
24
|
-
|
|
25
|
-
const constDisableValidation = {
|
|
26
|
-
disableValidation: true
|
|
27
|
-
};
|
|
28
|
-
/**
|
|
29
|
-
* @since 1.0.0
|
|
30
|
-
* @category Context
|
|
31
|
-
*/
|
|
32
|
-
class AiLanguageModel extends /*#__PURE__*/_Context.Tag("@effect/ai/AiLanguageModel")() {}
|
|
33
|
-
exports.AiLanguageModel = AiLanguageModel;
|
|
34
|
-
const ALPHANUMS = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
|
|
35
|
-
const DefaultToolCallIdGenerator = {
|
|
36
|
-
generateId: /*#__PURE__*/Effect.fnUntraced(function* () {
|
|
37
|
-
const chars = new Array(32);
|
|
38
|
-
for (let i = 0; i < 32; i++) {
|
|
39
|
-
chars[i] = ALPHANUMS[yield* Random.nextIntBetween(0, ALPHANUMS.length - 1)];
|
|
40
|
-
}
|
|
41
|
-
return `tool_${chars.join("")}`;
|
|
42
|
-
})
|
|
43
|
-
};
|
|
44
|
-
/**
|
|
45
|
-
* @since 1.0.0
|
|
46
|
-
* @category Context
|
|
47
|
-
*/
|
|
48
|
-
class CurrentToolCallIdGenerator extends /*#__PURE__*/_Context.Tag("@effect/ai/CurrentToolCallIdGenerator")() {}
|
|
49
|
-
exports.CurrentToolCallIdGenerator = CurrentToolCallIdGenerator;
|
|
50
|
-
const constEmptyMap = /*#__PURE__*/new Map();
|
|
51
|
-
/**
|
|
52
|
-
* @since 1.0.0
|
|
53
|
-
* @category Constructors
|
|
54
|
-
*/
|
|
55
|
-
const make = exports.make = /*#__PURE__*/Effect.fnUntraced(function* (opts) {
|
|
56
|
-
const parentSpanTransformer = yield* Effect.serviceOption(_AiTelemetry.CurrentSpanTransformer);
|
|
57
|
-
const getSpanTransformer = Effect.serviceOption(_AiTelemetry.CurrentSpanTransformer).pipe(Effect.map(Option.orElse(() => parentSpanTransformer)));
|
|
58
|
-
const toolCallIdGenerator = yield* Effect.serviceOption(CurrentToolCallIdGenerator).pipe(Effect.map(Option.getOrElse(() => DefaultToolCallIdGenerator)));
|
|
59
|
-
const generateText = ({
|
|
60
|
-
concurrency,
|
|
61
|
-
toolChoice = "auto",
|
|
62
|
-
toolkit,
|
|
63
|
-
...options
|
|
64
|
-
}) => Effect.useSpan("AiLanguageModel.generateText", {
|
|
65
|
-
captureStackTrace: false,
|
|
66
|
-
attributes: {
|
|
67
|
-
concurrency,
|
|
68
|
-
toolChoice
|
|
69
|
-
}
|
|
70
|
-
}, Effect.fnUntraced(function* (span) {
|
|
71
|
-
const prompt = AiInput.make(options.prompt);
|
|
72
|
-
const system = Option.fromNullable(options.system);
|
|
73
|
-
const spanTransformer = yield* getSpanTransformer;
|
|
74
|
-
const modelOptions = {
|
|
75
|
-
prompt,
|
|
76
|
-
system,
|
|
77
|
-
tools: [],
|
|
78
|
-
toolChoice: "none",
|
|
79
|
-
span
|
|
80
|
-
};
|
|
81
|
-
if (Predicate.isUndefined(toolkit)) {
|
|
82
|
-
const response = yield* opts.generateText(modelOptions);
|
|
83
|
-
if (Option.isSome(spanTransformer)) {
|
|
84
|
-
spanTransformer.value({
|
|
85
|
-
...modelOptions,
|
|
86
|
-
response
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
return response;
|
|
90
|
-
}
|
|
91
|
-
modelOptions.toolChoice = toolChoice;
|
|
92
|
-
const actualToolkit = Effect.isEffect(toolkit) ? yield* toolkit : toolkit;
|
|
93
|
-
for (const tool of actualToolkit.tools) {
|
|
94
|
-
modelOptions.tools.push(convertTool(tool));
|
|
95
|
-
}
|
|
96
|
-
const response = yield* opts.generateText(modelOptions);
|
|
97
|
-
if (Option.isSome(spanTransformer)) {
|
|
98
|
-
spanTransformer.value({
|
|
99
|
-
...modelOptions,
|
|
100
|
-
response
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
if (options.disableToolCallResolution) {
|
|
104
|
-
return response;
|
|
105
|
-
}
|
|
106
|
-
return yield* resolveParts({
|
|
107
|
-
response,
|
|
108
|
-
toolkit: actualToolkit,
|
|
109
|
-
concurrency,
|
|
110
|
-
method: "generateText"
|
|
111
|
-
});
|
|
112
|
-
}, (effect, span) => Effect.withParentSpan(effect, span), Effect.provideService(CurrentToolCallIdGenerator, toolCallIdGenerator)));
|
|
113
|
-
const streamText = Effect.fnUntraced(function* ({
|
|
114
|
-
concurrency,
|
|
115
|
-
toolChoice = "auto",
|
|
116
|
-
toolkit,
|
|
117
|
-
...options
|
|
118
|
-
}) {
|
|
119
|
-
const span = yield* Effect.makeSpanScoped("AiLanguageModel.streamText", {
|
|
120
|
-
captureStackTrace: false,
|
|
121
|
-
attributes: {
|
|
122
|
-
concurrency,
|
|
123
|
-
toolChoice
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
const prompt = AiInput.make(options.prompt);
|
|
127
|
-
const system = Option.fromNullable(options.system);
|
|
128
|
-
const modelOptions = {
|
|
129
|
-
prompt,
|
|
130
|
-
system,
|
|
131
|
-
tools: [],
|
|
132
|
-
toolChoice: "none",
|
|
133
|
-
span
|
|
134
|
-
};
|
|
135
|
-
if (Predicate.isUndefined(toolkit)) {
|
|
136
|
-
return [opts.streamText(modelOptions), modelOptions];
|
|
137
|
-
}
|
|
138
|
-
modelOptions.toolChoice = toolChoice;
|
|
139
|
-
const actualToolkit = Effect.isEffect(toolkit) ? yield* toolkit : toolkit;
|
|
140
|
-
for (const tool of actualToolkit.tools) {
|
|
141
|
-
modelOptions.tools.push(convertTool(tool));
|
|
142
|
-
}
|
|
143
|
-
const stream = opts.streamText(modelOptions);
|
|
144
|
-
if (options.disableToolCallResolution) {
|
|
145
|
-
return [stream, modelOptions];
|
|
146
|
-
}
|
|
147
|
-
return [stream.pipe(Stream.mapEffect(response => resolveParts({
|
|
148
|
-
response,
|
|
149
|
-
toolkit: actualToolkit,
|
|
150
|
-
concurrency,
|
|
151
|
-
method: "streamText"
|
|
152
|
-
}), {
|
|
153
|
-
concurrency: "unbounded"
|
|
154
|
-
})), modelOptions];
|
|
155
|
-
}, Effect.flatMap(Effect.fnUntraced(function* ([stream, options]) {
|
|
156
|
-
const spanTransformer = yield* getSpanTransformer;
|
|
157
|
-
if (Option.isNone(spanTransformer)) {
|
|
158
|
-
return stream;
|
|
159
|
-
}
|
|
160
|
-
let finalResponse = AiResponse.empty;
|
|
161
|
-
return stream.pipe(Stream.map(response => {
|
|
162
|
-
finalResponse = AiResponse.merge(finalResponse, response);
|
|
163
|
-
return response;
|
|
164
|
-
}), Stream.ensuring(Effect.sync(() => {
|
|
165
|
-
spanTransformer.value({
|
|
166
|
-
...options,
|
|
167
|
-
response: finalResponse
|
|
168
|
-
});
|
|
169
|
-
})));
|
|
170
|
-
})), Stream.unwrapScoped, Stream.provideService(CurrentToolCallIdGenerator, toolCallIdGenerator));
|
|
171
|
-
const generateObject = options => {
|
|
172
|
-
const toolCallId = options.toolCallId ? options.toolCallId : "_tag" in options.schema ? options.schema._tag : "identifier" in options.schema ? options.schema.identifier : "generateObject";
|
|
173
|
-
return Effect.useSpan("AiLanguageModel.generateObject", {
|
|
174
|
-
captureStackTrace: false,
|
|
175
|
-
attributes: {
|
|
176
|
-
toolCallId
|
|
177
|
-
}
|
|
178
|
-
}, Effect.fnUntraced(function* (span) {
|
|
179
|
-
const prompt = AiInput.make(options.prompt);
|
|
180
|
-
const system = Option.fromNullable(options.system);
|
|
181
|
-
const spanTransformer = yield* getSpanTransformer;
|
|
182
|
-
const decode = Schema.decodeUnknown(options.schema);
|
|
183
|
-
const tool = convertStructured(toolCallId, options.schema);
|
|
184
|
-
const toolChoice = {
|
|
185
|
-
tool: tool.name
|
|
186
|
-
};
|
|
187
|
-
const modelOptions = {
|
|
188
|
-
prompt,
|
|
189
|
-
system,
|
|
190
|
-
tools: [tool],
|
|
191
|
-
toolChoice,
|
|
192
|
-
span
|
|
193
|
-
};
|
|
194
|
-
const response = yield* opts.generateText(modelOptions);
|
|
195
|
-
if (Option.isSome(spanTransformer)) {
|
|
196
|
-
spanTransformer.value({
|
|
197
|
-
...modelOptions,
|
|
198
|
-
response
|
|
199
|
-
});
|
|
200
|
-
}
|
|
201
|
-
const toolCallPart = response.parts.find(part => part._tag === "ToolCallPart" && part.name === toolCallId);
|
|
202
|
-
if (Predicate.isUndefined(toolCallPart)) {
|
|
203
|
-
return yield* new _AiError.AiError({
|
|
204
|
-
module: "AiLanguageModel",
|
|
205
|
-
method: "generateObject",
|
|
206
|
-
description: `Tool call '${toolCallId}' not found in model response`
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
return yield* Effect.matchEffect(decode(toolCallPart.params), {
|
|
210
|
-
onFailure: cause => new _AiError.AiError({
|
|
211
|
-
module: "AiLanguageModel",
|
|
212
|
-
method: "generateObject",
|
|
213
|
-
description: `Failed to decode tool call '${toolCallId}' parameters`,
|
|
214
|
-
cause
|
|
215
|
-
}),
|
|
216
|
-
onSuccess: output => Effect.succeed(new AiResponse.WithStructuredOutput({
|
|
217
|
-
parts: response.parts,
|
|
218
|
-
id: toolCallPart.id,
|
|
219
|
-
name: toolCallPart.name,
|
|
220
|
-
value: output
|
|
221
|
-
}, constDisableValidation))
|
|
222
|
-
});
|
|
223
|
-
}, (effect, span) => Effect.withParentSpan(effect, span), Effect.provideService(CurrentToolCallIdGenerator, toolCallIdGenerator)));
|
|
224
|
-
};
|
|
225
|
-
return AiLanguageModel.of({
|
|
226
|
-
generateText,
|
|
227
|
-
streamText,
|
|
228
|
-
generateObject
|
|
229
|
-
});
|
|
230
|
-
});
|
|
231
|
-
const convertTool = tool => ({
|
|
232
|
-
name: tool.name,
|
|
233
|
-
description: tool.description ?? getDescription(tool.parametersSchema.ast),
|
|
234
|
-
parameters: makeJsonSchema(tool.parametersSchema.ast),
|
|
235
|
-
structured: false
|
|
236
|
-
});
|
|
237
|
-
const convertStructured = (name, schema) => ({
|
|
238
|
-
name,
|
|
239
|
-
description: getDescription(schema.ast),
|
|
240
|
-
parameters: makeJsonSchema(schema.ast),
|
|
241
|
-
structured: true
|
|
242
|
-
});
|
|
243
|
-
const makeJsonSchema = ast => {
|
|
244
|
-
const props = AST.getPropertySignatures(ast);
|
|
245
|
-
if (props.length === 0) {
|
|
246
|
-
return {
|
|
247
|
-
type: "object",
|
|
248
|
-
properties: {},
|
|
249
|
-
required: [],
|
|
250
|
-
additionalProperties: false
|
|
251
|
-
};
|
|
252
|
-
}
|
|
253
|
-
const $defs = {};
|
|
254
|
-
const schema = JsonSchema.fromAST(ast, {
|
|
255
|
-
definitions: $defs,
|
|
256
|
-
topLevelReferenceStrategy: "skip"
|
|
257
|
-
});
|
|
258
|
-
if (Object.keys($defs).length === 0) return schema;
|
|
259
|
-
schema.$defs = $defs;
|
|
260
|
-
return schema;
|
|
261
|
-
};
|
|
262
|
-
const getDescription = ast => {
|
|
263
|
-
const annotations = ast._tag === "Transformation" ? {
|
|
264
|
-
...ast.to.annotations,
|
|
265
|
-
...ast.annotations
|
|
266
|
-
} : ast.annotations;
|
|
267
|
-
return AST.DescriptionAnnotationId in annotations ? annotations[AST.DescriptionAnnotationId] : "";
|
|
268
|
-
};
|
|
269
|
-
const resolveParts = /*#__PURE__*/Effect.fnUntraced(function* (options) {
|
|
270
|
-
const toolNames = [];
|
|
271
|
-
const toolParts = options.response.parts.filter(part => {
|
|
272
|
-
if (part._tag === "ToolCallPart") {
|
|
273
|
-
toolNames.push(part.name);
|
|
274
|
-
return true;
|
|
275
|
-
}
|
|
276
|
-
return false;
|
|
277
|
-
});
|
|
278
|
-
if (toolParts.length === 0) {
|
|
279
|
-
return new AiResponse.WithToolCallResults({
|
|
280
|
-
parts: options.response.parts,
|
|
281
|
-
results: constEmptyMap,
|
|
282
|
-
encodedResults: constEmptyMap
|
|
283
|
-
}, constDisableValidation);
|
|
284
|
-
}
|
|
285
|
-
yield* Effect.annotateCurrentSpan("toolCalls", toolNames);
|
|
286
|
-
const results = new Map();
|
|
287
|
-
const encodedResults = new Map();
|
|
288
|
-
const resolve = Effect.forEach(toolParts, part => {
|
|
289
|
-
const id = part.id;
|
|
290
|
-
const name = part.name;
|
|
291
|
-
const params = part.params;
|
|
292
|
-
const toolCall = options.toolkit.handle(name, params);
|
|
293
|
-
return Effect.map(toolCall, ({
|
|
294
|
-
encodedResult,
|
|
295
|
-
result
|
|
296
|
-
}) => {
|
|
297
|
-
results.set(id, {
|
|
298
|
-
name,
|
|
299
|
-
result
|
|
300
|
-
});
|
|
301
|
-
encodedResults.set(id, {
|
|
302
|
-
name,
|
|
303
|
-
result: encodedResult
|
|
304
|
-
});
|
|
305
|
-
});
|
|
306
|
-
}, {
|
|
307
|
-
concurrency: options.concurrency,
|
|
308
|
-
discard: true
|
|
309
|
-
});
|
|
310
|
-
yield* resolve;
|
|
311
|
-
return new AiResponse.WithToolCallResults({
|
|
312
|
-
parts: options.response.parts,
|
|
313
|
-
results,
|
|
314
|
-
encodedResults
|
|
315
|
-
}, constDisableValidation);
|
|
316
|
-
});
|
|
317
|
-
/**
|
|
318
|
-
* Generate text using a large language model for the specified `prompt`.
|
|
319
|
-
*
|
|
320
|
-
* If a `toolkit` is specified, the large language model will additionally
|
|
321
|
-
* be able to perform tool calls to augment its response.
|
|
322
|
-
*
|
|
323
|
-
* @since 1.0.0
|
|
324
|
-
* @category Functions
|
|
325
|
-
*/
|
|
326
|
-
const generateText = exports.generateText = /*#__PURE__*/Effect.serviceFunctionEffect(AiLanguageModel, _ => _.generateText);
|
|
327
|
-
/**
|
|
328
|
-
* Generate a structured object for the specified prompt and schema using a
|
|
329
|
-
* large language model.
|
|
330
|
-
*
|
|
331
|
-
* When using a `Schema` that does not have an `identifier` or `_tag`
|
|
332
|
-
* property, you must specify a `toolCallId` to properly associate the
|
|
333
|
-
* output of the model.
|
|
334
|
-
*
|
|
335
|
-
* @since 1.0.0
|
|
336
|
-
* @category Functions
|
|
337
|
-
*/
|
|
338
|
-
const generateObject = exports.generateObject = /*#__PURE__*/Effect.serviceFunctionEffect(AiLanguageModel, _ => _.generateObject);
|
|
339
|
-
/**
|
|
340
|
-
* Generate text using a large language model for the specified `prompt`,
|
|
341
|
-
* streaming output from the model as soon as it is available.
|
|
342
|
-
*
|
|
343
|
-
* If a `toolkit` is specified, the large language model will additionally
|
|
344
|
-
* be able to perform tool calls to augment its response.
|
|
345
|
-
*
|
|
346
|
-
* @since 1.0.0
|
|
347
|
-
* @category Functions
|
|
348
|
-
*/
|
|
349
|
-
const streamText = options => Stream.unwrap(AiLanguageModel.pipe(Effect.map(_ => _.streamText(options))));
|
|
350
|
-
exports.streamText = streamText;
|
|
351
|
-
//# sourceMappingURL=AiLanguageModel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AiLanguageModel.js","names":["_Context","_interopRequireWildcard","require","Effect","JsonSchema","Option","Predicate","Random","Schema","AST","Stream","_AiError","AiInput","AiResponse","_AiTelemetry","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","constDisableValidation","disableValidation","AiLanguageModel","Tag","exports","ALPHANUMS","DefaultToolCallIdGenerator","generateId","fnUntraced","chars","Array","nextIntBetween","length","join","CurrentToolCallIdGenerator","constEmptyMap","Map","make","opts","parentSpanTransformer","serviceOption","CurrentSpanTransformer","getSpanTransformer","pipe","map","orElse","toolCallIdGenerator","getOrElse","generateText","concurrency","toolChoice","toolkit","options","useSpan","captureStackTrace","attributes","span","prompt","system","fromNullable","spanTransformer","modelOptions","tools","isUndefined","response","isSome","value","actualToolkit","isEffect","tool","push","convertTool","disableToolCallResolution","resolveParts","method","effect","withParentSpan","provideService","streamText","makeSpanScoped","stream","mapEffect","flatMap","isNone","finalResponse","empty","merge","ensuring","sync","unwrapScoped","generateObject","toolCallId","schema","_tag","identifier","decode","decodeUnknown","convertStructured","name","toolCallPart","parts","find","part","AiError","module","description","matchEffect","params","onFailure","cause","onSuccess","output","succeed","WithStructuredOutput","id","of","getDescription","parametersSchema","ast","parameters","makeJsonSchema","structured","props","getPropertySignatures","type","properties","required","additionalProperties","$defs","fromAST","definitions","topLevelReferenceStrategy","keys","annotations","to","DescriptionAnnotationId","toolNames","toolParts","filter","WithToolCallResults","results","encodedResults","annotateCurrentSpan","resolve","forEach","toolCall","handle","encodedResult","result","discard","serviceFunctionEffect","_","unwrap"],"sources":["../../src/AiLanguageModel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/AiModel.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.make = exports.TypeId = void 0;
|
|
7
|
-
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
8
|
-
var _Effectable = require("effect/Effectable");
|
|
9
|
-
var _Function = require("effect/Function");
|
|
10
|
-
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
11
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
12
|
-
/**
|
|
13
|
-
* @since 1.0.0
|
|
14
|
-
* @category type ids
|
|
15
|
-
*/
|
|
16
|
-
const TypeId = exports.TypeId = /*#__PURE__*/Symbol.for("@effect/ai/AiModel");
|
|
17
|
-
const AiModelProto = {
|
|
18
|
-
..._Effectable.CommitPrototype,
|
|
19
|
-
[TypeId]: TypeId,
|
|
20
|
-
[Layer.LayerTypeId]: {
|
|
21
|
-
_ROut: _Function.identity,
|
|
22
|
-
_E: _Function.identity,
|
|
23
|
-
_RIn: _Function.identity
|
|
24
|
-
},
|
|
25
|
-
commit() {
|
|
26
|
-
return Effect.contextWith(context => {
|
|
27
|
-
return Layer.provide(this, Layer.succeedContext(context));
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
};
|
|
31
|
-
/**
|
|
32
|
-
* @since 1.0.0
|
|
33
|
-
* @category constructors
|
|
34
|
-
*/
|
|
35
|
-
const make = layer => Object.assign(Object.create(AiModelProto), layer);
|
|
36
|
-
exports.make = make;
|
|
37
|
-
//# sourceMappingURL=AiModel.js.map
|
package/dist/cjs/AiModel.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AiModel.js","names":["Effect","_interopRequireWildcard","require","_Effectable","_Function","Layer","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","Symbol","for","AiModelProto","CommitPrototype","LayerTypeId","_ROut","identity","_E","_RIn","commit","contextWith","context","provide","succeedContext","make","layer","assign","create"],"sources":["../../src/AiModel.ts"],"sourcesContent":[null],"mappings":";;;;;;AAIA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAJ,uBAAA,CAAAC,OAAA;AAAqC,SAAAD,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,CAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAErC;;;;AAIO,MAAMkB,MAAM,GAAAC,OAAA,CAAAD,MAAA,gBAAkBE,MAAM,CAACC,GAAG,CAAC,oBAAoB,CAAC;AAkBrE,MAAMC,YAAY,GAAG;EACnB,GAAGC,2BAAe;EAClB,CAACL,MAAM,GAAGA,MAAM;EAChB,CAACpB,KAAK,CAAC0B,WAAW,GAAG;IACnBC,KAAK,EAAEC,kBAAQ;IACfC,EAAE,EAAED,kBAAQ;IACZE,IAAI,EAAEF;GACP;EACDG,MAAMA,CAAA;IACJ,OAAOpC,MAAM,CAACqC,WAAW,CAAEC,OAA+B,IAAI;MAC5D,OAAOjC,KAAK,CAACkC,OAAO,CAAC,IAAI,EAAElC,KAAK,CAACmC,cAAc,CAACF,OAAO,CAAC,CAAC;IAC3D,CAAC,CAAC;EACJ;CACD;AAED;;;;AAIO,MAAMG,IAAI,GACfC,KAA6C,IACbpB,MAAM,CAACqB,MAAM,CAACrB,MAAM,CAACsB,MAAM,CAACf,YAAY,CAAC,EAAEa,KAAK,CAAC;AAAAhB,OAAA,CAAAe,IAAA,GAAAA,IAAA","ignoreList":[]}
|