alchemy 2.0.0-beta.45 → 2.0.0-beta.47

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 (158) hide show
  1. package/bin/exec.js +18 -10
  2. package/bin/exec.js.map +1 -1
  3. package/lib/AlchemyContext.d.ts +0 -1
  4. package/lib/AlchemyContext.d.ts.map +1 -1
  5. package/lib/AlchemyContext.js.map +1 -1
  6. package/lib/Apply.js +2 -2
  7. package/lib/Apply.js.map +1 -1
  8. package/lib/Cli/commands/_shared.d.ts +7 -1
  9. package/lib/Cli/commands/_shared.d.ts.map +1 -1
  10. package/lib/Cli/commands/_shared.js +1 -0
  11. package/lib/Cli/commands/_shared.js.map +1 -1
  12. package/lib/Cli/commands/cloudflare.d.ts.map +1 -1
  13. package/lib/Cli/commands/cloudflare.js +5 -1
  14. package/lib/Cli/commands/cloudflare.js.map +1 -1
  15. package/lib/Cli/commands/login.d.ts +1 -1
  16. package/lib/Cli/commands/login.d.ts.map +1 -1
  17. package/lib/Cli/commands/login.js +45 -42
  18. package/lib/Cli/commands/login.js.map +1 -1
  19. package/lib/Cli/commands/logs.js +1 -1
  20. package/lib/Cli/commands/logs.js.map +1 -1
  21. package/lib/Cli/commands/state.js +1 -1
  22. package/lib/Cli/commands/state.js.map +1 -1
  23. package/lib/Cli/commands/tail.js +1 -1
  24. package/lib/Cli/commands/tail.js.map +1 -1
  25. package/lib/Cloudflare/AiGateway/AiGateway.d.ts +112 -1
  26. package/lib/Cloudflare/AiGateway/AiGateway.d.ts.map +1 -1
  27. package/lib/Cloudflare/AiGateway/AiGateway.js +112 -1
  28. package/lib/Cloudflare/AiGateway/AiGateway.js.map +1 -1
  29. package/lib/Cloudflare/AiGateway/AiGatewayBinding.d.ts +43 -10
  30. package/lib/Cloudflare/AiGateway/AiGatewayBinding.d.ts.map +1 -1
  31. package/lib/Cloudflare/AiGateway/AiGatewayBinding.js +38 -10
  32. package/lib/Cloudflare/AiGateway/AiGatewayBinding.js.map +1 -1
  33. package/lib/Cloudflare/AiGateway/LanguageModel.d.ts +35 -0
  34. package/lib/Cloudflare/AiGateway/LanguageModel.d.ts.map +1 -0
  35. package/lib/Cloudflare/AiGateway/LanguageModel.js +576 -0
  36. package/lib/Cloudflare/AiGateway/LanguageModel.js.map +1 -0
  37. package/lib/Cloudflare/AiGateway/index.d.ts +1 -0
  38. package/lib/Cloudflare/AiGateway/index.d.ts.map +1 -1
  39. package/lib/Cloudflare/AiGateway/index.js +1 -0
  40. package/lib/Cloudflare/AiGateway/index.js.map +1 -1
  41. package/lib/Cloudflare/Providers.d.ts.map +1 -1
  42. package/lib/Cloudflare/Providers.js +5 -1
  43. package/lib/Cloudflare/Providers.js.map +1 -1
  44. package/lib/Cloudflare/Queue/QueueConsumer.d.ts.map +1 -1
  45. package/lib/Cloudflare/Queue/QueueConsumer.js +1 -2
  46. package/lib/Cloudflare/Queue/QueueConsumer.js.map +1 -1
  47. package/lib/Cloudflare/StateStore/Api.d.ts +1 -1
  48. package/lib/Cloudflare/StateStore/Api.js +1 -1
  49. package/lib/Cloudflare/StateStore/State.d.ts +11 -65
  50. package/lib/Cloudflare/StateStore/State.d.ts.map +1 -1
  51. package/lib/Cloudflare/StateStore/State.js +313 -368
  52. package/lib/Cloudflare/StateStore/State.js.map +1 -1
  53. package/lib/Cloudflare/StateStore/Store.d.ts.map +1 -1
  54. package/lib/Cloudflare/StateStore/Store.js +16 -29
  55. package/lib/Cloudflare/StateStore/Store.js.map +1 -1
  56. package/lib/Cloudflare/Vectorize/VectorizeIndex.d.ts +114 -0
  57. package/lib/Cloudflare/Vectorize/VectorizeIndex.d.ts.map +1 -0
  58. package/lib/Cloudflare/Vectorize/VectorizeIndex.js +157 -0
  59. package/lib/Cloudflare/Vectorize/VectorizeIndex.js.map +1 -0
  60. package/lib/Cloudflare/Vectorize/VectorizeIndexBinding.d.ts +38 -0
  61. package/lib/Cloudflare/Vectorize/VectorizeIndexBinding.d.ts.map +1 -0
  62. package/lib/Cloudflare/Vectorize/VectorizeIndexBinding.js +44 -0
  63. package/lib/Cloudflare/Vectorize/VectorizeIndexBinding.js.map +1 -0
  64. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.d.ts +72 -0
  65. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.d.ts.map +1 -0
  66. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.js +131 -0
  67. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.js.map +1 -0
  68. package/lib/Cloudflare/Vectorize/index.d.ts +4 -0
  69. package/lib/Cloudflare/Vectorize/index.d.ts.map +1 -0
  70. package/lib/Cloudflare/Vectorize/index.js +4 -0
  71. package/lib/Cloudflare/Vectorize/index.js.map +1 -0
  72. package/lib/Cloudflare/Workers/DurableObjectBridge.d.ts.map +1 -1
  73. package/lib/Cloudflare/Workers/DurableObjectBridge.js +10 -1
  74. package/lib/Cloudflare/Workers/DurableObjectBridge.js.map +1 -1
  75. package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts.map +1 -1
  76. package/lib/Cloudflare/Workers/LocalWorkerProvider.js +13 -1
  77. package/lib/Cloudflare/Workers/LocalWorkerProvider.js.map +1 -1
  78. package/lib/Cloudflare/Workers/Rpc.d.ts.map +1 -1
  79. package/lib/Cloudflare/Workers/Rpc.js +20 -2
  80. package/lib/Cloudflare/Workers/Rpc.js.map +1 -1
  81. package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts.map +1 -1
  82. package/lib/Cloudflare/Workers/WorkerAsyncBindings.js +8 -0
  83. package/lib/Cloudflare/Workers/WorkerAsyncBindings.js.map +1 -1
  84. package/lib/Cloudflare/Workers/WorkerBinding.d.ts +2 -1
  85. package/lib/Cloudflare/Workers/WorkerBinding.d.ts.map +1 -1
  86. package/lib/Cloudflare/Workers/WorkerBinding.js.map +1 -1
  87. package/lib/Cloudflare/Workers/WorkerBridge.d.ts.map +1 -1
  88. package/lib/Cloudflare/Workers/WorkerBridge.js +20 -2
  89. package/lib/Cloudflare/Workers/WorkerBridge.js.map +1 -1
  90. package/lib/Cloudflare/index.d.ts +1 -0
  91. package/lib/Cloudflare/index.d.ts.map +1 -1
  92. package/lib/Cloudflare/index.js +1 -0
  93. package/lib/Cloudflare/index.js.map +1 -1
  94. package/lib/Output.js +2 -2
  95. package/lib/Output.js.map +1 -1
  96. package/lib/Plan.d.ts +2 -2
  97. package/lib/Plan.d.ts.map +1 -1
  98. package/lib/Plan.js +3 -3
  99. package/lib/Plan.js.map +1 -1
  100. package/lib/Stack.d.ts.map +1 -1
  101. package/lib/Stack.js +6 -0
  102. package/lib/Stack.js.map +1 -1
  103. package/lib/State/HttpStateStore.d.ts +4 -0
  104. package/lib/State/HttpStateStore.d.ts.map +1 -1
  105. package/lib/State/HttpStateStore.js +13 -0
  106. package/lib/State/HttpStateStore.js.map +1 -1
  107. package/lib/State/InMemoryState.d.ts +2 -1
  108. package/lib/State/InMemoryState.d.ts.map +1 -1
  109. package/lib/State/InMemoryState.js +3 -3
  110. package/lib/State/InMemoryState.js.map +1 -1
  111. package/lib/State/LocalState.d.ts.map +1 -1
  112. package/lib/State/LocalState.js +5 -1
  113. package/lib/State/LocalState.js.map +1 -1
  114. package/lib/State/State.d.ts +2 -2
  115. package/lib/State/State.d.ts.map +1 -1
  116. package/lib/State/State.js.map +1 -1
  117. package/lib/Util/poll.d.ts +30 -0
  118. package/lib/Util/poll.d.ts.map +1 -0
  119. package/lib/Util/poll.js +26 -0
  120. package/lib/Util/poll.js.map +1 -0
  121. package/lib/tsconfig.test.tsbuildinfo +1 -1
  122. package/package.json +7 -7
  123. package/src/AlchemyContext.ts +0 -1
  124. package/src/Apply.ts +2 -2
  125. package/src/Cli/commands/_shared.ts +7 -1
  126. package/src/Cli/commands/cloudflare.ts +5 -3
  127. package/src/Cli/commands/login.ts +69 -60
  128. package/src/Cli/commands/logs.ts +1 -1
  129. package/src/Cli/commands/state.ts +1 -1
  130. package/src/Cli/commands/tail.ts +1 -1
  131. package/src/Cloudflare/AiGateway/AiGateway.ts +112 -1
  132. package/src/Cloudflare/AiGateway/AiGatewayBinding.ts +52 -10
  133. package/src/Cloudflare/AiGateway/LanguageModel.ts +907 -0
  134. package/src/Cloudflare/AiGateway/index.ts +1 -0
  135. package/src/Cloudflare/Providers.ts +7 -0
  136. package/src/Cloudflare/Queue/QueueConsumer.ts +0 -2
  137. package/src/Cloudflare/StateStore/Api.ts +1 -1
  138. package/src/Cloudflare/StateStore/State.ts +452 -508
  139. package/src/Cloudflare/StateStore/Store.ts +22 -35
  140. package/src/Cloudflare/Vectorize/VectorizeIndex.ts +261 -0
  141. package/src/Cloudflare/Vectorize/VectorizeIndexBinding.ts +103 -0
  142. package/src/Cloudflare/Vectorize/VectorizeMetadataIndex.ts +208 -0
  143. package/src/Cloudflare/Vectorize/index.ts +3 -0
  144. package/src/Cloudflare/Workers/DurableObjectBridge.ts +10 -1
  145. package/src/Cloudflare/Workers/LocalWorkerProvider.ts +13 -1
  146. package/src/Cloudflare/Workers/Rpc.ts +38 -9
  147. package/src/Cloudflare/Workers/WorkerAsyncBindings.ts +7 -0
  148. package/src/Cloudflare/Workers/WorkerBinding.ts +2 -0
  149. package/src/Cloudflare/Workers/WorkerBridge.ts +20 -2
  150. package/src/Cloudflare/index.ts +1 -0
  151. package/src/Output.ts +2 -2
  152. package/src/Plan.ts +4 -4
  153. package/src/Stack.ts +6 -0
  154. package/src/State/HttpStateStore.ts +28 -0
  155. package/src/State/InMemoryState.ts +87 -85
  156. package/src/State/LocalState.ts +15 -1
  157. package/src/State/State.ts +5 -4
  158. package/src/Util/poll.ts +47 -0
@@ -29,7 +29,7 @@ export const tailCommand = Command.make("tail", {
29
29
  yield* Effect.gen(function* () {
30
30
  const stack = yield* stackEffect;
31
31
  yield* Effect.gen(function* () {
32
- const state = yield* State.State;
32
+ const state = yield* yield* State.State;
33
33
  const filterSet = parseResourceFilter(filter);
34
34
  const availableIds = [
35
35
  ...new Set(Object.values(stack.resources).map((r) => r.LogicalId)),
@@ -1 +1 @@
1
- {"version":3,"file":"tail.js","sourceRoot":"","sources":["../../../src/Cli/commands/tail.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tail.js","sourceRoot":"","sources":["../../../src/Cli/commands/tail.ts"],"names":[],"mappings":"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"}
@@ -201,7 +201,11 @@ export declare const isAiGateway: (value: unknown) => value is AiGateway;
201
201
  * governance across AI provider requests.
202
202
  *
203
203
  * AI Gateway gives your application a stable gateway ID and account-scoped
204
- * endpoint that can route model requests through Cloudflare.
204
+ * endpoint that can route model requests through Cloudflare. Once bound to a
205
+ * Worker, `aiGateway.model({...})` returns an `effect/unstable/ai`
206
+ * `LanguageModel` Layer so you use the standard `generateText` / `streamText`
207
+ * APIs — provider-agnostic, with caching, rate limiting, retries, and a
208
+ * unified request log handled by the gateway.
205
209
  *
206
210
  * @section Creating a Gateway
207
211
  * @example Basic gateway
@@ -230,6 +234,113 @@ export declare const isAiGateway: (value: unknown) => value is AiGateway;
230
234
  * logManagementStrategy: "STOP_INSERTING",
231
235
  * });
232
236
  * ```
237
+ *
238
+ * @section Binding into a Worker
239
+ * @example Bind the gateway and provide the runtime layer
240
+ * `AiGateway.bind(gateway)` returns a typed, Effect-native client during the
241
+ * Worker's Init phase. Provide `Cloudflare.AiGatewayBindingLive` once at the
242
+ * bottom of the Init layer chain so every `bind(...)` resolves at runtime.
243
+ * ```typescript
244
+ * import * as Cloudflare from "alchemy/Cloudflare";
245
+ * import * as Effect from "effect/Effect";
246
+ * import { Gateway } from "./AiGateway.ts";
247
+ *
248
+ * export default class Api extends Cloudflare.Worker<Api>()(
249
+ * "Api",
250
+ * { main: import.meta.path },
251
+ * Effect.gen(function* () {
252
+ * const aiGateway = yield* Cloudflare.AiGateway.bind(Gateway);
253
+ *
254
+ * return {
255
+ * fetch: Effect.gen(function* () {
256
+ * // …routes
257
+ * }),
258
+ * };
259
+ * }).pipe(Effect.provide(Cloudflare.AiGatewayBindingLive)),
260
+ * ) {}
261
+ * ```
262
+ *
263
+ * @section Building a LanguageModel
264
+ * @example `aiGateway.model(...)` -> Effect AI `LanguageModel`
265
+ * Call `aiGateway.model({...})` with a Workers AI model id. It returns a
266
+ * `Layer<LanguageModel, never, RuntimeContext>` directly — no API key and no
267
+ * `Layer.unwrap`, since the binding handles auth and the gateway URL. Build it
268
+ * in the Init phase; construction is pure.
269
+ * ```typescript
270
+ * const aiGateway = yield* Cloudflare.AiGateway.bind(Gateway);
271
+ *
272
+ * const languageModel = aiGateway.model({
273
+ * client: aiGateway,
274
+ * model: "@cf/meta/llama-3.1-8b-instruct",
275
+ * parameters: { temperature: 0.7, maxTokens: 1024 },
276
+ * });
277
+ * ```
278
+ *
279
+ * @section Generating Text
280
+ * @example Generate text on a route
281
+ * Provide the `languageModel` layer to the handler and call
282
+ * `LanguageModel.generateText` like any other Effect. `Effect.orDie` collapses
283
+ * `AiError` to a defect (a 500); use `Effect.catchTag("AiError", …)` for typed
284
+ * handling instead.
285
+ * ```typescript
286
+ * import { LanguageModel } from "effect/unstable/ai";
287
+ * import * as HttpServerResponse from "effect/unstable/http/HttpServerResponse";
288
+ *
289
+ * fetch: Effect.gen(function* () {
290
+ * const response = yield* LanguageModel.generateText({
291
+ * prompt: "Say hello.",
292
+ * }).pipe(Effect.orDie);
293
+ * return yield* HttpServerResponse.json({
294
+ * text: response.text,
295
+ * usage: {
296
+ * inputTokens: response.usage.inputTokens.total,
297
+ * outputTokens: response.usage.outputTokens.total,
298
+ * },
299
+ * });
300
+ * }).pipe(Effect.provide(languageModel));
301
+ * ```
302
+ *
303
+ * @section Streaming Text
304
+ * @example Stream tokens as Server-Sent Events
305
+ * `LanguageModel.streamText` returns a `Stream` of typed response parts.
306
+ * `Stream.provide(languageModel)` keeps the model available for the whole
307
+ * stream lifetime; pipe through `Sse.encode` for an SSE response.
308
+ * ```typescript
309
+ * import { LanguageModel } from "effect/unstable/ai";
310
+ * import * as Stream from "effect/Stream";
311
+ * import * as Sse from "effect/unstable/encoding/Sse";
312
+ * import * as HttpServerResponse from "effect/unstable/http/HttpServerResponse";
313
+ *
314
+ * const stream = LanguageModel.streamText({ prompt }).pipe(
315
+ * Stream.provide(languageModel),
316
+ * Sse.encode,
317
+ * );
318
+ * return HttpServerResponse.stream(stream, {
319
+ * headers: {
320
+ * "content-type": "text/event-stream",
321
+ * "cache-control": "no-cache",
322
+ * "x-accel-buffering": "no",
323
+ * },
324
+ * });
325
+ * ```
326
+ *
327
+ * @section Tuning the Gateway
328
+ * @example Production-grade caching, rate limits, and DLP
329
+ * Every prop maps to an in-place update — no replacement, no downtime.
330
+ * ```typescript
331
+ * export const Gateway = Cloudflare.AiGateway("Gateway", {
332
+ * id: "prod-gateway",
333
+ * cacheTtl: 300,
334
+ * cacheInvalidateOnUpdate: true,
335
+ * rateLimitingInterval: 60,
336
+ * rateLimitingLimit: 100,
337
+ * rateLimitingTechnique: "sliding",
338
+ * collectLogs: true,
339
+ * logManagement: 100_000,
340
+ * logManagementStrategy: "DELETE_OLDEST",
341
+ * authentication: true,
342
+ * });
343
+ * ```
233
344
  */
234
345
  export declare const AiGateway: import("../../Resource.ts").ResourceClassWithMethods<AiGateway, {
235
346
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AiGateway.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/AiGateway/AiGateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AiGateway.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/AiGateway/AiGateway.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,11 @@ export const isAiGateway = (value) => typeof value === "object" &&
19
19
  * governance across AI provider requests.
20
20
  *
21
21
  * AI Gateway gives your application a stable gateway ID and account-scoped
22
- * endpoint that can route model requests through Cloudflare.
22
+ * endpoint that can route model requests through Cloudflare. Once bound to a
23
+ * Worker, `aiGateway.model({...})` returns an `effect/unstable/ai`
24
+ * `LanguageModel` Layer so you use the standard `generateText` / `streamText`
25
+ * APIs — provider-agnostic, with caching, rate limiting, retries, and a
26
+ * unified request log handled by the gateway.
23
27
  *
24
28
  * @section Creating a Gateway
25
29
  * @example Basic gateway
@@ -48,6 +52,113 @@ export const isAiGateway = (value) => typeof value === "object" &&
48
52
  * logManagementStrategy: "STOP_INSERTING",
49
53
  * });
50
54
  * ```
55
+ *
56
+ * @section Binding into a Worker
57
+ * @example Bind the gateway and provide the runtime layer
58
+ * `AiGateway.bind(gateway)` returns a typed, Effect-native client during the
59
+ * Worker's Init phase. Provide `Cloudflare.AiGatewayBindingLive` once at the
60
+ * bottom of the Init layer chain so every `bind(...)` resolves at runtime.
61
+ * ```typescript
62
+ * import * as Cloudflare from "alchemy/Cloudflare";
63
+ * import * as Effect from "effect/Effect";
64
+ * import { Gateway } from "./AiGateway.ts";
65
+ *
66
+ * export default class Api extends Cloudflare.Worker<Api>()(
67
+ * "Api",
68
+ * { main: import.meta.path },
69
+ * Effect.gen(function* () {
70
+ * const aiGateway = yield* Cloudflare.AiGateway.bind(Gateway);
71
+ *
72
+ * return {
73
+ * fetch: Effect.gen(function* () {
74
+ * // …routes
75
+ * }),
76
+ * };
77
+ * }).pipe(Effect.provide(Cloudflare.AiGatewayBindingLive)),
78
+ * ) {}
79
+ * ```
80
+ *
81
+ * @section Building a LanguageModel
82
+ * @example `aiGateway.model(...)` -> Effect AI `LanguageModel`
83
+ * Call `aiGateway.model({...})` with a Workers AI model id. It returns a
84
+ * `Layer<LanguageModel, never, RuntimeContext>` directly — no API key and no
85
+ * `Layer.unwrap`, since the binding handles auth and the gateway URL. Build it
86
+ * in the Init phase; construction is pure.
87
+ * ```typescript
88
+ * const aiGateway = yield* Cloudflare.AiGateway.bind(Gateway);
89
+ *
90
+ * const languageModel = aiGateway.model({
91
+ * client: aiGateway,
92
+ * model: "@cf/meta/llama-3.1-8b-instruct",
93
+ * parameters: { temperature: 0.7, maxTokens: 1024 },
94
+ * });
95
+ * ```
96
+ *
97
+ * @section Generating Text
98
+ * @example Generate text on a route
99
+ * Provide the `languageModel` layer to the handler and call
100
+ * `LanguageModel.generateText` like any other Effect. `Effect.orDie` collapses
101
+ * `AiError` to a defect (a 500); use `Effect.catchTag("AiError", …)` for typed
102
+ * handling instead.
103
+ * ```typescript
104
+ * import { LanguageModel } from "effect/unstable/ai";
105
+ * import * as HttpServerResponse from "effect/unstable/http/HttpServerResponse";
106
+ *
107
+ * fetch: Effect.gen(function* () {
108
+ * const response = yield* LanguageModel.generateText({
109
+ * prompt: "Say hello.",
110
+ * }).pipe(Effect.orDie);
111
+ * return yield* HttpServerResponse.json({
112
+ * text: response.text,
113
+ * usage: {
114
+ * inputTokens: response.usage.inputTokens.total,
115
+ * outputTokens: response.usage.outputTokens.total,
116
+ * },
117
+ * });
118
+ * }).pipe(Effect.provide(languageModel));
119
+ * ```
120
+ *
121
+ * @section Streaming Text
122
+ * @example Stream tokens as Server-Sent Events
123
+ * `LanguageModel.streamText` returns a `Stream` of typed response parts.
124
+ * `Stream.provide(languageModel)` keeps the model available for the whole
125
+ * stream lifetime; pipe through `Sse.encode` for an SSE response.
126
+ * ```typescript
127
+ * import { LanguageModel } from "effect/unstable/ai";
128
+ * import * as Stream from "effect/Stream";
129
+ * import * as Sse from "effect/unstable/encoding/Sse";
130
+ * import * as HttpServerResponse from "effect/unstable/http/HttpServerResponse";
131
+ *
132
+ * const stream = LanguageModel.streamText({ prompt }).pipe(
133
+ * Stream.provide(languageModel),
134
+ * Sse.encode,
135
+ * );
136
+ * return HttpServerResponse.stream(stream, {
137
+ * headers: {
138
+ * "content-type": "text/event-stream",
139
+ * "cache-control": "no-cache",
140
+ * "x-accel-buffering": "no",
141
+ * },
142
+ * });
143
+ * ```
144
+ *
145
+ * @section Tuning the Gateway
146
+ * @example Production-grade caching, rate limits, and DLP
147
+ * Every prop maps to an in-place update — no replacement, no downtime.
148
+ * ```typescript
149
+ * export const Gateway = Cloudflare.AiGateway("Gateway", {
150
+ * id: "prod-gateway",
151
+ * cacheTtl: 300,
152
+ * cacheInvalidateOnUpdate: true,
153
+ * rateLimitingInterval: 60,
154
+ * rateLimitingLimit: 100,
155
+ * rateLimitingTechnique: "sliding",
156
+ * collectLogs: true,
157
+ * logManagement: 100_000,
158
+ * logManagementStrategy: "DELETE_OLDEST",
159
+ * authentication: true,
160
+ * });
161
+ * ```
51
162
  */
52
163
  export const AiGateway = Resource("Cloudflare.AiGateway")({
53
164
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AiGateway.js","sourceRoot":"","sources":["../../../src/Cloudflare/AiGateway/AiGateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AiGateway.js","sourceRoot":"","sources":["../../../src/Cloudflare/AiGateway/AiGateway.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,wCAAwC,CAAC;AACpE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAgNzD,0EAA0E;AAC1E,wEAAwE;AACxE,4BAA4B;AAC5B,MAAM,UAAU,GAAG,CAAC,KAAgC,EAAiB,EAAE,CACrE,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AAE9C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAc,EAAsB,EAAE,CAChE,OAAO,KAAK,KAAK,QAAQ;IACzB,KAAK,KAAK,IAAI;IACd,MAAM,IAAI,KAAK;IACd,KAAmB,CAAC,IAAI,KAAK,sBAAsB,CAAC;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiJG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAAY,sBAAsB,CAAC,CAAC;IACnE;;;OAGG;IACH,IAAI,EAAE,gBAAgB,CAAC,IAAI;CAC5B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE,CACpC,QAAQ,CAAC,MAAM,CACb,SAAS,EACT,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,qBAAqB,CAAC;IACnD,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC;IACzD,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC;IACnD,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC;IACzD,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC;IAEzD,MAAM,eAAe,GAAG,CAAC,EAAU,EAAE,SAA6B,EAAE,EAAE,CACpE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,IAAI,SAAS;YAAE,OAAO,SAAS,CAAC;QAChC,OAAO,KAAK,CAAC,CAAC,kBAAkB,CAAC;YAC/B,EAAE;YACF,SAAS,EAAE,EAAE;YACb,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEL,MAAM,OAAO,GAAG,CAAC,EAAU,EAAE,KAAiC,EAAE,EAAE,CAChE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,OAAO;YACL,SAAS,EAAE,KAAK,CAAC,CAAC,eAAe,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;YAChD,uBAAuB,EAAE,KAAK,EAAE,uBAAuB,IAAI,KAAK;YAChE,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,IAAI;YACjC,WAAW,EAAE,KAAK,EAAE,WAAW,IAAI,IAAI;YACvC,oBAAoB,EAAE,KAAK,EAAE,oBAAoB,IAAI,IAAI;YACzD,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,IAAI,IAAI;YACnD,qBAAqB,EAAE,KAAK,EAAE,qBAAqB,IAAI,OAAO;YAC9D,2DAA2D;YAC3D,4DAA4D;YAC5D,iDAAiD;YACjD,cAAc,EAAE,KAAK,EAAE,cAAc,IAAI,KAAK;YAC9C,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,SAAS;YAC5B,SAAS,EAAE,KAAK,EAAE,SAAS,IAAI,KAAK;YACpC,aAAa,EAAE,KAAK,EAAE,aAAa,IAAI,OAAO;YAC9C,qBAAqB,EACnB,KAAK,EAAE,qBAAqB,IAAI,gBAAgB;YAClD,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,KAAK;YAChC,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,IAAI,SAAS;YACtD,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,SAAS;YAC9B,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,EAAE;YAC7B,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,SAAS;YAClC,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,KAAK;SACzB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEL,MAAM,UAAU,GAAG,CACjB,OAGqC,EACrC,SAAiB,EACQ,EAAE,CAAC,CAAC;QAC7B,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,SAAS;QACT,+CAA+C;QAC/C,+CAA+C;QAC/C,uBAAuB,EAAE,OAAO,CAAC,uBAAuB;QACxD,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC;QACtC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,oBAAoB,EAAE,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC;QAC9D,iBAAiB,EAAE,UAAU,CAAC,OAAO,CAAC,iBAAiB,CAAC;QACxD,qBAAqB,EAAE,OAAO,CAAC,qBAAqB,IAAI,OAAO;QAC/D,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,KAAK;QAC/C,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,SAAS;QAC7B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,KAAK;QACrC,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,OAAO;QAC/C,qBAAqB,EACnB,OAAO,CAAC,qBAAqB,IAAI,gBAAgB;QACnD,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,KAAK;QACjC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,SAAS;QACvD,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,SAAS;QAC/B,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;QAC9B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,SAAS;QACnC,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,KAAK;KAC1B,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,CAAC,OAAgC,EAAE,EAAE,CAAC,CAAC;QACrD,uBAAuB,EAAE,OAAO,CAAC,uBAAuB;QACxD,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;QAClD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;QACpD,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;QACpD,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,GAAG,EAAE,OAAO,CAAC,GAAG;KACjB,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EACvC,EAAU,EACV,KAAiC;QAEjC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACvC,OAAO;YACL,SAAS;YACT,EAAE,EAAE,IAAI,CAAC,SAAS;YAClB,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,GAAG,EAAE,IAAI,CAAC,GAAG;SAC6B,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EACvC,EAAU,EACV,KAAiC,EACjC,SAAiB;QAEjB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACvC,OAAO;YACL,SAAS;YACT,EAAE,EAAE,IAAI,CAAC,SAAS;YAClB,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,EAAE,IAAI,CAAC,GAAG;SAC6B,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,OAAO,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC;QACnC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE;YAC7D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,OAAO,SAAS,CAAC;YACxC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACtC,MAAM,YAAY,GAChB,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAC7D,IACE,CAAC,MAAM,EAAE,SAAS,IAAI,SAAS,CAAC,KAAK,SAAS;gBAC9C,YAAY,KAAK,IAAI,CAAC,SAAS,EAC/B,CAAC;gBACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAW,CAAC;YACxC,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,CACxB,MAAM,IAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAA6B,CAClE,CAAC;YACF,MAAM,WAAW,GAAG,OAAO,CAAC,IAA+B,CAAC,CAAC;YAC7D,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC;gBACxC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAW,CAAC;YACvC,CAAC;QACH,CAAC,CAAC;QACF,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE;YACvD,MAAM,IAAI,GAAG,MAAM,EAAE,SAAS,IAAI,SAAS,CAAC;YAC5C,MAAM,SAAS,GACb,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAE7D,kEAAkE;YAClE,oEAAoE;YACpE,yCAAyC;YACzC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,YAAY,CAAC;gBACnC,SAAS,EAAE,IAAI;gBACf,EAAE,EAAE,SAAS;aACd,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CACpE,CAAC;YAEF,kEAAkE;YAClE,mEAAmE;YACnE,gEAAgE;YAChE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC/C,KAAK,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,CAClC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAC3C,YAAY,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAClD,CACF,CAAC;YACJ,CAAC;YAED,mEAAmE;YACnE,mEAAmE;YACnE,wDAAwD;YACxD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACpD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAC/C,OAAO,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACnC,CAAC,CAAC;QACF,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE;YACrC,KAAK,CAAC,CAAC,eAAe,CAAC;gBACrB,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,EAAE,EAAE,MAAM,CAAC,SAAS;aACrB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC;QACF,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YAC7C,MAAM,SAAS,GACb,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAC9D,MAAM,IAAI,GAAG,MAAM,EAAE,SAAS,IAAI,SAAS,CAAC;YAC5C,OAAO,KAAK,CAAC,CAAC,YAAY,CAAC;gBACzB,SAAS,EAAE,IAAI;gBACf,EAAE,EAAE,SAAS;aACd,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,EAClD,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CACpE,CAAC;QACJ,CAAC,CAAC;KACH,CAAC;AACJ,CAAC,CAAC,CACH,CAAC"}
@@ -1,15 +1,14 @@
1
1
  import * as Effect from "effect/Effect";
2
2
  import * as Layer from "effect/Layer";
3
+ import type { LanguageModel } from "effect/unstable/ai/LanguageModel";
3
4
  import * as Binding from "../../Binding.ts";
4
5
  import type { RuntimeContext } from "../../RuntimeContext.ts";
5
6
  import { WorkerEnvironment } from "../Workers/Worker.ts";
6
7
  import type { AiGateway as AiGatewayResource } from "./AiGateway.ts";
8
+ import { type LanguageModelOptions } from "./LanguageModel.ts";
7
9
  declare const AiGatewayError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
8
10
  readonly _tag: "AiGatewayError";
9
11
  } & Readonly<A>;
10
- /**
11
- * Error raised by AI Gateway runtime operations.
12
- */
13
12
  export declare class AiGatewayError extends AiGatewayError_base<{
14
13
  /**
15
14
  * Human-readable runtime error message.
@@ -37,6 +36,12 @@ export interface AiGatewayClient {
37
36
  * Effect resolving to the raw AI Gateway runtime binding.
38
37
  */
39
38
  gateway: Effect.Effect<AiGateway, never, RuntimeContext>;
39
+ /**
40
+ * Effect resolving to the gateway id (the resource attribute, captured at
41
+ * bind time). Useful when calling `ai.run(model, inputs, { gateway: { id } })`
42
+ * — the in-account path for first-party services like Workers AI.
43
+ */
44
+ id: Effect.Effect<string, never, RuntimeContext>;
40
45
  /**
41
46
  * Update metadata on an existing AI Gateway log entry.
42
47
  */
@@ -53,19 +58,26 @@ export interface AiGatewayClient {
53
58
  * Run an AI Gateway request through the Cloudflare runtime binding.
54
59
  */
55
60
  run(data: Parameters<AiGateway["run"]>[0], options?: Parameters<AiGateway["run"]>[1]): Effect.Effect<Response, AiGatewayError, RuntimeContext>;
61
+ model(options: LanguageModelOptions): Layer.Layer<LanguageModel, never, RuntimeContext>;
56
62
  }
57
63
  declare const AiGatewayBinding_base: Binding.Service<AiGatewayBinding, "Cloudflare.AiGateway.Binding", (gateway: AiGatewayResource) => Effect.Effect<AiGatewayClient>> & {
58
64
  bind: (gateway: AiGatewayResource) => Effect.Effect<any, any, any>;
59
65
  };
60
66
  /**
61
- * Binding service that turns an {@link AiGatewayResource} resource into a typed
62
- * {@link AiGatewayClient} for Worker runtime code.
67
+ * Binding service that turns an {@link AiGatewayResource} resource
68
+ * into a typed {@link AiGatewayClient} for Worker runtime code. Wraps
69
+ * the Cloudflare AI Gateway runtime binding so each operation returns
70
+ * an Effect tagged with {@link AiGatewayError}, exposes the raw
71
+ * Workers AI handle for `ai.run(...)`, and provides a `model(options)`
72
+ * factory that produces an `effect/unstable/ai` `LanguageModel`
73
+ * `Layer`.
63
74
  *
64
- * @section Calling AI Gateway
65
- * Bind the gateway during the Worker's init phase, then use `run` or `getUrl`
66
- * from request handlers.
75
+ * @binding
67
76
  *
77
+ * @section Calling AI Gateway
68
78
  * @example Run through a gateway
79
+ * Bind the gateway during the Worker's init phase, then use `run` or
80
+ * `getUrl` from request handlers.
69
81
  * ```typescript
70
82
  * const aiGateway = yield* Cloudflare.AiGatewayBinding.bind(gateway);
71
83
  *
@@ -81,8 +93,29 @@ declare const AiGatewayBinding_base: Binding.Service<AiGatewayBinding, "Cloudfla
81
93
  * };
82
94
  * ```
83
95
  *
84
- * Provide {@link AiGatewayBindingLive} in the worker's runtime layer to
85
- * resolve the underlying Cloudflare AI binding at request time.
96
+ * @section Driving Effect AI through the gateway
97
+ * @example `aiGateway.model(...)` -> Effect AI `LanguageModel`
98
+ * `model(options)` produces a `Layer<LanguageModel, never,
99
+ * RuntimeContext>` that translates `LanguageModel.generateText` /
100
+ * `streamText` calls (including tool calls and structured outputs)
101
+ * into `ai.run(...)` against the bound Workers AI model, routed
102
+ * through the gateway.
103
+ * ```typescript
104
+ * const aiGateway = yield* Cloudflare.AiGatewayBinding.bind(gateway);
105
+ *
106
+ * const languageModel = aiGateway.model({
107
+ * client: aiGateway,
108
+ * model: "@cf/meta/llama-3.1-8b-instruct",
109
+ * parameters: { temperature: 0.7, maxTokens: 1024 },
110
+ * });
111
+ *
112
+ * const response = yield* AiLanguageModel.generateText({ prompt }).pipe(
113
+ * Effect.provide(languageModel),
114
+ * );
115
+ * ```
116
+ *
117
+ * Provide {@link AiGatewayBindingLive} in the worker's runtime layer
118
+ * to resolve the underlying Cloudflare AI binding at request time.
86
119
  */
87
120
  export declare class AiGatewayBinding extends AiGatewayBinding_base {
88
121
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AiGatewayBinding.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/AiGateway/AiGatewayBinding.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAY,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,IAAI,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;;;;AAErE;;GAEG;AACH,qBAAa,cAAe,SAAQ,oBAAmC;IACrE;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;CAAG;AAEL;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;IAC9C;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;IACzD;;OAEG;IACH,QAAQ,CACN,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GACzC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IACvD;;OAEG;IACH,MAAM,CACJ,KAAK,EAAE,MAAM,GACZ,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IAC/D;;OAEG;IACH,MAAM,CACJ,QAAQ,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAC5C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IACzD;;OAEG;IACH,GAAG,CACD,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EACrC,OAAO,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GACxC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;CAC5D;iHA+BW,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC;;;AA7BhE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,gBAAiB,SAAQ,qBAGH;CAAG;AAEtC;;GAEG;AACH,eAAO,MAAM,oBAAoB,kFAmChC,CAAC;oIAOU,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;AALrD;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,2BAGT;CAAG;AAEtC;;GAEG;AACH,eAAO,MAAM,0BAA0B,mDAiBtC,CAAC"}
1
+ {"version":3,"file":"AiGatewayBinding.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/AiGateway/AiGatewayBinding.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAY,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,IAAI,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,oBAAoB,CAAC;;;;AAG5B,qBAAa,cAAe,SAAQ,oBAAmC;IACrE;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;CAAG;AAEL;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;IAC9C;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;IACzD;;;;OAIG;IACH,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;IACjD;;OAEG;IACH,QAAQ,CACN,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GACzC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IACvD;;OAEG;IACH,MAAM,CACJ,KAAK,EAAE,MAAM,GACZ,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IAC/D;;OAEG;IACH,MAAM,CACJ,QAAQ,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAC5C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IACzD;;OAEG;IACH,GAAG,CACD,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EACrC,OAAO,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GACxC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IAE3D,KAAK,CACH,OAAO,EAAE,oBAAoB,GAC5B,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;CACtD;iHA0DW,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC;;;AAxDhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,qBAAa,gBAAiB,SAAQ,qBAGH;CAAG;AAEtC;;GAEG;AACH,eAAO,MAAM,oBAAoB,kFAqChC,CAAC;oIAOU,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;AALrD;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,2BAGT;CAAG;AAEtC;;GAEG;AACH,eAAO,MAAM,0BAA0B,mDAiBtC,CAAC"}
@@ -4,20 +4,25 @@ import * as Effect from "effect/Effect";
4
4
  import * as Layer from "effect/Layer";
5
5
  import * as Binding from "../../Binding.js";
6
6
  import { isWorker, WorkerEnvironment } from "../Workers/Worker.js";
7
- /**
8
- * Error raised by AI Gateway runtime operations.
9
- */
7
+ import { makeLanguageModelLayer, } from "./LanguageModel.js";
8
+ // Error raised by AI Gateway runtime operations.
10
9
  export class AiGatewayError extends Data.TaggedError("AiGatewayError") {
11
10
  }
12
11
  /**
13
- * Binding service that turns an {@link AiGatewayResource} resource into a typed
14
- * {@link AiGatewayClient} for Worker runtime code.
12
+ * Binding service that turns an {@link AiGatewayResource} resource
13
+ * into a typed {@link AiGatewayClient} for Worker runtime code. Wraps
14
+ * the Cloudflare AI Gateway runtime binding so each operation returns
15
+ * an Effect tagged with {@link AiGatewayError}, exposes the raw
16
+ * Workers AI handle for `ai.run(...)`, and provides a `model(options)`
17
+ * factory that produces an `effect/unstable/ai` `LanguageModel`
18
+ * `Layer`.
15
19
  *
16
- * @section Calling AI Gateway
17
- * Bind the gateway during the Worker's init phase, then use `run` or `getUrl`
18
- * from request handlers.
20
+ * @binding
19
21
  *
22
+ * @section Calling AI Gateway
20
23
  * @example Run through a gateway
24
+ * Bind the gateway during the Worker's init phase, then use `run` or
25
+ * `getUrl` from request handlers.
21
26
  * ```typescript
22
27
  * const aiGateway = yield* Cloudflare.AiGatewayBinding.bind(gateway);
23
28
  *
@@ -33,8 +38,29 @@ export class AiGatewayError extends Data.TaggedError("AiGatewayError") {
33
38
  * };
34
39
  * ```
35
40
  *
36
- * Provide {@link AiGatewayBindingLive} in the worker's runtime layer to
37
- * resolve the underlying Cloudflare AI binding at request time.
41
+ * @section Driving Effect AI through the gateway
42
+ * @example `aiGateway.model(...)` -> Effect AI `LanguageModel`
43
+ * `model(options)` produces a `Layer<LanguageModel, never,
44
+ * RuntimeContext>` that translates `LanguageModel.generateText` /
45
+ * `streamText` calls (including tool calls and structured outputs)
46
+ * into `ai.run(...)` against the bound Workers AI model, routed
47
+ * through the gateway.
48
+ * ```typescript
49
+ * const aiGateway = yield* Cloudflare.AiGatewayBinding.bind(gateway);
50
+ *
51
+ * const languageModel = aiGateway.model({
52
+ * client: aiGateway,
53
+ * model: "@cf/meta/llama-3.1-8b-instruct",
54
+ * parameters: { temperature: 0.7, maxTokens: 1024 },
55
+ * });
56
+ *
57
+ * const response = yield* AiLanguageModel.generateText({ prompt }).pipe(
58
+ * Effect.provide(languageModel),
59
+ * );
60
+ * ```
61
+ *
62
+ * Provide {@link AiGatewayBindingLive} in the worker's runtime layer
63
+ * to resolve the underlying Cloudflare AI binding at request time.
38
64
  */
39
65
  export class AiGatewayBinding extends Binding.Service()("Cloudflare.AiGateway.Binding") {
40
66
  }
@@ -53,10 +79,12 @@ export const AiGatewayBindingLive = Layer.effect(AiGatewayBinding, Effect.gen(fu
53
79
  return {
54
80
  raw: ai,
55
81
  gateway: runtimeGateway,
82
+ id: gatewayIdAccessor,
56
83
  patchLog: (logId, data) => use((gateway) => gateway.patchLog(logId, data)),
57
84
  getLog: (logId) => use((gateway) => gateway.getLog(logId)),
58
85
  getUrl: (provider) => use((gateway) => gateway.getUrl(provider)),
59
86
  run: (data, options) => use((gateway) => gateway.run(data, options)),
87
+ model: (options) => makeLanguageModelLayer(options),
60
88
  };
61
89
  });
62
90
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"AiGatewayBinding.js","sourceRoot":"","sources":["../../../src/Cloudflare/AiGateway/AiGatewayBinding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AiGatewayBinding.js","sourceRoot":"","sources":["../../../src/Cloudflare/AiGateway/AiGatewayBinding.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import * as Effect from "effect/Effect";
2
+ import * as Layer from "effect/Layer";
3
+ import { LanguageModel as AiLanguageModel } from "effect/unstable/ai";
4
+ import type { RuntimeContext } from "../../RuntimeContext.ts";
5
+ import type { AiGatewayClient } from "./AiGatewayBinding.ts";
6
+ /**
7
+ * Options for constructing an AI Gateway-backed Workers AI LanguageModel.
8
+ */
9
+ export interface LanguageModelOptions {
10
+ /** Already-bound AI Gateway client from `AiGatewayBinding.bind(gateway)`. */
11
+ readonly client: AiGatewayClient;
12
+ /** Workers AI model id, e.g. `@cf/meta/llama-3.3-70b-instruct-fp8-fast`. */
13
+ readonly model: string;
14
+ /** Optional per-call defaults; overridable per request via `providerOptions`. */
15
+ readonly parameters?: {
16
+ readonly temperature?: number;
17
+ readonly maxTokens?: number;
18
+ readonly topP?: number;
19
+ readonly topK?: number;
20
+ readonly seed?: number;
21
+ readonly frequencyPenalty?: number;
22
+ readonly presencePenalty?: number;
23
+ };
24
+ }
25
+ /**
26
+ * Provide a {@link AiLanguageModel.LanguageModel} layer backed by the supplied
27
+ * AI Gateway client and Workers AI model.
28
+ */
29
+ export declare const makeLanguageModelLayer: (options: LanguageModelOptions) => Layer.Layer<AiLanguageModel.LanguageModel, never, RuntimeContext>;
30
+ /**
31
+ * Build a {@link AiLanguageModel.Service} that proxies generateText/streamText
32
+ * through the supplied AI Gateway client to a Workers AI model.
33
+ */
34
+ export declare const makeLanguageModel: ({ client, model, parameters, }: LanguageModelOptions) => Effect.Effect<AiLanguageModel.Service, never, RuntimeContext>;
35
+ //# sourceMappingURL=LanguageModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LanguageModel.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/AiGateway/LanguageModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAEL,aAAa,IAAI,eAAe,EAKjC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,iFAAiF;IACjF,QAAQ,CAAC,UAAU,CAAC,EAAE;QACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QACnC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;KACnC,CAAC;CACH;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GACjC,SAAS,oBAAoB,KAC5B,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,aAAa,EAAE,KAAK,EAAE,cAAc,CACM,CAAC;AAE1E;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,gCAI/B,oBAAoB,KAAG,MAAM,CAAC,MAAM,CACrC,eAAe,CAAC,OAAO,EACvB,KAAK,EACL,cAAc,CA4CZ,CAAC"}