@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
package/dist/cjs/AiChat.js
DELETED
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.fromPrompt = exports.fromJson = exports.fromExport = exports.empty = exports.AiChat = void 0;
|
|
7
|
-
var Channel = _interopRequireWildcard(require("effect/Channel"));
|
|
8
|
-
var Context = _interopRequireWildcard(require("effect/Context"));
|
|
9
|
-
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
10
|
-
var Ref = _interopRequireWildcard(require("effect/Ref"));
|
|
11
|
-
var Schema = _interopRequireWildcard(require("effect/Schema"));
|
|
12
|
-
var Stream = _interopRequireWildcard(require("effect/Stream"));
|
|
13
|
-
var AiInput = _interopRequireWildcard(require("./AiInput.js"));
|
|
14
|
-
var AiLanguageModel = _interopRequireWildcard(require("./AiLanguageModel.js"));
|
|
15
|
-
var AiResponse = _interopRequireWildcard(require("./AiResponse.js"));
|
|
16
|
-
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); }
|
|
17
|
-
/**
|
|
18
|
-
* @since 1.0.0
|
|
19
|
-
*/
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* @since 1.0.0
|
|
23
|
-
* @category Context
|
|
24
|
-
*/
|
|
25
|
-
class AiChat extends /*#__PURE__*/Context.Tag("@effect/ai/AiChat")() {}
|
|
26
|
-
/**
|
|
27
|
-
* @since 1.0.0
|
|
28
|
-
* @category Constructors
|
|
29
|
-
*/
|
|
30
|
-
exports.AiChat = AiChat;
|
|
31
|
-
const fromPrompt = exports.fromPrompt = /*#__PURE__*/Effect.fnUntraced(function* (options) {
|
|
32
|
-
const languageModel = yield* AiLanguageModel.AiLanguageModel;
|
|
33
|
-
const context = yield* Effect.context();
|
|
34
|
-
const provideContext = effect => Effect.mapInputContext(effect, input => Context.merge(context, input));
|
|
35
|
-
const provideContextStream = stream => Stream.mapInputContext(stream, input => Context.merge(context, input));
|
|
36
|
-
const history = yield* Ref.make(AiInput.make(options.prompt));
|
|
37
|
-
const semaphore = yield* Effect.makeSemaphore(1);
|
|
38
|
-
const system = options.system;
|
|
39
|
-
return AiChat.of({
|
|
40
|
-
history,
|
|
41
|
-
export: Ref.get(history).pipe(Effect.flatMap(Schema.encode(AiInput.AiInput)), Effect.orDie),
|
|
42
|
-
exportJson: Ref.get(history).pipe(Effect.flatMap(Schema.encode(AiInput.FromJson)), Effect.orDie),
|
|
43
|
-
generateText(options) {
|
|
44
|
-
const newInput = AiInput.make(options.prompt);
|
|
45
|
-
return Ref.get(history).pipe(Effect.flatMap(oldInput => {
|
|
46
|
-
const input = AiInput.concat(oldInput, newInput);
|
|
47
|
-
return languageModel.generateText({
|
|
48
|
-
...options,
|
|
49
|
-
system,
|
|
50
|
-
prompt: input
|
|
51
|
-
}).pipe(Effect.tap(response => {
|
|
52
|
-
const modelInput = AiInput.make(response);
|
|
53
|
-
return Ref.set(history, AiInput.concat(input, modelInput));
|
|
54
|
-
}), provideContext);
|
|
55
|
-
}), semaphore.withPermits(1), Effect.withSpan("AiChat.generateText", {
|
|
56
|
-
captureStackTrace: false
|
|
57
|
-
}));
|
|
58
|
-
},
|
|
59
|
-
streamText(options) {
|
|
60
|
-
return Stream.suspend(() => {
|
|
61
|
-
let combined = AiResponse.empty;
|
|
62
|
-
return Stream.fromChannel(Channel.acquireUseRelease(semaphore.take(1).pipe(Effect.zipRight(Ref.get(history)), Effect.map(history => AiInput.concat(history, AiInput.make(options.prompt)))), parts => languageModel.streamText({
|
|
63
|
-
...options,
|
|
64
|
-
system,
|
|
65
|
-
prompt: parts
|
|
66
|
-
}).pipe(Stream.map(chunk => {
|
|
67
|
-
combined = AiResponse.merge(combined, chunk);
|
|
68
|
-
return chunk;
|
|
69
|
-
}), Stream.toChannel), parts => Effect.zipRight(Ref.set(history, AiInput.concat(parts, AiInput.make(combined))), semaphore.release(1))));
|
|
70
|
-
}).pipe(provideContextStream, Stream.withSpan("AiChat.streamText", {
|
|
71
|
-
captureStackTrace: false
|
|
72
|
-
}));
|
|
73
|
-
},
|
|
74
|
-
generateObject(options) {
|
|
75
|
-
const newInput = AiInput.make(options.prompt);
|
|
76
|
-
return Ref.get(history).pipe(Effect.flatMap(oldInput => {
|
|
77
|
-
const input = AiInput.concat(oldInput, newInput);
|
|
78
|
-
return languageModel.generateObject({
|
|
79
|
-
...options,
|
|
80
|
-
system,
|
|
81
|
-
prompt: input
|
|
82
|
-
}).pipe(Effect.flatMap(response => {
|
|
83
|
-
const modelInput = AiInput.make(response);
|
|
84
|
-
return Effect.as(Ref.set(history, AiInput.concat(input, modelInput)), response);
|
|
85
|
-
}));
|
|
86
|
-
}), provideContext, semaphore.withPermits(1), Effect.withSpan("AiChat.generateObject", {
|
|
87
|
-
attributes: {
|
|
88
|
-
toolCallId: "toolCallId" in options ? options.toolCallId : "_tag" in options.schema ? options.schema._tag : options.schema.identifier ?? "generateObject"
|
|
89
|
-
},
|
|
90
|
-
captureStackTrace: false
|
|
91
|
-
}));
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
/**
|
|
96
|
-
* @since 1.0.0
|
|
97
|
-
* @category Constructors
|
|
98
|
-
*/
|
|
99
|
-
const empty = exports.empty = /*#__PURE__*/fromPrompt({
|
|
100
|
-
prompt: []
|
|
101
|
-
});
|
|
102
|
-
const decodeUnknown = /*#__PURE__*/Schema.decodeUnknown(AiInput.AiInput);
|
|
103
|
-
/**
|
|
104
|
-
* @since 1.0.0
|
|
105
|
-
* @category Constructors
|
|
106
|
-
*/
|
|
107
|
-
const fromExport = (data, options) => Effect.flatMap(decodeUnknown(data), prompt => fromPrompt({
|
|
108
|
-
...options,
|
|
109
|
-
prompt
|
|
110
|
-
}));
|
|
111
|
-
exports.fromExport = fromExport;
|
|
112
|
-
const decodeJson = /*#__PURE__*/Schema.decode(AiInput.FromJson);
|
|
113
|
-
/**
|
|
114
|
-
* @since 1.0.0
|
|
115
|
-
* @category Constructors
|
|
116
|
-
*/
|
|
117
|
-
const fromJson = (data, options) => Effect.flatMap(decodeJson(data), prompt => fromPrompt({
|
|
118
|
-
...options,
|
|
119
|
-
prompt
|
|
120
|
-
}));
|
|
121
|
-
exports.fromJson = fromJson;
|
|
122
|
-
//# sourceMappingURL=AiChat.js.map
|
package/dist/cjs/AiChat.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AiChat.js","names":["Channel","_interopRequireWildcard","require","Context","Effect","Ref","Schema","Stream","AiInput","AiLanguageModel","AiResponse","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AiChat","Tag","exports","fromPrompt","fnUntraced","options","languageModel","context","provideContext","effect","mapInputContext","input","merge","provideContextStream","stream","history","make","prompt","semaphore","makeSemaphore","system","of","export","pipe","flatMap","encode","orDie","exportJson","FromJson","generateText","newInput","oldInput","concat","tap","response","modelInput","withPermits","withSpan","captureStackTrace","streamText","suspend","combined","empty","fromChannel","acquireUseRelease","take","zipRight","map","parts","chunk","toChannel","release","generateObject","as","attributes","toolCallId","schema","_tag","identifier","decodeUnknown","fromExport","data","decodeJson","decode","fromJson"],"sources":["../../src/AiChat.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.makeDataLoader = exports.make = exports.AiEmbeddingModel = void 0;
|
|
7
|
-
var _RequestResolver = require("@effect/experimental/RequestResolver");
|
|
8
|
-
var Context = _interopRequireWildcard(require("effect/Context"));
|
|
9
|
-
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
10
|
-
var _Function = require("effect/Function");
|
|
11
|
-
var Option = _interopRequireWildcard(require("effect/Option"));
|
|
12
|
-
var Request = _interopRequireWildcard(require("effect/Request"));
|
|
13
|
-
var RequestResolver = _interopRequireWildcard(require("effect/RequestResolver"));
|
|
14
|
-
var Schema = _interopRequireWildcard(require("effect/Schema"));
|
|
15
|
-
var _AiError = require("./AiError.js");
|
|
16
|
-
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); }
|
|
17
|
-
/**
|
|
18
|
-
* @since 1.0.0
|
|
19
|
-
*/
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* @since 1.0.0
|
|
23
|
-
* @category Context
|
|
24
|
-
*/
|
|
25
|
-
class AiEmbeddingModel extends /*#__PURE__*/Context.Tag("@effect/ai/AiEmbeddingModel")() {}
|
|
26
|
-
exports.AiEmbeddingModel = AiEmbeddingModel;
|
|
27
|
-
class EmbeddingRequest extends /*#__PURE__*/Schema.TaggedRequest("@effect/ai/AiEmbeddingModel/Request")("EmbeddingRequest", {
|
|
28
|
-
failure: _AiError.AiError,
|
|
29
|
-
success: /*#__PURE__*/Schema.mutable(/*#__PURE__*/Schema.Array(Schema.Number)),
|
|
30
|
-
payload: {
|
|
31
|
-
input: Schema.String
|
|
32
|
-
}
|
|
33
|
-
}) {}
|
|
34
|
-
const makeBatchedResolver = embedMany => RequestResolver.makeBatched(requests => embedMany(requests.map(request => request.input)).pipe(Effect.flatMap(Effect.forEach(({
|
|
35
|
-
embeddings,
|
|
36
|
-
index
|
|
37
|
-
}) => Request.succeed(requests[index], embeddings), {
|
|
38
|
-
discard: true
|
|
39
|
-
})), Effect.catchAll(error => Effect.forEach(requests, request => Request.fail(request, error), {
|
|
40
|
-
discard: true
|
|
41
|
-
}))));
|
|
42
|
-
/**
|
|
43
|
-
* @since 1.0.0
|
|
44
|
-
* @category Constructors
|
|
45
|
-
*/
|
|
46
|
-
const make = options => Effect.gen(function* () {
|
|
47
|
-
const cache = yield* Option.fromNullable(options.cache).pipe(Effect.flatMap(config => Request.makeCache(config)), Effect.optionFromOptional);
|
|
48
|
-
const resolver = makeBatchedResolver(options.embedMany).pipe(options.maxBatchSize ? RequestResolver.batchN(options.maxBatchSize) : _Function.identity);
|
|
49
|
-
function embed(input) {
|
|
50
|
-
const request = Effect.request(new EmbeddingRequest({
|
|
51
|
-
input
|
|
52
|
-
}), resolver);
|
|
53
|
-
return Option.match(cache, {
|
|
54
|
-
onNone: () => request,
|
|
55
|
-
onSome: cache => request.pipe(Effect.withRequestCaching(true), Effect.withRequestCache(cache))
|
|
56
|
-
}).pipe(Effect.withSpan("AiEmbeddingModel.embed", {
|
|
57
|
-
captureStackTrace: false
|
|
58
|
-
}));
|
|
59
|
-
}
|
|
60
|
-
function embedMany(inputs, options) {
|
|
61
|
-
return Effect.forEach(inputs, embed, {
|
|
62
|
-
batching: true,
|
|
63
|
-
concurrency: options?.concurrency
|
|
64
|
-
}).pipe(Effect.withSpan("AiEmbeddingModel.embedMany", {
|
|
65
|
-
captureStackTrace: false
|
|
66
|
-
}));
|
|
67
|
-
}
|
|
68
|
-
return AiEmbeddingModel.of({
|
|
69
|
-
embed,
|
|
70
|
-
embedMany
|
|
71
|
-
});
|
|
72
|
-
});
|
|
73
|
-
/**
|
|
74
|
-
* Creates an `Embeddings` service which will aggregate all `embed` requests
|
|
75
|
-
* received during the specified `window` (up to a maximum of `maxBatchSize`
|
|
76
|
-
* requests, if specified) and execute them as a single batch.
|
|
77
|
-
*
|
|
78
|
-
* @since 1.0.0
|
|
79
|
-
* @category Constructors
|
|
80
|
-
*/
|
|
81
|
-
exports.make = make;
|
|
82
|
-
const makeDataLoader = options => Effect.gen(function* () {
|
|
83
|
-
const resolver = makeBatchedResolver(options.embedMany);
|
|
84
|
-
const resolverDelayed = yield* (0, _RequestResolver.dataLoader)(resolver, {
|
|
85
|
-
window: options.window,
|
|
86
|
-
maxBatchSize: options.maxBatchSize
|
|
87
|
-
});
|
|
88
|
-
function embed(input) {
|
|
89
|
-
return Effect.request(new EmbeddingRequest({
|
|
90
|
-
input
|
|
91
|
-
}), resolverDelayed).pipe(Effect.withSpan("AiEmbeddingModel.embed", {
|
|
92
|
-
captureStackTrace: false
|
|
93
|
-
}));
|
|
94
|
-
}
|
|
95
|
-
function embedMany(inputs, options) {
|
|
96
|
-
return Effect.forEach(inputs, embed, {
|
|
97
|
-
batching: true,
|
|
98
|
-
concurrency: options?.concurrency
|
|
99
|
-
}).pipe(Effect.withSpan("AiEmbeddingModel.embedMany", {
|
|
100
|
-
captureStackTrace: false
|
|
101
|
-
}));
|
|
102
|
-
}
|
|
103
|
-
return AiEmbeddingModel.of({
|
|
104
|
-
embed,
|
|
105
|
-
embedMany
|
|
106
|
-
});
|
|
107
|
-
});
|
|
108
|
-
exports.makeDataLoader = makeDataLoader;
|
|
109
|
-
//# sourceMappingURL=AiEmbeddingModel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AiEmbeddingModel.js","names":["_RequestResolver","require","Context","_interopRequireWildcard","Effect","_Function","Option","Request","RequestResolver","Schema","_AiError","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AiEmbeddingModel","Tag","exports","EmbeddingRequest","TaggedRequest","failure","AiError","success","mutable","Array","Number","payload","input","String","makeBatchedResolver","embedMany","makeBatched","requests","map","request","pipe","flatMap","forEach","embeddings","index","succeed","discard","catchAll","error","fail","make","options","gen","cache","fromNullable","config","makeCache","optionFromOptional","resolver","maxBatchSize","batchN","identity","embed","match","onNone","onSome","withRequestCaching","withRequestCache","withSpan","captureStackTrace","inputs","batching","concurrency","of","makeDataLoader","resolverDelayed","dataLoader","window"],"sources":["../../src/AiEmbeddingModel.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,uBAAA,CAAAF,OAAA;AAEA,IAAAG,MAAA,GAAAD,uBAAA,CAAAF,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAH,uBAAA,CAAAF,OAAA;AACA,IAAAM,OAAA,GAAAJ,uBAAA,CAAAF,OAAA;AACA,IAAAO,eAAA,GAAAL,uBAAA,CAAAF,OAAA;AACA,IAAAQ,MAAA,GAAAN,uBAAA,CAAAF,OAAA;AAEA,IAAAS,QAAA,GAAAT,OAAA;AAAsC,SAAAE,wBAAAQ,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAV,uBAAA,YAAAA,CAAAQ,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;AAbtC;;;;AAeA;;;;AAIM,MAAOkB,gBAAiB,sBAAQ5B,OAAO,CAAC6B,GAAG,CAAC,6BAA6B,CAAC,EAG7E;AAAAC,OAAA,CAAAF,gBAAA,GAAAA,gBAAA;AA8BH,MAAMG,gBAAiB,sBAAQxB,MAAM,CAACyB,aAAa,CACjD,qCAAqC,CACtC,CAAC,kBAAkB,EAAE;EACpBC,OAAO,EAAEC,gBAAO;EAChBC,OAAO,eAAE5B,MAAM,CAAC6B,OAAO,cAAC7B,MAAM,CAAC8B,KAAK,CAAC9B,MAAM,CAAC+B,MAAM,CAAC,CAAC;EACpDC,OAAO,EAAE;IAAEC,KAAK,EAAEjC,MAAM,CAACkC;EAAM;CAChC,CAAC;AAEF,MAAMC,mBAAmB,GACvBC,SAAmG,IAEnGrC,eAAe,CAACsC,WAAW,CACxBC,QAAyC,IACxCF,SAAS,CAACE,QAAQ,CAACC,GAAG,CAAEC,OAAO,IAAKA,OAAO,CAACP,KAAK,CAAC,CAAC,CAACQ,IAAI,CACtD9C,MAAM,CAAC+C,OAAO,CACZ/C,MAAM,CAACgD,OAAO,CACZ,CAAC;EAAEC,UAAU;EAAEC;AAAK,CAAE,KAAK/C,OAAO,CAACgD,OAAO,CAACR,QAAQ,CAACO,KAAK,CAAC,EAAED,UAAU,CAAC,EACvE;EAAEG,OAAO,EAAE;AAAI,CAAE,CAClB,CACF,EACDpD,MAAM,CAACqD,QAAQ,CAAEC,KAAK,IACpBtD,MAAM,CAACgD,OAAO,CACZL,QAAQ,EACPE,OAAO,IAAK1C,OAAO,CAACoD,IAAI,CAACV,OAAO,EAAES,KAAK,CAAC,EACzC;EAAEF,OAAO,EAAE;AAAI,CAAE,CAClB,CACF,CACF,CACJ;AAEH;;;;AAIO,MAAMI,IAAI,GAAIC,OAOpB,IACCzD,MAAM,CAAC0D,GAAG,CAAC,aAAS;EAClB,MAAMC,KAAK,GAAG,OAAOzD,MAAM,CAAC0D,YAAY,CAACH,OAAO,CAACE,KAAK,CAAC,CAACb,IAAI,CAC1D9C,MAAM,CAAC+C,OAAO,CAAEc,MAAM,IAAK1D,OAAO,CAAC2D,SAAS,CAACD,MAAM,CAAC,CAAC,EACrD7D,MAAM,CAAC+D,kBAAkB,CAC1B;EAED,MAAMC,QAAQ,GAAGxB,mBAAmB,CAACiB,OAAO,CAAChB,SAAS,CAAC,CAACK,IAAI,CAC1DW,OAAO,CAACQ,YAAY,GAAG7D,eAAe,CAAC8D,MAAM,CAACT,OAAO,CAACQ,YAAY,CAAC,GAAGE,kBAAQ,CAC/E;EAED,SAASC,KAAKA,CAAC9B,KAAa;IAC1B,MAAMO,OAAO,GAAG7C,MAAM,CAAC6C,OAAO,CAAC,IAAIhB,gBAAgB,CAAC;MAAES;IAAK,CAAE,CAAC,EAAE0B,QAAQ,CAAC;IACzE,OAAO9D,MAAM,CAACmE,KAAK,CAACV,KAAK,EAAE;MACzBW,MAAM,EAAEA,CAAA,KAAMzB,OAAO;MACrB0B,MAAM,EAAGZ,KAAK,IACZd,OAAO,CAACC,IAAI,CACV9C,MAAM,CAACwE,kBAAkB,CAAC,IAAI,CAAC,EAC/BxE,MAAM,CAACyE,gBAAgB,CAACd,KAAK,CAAC;KAEnC,CAAC,CAACb,IAAI,CAAC9C,MAAM,CAAC0E,QAAQ,CAAC,wBAAwB,EAAE;MAAEC,iBAAiB,EAAE;IAAK,CAAE,CAAC,CAAC;EAClF;EAEA,SAASlC,SAASA,CAACmC,MAA6B,EAAEnB,OAEjD;IACC,OAAOzD,MAAM,CAACgD,OAAO,CAAC4B,MAAM,EAAER,KAAK,EAAE;MAAES,QAAQ,EAAE,IAAI;MAAEC,WAAW,EAAErB,OAAO,EAAEqB;IAAW,CAAE,CAAC,CAAChC,IAAI,CAC9F9C,MAAM,CAAC0E,QAAQ,CAAC,4BAA4B,EAAE;MAAEC,iBAAiB,EAAE;IAAK,CAAE,CAAC,CAC5E;EACH;EAEA,OAAOjD,gBAAgB,CAACqD,EAAE,CAAC;IACzBX,KAAK;IACL3B;GACD,CAAC;AACJ,CAAC,CAAC;AAEJ;;;;;;;;AAAAb,OAAA,CAAA4B,IAAA,GAAAA,IAAA;AAQO,MAAMwB,cAAc,GAAIvB,OAI9B,IACCzD,MAAM,CAAC0D,GAAG,CAAC,aAAS;EAClB,MAAMM,QAAQ,GAAGxB,mBAAmB,CAACiB,OAAO,CAAChB,SAAS,CAAC;EACvD,MAAMwC,eAAe,GAAG,OAAO,IAAAC,2BAAU,EAAClB,QAAQ,EAAE;IAClDmB,MAAM,EAAE1B,OAAO,CAAC0B,MAAM;IACtBlB,YAAY,EAAER,OAAO,CAACQ;GACvB,CAAC;EAEF,SAASG,KAAKA,CAAC9B,KAAa;IAC1B,OAAOtC,MAAM,CAAC6C,OAAO,CAAC,IAAIhB,gBAAgB,CAAC;MAAES;IAAK,CAAE,CAAC,EAAE2C,eAAe,CAAC,CAACnC,IAAI,CAC1E9C,MAAM,CAAC0E,QAAQ,CAAC,wBAAwB,EAAE;MAAEC,iBAAiB,EAAE;IAAK,CAAE,CAAC,CACxE;EACH;EAEA,SAASlC,SAASA,CAACmC,MAA6B,EAAEnB,OAEjD;IACC,OAAOzD,MAAM,CAACgD,OAAO,CAAC4B,MAAM,EAAER,KAAK,EAAE;MAAES,QAAQ,EAAE,IAAI;MAAEC,WAAW,EAAErB,OAAO,EAAEqB;IAAW,CAAE,CAAC,CAAChC,IAAI,CAC9F9C,MAAM,CAAC0E,QAAQ,CAAC,4BAA4B,EAAE;MAAEC,iBAAiB,EAAE;IAAK,CAAE,CAAC,CAC5E;EACH;EAEA,OAAOjD,gBAAgB,CAACqD,EAAE,CAAC;IACzBX,KAAK;IACL3B;GACD,CAAC;AACJ,CAAC,CAAC;AAAAb,OAAA,CAAAoD,cAAA,GAAAA,cAAA","ignoreList":[]}
|