@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.
Files changed (188) hide show
  1. package/Chat/package.json +6 -0
  2. package/EmbeddingModel/package.json +6 -0
  3. package/IdGenerator/package.json +6 -0
  4. package/LanguageModel/package.json +6 -0
  5. package/Model/package.json +6 -0
  6. package/Prompt/package.json +6 -0
  7. package/Response/package.json +6 -0
  8. package/Telemetry/package.json +6 -0
  9. package/Tool/package.json +6 -0
  10. package/Toolkit/package.json +6 -0
  11. package/dist/cjs/AiError.js +575 -11
  12. package/dist/cjs/AiError.js.map +1 -1
  13. package/dist/cjs/Chat.js +302 -0
  14. package/dist/cjs/Chat.js.map +1 -0
  15. package/dist/cjs/EmbeddingModel.js +184 -0
  16. package/dist/cjs/EmbeddingModel.js.map +1 -0
  17. package/dist/cjs/IdGenerator.js +255 -0
  18. package/dist/cjs/IdGenerator.js.map +1 -0
  19. package/dist/cjs/LanguageModel.js +584 -0
  20. package/dist/cjs/LanguageModel.js.map +1 -0
  21. package/dist/cjs/McpServer.js +12 -4
  22. package/dist/cjs/McpServer.js.map +1 -1
  23. package/dist/cjs/Model.js +118 -0
  24. package/dist/cjs/Model.js.map +1 -0
  25. package/dist/cjs/Prompt.js +649 -0
  26. package/dist/cjs/Prompt.js.map +1 -0
  27. package/dist/cjs/Response.js +635 -0
  28. package/dist/cjs/Response.js.map +1 -0
  29. package/dist/cjs/Telemetry.js +176 -0
  30. package/dist/cjs/Telemetry.js.map +1 -0
  31. package/dist/cjs/Tokenizer.js +87 -8
  32. package/dist/cjs/Tokenizer.js.map +1 -1
  33. package/dist/cjs/Tool.js +556 -0
  34. package/dist/cjs/Tool.js.map +1 -0
  35. package/dist/cjs/Toolkit.js +279 -0
  36. package/dist/cjs/Toolkit.js.map +1 -0
  37. package/dist/cjs/index.js +21 -19
  38. package/dist/dts/AiError.d.ts +577 -9
  39. package/dist/dts/AiError.d.ts.map +1 -1
  40. package/dist/dts/Chat.d.ts +356 -0
  41. package/dist/dts/Chat.d.ts.map +1 -0
  42. package/dist/dts/EmbeddingModel.d.ts +153 -0
  43. package/dist/dts/EmbeddingModel.d.ts.map +1 -0
  44. package/dist/dts/IdGenerator.d.ts +272 -0
  45. package/dist/dts/IdGenerator.d.ts.map +1 -0
  46. package/dist/dts/LanguageModel.d.ts +458 -0
  47. package/dist/dts/LanguageModel.d.ts.map +1 -0
  48. package/dist/dts/McpSchema.d.ts +25 -25
  49. package/dist/dts/McpServer.d.ts +6 -4
  50. package/dist/dts/McpServer.d.ts.map +1 -1
  51. package/dist/dts/Model.d.ts +124 -0
  52. package/dist/dts/Model.d.ts.map +1 -0
  53. package/dist/dts/Prompt.d.ts +1119 -0
  54. package/dist/dts/Prompt.d.ts.map +1 -0
  55. package/dist/dts/Response.d.ts +1519 -0
  56. package/dist/dts/Response.d.ts.map +1 -0
  57. package/dist/dts/Telemetry.d.ts +520 -0
  58. package/dist/dts/Telemetry.d.ts.map +1 -0
  59. package/dist/dts/Tokenizer.d.ts +131 -13
  60. package/dist/dts/Tokenizer.d.ts.map +1 -1
  61. package/dist/dts/Tool.d.ts +876 -0
  62. package/dist/dts/Tool.d.ts.map +1 -0
  63. package/dist/dts/Toolkit.d.ts +310 -0
  64. package/dist/dts/Toolkit.d.ts.map +1 -0
  65. package/dist/dts/index.d.ts +498 -13
  66. package/dist/dts/index.d.ts.map +1 -1
  67. package/dist/esm/AiError.js +570 -10
  68. package/dist/esm/AiError.js.map +1 -1
  69. package/dist/esm/Chat.js +291 -0
  70. package/dist/esm/Chat.js.map +1 -0
  71. package/dist/esm/EmbeddingModel.js +173 -0
  72. package/dist/esm/EmbeddingModel.js.map +1 -0
  73. package/dist/esm/IdGenerator.js +245 -0
  74. package/dist/esm/IdGenerator.js.map +1 -0
  75. package/dist/esm/LanguageModel.js +572 -0
  76. package/dist/esm/LanguageModel.js.map +1 -0
  77. package/dist/esm/McpServer.js +12 -4
  78. package/dist/esm/McpServer.js.map +1 -1
  79. package/dist/esm/Model.js +108 -0
  80. package/dist/esm/Model.js.map +1 -0
  81. package/dist/esm/Prompt.js +633 -0
  82. package/dist/esm/Prompt.js.map +1 -0
  83. package/dist/esm/Response.js +619 -0
  84. package/dist/esm/Response.js.map +1 -0
  85. package/dist/esm/Telemetry.js +166 -0
  86. package/dist/esm/Telemetry.js.map +1 -0
  87. package/dist/esm/Tokenizer.js +87 -8
  88. package/dist/esm/Tokenizer.js.map +1 -1
  89. package/dist/esm/Tool.js +534 -0
  90. package/dist/esm/Tool.js.map +1 -0
  91. package/dist/esm/Toolkit.js +269 -0
  92. package/dist/esm/Toolkit.js.map +1 -0
  93. package/dist/esm/index.js +498 -13
  94. package/dist/esm/index.js.map +1 -1
  95. package/package.json +76 -68
  96. package/src/AiError.ts +739 -9
  97. package/src/Chat.ts +546 -0
  98. package/src/EmbeddingModel.ts +311 -0
  99. package/src/IdGenerator.ts +320 -0
  100. package/src/LanguageModel.ts +1074 -0
  101. package/src/McpServer.ts +337 -194
  102. package/src/Model.ts +155 -0
  103. package/src/Prompt.ts +1616 -0
  104. package/src/Response.ts +2131 -0
  105. package/src/Telemetry.ts +655 -0
  106. package/src/Tokenizer.ts +145 -24
  107. package/src/Tool.ts +1267 -0
  108. package/src/Toolkit.ts +516 -0
  109. package/src/index.ts +499 -13
  110. package/AiChat/package.json +0 -6
  111. package/AiEmbeddingModel/package.json +0 -6
  112. package/AiInput/package.json +0 -6
  113. package/AiLanguageModel/package.json +0 -6
  114. package/AiModel/package.json +0 -6
  115. package/AiResponse/package.json +0 -6
  116. package/AiTelemetry/package.json +0 -6
  117. package/AiTool/package.json +0 -6
  118. package/AiToolkit/package.json +0 -6
  119. package/dist/cjs/AiChat.js +0 -122
  120. package/dist/cjs/AiChat.js.map +0 -1
  121. package/dist/cjs/AiEmbeddingModel.js +0 -109
  122. package/dist/cjs/AiEmbeddingModel.js.map +0 -1
  123. package/dist/cjs/AiInput.js +0 -458
  124. package/dist/cjs/AiInput.js.map +0 -1
  125. package/dist/cjs/AiLanguageModel.js +0 -351
  126. package/dist/cjs/AiLanguageModel.js.map +0 -1
  127. package/dist/cjs/AiModel.js +0 -37
  128. package/dist/cjs/AiModel.js.map +0 -1
  129. package/dist/cjs/AiResponse.js +0 -681
  130. package/dist/cjs/AiResponse.js.map +0 -1
  131. package/dist/cjs/AiTelemetry.js +0 -58
  132. package/dist/cjs/AiTelemetry.js.map +0 -1
  133. package/dist/cjs/AiTool.js +0 -150
  134. package/dist/cjs/AiTool.js.map +0 -1
  135. package/dist/cjs/AiToolkit.js +0 -157
  136. package/dist/cjs/AiToolkit.js.map +0 -1
  137. package/dist/cjs/internal/common.js +0 -21
  138. package/dist/cjs/internal/common.js.map +0 -1
  139. package/dist/dts/AiChat.d.ts +0 -101
  140. package/dist/dts/AiChat.d.ts.map +0 -1
  141. package/dist/dts/AiEmbeddingModel.d.ts +0 -65
  142. package/dist/dts/AiEmbeddingModel.d.ts.map +0 -1
  143. package/dist/dts/AiInput.d.ts +0 -590
  144. package/dist/dts/AiInput.d.ts.map +0 -1
  145. package/dist/dts/AiLanguageModel.d.ts +0 -302
  146. package/dist/dts/AiLanguageModel.d.ts.map +0 -1
  147. package/dist/dts/AiModel.d.ts +0 -25
  148. package/dist/dts/AiModel.d.ts.map +0 -1
  149. package/dist/dts/AiResponse.d.ts +0 -863
  150. package/dist/dts/AiResponse.d.ts.map +0 -1
  151. package/dist/dts/AiTelemetry.d.ts +0 -242
  152. package/dist/dts/AiTelemetry.d.ts.map +0 -1
  153. package/dist/dts/AiTool.d.ts +0 -334
  154. package/dist/dts/AiTool.d.ts.map +0 -1
  155. package/dist/dts/AiToolkit.d.ts +0 -96
  156. package/dist/dts/AiToolkit.d.ts.map +0 -1
  157. package/dist/dts/internal/common.d.ts +0 -2
  158. package/dist/dts/internal/common.d.ts.map +0 -1
  159. package/dist/esm/AiChat.js +0 -111
  160. package/dist/esm/AiChat.js.map +0 -1
  161. package/dist/esm/AiEmbeddingModel.js +0 -98
  162. package/dist/esm/AiEmbeddingModel.js.map +0 -1
  163. package/dist/esm/AiInput.js +0 -433
  164. package/dist/esm/AiInput.js.map +0 -1
  165. package/dist/esm/AiLanguageModel.js +0 -340
  166. package/dist/esm/AiLanguageModel.js.map +0 -1
  167. package/dist/esm/AiModel.js +0 -29
  168. package/dist/esm/AiModel.js.map +0 -1
  169. package/dist/esm/AiResponse.js +0 -657
  170. package/dist/esm/AiResponse.js.map +0 -1
  171. package/dist/esm/AiTelemetry.js +0 -48
  172. package/dist/esm/AiTelemetry.js.map +0 -1
  173. package/dist/esm/AiTool.js +0 -134
  174. package/dist/esm/AiTool.js.map +0 -1
  175. package/dist/esm/AiToolkit.js +0 -147
  176. package/dist/esm/AiToolkit.js.map +0 -1
  177. package/dist/esm/internal/common.js +0 -14
  178. package/dist/esm/internal/common.js.map +0 -1
  179. package/src/AiChat.ts +0 -251
  180. package/src/AiEmbeddingModel.ts +0 -169
  181. package/src/AiInput.ts +0 -602
  182. package/src/AiLanguageModel.ts +0 -685
  183. package/src/AiModel.ts +0 -53
  184. package/src/AiResponse.ts +0 -986
  185. package/src/AiTelemetry.ts +0 -333
  186. package/src/AiTool.ts +0 -579
  187. package/src/AiToolkit.ts +0 -265
  188. package/src/internal/common.ts +0 -12
@@ -1,458 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.make = exports.isPart = exports.isMessage = exports.is = exports.empty = exports.concat = exports.UserMessagePart = exports.UserMessage = exports.TypeId = exports.ToolMessagePart = exports.ToolMessage = exports.ToolCallResultPart = exports.ToolCallPart = exports.ToolCallId = exports.TextPart = exports.RedactedReasoningPart = exports.ReasoningPart = exports.PartTypeId = exports.MessageTypeId = exports.Message = exports.ImageUrlPart = exports.ImagePart = exports.FromJson = exports.FileUrlPart = exports.FilePart = exports.AssistantMessagePart = exports.AssistantMessage = exports.AiInput = void 0;
7
- var _Function = require("effect/Function");
8
- var Predicate = _interopRequireWildcard(require("effect/Predicate"));
9
- var Schema = _interopRequireWildcard(require("effect/Schema"));
10
- var AiResponse = _interopRequireWildcard(require("./AiResponse.js"));
11
- var InternalCommon = _interopRequireWildcard(require("./internal/common.js"));
12
- 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); }
13
- /**
14
- * @since 1.0.0
15
- */
16
-
17
- /**
18
- * @since 1.0.0
19
- * @category Type Ids
20
- */
21
- const TypeId = exports.TypeId = /*#__PURE__*/Symbol.for("@effect/ai/AiInput");
22
- /**
23
- * Represents input to a large language model.
24
- *
25
- * @since 1.0.0
26
- * @category Models
27
- */
28
- class AiInput extends /*#__PURE__*/Schema.Class("@effect/ai/AiInput")({
29
- messages: /*#__PURE__*/Schema.Array(/*#__PURE__*/Schema.suspend(() => Message))
30
- }) {
31
- /**
32
- * @since 1.0.0
33
- */
34
- [TypeId] = TypeId;
35
- }
36
- /**
37
- * @since 1.0.0
38
- * @category Models
39
- */
40
- exports.AiInput = AiInput;
41
- const FromJson = exports.FromJson = /*#__PURE__*/Schema.parseJson(AiInput);
42
- // =============================================================================
43
- // Message
44
- // =============================================================================
45
- /**
46
- * @since 1.0.0
47
- * @category Type Ids
48
- */
49
- const MessageTypeId = exports.MessageTypeId = /*#__PURE__*/Symbol.for("@effect/ai/AiInput/Message");
50
- /**
51
- * @since 1.0.0
52
- * @category Models
53
- */
54
- class UserMessage extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/Message/UserMessage")("UserMessage", {
55
- parts: /*#__PURE__*/Schema.Array(/*#__PURE__*/Schema.suspend(() => UserMessagePart)),
56
- userName: /*#__PURE__*/Schema.optional(Schema.String)
57
- }) {
58
- /**
59
- * @since 1.0.0
60
- */
61
- [MessageTypeId] = MessageTypeId;
62
- }
63
- /**
64
- * @since 1.0.0
65
- * @category Models
66
- */
67
- exports.UserMessage = UserMessage;
68
- class AssistantMessage extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/Message/AssistantMessage")("AssistantMessage", {
69
- parts: /*#__PURE__*/Schema.Array(/*#__PURE__*/Schema.suspend(() => AssistantMessagePart))
70
- }) {
71
- /**
72
- * @since 1.0.0
73
- */
74
- [MessageTypeId] = MessageTypeId;
75
- }
76
- /**
77
- * @since 1.0.0
78
- * @category Models
79
- */
80
- exports.AssistantMessage = AssistantMessage;
81
- class ToolMessage extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/Message/ToolMessage")("ToolMessage", {
82
- parts: /*#__PURE__*/Schema.Array(/*#__PURE__*/Schema.suspend(() => ToolMessagePart))
83
- }) {
84
- /**
85
- * @since 1.0.0
86
- */
87
- [MessageTypeId] = MessageTypeId;
88
- }
89
- /**
90
- * @since 1.0.0
91
- * @category Models
92
- */
93
- exports.ToolMessage = ToolMessage;
94
- const Message = exports.Message = /*#__PURE__*/Schema.Union(UserMessage, AssistantMessage, ToolMessage);
95
- // =============================================================================
96
- // Part
97
- // =============================================================================
98
- /**
99
- * @since 1.0.0
100
- * @category Type Ids
101
- */
102
- const PartTypeId = exports.PartTypeId = /*#__PURE__*/Symbol.for("@effect/ai/AiInput/Message/Part");
103
- /**
104
- * Represents a text part of a message.
105
- *
106
- * @since 1.0.0
107
- * @category Models
108
- */
109
- class TextPart extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/TextPart")("TextPart", {
110
- /**
111
- * The text content.
112
- */
113
- text: Schema.String
114
- }) {
115
- /**
116
- * @since 1.0.0
117
- */
118
- [PartTypeId] = PartTypeId;
119
- }
120
- /**
121
- * Represents an image part of a message with binary image data.
122
- *
123
- * @since 1.0.0
124
- * @category Models
125
- */
126
- exports.TextPart = TextPart;
127
- class ImagePart extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/ImagePart")("ImagePart", {
128
- /**
129
- * The binary image data.
130
- */
131
- data: Schema.Uint8ArrayFromBase64,
132
- /**
133
- * The optional MIME type for the image.
134
- */
135
- mediaType: /*#__PURE__*/Schema.optional(Schema.String)
136
- }) {
137
- /**
138
- * @since 1.0.0
139
- */
140
- [PartTypeId] = PartTypeId;
141
- }
142
- /**
143
- * Represents an image part of a message with a URL pointing to the image.
144
- *
145
- * @since 1.0.0
146
- * @category Models
147
- */
148
- exports.ImagePart = ImagePart;
149
- class ImageUrlPart extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/ImageUrlPart")("ImageUrlPart", {
150
- /**
151
- * The URL that points to the image.
152
- */
153
- url: Schema.URL
154
- }) {
155
- /**
156
- * @since 1.0.0
157
- */
158
- [PartTypeId] = PartTypeId;
159
- }
160
- /**
161
- * Represents a file part of a message with binary file data.
162
- *
163
- * @since 1.0.0
164
- * @category Models
165
- */
166
- exports.ImageUrlPart = ImageUrlPart;
167
- class FilePart extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/FilePart")("FilePart", {
168
- /**
169
- * The binary file data.
170
- */
171
- data: Schema.Uint8ArrayFromBase64,
172
- /**
173
- * The optional name of the file.
174
- */
175
- name: /*#__PURE__*/Schema.optional(Schema.String),
176
- /**
177
- * The optional MIME type for the image.
178
- */
179
- mediaType: /*#__PURE__*/Schema.optional(Schema.String)
180
- }) {
181
- /**
182
- * @since 1.0.0
183
- */
184
- [PartTypeId] = PartTypeId;
185
- }
186
- /**
187
- * Represents a file part of a message with a URL pointing to the file.
188
- *
189
- * @since 1.0.0
190
- * @category Models
191
- */
192
- exports.FilePart = FilePart;
193
- class FileUrlPart extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/FileUrlPart")("FileUrlPart", {
194
- /**
195
- * The URL that points to the file.
196
- */
197
- url: Schema.URL
198
- }) {
199
- /**
200
- * @since 1.0.0
201
- */
202
- [PartTypeId] = PartTypeId;
203
- }
204
- /**
205
- * Represents a part of a message containing reasoning that the model used to
206
- * generate its output.
207
- *
208
- * @since 1.0.0
209
- * @category Models
210
- */
211
- exports.FileUrlPart = FileUrlPart;
212
- class ReasoningPart extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/ReasoningPart")("ReasoningPart", {
213
- /**
214
- * The reasoning text that the model used to return the output.
215
- */
216
- reasoningText: Schema.String,
217
- /**
218
- * An optional signature which verifies that the reasoning text was generated
219
- * by the model.
220
- */
221
- signature: /*#__PURE__*/Schema.optional(Schema.String)
222
- }) {
223
- /**
224
- * @since 1.0.0
225
- */
226
- [PartTypeId] = PartTypeId;
227
- }
228
- /**
229
- * Represents a part of a message containing content in the model's reasoning
230
- * that was encrypted by the model provider for safety reasons.
231
- *
232
- * @since 1.0.0
233
- * @category Models
234
- */
235
- exports.ReasoningPart = ReasoningPart;
236
- class RedactedReasoningPart extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/RedactedReasoningPart")("RedactedReasoningPart", {
237
- /**
238
- * The content in the reasoning that was encrypted by the model provider for
239
- * safety reasons.
240
- */
241
- redactedText: Schema.String
242
- }) {
243
- /**
244
- * @since 1.0.0
245
- */
246
- [PartTypeId] = PartTypeId;
247
- }
248
- /**
249
- * Represents the identifier generated by a model when a tool call is requested.
250
- *
251
- * @since 1.0.0
252
- * @category Models
253
- */
254
- exports.RedactedReasoningPart = RedactedReasoningPart;
255
- const ToolCallId = exports.ToolCallId = InternalCommon.ToolCallId;
256
- /**
257
- * Represents a part of a message containing a tool call that the model has
258
- * requested invocation of.
259
- *
260
- * @since 1.0.0
261
- * @category Models
262
- */
263
- class ToolCallPart extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/ToolCallPart")("ToolCallPart", {
264
- /**
265
- * The identifier generated by a model when requesting a tool call.
266
- */
267
- id: ToolCallId,
268
- /**
269
- * The name of the tool to call.
270
- */
271
- name: Schema.String,
272
- /**
273
- * The arguments to call the tool with as a JSON-serializable object that
274
- * matches the tool call input schema.
275
- */
276
- params: Schema.Unknown
277
- }) {
278
- /**
279
- * @since 1.0.0
280
- */
281
- [PartTypeId] = PartTypeId;
282
- constructor(props, options) {
283
- super(props, options);
284
- }
285
- }
286
- /**
287
- * Represents a part of a message containing the results of tool calls that the
288
- * model requested invocation of.
289
- *
290
- * @since 1.0.0
291
- * @category Models
292
- */
293
- exports.ToolCallPart = ToolCallPart;
294
- class ToolCallResultPart extends /*#__PURE__*/Schema.TaggedClass("@effect/ai/AiInput/ToolCallResultPart")("ToolCallResultPart", {
295
- /**
296
- * The identifier generated by a model when requesting a tool call.
297
- */
298
- id: ToolCallId,
299
- /**
300
- * The name of the tool that was called.
301
- */
302
- name: Schema.String,
303
- /**
304
- * The result of the tool call as a JSON-serializable object.
305
- */
306
- result: Schema.Unknown
307
- }) {
308
- /**
309
- * @since 1.0.0
310
- */
311
- [PartTypeId] = PartTypeId;
312
- }
313
- /**
314
- * The valid parts of a user message.
315
- *
316
- * @since 1.0.0
317
- * @category Models
318
- */
319
- exports.ToolCallResultPart = ToolCallResultPart;
320
- const UserMessagePart = exports.UserMessagePart = /*#__PURE__*/Schema.Union(TextPart, ImagePart, ImageUrlPart, FilePart, FileUrlPart);
321
- /**
322
- * The valid parts of an assistant message.
323
- *
324
- * @since 1.0.0
325
- * @category Models
326
- */
327
- const AssistantMessagePart = exports.AssistantMessagePart = /*#__PURE__*/Schema.Union(TextPart, ReasoningPart, RedactedReasoningPart, ToolCallPart);
328
- /**
329
- * The valid parts of a tool message.
330
- *
331
- * @since 1.0.0
332
- * @category Models
333
- */
334
- const ToolMessagePart = exports.ToolMessagePart = ToolCallResultPart;
335
- /**
336
- * @since 1.0.0
337
- * @category Guards
338
- */
339
- const is = u => Predicate.hasProperty(u, TypeId);
340
- /**
341
- * @since 1.0.0
342
- * @category Guards
343
- */
344
- exports.is = is;
345
- const isMessage = u => Predicate.hasProperty(u, MessageTypeId);
346
- /**
347
- * @since 1.0.0
348
- * @category Guards
349
- */
350
- exports.isMessage = isMessage;
351
- const isPart = u => Predicate.hasProperty(u, PartTypeId);
352
- /**
353
- * @since 1.0.0
354
- * @category Constructors
355
- */
356
- exports.isPart = isPart;
357
- const empty = exports.empty = /*#__PURE__*/new AiInput({
358
- messages: []
359
- });
360
- /**
361
- * Constructs a new `AiInput` from raw user input.
362
- *
363
- * @since 1.0.0
364
- * @category Constructors
365
- */
366
- const make = input => {
367
- if (Predicate.isString(input)) {
368
- const textPart = new TextPart({
369
- text: input
370
- });
371
- const message = new UserMessage({
372
- parts: [textPart]
373
- });
374
- return new AiInput({
375
- messages: [message]
376
- });
377
- }
378
- if (isMessage(input)) {
379
- return new AiInput({
380
- messages: [input]
381
- });
382
- }
383
- if (Predicate.isIterable(input)) {
384
- return new AiInput({
385
- messages: Array.from(input)
386
- });
387
- }
388
- if (is(input)) {
389
- return input;
390
- }
391
- if (AiResponse.isStructured(input)) {
392
- const assistantMessages = fromResponse(input).messages;
393
- const toolPart = new ToolCallResultPart({
394
- id: input.id,
395
- name: input.name,
396
- result: input.value
397
- });
398
- const toolMessage = new ToolMessage({
399
- parts: [toolPart]
400
- });
401
- return new AiInput({
402
- messages: [...assistantMessages, toolMessage]
403
- });
404
- }
405
- if (AiResponse.hasToolCallResults(input)) {
406
- const assistantMessages = fromResponse(input).messages;
407
- const toolParts = [];
408
- for (const [id, {
409
- name,
410
- result
411
- }] of input.encodedResults) {
412
- toolParts.push(new ToolCallResultPart({
413
- id,
414
- name,
415
- result
416
- }));
417
- }
418
- const toolMessage = new ToolMessage({
419
- parts: toolParts
420
- });
421
- return new AiInput({
422
- messages: [...assistantMessages, toolMessage]
423
- });
424
- }
425
- return fromResponse(input);
426
- };
427
- exports.make = make;
428
- const EXCLUDED_RESPONSE_PARTS = ["MetadataPart", "ReasoningPart", "RedactedReasoningPart", "FinishPart"];
429
- const validResponseParts = part => !EXCLUDED_RESPONSE_PARTS.includes(part._tag);
430
- const fromResponse = response => {
431
- if (response.parts.length === 0) {
432
- return empty;
433
- }
434
- const parts = response.parts.filter(validResponseParts).map(part => part._tag === "TextPart" ? new TextPart({
435
- text: part.text
436
- }) : new ToolCallPart({
437
- id: part.id,
438
- name: part.name,
439
- params: part.params
440
- }));
441
- const message = new AssistantMessage({
442
- parts
443
- });
444
- return new AiInput({
445
- messages: [message]
446
- });
447
- };
448
- /**
449
- * Concatenates the messages of one `AiInput` onto the messages of another,
450
- * creating a new `AiInput` with the messages from both.
451
- *
452
- * @since 1.0.0
453
- * @category Combination
454
- */
455
- const concat = exports.concat = /*#__PURE__*/(0, _Function.dual)(2, (self, other) => AiInput.make({
456
- messages: [...self.messages, ...other.messages]
457
- }));
458
- //# sourceMappingURL=AiInput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AiInput.js","names":["_Function","require","Predicate","_interopRequireWildcard","Schema","AiResponse","InternalCommon","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","Symbol","for","AiInput","Class","messages","Array","suspend","Message","FromJson","parseJson","MessageTypeId","UserMessage","TaggedClass","parts","UserMessagePart","userName","optional","String","AssistantMessage","AssistantMessagePart","ToolMessage","ToolMessagePart","Union","PartTypeId","TextPart","text","ImagePart","data","Uint8ArrayFromBase64","mediaType","ImageUrlPart","url","URL","FilePart","name","FileUrlPart","ReasoningPart","reasoningText","signature","RedactedReasoningPart","redactedText","ToolCallId","ToolCallPart","id","params","Unknown","constructor","props","options","ToolCallResultPart","result","is","u","hasProperty","isMessage","isPart","empty","make","input","isString","textPart","message","isIterable","from","isStructured","assistantMessages","fromResponse","toolPart","value","toolMessage","hasToolCallResults","toolParts","encodedResults","push","EXCLUDED_RESPONSE_PARTS","validResponseParts","part","includes","_tag","response","length","filter","map","concat","dual","self","other"],"sources":["../../src/AiInput.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}