@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/AiError.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AiError.js","names":["Predicate","_interopRequireWildcard","require","Schema","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","
|
|
1
|
+
{"version":3,"file":"AiError.js","names":["Predicate","_interopRequireWildcard","require","Schema","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","isAiError","u","hasProperty","HttpRequestDetails","Struct","method","Literal","url","String","urlParams","Array","Tuple","hash","Option","headers","Record","key","value","annotations","identifier","HttpRequestError","TaggedError","module","reason","request","description","optional","cause","Defect","fromRequestError","error","params","message","methodAndUrl","baseMessage","suggestion","HttpResponseDetails","status","Number","HttpResponseError","response","fromResponseError","methodUrlStatus","getStatusCodeSuggestion","MalformedInput","MalformedOutput","fromParseError","UnknownError","moduleMethod","isUndefined","AiError","Union","statusCode"],"sources":["../../src/AiError.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/Chat.js
ADDED
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.fromPrompt = exports.fromJson = exports.fromExport = exports.empty = exports.Chat = 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 LanguageModel = _interopRequireWildcard(require("./LanguageModel.js"));
|
|
14
|
+
var Prompt = _interopRequireWildcard(require("./Prompt.js"));
|
|
15
|
+
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); }
|
|
16
|
+
/**
|
|
17
|
+
* The `Chat` module provides a stateful conversation interface for AI language
|
|
18
|
+
* models.
|
|
19
|
+
*
|
|
20
|
+
* This module enables persistent chat sessions that maintain conversation
|
|
21
|
+
* history, support tool calling, and offer both streaming and non-streaming
|
|
22
|
+
* text generation. It integrates seamlessly with the Effect AI ecosystem,
|
|
23
|
+
* providing type-safe conversational AI capabilities.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* import { Chat, LanguageModel } from "@effect/ai"
|
|
28
|
+
* import { Effect, Layer } from "effect"
|
|
29
|
+
*
|
|
30
|
+
* // Create a new chat session
|
|
31
|
+
* const program = Effect.gen(function* () {
|
|
32
|
+
* const chat = yield* Chat.empty
|
|
33
|
+
*
|
|
34
|
+
* // Send a message and get response
|
|
35
|
+
* const response = yield* chat.generateText({
|
|
36
|
+
* prompt: "Hello! What can you help me with?"
|
|
37
|
+
* })
|
|
38
|
+
*
|
|
39
|
+
* console.log(response.content)
|
|
40
|
+
*
|
|
41
|
+
* return response
|
|
42
|
+
* })
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```ts
|
|
47
|
+
* import { Chat, LanguageModel } from "@effect/ai"
|
|
48
|
+
* import { Effect, Stream } from "effect"
|
|
49
|
+
*
|
|
50
|
+
* // Streaming chat with tool support
|
|
51
|
+
* const streamingChat = Effect.gen(function* () {
|
|
52
|
+
* const chat = yield* Chat.empty
|
|
53
|
+
*
|
|
54
|
+
* yield* chat.streamText({
|
|
55
|
+
* prompt: "Generate a creative story"
|
|
56
|
+
* }).pipe(Stream.runForEach((part) =>
|
|
57
|
+
* Effect.sync(() => console.log(part))
|
|
58
|
+
* ))
|
|
59
|
+
* })
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
* @since 1.0.0
|
|
63
|
+
*/
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* The `Chat` service tag for dependency injection.
|
|
67
|
+
*
|
|
68
|
+
* This tag provides access to chat functionality throughout your application,
|
|
69
|
+
* enabling persistent conversational AI interactions with full context
|
|
70
|
+
* management.
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```ts
|
|
74
|
+
* import { Chat } from "@effect/ai"
|
|
75
|
+
* import { Effect } from "effect"
|
|
76
|
+
*
|
|
77
|
+
* const useChat = Effect.gen(function* () {
|
|
78
|
+
* const chat = yield* Chat
|
|
79
|
+
* const response = yield* chat.generateText({
|
|
80
|
+
* prompt: "Explain quantum computing in simple terms"
|
|
81
|
+
* })
|
|
82
|
+
* return response.content
|
|
83
|
+
* })
|
|
84
|
+
* ```
|
|
85
|
+
*
|
|
86
|
+
* @since 1.0.0
|
|
87
|
+
* @category Context
|
|
88
|
+
*/
|
|
89
|
+
class Chat extends /*#__PURE__*/Context.Tag("@effect/ai/Chat")() {}
|
|
90
|
+
/**
|
|
91
|
+
* Creates a new Chat service from an initial prompt.
|
|
92
|
+
*
|
|
93
|
+
* This is the primary constructor for creating chat instances. It initializes
|
|
94
|
+
* a new conversation with the provided prompt as the starting context.
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```ts
|
|
98
|
+
* import { Chat, Prompt } from "@effect/ai"
|
|
99
|
+
* import { Effect } from "effect"
|
|
100
|
+
*
|
|
101
|
+
* const chatWithSystemPrompt = Effect.gen(function* () {
|
|
102
|
+
* const chat = yield* Chat.fromPrompt([{
|
|
103
|
+
* role: "system",
|
|
104
|
+
* content: "You are a helpful assistant specialized in mathematics."
|
|
105
|
+
* }])
|
|
106
|
+
*
|
|
107
|
+
* const response = yield* chat.generateText({
|
|
108
|
+
* prompt: "What is 2+2?"
|
|
109
|
+
* })
|
|
110
|
+
*
|
|
111
|
+
* return response.content
|
|
112
|
+
* })
|
|
113
|
+
* ```
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```ts
|
|
117
|
+
* import { Chat, Prompt } from "@effect/ai"
|
|
118
|
+
* import { Effect } from "effect"
|
|
119
|
+
*
|
|
120
|
+
* // Initialize with conversation history
|
|
121
|
+
* const existingChat = Effect.gen(function* () {
|
|
122
|
+
* const chat = yield* Chat.fromPrompt([
|
|
123
|
+
* { role: "user", content: [{ type: "text", text: "What's the weather like?" }] },
|
|
124
|
+
* { role: "assistant", content: [{ type: "text", text: "I don't have access to weather data." }] },
|
|
125
|
+
* { role: "user", content: [{ type: "text", text: "Can you help me with coding?" }] }
|
|
126
|
+
* ])
|
|
127
|
+
*
|
|
128
|
+
* const response = yield* chat.generateText({
|
|
129
|
+
* prompt: "I need help with TypeScript"
|
|
130
|
+
* })
|
|
131
|
+
*
|
|
132
|
+
* return response
|
|
133
|
+
* })
|
|
134
|
+
* ```
|
|
135
|
+
*
|
|
136
|
+
* @since 1.0.0
|
|
137
|
+
* @category Constructors
|
|
138
|
+
*/
|
|
139
|
+
exports.Chat = Chat;
|
|
140
|
+
const fromPrompt = exports.fromPrompt = /*#__PURE__*/Effect.fnUntraced(function* (prompt) {
|
|
141
|
+
const languageModel = yield* LanguageModel.LanguageModel;
|
|
142
|
+
const context = yield* Effect.context();
|
|
143
|
+
const provideContext = effect => Effect.mapInputContext(effect, input => Context.merge(context, input));
|
|
144
|
+
const provideContextStream = stream => Stream.mapInputContext(stream, input => Context.merge(context, input));
|
|
145
|
+
const history = yield* Ref.make(Prompt.make(prompt));
|
|
146
|
+
const semaphore = yield* Effect.makeSemaphore(1);
|
|
147
|
+
return Chat.of({
|
|
148
|
+
history,
|
|
149
|
+
export: Ref.get(history).pipe(Effect.flatMap(Schema.encode(Prompt.Prompt)), Effect.withSpan("Chat.export"), Effect.orDie),
|
|
150
|
+
exportJson: Ref.get(history).pipe(Effect.flatMap(Schema.encode(Prompt.FromJson)), Effect.withSpan("Chat.exportJson"), Effect.orDie),
|
|
151
|
+
generateText: Effect.fnUntraced(function* (options) {
|
|
152
|
+
const newPrompt = Prompt.make(options.prompt);
|
|
153
|
+
const oldPrompt = yield* Ref.get(history);
|
|
154
|
+
const prompt = Prompt.merge(oldPrompt, newPrompt);
|
|
155
|
+
const response = yield* languageModel.generateText({
|
|
156
|
+
...options,
|
|
157
|
+
prompt
|
|
158
|
+
});
|
|
159
|
+
const newHistory = Prompt.merge(prompt, Prompt.fromResponseParts(response.content));
|
|
160
|
+
yield* Ref.set(history, newHistory);
|
|
161
|
+
return response;
|
|
162
|
+
}, provideContext, semaphore.withPermits(1), Effect.withSpan("Chat.generateText", {
|
|
163
|
+
captureStackTrace: false
|
|
164
|
+
})),
|
|
165
|
+
streamText: Effect.fnUntraced(function* (options) {
|
|
166
|
+
let combined = Prompt.empty;
|
|
167
|
+
return Stream.fromChannel(Channel.acquireUseRelease(semaphore.take(1).pipe(Effect.zipRight(Ref.get(history)), Effect.map(history => Prompt.merge(history, Prompt.make(options.prompt)))), prompt => languageModel.streamText({
|
|
168
|
+
...options,
|
|
169
|
+
prompt
|
|
170
|
+
}).pipe(Stream.mapChunksEffect(Effect.fnUntraced(function* (chunk) {
|
|
171
|
+
const parts = Array.from(chunk);
|
|
172
|
+
combined = Prompt.merge(combined, Prompt.fromResponseParts(parts));
|
|
173
|
+
return chunk;
|
|
174
|
+
})), Stream.toChannel), parts => Effect.zipRight(Ref.set(history, Prompt.merge(parts, combined)), semaphore.release(1)))).pipe(provideContextStream, Stream.withSpan("Chat.streamText", {
|
|
175
|
+
captureStackTrace: false
|
|
176
|
+
}));
|
|
177
|
+
}, Stream.unwrap),
|
|
178
|
+
generateObject: Effect.fnUntraced(function* (options) {
|
|
179
|
+
const newPrompt = Prompt.make(options.prompt);
|
|
180
|
+
const oldPrompt = yield* Ref.get(history);
|
|
181
|
+
const prompt = Prompt.merge(oldPrompt, newPrompt);
|
|
182
|
+
const response = yield* languageModel.generateObject({
|
|
183
|
+
...options,
|
|
184
|
+
prompt
|
|
185
|
+
});
|
|
186
|
+
const newHistory = Prompt.merge(prompt, Prompt.fromResponseParts(response.content));
|
|
187
|
+
yield* Ref.set(history, newHistory);
|
|
188
|
+
return response;
|
|
189
|
+
}, provideContext, semaphore.withPermits(1), (effect, options) => Effect.withSpan(effect, "Chat.generateObject", {
|
|
190
|
+
attributes: {
|
|
191
|
+
objectName: "objectName" in options ? options.objectName : "_tag" in options.schema ? options.schema._tag : options.schema.identifier ?? "generateObject"
|
|
192
|
+
},
|
|
193
|
+
captureStackTrace: false
|
|
194
|
+
}))
|
|
195
|
+
});
|
|
196
|
+
});
|
|
197
|
+
/**
|
|
198
|
+
* Creates a new Chat service with empty conversation history.
|
|
199
|
+
*
|
|
200
|
+
* This is the most common way to start a fresh chat session without
|
|
201
|
+
* any initial context or system prompts.
|
|
202
|
+
*
|
|
203
|
+
* @example
|
|
204
|
+
* ```ts
|
|
205
|
+
* import { Chat } from "@effect/ai"
|
|
206
|
+
* import { Effect } from "effect"
|
|
207
|
+
*
|
|
208
|
+
* const freshChat = Effect.gen(function* () {
|
|
209
|
+
* const chat = yield* Chat.empty
|
|
210
|
+
*
|
|
211
|
+
* const response = yield* chat.generateText({
|
|
212
|
+
* prompt: "Hello! Can you introduce yourself?"
|
|
213
|
+
* })
|
|
214
|
+
*
|
|
215
|
+
* console.log(response.content)
|
|
216
|
+
*
|
|
217
|
+
* return chat
|
|
218
|
+
* })
|
|
219
|
+
* ```
|
|
220
|
+
*
|
|
221
|
+
* @since 1.0.0
|
|
222
|
+
* @category Constructors
|
|
223
|
+
*/
|
|
224
|
+
const empty = exports.empty = /*#__PURE__*/fromPrompt(Prompt.empty);
|
|
225
|
+
const decodeUnknown = /*#__PURE__*/Schema.decodeUnknown(Prompt.Prompt);
|
|
226
|
+
/**
|
|
227
|
+
* Creates a Chat service from previously exported chat data.
|
|
228
|
+
*
|
|
229
|
+
* Restores a chat session from structured data that was previously exported
|
|
230
|
+
* using the `export` method. Useful for persisting and restoring conversation
|
|
231
|
+
* state.
|
|
232
|
+
*
|
|
233
|
+
* @example
|
|
234
|
+
* ```ts
|
|
235
|
+
* import { Chat } from "@effect/ai"
|
|
236
|
+
* import { Effect } from "effect"
|
|
237
|
+
*
|
|
238
|
+
* declare const loadFromDatabase: (sessionId: string) => Effect.Effect<unknown>
|
|
239
|
+
*
|
|
240
|
+
* const restoreChat = Effect.gen(function* () {
|
|
241
|
+
* // Assume we have previously exported data
|
|
242
|
+
* const savedData = yield* loadFromDatabase("chat-session-123")
|
|
243
|
+
*
|
|
244
|
+
* const restoredChat = yield* Chat.fromExport(savedData)
|
|
245
|
+
*
|
|
246
|
+
* // Continue the conversation from where it left off
|
|
247
|
+
* const response = yield* restoredChat.generateText({
|
|
248
|
+
* prompt: "Let's continue our discussion"
|
|
249
|
+
* })
|
|
250
|
+
* }).pipe(
|
|
251
|
+
* Effect.catchTag("ParseError", (error) => {
|
|
252
|
+
* console.log("Failed to restore chat:", error.message)
|
|
253
|
+
* return Effect.void
|
|
254
|
+
* })
|
|
255
|
+
* )
|
|
256
|
+
* ```
|
|
257
|
+
*
|
|
258
|
+
* @since 1.0.0
|
|
259
|
+
* @category Constructors
|
|
260
|
+
*/
|
|
261
|
+
const fromExport = data => Effect.flatMap(decodeUnknown(data), fromPrompt);
|
|
262
|
+
exports.fromExport = fromExport;
|
|
263
|
+
const decodeJson = /*#__PURE__*/Schema.decode(Prompt.FromJson);
|
|
264
|
+
/**
|
|
265
|
+
* Creates a Chat service from previously exported JSON chat data.
|
|
266
|
+
*
|
|
267
|
+
* Restores a chat session from JSON string that was previously exported
|
|
268
|
+
* using the `exportJson` method. This is the most convenient way to
|
|
269
|
+
* persist and restore chat sessions to/from storage systems.
|
|
270
|
+
*
|
|
271
|
+
* @example
|
|
272
|
+
* ```ts
|
|
273
|
+
* import { Chat } from "@effect/ai"
|
|
274
|
+
* import { Effect } from "effect"
|
|
275
|
+
*
|
|
276
|
+
* const restoreFromJson = Effect.gen(function* () {
|
|
277
|
+
* // Load JSON from localStorage or file system
|
|
278
|
+
* const jsonData = localStorage.getItem("my-chat-backup")
|
|
279
|
+
* if (!jsonData) return yield* Chat.empty
|
|
280
|
+
*
|
|
281
|
+
* const restoredChat = yield* Chat.fromJson(jsonData)
|
|
282
|
+
*
|
|
283
|
+
* // Chat history is now restored
|
|
284
|
+
* const response = yield* restoredChat.generateText({
|
|
285
|
+
* prompt: "What were we talking about?"
|
|
286
|
+
* })
|
|
287
|
+
*
|
|
288
|
+
* return response
|
|
289
|
+
* }).pipe(
|
|
290
|
+
* Effect.catchTag("ParseError", (error) => {
|
|
291
|
+
* console.log("Invalid JSON format:", error.message)
|
|
292
|
+
* return Chat.empty // Fallback to empty chat
|
|
293
|
+
* })
|
|
294
|
+
* )
|
|
295
|
+
* ```
|
|
296
|
+
*
|
|
297
|
+
* @since 1.0.0
|
|
298
|
+
* @category Constructors
|
|
299
|
+
*/
|
|
300
|
+
const fromJson = data => Effect.flatMap(decodeJson(data), fromPrompt);
|
|
301
|
+
exports.fromJson = fromJson;
|
|
302
|
+
//# sourceMappingURL=Chat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Chat.js","names":["Channel","_interopRequireWildcard","require","Context","Effect","Ref","Schema","Stream","LanguageModel","Prompt","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Chat","Tag","exports","fromPrompt","fnUntraced","prompt","languageModel","context","provideContext","effect","mapInputContext","input","merge","provideContextStream","stream","history","make","semaphore","makeSemaphore","of","export","pipe","flatMap","encode","withSpan","orDie","exportJson","FromJson","generateText","options","newPrompt","oldPrompt","response","newHistory","fromResponseParts","content","withPermits","captureStackTrace","streamText","combined","empty","fromChannel","acquireUseRelease","take","zipRight","map","mapChunksEffect","chunk","parts","Array","from","toChannel","release","unwrap","generateObject","attributes","objectName","schema","_tag","identifier","decodeUnknown","fromExport","data","decodeJson","decode","fromJson"],"sources":["../../src/Chat.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.makeDataLoader = exports.make = exports.EmbeddingModel = 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 = _interopRequireWildcard(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
|
+
* The `EmbeddingModel` module provides vector embeddings for text using AI
|
|
19
|
+
* models.
|
|
20
|
+
*
|
|
21
|
+
* This module enables efficient conversion of text into high-dimensional vector
|
|
22
|
+
* representations that capture semantic meaning. It supports batching, caching,
|
|
23
|
+
* and request optimization for production use cases like semantic search,
|
|
24
|
+
* document similarity, and clustering.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```ts
|
|
28
|
+
* import { EmbeddingModel } from "@effect/ai"
|
|
29
|
+
* import { Effect } from "effect"
|
|
30
|
+
*
|
|
31
|
+
* // Basic embedding usage
|
|
32
|
+
* const program = Effect.gen(function* () {
|
|
33
|
+
* const embedding = yield* EmbeddingModel.EmbeddingModel
|
|
34
|
+
*
|
|
35
|
+
* const vector = yield* embedding.embed("Hello world!")
|
|
36
|
+
* console.log(vector) // [0.123, -0.456, 0.789, ...]
|
|
37
|
+
*
|
|
38
|
+
* return vector
|
|
39
|
+
* })
|
|
40
|
+
* ```
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```ts
|
|
44
|
+
* import { EmbeddingModel } from "@effect/ai"
|
|
45
|
+
* import { Effect, Duration } from "effect"
|
|
46
|
+
*
|
|
47
|
+
* declare const generateVectorFor: (text: string) => Array<number>
|
|
48
|
+
*
|
|
49
|
+
* // Create embedding service with batching and caching
|
|
50
|
+
* const embeddingService = EmbeddingModel.make({
|
|
51
|
+
* embedMany: (texts) => Effect.succeed(
|
|
52
|
+
* texts.map((text, index) => ({
|
|
53
|
+
* index,
|
|
54
|
+
* embeddings: generateVectorFor(text)
|
|
55
|
+
* }))
|
|
56
|
+
* ),
|
|
57
|
+
* maxBatchSize: 50,
|
|
58
|
+
* cache: {
|
|
59
|
+
* capacity: 1000,
|
|
60
|
+
* timeToLive: Duration.minutes(30)
|
|
61
|
+
* }
|
|
62
|
+
* })
|
|
63
|
+
* ```
|
|
64
|
+
*
|
|
65
|
+
* @since 1.0.0
|
|
66
|
+
*/
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* The `EmbeddingModel` service tag for dependency injection.
|
|
70
|
+
*
|
|
71
|
+
* This tag provides access to vector embedding functionality throughout your application,
|
|
72
|
+
* enabling conversion of text to high-dimensional vectors for semantic analysis.
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```ts
|
|
76
|
+
* import { EmbeddingModel } from "@effect/ai"
|
|
77
|
+
* import { Effect } from "effect"
|
|
78
|
+
*
|
|
79
|
+
* const useEmbeddings = Effect.gen(function* () {
|
|
80
|
+
* const embedder = yield* EmbeddingModel
|
|
81
|
+
*
|
|
82
|
+
* const documentVector = yield* embedder.embed("This is a sample document")
|
|
83
|
+
* const queryVector = yield* embedder.embed("sample query")
|
|
84
|
+
*
|
|
85
|
+
* const similarity = cosineSimilarity(documentVector, queryVector)
|
|
86
|
+
* return similarity
|
|
87
|
+
* })
|
|
88
|
+
* ```
|
|
89
|
+
*
|
|
90
|
+
* @since 1.0.0
|
|
91
|
+
* @category Context
|
|
92
|
+
*/
|
|
93
|
+
class EmbeddingModel extends /*#__PURE__*/Context.Tag("@effect/ai/EmbeddingModel")() {}
|
|
94
|
+
exports.EmbeddingModel = EmbeddingModel;
|
|
95
|
+
class EmbeddingRequest extends /*#__PURE__*/Schema.TaggedRequest("@effect/ai/EmbeddingModel/Request")("EmbeddingRequest", {
|
|
96
|
+
failure: AiError.AiError,
|
|
97
|
+
success: /*#__PURE__*/Schema.mutable(/*#__PURE__*/Schema.Array(Schema.Number)),
|
|
98
|
+
payload: {
|
|
99
|
+
input: Schema.String
|
|
100
|
+
}
|
|
101
|
+
}) {}
|
|
102
|
+
const makeBatchedResolver = embedMany => RequestResolver.makeBatched(requests => embedMany(requests.map(request => request.input)).pipe(Effect.flatMap(Effect.forEach(({
|
|
103
|
+
embeddings,
|
|
104
|
+
index
|
|
105
|
+
}) => Request.succeed(requests[index], embeddings), {
|
|
106
|
+
discard: true
|
|
107
|
+
})), Effect.catchAll(error => Effect.forEach(requests, request => Request.fail(request, error), {
|
|
108
|
+
discard: true
|
|
109
|
+
}))));
|
|
110
|
+
/**
|
|
111
|
+
* Creates an EmbeddingModel service with batching and caching capabilities.
|
|
112
|
+
*
|
|
113
|
+
* This is the primary constructor for creating embedding services. It supports
|
|
114
|
+
* automatic batching of requests for efficiency and optional caching to reduce
|
|
115
|
+
* redundant API calls.
|
|
116
|
+
*
|
|
117
|
+
* @since 1.0.0
|
|
118
|
+
* @category Constructors
|
|
119
|
+
*/
|
|
120
|
+
const make = options => Effect.gen(function* () {
|
|
121
|
+
const cache = yield* Option.fromNullable(options.cache).pipe(Effect.flatMap(config => Request.makeCache(config)), Effect.optionFromOptional);
|
|
122
|
+
const resolver = makeBatchedResolver(options.embedMany).pipe(options.maxBatchSize ? RequestResolver.batchN(options.maxBatchSize) : _Function.identity);
|
|
123
|
+
const embed = input => {
|
|
124
|
+
const request = Effect.request(new EmbeddingRequest({
|
|
125
|
+
input
|
|
126
|
+
}), resolver);
|
|
127
|
+
return Option.match(cache, {
|
|
128
|
+
onNone: () => request,
|
|
129
|
+
onSome: cache => request.pipe(Effect.withRequestCaching(true), Effect.withRequestCache(cache))
|
|
130
|
+
});
|
|
131
|
+
};
|
|
132
|
+
const embedMany = (inputs, options) => Effect.forEach(inputs, embed, {
|
|
133
|
+
batching: true,
|
|
134
|
+
concurrency: options?.concurrency
|
|
135
|
+
});
|
|
136
|
+
return EmbeddingModel.of({
|
|
137
|
+
embed: input => embed(input).pipe(Effect.withSpan("EmbeddingModel.embed", {
|
|
138
|
+
captureStackTrace: false
|
|
139
|
+
})),
|
|
140
|
+
embedMany: inputs => embedMany(inputs).pipe(Effect.withSpan("EmbeddingModel.embedMany", {
|
|
141
|
+
captureStackTrace: false
|
|
142
|
+
}))
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
/**
|
|
146
|
+
* Creates an EmbeddingModel service with time-window based batching.
|
|
147
|
+
*
|
|
148
|
+
* This constructor creates a service that uses a data loader pattern to batch
|
|
149
|
+
* embedding requests within a specified time window. This is optimal for
|
|
150
|
+
* high-throughput scenarios where you want to automatically batch requests that
|
|
151
|
+
* arrive within a short time period.
|
|
152
|
+
*
|
|
153
|
+
* @since 1.0.0
|
|
154
|
+
* @category Constructors
|
|
155
|
+
*/
|
|
156
|
+
exports.make = make;
|
|
157
|
+
const makeDataLoader = options => Effect.gen(function* () {
|
|
158
|
+
const resolver = makeBatchedResolver(options.embedMany);
|
|
159
|
+
const resolverDelayed = yield* (0, _RequestResolver.dataLoader)(resolver, {
|
|
160
|
+
window: options.window,
|
|
161
|
+
maxBatchSize: options.maxBatchSize
|
|
162
|
+
});
|
|
163
|
+
function embed(input) {
|
|
164
|
+
return Effect.request(new EmbeddingRequest({
|
|
165
|
+
input
|
|
166
|
+
}), resolverDelayed).pipe(Effect.withSpan("EmbeddingModel.embed", {
|
|
167
|
+
captureStackTrace: false
|
|
168
|
+
}));
|
|
169
|
+
}
|
|
170
|
+
function embedMany(inputs, options) {
|
|
171
|
+
return Effect.forEach(inputs, embed, {
|
|
172
|
+
batching: true,
|
|
173
|
+
concurrency: options?.concurrency
|
|
174
|
+
}).pipe(Effect.withSpan("EmbeddingModel.embedMany", {
|
|
175
|
+
captureStackTrace: false
|
|
176
|
+
}));
|
|
177
|
+
}
|
|
178
|
+
return EmbeddingModel.of({
|
|
179
|
+
embed,
|
|
180
|
+
embedMany
|
|
181
|
+
});
|
|
182
|
+
});
|
|
183
|
+
exports.makeDataLoader = makeDataLoader;
|
|
184
|
+
//# sourceMappingURL=EmbeddingModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmbeddingModel.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","EmbeddingModel","Tag","exports","EmbeddingRequest","TaggedRequest","failure","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","inputs","batching","concurrency","of","withSpan","captureStackTrace","makeDataLoader","resolverDelayed","dataLoader","window"],"sources":["../../src/EmbeddingModel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|