@effect/ai 0.14.1 → 0.16.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 (134) hide show
  1. package/AiEmbeddingModel/package.json +6 -0
  2. package/AiLanguageModel/package.json +6 -0
  3. package/AiTool/package.json +6 -0
  4. package/dist/cjs/AiChat.js +65 -86
  5. package/dist/cjs/AiChat.js.map +1 -1
  6. package/dist/cjs/{Embeddings.js → AiEmbeddingModel.js} +12 -12
  7. package/dist/cjs/AiEmbeddingModel.js.map +1 -0
  8. package/dist/cjs/AiError.js +8 -1
  9. package/dist/cjs/AiError.js.map +1 -1
  10. package/dist/cjs/AiInput.js +335 -248
  11. package/dist/cjs/AiInput.js.map +1 -1
  12. package/dist/cjs/AiLanguageModel.js +311 -0
  13. package/dist/cjs/AiLanguageModel.js.map +1 -0
  14. package/dist/cjs/AiModel.js +11 -5
  15. package/dist/cjs/AiModel.js.map +1 -1
  16. package/dist/cjs/AiPlan.js +10 -3
  17. package/dist/cjs/AiPlan.js.map +1 -1
  18. package/dist/cjs/AiResponse.js +481 -165
  19. package/dist/cjs/AiResponse.js.map +1 -1
  20. package/dist/cjs/AiTelemetry.js +10 -3
  21. package/dist/cjs/AiTelemetry.js.map +1 -1
  22. package/dist/cjs/AiTool.js +93 -0
  23. package/dist/cjs/AiTool.js.map +1 -0
  24. package/dist/cjs/AiToolkit.js +121 -98
  25. package/dist/cjs/AiToolkit.js.map +1 -1
  26. package/dist/cjs/Tokenizer.js +14 -16
  27. package/dist/cjs/Tokenizer.js.map +1 -1
  28. package/dist/cjs/index.js +7 -9
  29. package/dist/cjs/internal/aiPlan.js +6 -9
  30. package/dist/cjs/internal/aiPlan.js.map +1 -1
  31. package/dist/cjs/internal/common.js +22 -0
  32. package/dist/cjs/internal/common.js.map +1 -0
  33. package/dist/dts/AiChat.d.ts +58 -44
  34. package/dist/dts/AiChat.d.ts.map +1 -1
  35. package/dist/dts/{Embeddings.d.ts → AiEmbeddingModel.d.ts} +13 -14
  36. package/dist/dts/AiEmbeddingModel.d.ts.map +1 -0
  37. package/dist/dts/AiError.d.ts +4 -3
  38. package/dist/dts/AiError.d.ts.map +1 -1
  39. package/dist/dts/AiInput.d.ts +441 -146
  40. package/dist/dts/AiInput.d.ts.map +1 -1
  41. package/dist/dts/AiLanguageModel.d.ts +263 -0
  42. package/dist/dts/AiLanguageModel.d.ts.map +1 -0
  43. package/dist/dts/AiModel.d.ts +21 -20
  44. package/dist/dts/AiModel.d.ts.map +1 -1
  45. package/dist/dts/AiPlan.d.ts +90 -26
  46. package/dist/dts/AiPlan.d.ts.map +1 -1
  47. package/dist/dts/AiResponse.d.ts +711 -100
  48. package/dist/dts/AiResponse.d.ts.map +1 -1
  49. package/dist/dts/AiTelemetry.d.ts +175 -157
  50. package/dist/dts/AiTelemetry.d.ts.map +1 -1
  51. package/dist/dts/AiTool.d.ts +288 -0
  52. package/dist/dts/AiTool.d.ts.map +1 -0
  53. package/dist/dts/AiToolkit.d.ts +50 -111
  54. package/dist/dts/AiToolkit.d.ts.map +1 -1
  55. package/dist/dts/Tokenizer.d.ts +8 -6
  56. package/dist/dts/Tokenizer.d.ts.map +1 -1
  57. package/dist/dts/index.d.ts +8 -12
  58. package/dist/dts/index.d.ts.map +1 -1
  59. package/dist/dts/internal/common.d.ts +2 -0
  60. package/dist/dts/internal/common.d.ts.map +1 -0
  61. package/dist/esm/AiChat.js +62 -83
  62. package/dist/esm/AiChat.js.map +1 -1
  63. package/dist/esm/{Embeddings.js → AiEmbeddingModel.js} +10 -10
  64. package/dist/esm/AiEmbeddingModel.js.map +1 -0
  65. package/dist/esm/AiError.js +8 -1
  66. package/dist/esm/AiError.js.map +1 -1
  67. package/dist/esm/AiInput.js +316 -238
  68. package/dist/esm/AiInput.js.map +1 -1
  69. package/dist/esm/AiLanguageModel.js +300 -0
  70. package/dist/esm/AiLanguageModel.js.map +1 -0
  71. package/dist/esm/AiModel.js +11 -5
  72. package/dist/esm/AiModel.js.map +1 -1
  73. package/dist/esm/AiPlan.js +8 -2
  74. package/dist/esm/AiPlan.js.map +1 -1
  75. package/dist/esm/AiResponse.js +467 -162
  76. package/dist/esm/AiResponse.js.map +1 -1
  77. package/dist/esm/AiTelemetry.js +8 -2
  78. package/dist/esm/AiTelemetry.js.map +1 -1
  79. package/dist/esm/AiTool.js +82 -0
  80. package/dist/esm/AiTool.js.map +1 -0
  81. package/dist/esm/AiToolkit.js +118 -96
  82. package/dist/esm/AiToolkit.js.map +1 -1
  83. package/dist/esm/Tokenizer.js +14 -16
  84. package/dist/esm/Tokenizer.js.map +1 -1
  85. package/dist/esm/index.js +8 -12
  86. package/dist/esm/index.js.map +1 -1
  87. package/dist/esm/internal/aiPlan.js +4 -7
  88. package/dist/esm/internal/aiPlan.js.map +1 -1
  89. package/dist/esm/internal/common.js +14 -0
  90. package/dist/esm/internal/common.js.map +1 -0
  91. package/package.json +28 -36
  92. package/src/AiChat.ts +182 -207
  93. package/src/{Embeddings.ts → AiEmbeddingModel.ts} +19 -18
  94. package/src/AiError.ts +8 -1
  95. package/src/AiInput.ts +434 -313
  96. package/src/AiLanguageModel.ts +569 -0
  97. package/src/AiModel.ts +47 -29
  98. package/src/AiPlan.ts +102 -30
  99. package/src/AiResponse.ts +743 -187
  100. package/src/AiTelemetry.ts +214 -197
  101. package/src/AiTool.ts +496 -0
  102. package/src/AiToolkit.ts +200 -240
  103. package/src/Tokenizer.ts +18 -22
  104. package/src/index.ts +9 -14
  105. package/src/internal/aiPlan.ts +12 -14
  106. package/src/internal/common.ts +12 -0
  107. package/AiModels/package.json +0 -6
  108. package/AiRole/package.json +0 -6
  109. package/Completions/package.json +0 -6
  110. package/Embeddings/package.json +0 -6
  111. package/dist/cjs/AiModels.js +0 -54
  112. package/dist/cjs/AiModels.js.map +0 -1
  113. package/dist/cjs/AiRole.js +0 -106
  114. package/dist/cjs/AiRole.js.map +0 -1
  115. package/dist/cjs/Completions.js +0 -256
  116. package/dist/cjs/Completions.js.map +0 -1
  117. package/dist/cjs/Embeddings.js.map +0 -1
  118. package/dist/dts/AiModels.d.ts +0 -34
  119. package/dist/dts/AiModels.d.ts.map +0 -1
  120. package/dist/dts/AiRole.d.ts +0 -111
  121. package/dist/dts/AiRole.d.ts.map +0 -1
  122. package/dist/dts/Completions.d.ts +0 -128
  123. package/dist/dts/Completions.d.ts.map +0 -1
  124. package/dist/dts/Embeddings.d.ts.map +0 -1
  125. package/dist/esm/AiModels.js +0 -44
  126. package/dist/esm/AiModels.js.map +0 -1
  127. package/dist/esm/AiRole.js +0 -93
  128. package/dist/esm/AiRole.js.map +0 -1
  129. package/dist/esm/Completions.js +0 -245
  130. package/dist/esm/Completions.js.map +0 -1
  131. package/dist/esm/Embeddings.js.map +0 -1
  132. package/src/AiModels.ts +0 -77
  133. package/src/AiRole.ts +0 -122
  134. package/src/Completions.ts +0 -434
@@ -1 +1 @@
1
- {"version":3,"file":"AiInput.d.ts","sourceRoot":"","sources":["../../src/AiInput.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AiInput.d.ts","sourceRoot":"","sources":["../../src/AiInput.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,263 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import * as Context from "effect/Context";
5
+ import * as Effect from "effect/Effect";
6
+ import * as JsonSchema from "effect/JSONSchema";
7
+ import * as Option from "effect/Option";
8
+ import * as Schema from "effect/Schema";
9
+ import * as Stream from "effect/Stream";
10
+ import type { Span } from "effect/Tracer";
11
+ import type { Concurrency } from "effect/Types";
12
+ import { AiError } from "./AiError.js";
13
+ import * as AiInput from "./AiInput.js";
14
+ import * as AiResponse from "./AiResponse.js";
15
+ import type * as AiTool from "./AiTool.js";
16
+ import type * as AiToolkit from "./AiToolkit.js";
17
+ declare const AiLanguageModel_base: Context.TagClass<AiLanguageModel, "@effect/ai/AiLanguageModel", AiLanguageModel.Service<never>>;
18
+ /**
19
+ * @since 1.0.0
20
+ * @category Context
21
+ */
22
+ export declare class AiLanguageModel extends AiLanguageModel_base {
23
+ }
24
+ /**
25
+ * @since 1.0.0
26
+ * @category Models
27
+ */
28
+ export type StructuredSchema<A, I, R> = TaggedSchema<A, I, R> | IdentifiedSchema<A, I, R>;
29
+ /**
30
+ * @since 1.0.0
31
+ * @category Models
32
+ */
33
+ export interface TaggedSchema<A, I, R> extends Schema.Schema<A, I, R> {
34
+ readonly _tag: string;
35
+ }
36
+ /**
37
+ * @since 1.0.0
38
+ * @category Models
39
+ */
40
+ export interface IdentifiedSchema<A, I, R> extends Schema.Schema<A, I, R> {
41
+ readonly identifier: string;
42
+ }
43
+ /**
44
+ * The tool choice mode for the language model.
45
+ *
46
+ * - `auto` (default): The model can decide whether or not to call tools, as well as which tools to call.
47
+ * - `required`: The model **must** call a tool but can decide which tool will be called.
48
+ * - `none`: The model **must not** call a tool.
49
+ * - `{ tool: <tool_name> }`: The model must call the specified tool.
50
+ *
51
+ * @since 1.0.0
52
+ * @category Models
53
+ */
54
+ export type ToolChoice<Tool extends AiTool.Any> = "auto" | "none" | "required" | {
55
+ readonly tool: Tool["name"];
56
+ };
57
+ /**
58
+ * Options for generating text using a large language model.
59
+ *
60
+ * @since 1.0.0
61
+ * @category Models
62
+ */
63
+ export interface GenerateTextOptions<Tools extends AiTool.Any> {
64
+ /**
65
+ * The prompt input to use to generate text.
66
+ */
67
+ readonly prompt: AiInput.Raw;
68
+ /**
69
+ * An optional system message that will be part of the prompt.
70
+ */
71
+ readonly system?: string | undefined;
72
+ /**
73
+ * A toolkit containing both the tools and the tool call handler to use to
74
+ * augment text generation.
75
+ */
76
+ readonly toolkit?: AiToolkit.ToHandler<Tools> | Effect.Effect<AiToolkit.ToHandler<Tools>, any, any>;
77
+ /**
78
+ * The tool choice mode for the language model.
79
+ *
80
+ * - `auto` (default): The model can decide whether or not to call tools, as well as which tools to call.
81
+ * - `required`: The model **must** call a tool but can decide which tool will be called.
82
+ * - `none`: The model **must not** call a tool.
83
+ * - `{ tool: <tool_name> }`: The model must call the specified tool.
84
+ */
85
+ readonly toolChoice?: ToolChoice<Tools>;
86
+ /**
87
+ * The concurrency level for resolving tool calls.
88
+ */
89
+ readonly concurrency?: Concurrency | undefined;
90
+ }
91
+ /**
92
+ * Options for generating a structured object using a large language model.
93
+ *
94
+ * @since 1.0.0
95
+ * @category Models
96
+ */
97
+ export interface GenerateObjectOptions<A, I, R> {
98
+ /**
99
+ * The prompt input to use to generate text.
100
+ */
101
+ readonly prompt: AiInput.Raw;
102
+ /**
103
+ * An optional system message that will be part of the prompt.
104
+ */
105
+ readonly system?: string | undefined;
106
+ /**
107
+ * The schema to be used to specify the structure of the object to generate.
108
+ */
109
+ readonly schema: Schema.Schema<A, I, R>;
110
+ /**
111
+ * The identifier to use to associating the underlying tool call with the
112
+ * generated output.
113
+ */
114
+ readonly toolCallId?: string | undefined;
115
+ }
116
+ /**
117
+ * A utility type to extract the success type for the text generation methods
118
+ * of `AiLanguageModel` from the provided options.
119
+ *
120
+ * @since 1.0.0
121
+ * @category Utility Types
122
+ */
123
+ export type ExtractSuccess<Options> = Options extends {
124
+ toolkit: AiToolkit.ToHandler<infer _Tools>;
125
+ } ? AiResponse.WithToolCallResults<_Tools> : Options extends {
126
+ toolkit: Effect.Effect<AiToolkit.ToHandler<infer _Tools>, infer _E, infer _R>;
127
+ } ? AiResponse.WithToolCallResults<_Tools> : AiResponse.AiResponse;
128
+ /**
129
+ * A utility type to extract the error type for the text generation methods
130
+ * of `AiLanguageModel` from the provided options.
131
+ *
132
+ * @since 1.0.0
133
+ * @category Utility Types
134
+ */
135
+ export type ExtractError<Options> = Options extends {
136
+ toolkit: AiToolkit.ToHandler<infer _Tools>;
137
+ } ? AiError | AiTool.Failure<_Tools> : Options extends {
138
+ toolkit: Effect.Effect<AiToolkit.ToHandler<infer _Tools>, infer _E, infer _R>;
139
+ } ? AiError | AiTool.Failure<_Tools> | _E : AiError;
140
+ /**
141
+ * A utility type to extract the context type for the text generation methods
142
+ * of `AiLanguageModel` from the provided options.
143
+ *
144
+ * @since 1.0.0
145
+ * @category Utility Types
146
+ */
147
+ export type ExtractContext<Options> = Options extends {
148
+ toolkit: AiToolkit.ToHandler<infer _Tools>;
149
+ } ? AiTool.Context<_Tools> : Options extends {
150
+ toolkit: Effect.Effect<AiToolkit.ToHandler<infer _Tools>, infer _E, infer _R>;
151
+ } ? AiTool.Context<_Tools> | _R : never;
152
+ /**
153
+ * @since 1.0.0
154
+ * @category Models
155
+ */
156
+ export declare namespace AiLanguageModel {
157
+ /**
158
+ * @since 1.0.0
159
+ * @category Models
160
+ */
161
+ interface Service<Config> {
162
+ /**
163
+ * Generate text using a large language model for the specified `prompt`.
164
+ *
165
+ * If a `toolkit` is specified, the large language model will additionally
166
+ * be able to perform tool calls to augment its response.
167
+ */
168
+ readonly generateText: <Tools extends AiTool.Any, Options>(options: Options & GenerateTextOptions<Tools>) => Effect.Effect<ExtractSuccess<Options>, ExtractError<Options>, ExtractContext<Options> | Config>;
169
+ /**
170
+ * Generate text using a large language model for the specified `prompt`,
171
+ * streaming output from the model as soon as it is available.
172
+ *
173
+ * If a `toolkit` is specified, the large language model will additionally
174
+ * be able to perform tool calls to augment its response.
175
+ */
176
+ readonly streamText: <Tools extends AiTool.Any, Options>(options: Options & GenerateTextOptions<Tools>) => Stream.Stream<ExtractSuccess<Options>, ExtractError<Options>, ExtractContext<Options> | Config>;
177
+ /**
178
+ * Generate a structured object for the specified prompt and schema using a
179
+ * large language model.
180
+ */
181
+ readonly generateObject: <A, I, R>(options: GenerateObjectOptions<A, I, R>) => Effect.Effect<AiResponse.WithStructuredOutput<A>, AiError, R | Config>;
182
+ }
183
+ }
184
+ /**
185
+ * @since 1.0.0
186
+ * @category Models
187
+ */
188
+ export interface AiLanguageModelOptions {
189
+ /**
190
+ * The prompt messages to use to generate text.
191
+ */
192
+ readonly prompt: AiInput.AiInput;
193
+ /**
194
+ * An optional system message that will be part of the prompt.
195
+ */
196
+ readonly system: Option.Option<string>;
197
+ /**
198
+ * The tools to use to generate text in an encoded format suitable for
199
+ * incorporation into requests to the large language model.
200
+ */
201
+ readonly tools: Array<{
202
+ readonly name: string;
203
+ readonly description: string;
204
+ readonly parameters: JsonSchema.JsonSchema7;
205
+ readonly structured: boolean;
206
+ }>;
207
+ /**
208
+ * The tool choice mode for the language model.
209
+ *
210
+ * - `auto` (default): The model can decide whether or not to call tools, as well as which tools to call.
211
+ * - `required`: The model **must** call a tool but can decide which tool will be called.
212
+ * - `none`: The model **must not** call a tool.
213
+ * - `{ tool: <tool_name> }`: The model must call the specified tool.
214
+ */
215
+ readonly toolChoice: ToolChoice<any>;
216
+ /**
217
+ * The span to use to trace interactions with the large language model.
218
+ */
219
+ readonly span: Span;
220
+ }
221
+ /**
222
+ * @since 1.0.0
223
+ * @category Constructors
224
+ */
225
+ export declare const make: <Config>(opts: {
226
+ readonly generateText: (options: AiLanguageModelOptions) => Effect.Effect<AiResponse.AiResponse, AiError, Config>;
227
+ readonly streamText: (options: AiLanguageModelOptions) => Stream.Stream<AiResponse.AiResponse, AiError, Config>;
228
+ }) => Effect.Effect<AiLanguageModel.Service<Config>>;
229
+ /**
230
+ * Generate text using a large language model for the specified `prompt`.
231
+ *
232
+ * If a `toolkit` is specified, the large language model will additionally
233
+ * be able to perform tool calls to augment its response.
234
+ *
235
+ * @since 1.0.0
236
+ * @category Functions
237
+ */
238
+ export declare const generateText: <Tools extends AiTool.Any, Options>(options: Options & GenerateTextOptions<Tools>) => Effect.Effect<ExtractSuccess<Options>, ExtractError<Options>, AiLanguageModel | ExtractContext<Options>>;
239
+ /**
240
+ * Generate a structured object for the specified prompt and schema using a
241
+ * large language model.
242
+ *
243
+ * When using a `Schema` that does not have an `identifier` or `_tag`
244
+ * property, you must specify a `toolCallId` to properly associate the
245
+ * output of the model.
246
+ *
247
+ * @since 1.0.0
248
+ * @category Functions
249
+ */
250
+ export declare const generateObject: <A, I, R>(options: GenerateObjectOptions<A, I, R>) => Effect.Effect<AiResponse.WithStructuredOutput<A>, AiError, AiLanguageModel | R>;
251
+ /**
252
+ * Generate text using a large language model for the specified `prompt`,
253
+ * streaming output from the model as soon as it is available.
254
+ *
255
+ * If a `toolkit` is specified, the large language model will additionally
256
+ * be able to perform tool calls to augment its response.
257
+ *
258
+ * @since 1.0.0
259
+ * @category Functions
260
+ */
261
+ export declare const streamText: <Tools extends AiTool.Any, Options>(options: Options & GenerateTextOptions<Tools>) => Stream.Stream<ExtractSuccess<Options>, ExtractError<Options>, AiLanguageModel | ExtractContext<Options>>;
262
+ export {};
263
+ //# sourceMappingURL=AiLanguageModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiLanguageModel.d.ts","sourceRoot":"","sources":["../../src/AiLanguageModel.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * @since 1.0.0
3
3
  */
4
4
  import type * as Context from "effect/Context";
5
- import type * as Effect from "effect/Effect";
5
+ import * as Effect from "effect/Effect";
6
6
  import type * as Scope from "effect/Scope";
7
7
  import type * as AiPlan from "./AiPlan.js";
8
8
  /**
@@ -31,31 +31,32 @@ export type PlanTypeId = typeof TypeId;
31
31
  */
32
32
  export interface AiModel<in out Provides, in out Requires> extends AiPlan.AiPlan<unknown, Provides, Requires> {
33
33
  readonly [TypeId]: TypeId;
34
- readonly model: string;
35
- readonly cacheKey: symbol;
36
- readonly requires: Context.Tag<Requires, any>;
37
- readonly provides: AiModel.ContextBuilder<Provides, Requires>;
38
- readonly updateContext: (context: Context.Context<Provides>) => Context.Context<Provides>;
34
+ readonly buildContext: ContextBuilder<Provides, Requires>;
39
35
  }
40
36
  /**
41
37
  * @since 1.0.0
38
+ * @category AiModel
42
39
  */
43
- export declare namespace AiModel {
44
- /**
45
- * @since 1.0.0
46
- * @category AiModel
47
- */
48
- type ContextBuilder<Provides, Requires> = Effect.Effect<Context.Context<Provides>, never, Requires | Scope.Scope>;
49
- }
40
+ export type ContextBuilder<Provides, Requires> = Effect.Effect<Context.Context<Provides>, never, Requires | Scope.Scope>;
50
41
  /**
51
42
  * @since 1.0.0
52
43
  * @category constructors
53
44
  */
54
- export declare const make: <Provides, Requires>(options: {
55
- readonly model: string;
56
- readonly cacheKey: symbol;
57
- readonly requires: Context.Tag<Requires, any>;
58
- readonly provides: AiModel.ContextBuilder<Provides, Requires>;
59
- readonly updateContext: (context: Context.Context<Provides>) => Context.Context<Provides>;
60
- }) => AiModel<Provides, Requires>;
45
+ export declare const make: <Cached, PerRequest, CachedRequires, PerRequestRequires>(options: {
46
+ /**
47
+ * A unique key used to cache the `Context` built from the `cachedContext`
48
+ * effect.
49
+ */
50
+ readonly cacheKey: string;
51
+ /**
52
+ * An effect used to build a `Context` that will be cached after creation
53
+ * and used for all provider requests.
54
+ */
55
+ readonly cachedContext: Effect.Effect<Context.Context<Cached>, never, CachedRequires | Scope.Scope>;
56
+ /**
57
+ * A method that can be used to update the `Context` on a per-request basis
58
+ * for all provider requests.
59
+ */
60
+ readonly updateRequestContext: (context: Context.Context<Cached>) => Effect.Effect<Context.Context<PerRequest>, never, PerRequestRequires>;
61
+ }) => AiModel<Cached | PerRequest, CachedRequires | PerRequestRequires>;
61
62
  //# sourceMappingURL=AiModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AiModel.d.ts","sourceRoot":"","sources":["../../src/AiModel.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAE5C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAG1C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAyC,CAAA;AAErE;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,OAAO,MAAsC,CAAA;AAEtE;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,MAAM,CAAA;AAEtC;;;GAGG;AACH,MAAM,WAAW,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAE,SAAQ,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC;IAC3G,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC7C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC7D,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;CAC1F;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B;;;OAGG;IACH,KAAY,cAAc,CAAC,QAAQ,EAAE,QAAQ,IAAI,MAAM,CAAC,MAAM,CAC5D,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EACzB,KAAK,EACL,QAAQ,GAAG,KAAK,CAAC,KAAK,CACvB,CAAA;CACF;AAOD;;;GAGG;AACH,eAAO,MAAM,IAAI,GAAI,QAAQ,EAAE,QAAQ,WAAW;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC7C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC7D,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;CAC1F,KAAG,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAa7B,CAAA"}
1
+ {"version":3,"file":"AiModel.d.ts","sourceRoot":"","sources":["../../src/AiModel.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAIvC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAG1C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAyC,CAAA;AAErE;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,OAAO,MAAsC,CAAA;AAEtE;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,MAAM,CAAA;AAEtC;;;GAGG;AACH,MAAM,WAAW,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAE,SAAQ,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC;IAC3G,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;CAC1D;AAED;;;GAGG;AACH,MAAM,MAAM,cAAc,CAAC,QAAQ,EAAE,QAAQ,IAAI,MAAM,CAAC,MAAM,CAC5D,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EACzB,KAAK,EACL,QAAQ,GAAG,KAAK,CAAC,KAAK,CACvB,CAAA;AAYD;;;GAGG;AACH,eAAO,MAAM,IAAI,GAAI,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,WAAW;IACpF;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB;;;OAGG;IACH,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CACnC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EACvB,KAAK,EACL,cAAc,GAAG,KAAK,CAAC,KAAK,CAC7B,CAAA;IACD;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAChF,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAC3B,KAAK,EACL,kBAAkB,CACnB,CAAA;CACF,KAAG,OAAO,CAAC,MAAM,GAAG,UAAU,EAAE,cAAc,GAAG,kBAAkB,CAenE,CAAA"}
@@ -6,33 +6,33 @@ import type * as Effect from "effect/Effect";
6
6
  import type * as Option from "effect/Option";
7
7
  import type { Pipeable } from "effect/Pipeable";
8
8
  import type * as Schedule from "effect/Schedule";
9
+ import type * as Types from "effect/Types";
9
10
  import type * as Unify from "effect/Unify";
10
11
  import type * as AiModel from "./AiModel.js";
11
- import type { AiModels } from "./AiModels.js";
12
12
  /**
13
13
  * @since 1.0.0
14
- * @category type ids
14
+ * @category Type Ids
15
15
  */
16
16
  export declare const TypeId: unique symbol;
17
17
  /**
18
18
  * @since 1.0.0
19
- * @category type ids
19
+ * @category Type Ids
20
20
  */
21
21
  export type TypeId = typeof TypeId;
22
22
  /**
23
23
  * @since 1.0.0
24
- * @category AiPlan
24
+ * @category Models
25
25
  */
26
- export interface AiPlan<in Error, in out Provides, in out Requires> extends Pipeable, AiPlan.Builder<Provides, Requires> {
26
+ export interface AiPlan<in Error, in out Provides, in out Requires> extends Pipeable, Builder<Provides, Requires> {
27
27
  readonly [TypeId]: TypeId;
28
28
  readonly [Unify.typeSymbol]?: unknown;
29
29
  readonly [Unify.unifySymbol]?: AiPlanUnify<this>;
30
30
  readonly [Unify.ignoreSymbol]?: AiPlanUnifyIgnore;
31
- readonly steps: NonEmptyReadonlyArray<AiPlan.Step<Error, Provides, Requires>>;
31
+ readonly steps: NonEmptyReadonlyArray<Step<Error, Provides, Requires>>;
32
32
  }
33
33
  /**
34
34
  * @since 1.0.0
35
- * @category Plan
35
+ * @category Models
36
36
  */
37
37
  export interface AiPlanUnify<A extends {
38
38
  [Unify.typeSymbol]?: any;
@@ -41,46 +41,110 @@ export interface AiPlanUnify<A extends {
41
41
  }
42
42
  /**
43
43
  * @since 1.0.0
44
- * @category Plan
44
+ * @category Models
45
45
  */
46
46
  export interface AiPlanUnifyIgnore extends Effect.EffectUnifyIgnore {
47
47
  Effect?: true;
48
48
  }
49
49
  /**
50
50
  * @since 1.0.0
51
+ * @category Models
51
52
  */
52
- export declare namespace AiPlan {
53
+ export type Builder<Provides, Requires> = Effect.Effect<Provider<Provides>, never, Requires>;
54
+ /**
55
+ * @since 1.0.0
56
+ * @category Models
57
+ */
58
+ export interface Provider<Provides> {
59
+ readonly use: <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<R, Provides>>;
60
+ }
61
+ /**
62
+ * @since 1.0.0
63
+ * @category Models
64
+ */
65
+ export interface Step<Error, Provides, Requires> {
66
+ readonly model: AiModel.AiModel<Provides, Requires>;
67
+ readonly check: Option.Option<(error: Error) => boolean | Effect.Effect<boolean>>;
68
+ readonly schedule: Option.Option<Schedule.Schedule<any, Error, Requires>>;
69
+ }
70
+ /**
71
+ * @since 1.0.0
72
+ */
73
+ export declare namespace Make {
74
+ /**
75
+ * @since 1.0.0
76
+ * @category Models
77
+ */
78
+ type Base = {
79
+ readonly model: AiModel.AiModel<any, any>;
80
+ readonly attempts?: number | undefined;
81
+ readonly while?: ((error: any) => boolean | Effect.Effect<boolean, never, any>) | undefined;
82
+ readonly schedule?: Schedule.Schedule<any, any, any> | undefined;
83
+ };
84
+ /**
85
+ * @since 1.0.0
86
+ * @category Models
87
+ */
88
+ type EW<Plan extends Base> = Plan extends {
89
+ readonly while: (error: infer X) => any;
90
+ } ? X : never;
91
+ /**
92
+ * @since 1.0.0
93
+ * @category Models
94
+ */
95
+ type ES<Plan extends Base> = Plan extends {
96
+ readonly schedule: Schedule.Schedule<any, infer X, any>;
97
+ } ? X : never;
98
+ /**
99
+ * @since 1.0.0
100
+ * @category Models
101
+ */
102
+ type Provides<Plan extends Base> = Plan extends {
103
+ readonly model: AiModel.AiModel<infer X, any>;
104
+ } ? X : never;
105
+ /**
106
+ * @since 1.0.0
107
+ * @category Models
108
+ */
109
+ type Requires<Plan extends Base> = Plan extends {
110
+ readonly model: AiModel.AiModel<any, infer X>;
111
+ } ? X : never;
112
+ /**
113
+ * @since 1.0.0
114
+ * @category Models
115
+ */
116
+ type RW<Plan extends Base> = Plan extends {
117
+ readonly while: (error: any) => Effect.Effect<any, any, infer X>;
118
+ } ? X : never;
53
119
  /**
54
120
  * @since 1.0.0
55
- * @category AiPlan
121
+ * @category Models
56
122
  */
57
- type Builder<Provides, Requires> = Effect.Effect<Provider<Provides>, never, AiModels | Requires>;
123
+ type RS<Plan extends Base> = Plan extends {
124
+ readonly schedule: Schedule.Schedule<any, any, infer X>;
125
+ } ? X : never;
58
126
  /**
59
127
  * @since 1.0.0
60
- * @category AiPlan
128
+ * @category Models
61
129
  */
62
- interface Provider<Provides> {
63
- readonly provide: <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<R, Provides>>;
64
- }
130
+ type MakePlan<Plan extends Base> = AiPlan<EW<Plan> & ES<Plan>, Provides<Plan>, RW<Plan> | RS<Plan> | Requires<Plan>> extends infer X ? X : never;
65
131
  /**
66
132
  * @since 1.0.0
67
- * @category AiPlan
133
+ * @category Models
68
134
  */
69
- interface Step<Error, Provides, Requires> {
70
- readonly model: AiModel.AiModel<Provides, Requires>;
71
- readonly check: Option.Option<(error: Error) => boolean | Effect.Effect<boolean>>;
72
- readonly schedule: Option.Option<Schedule.Schedule<any, Error, Requires>>;
73
- }
135
+ type MergePlan<Plans extends ReadonlyArray<Base>> = AiPlan<Types.UnionToIntersection<{
136
+ [K in keyof Plans]: MakePlan<Plans[K]> extends AiPlan<infer X, any, any> ? X : never;
137
+ }[number]>, {
138
+ [K in keyof Plans]: MakePlan<Plans[K]> extends AiPlan<any, infer X, any> ? X : never;
139
+ }[number], {
140
+ [K in keyof Plans]: MakePlan<Plans[K]> extends AiPlan<any, any, infer X> ? X : never;
141
+ }[number]> extends infer K ? K : never;
74
142
  }
75
143
  /**
76
144
  * @since 1.0.0
77
145
  * @category constructors
78
146
  */
79
- export declare const fromModel: <Provides, Requires, EW, Out, ES, RW = never, RS = never>(model: AiModel.AiModel<Provides, Requires>, options?: {
80
- readonly attempts?: number | undefined;
81
- readonly while?: ((error: EW) => boolean | Effect.Effect<boolean, never, RW>) | undefined;
82
- readonly schedule?: Schedule.Schedule<Out, ES, RS> | undefined;
83
- }) => AiPlan<EW & ES, Provides, RW | RS | Requires>;
147
+ export declare const make: <Plans extends readonly [Make.Base, ...ReadonlyArray<Make.Base>]>(...plans: Plans) => Make.MergePlan<Plans>;
84
148
  /**
85
149
  * @since 1.0.0
86
150
  * @category error handling
@@ -1 +1 @@
1
- {"version":3,"file":"AiPlan.d.ts","sourceRoot":"","sources":["../../src/AiPlan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AiPlan.d.ts","sourceRoot":"","sources":["../../src/AiPlan.ts"],"names":[],"mappings":"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"}