@effect/ai-openai 4.0.0-beta.41 → 4.0.0-beta.43

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.
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAiClient.d.ts","sourceRoot":"","sources":["../src/OpenAiClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenAiClient.d.ts","sourceRoot":"","sources":["../src/OpenAiClient.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAIrC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAI3C,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,OAAO,MAAM,4BAA4B,CAAA;AACrD,OAAO,KAAK,iBAAiB,MAAM,sCAAsC,CAAA;AAIzE,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAA;AAE7D,OAAO,KAAK,kBAAkB,MAAM,yCAAyC,CAAA;AAC7E,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAA;AACvD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAQ3C;;;;;GAKG;AACH,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,YAAY,CAAA;IAEvC;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,CACvB,OAAO,EAAE,OAAO,SAAS,CAAC,cAAc,CAAC,OAAO,KAC7C,MAAM,CAAC,MAAM,CAChB,SAAS,CAAC,IAAI,EAAE,OAAO,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,EAChG,OAAO,CAAC,OAAO,CAChB,CAAA;IAED;;OAEG;IACH,QAAQ,CAAC,oBAAoB,EAAE,CAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,KAC7D,MAAM,CAAC,MAAM,CAChB,SAAS;QACP,QAAQ,EAAE,kBAAkB,CAAC,kBAAkB;QAC/C,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC;KAClF,EACD,OAAO,CAAC,OAAO,CAChB,CAAA;IAED;;OAEG;IACH,QAAQ,CAAC,eAAe,EAAE,CACxB,OAAO,EAAE,OAAO,SAAS,CAAC,sBAAsB,CAAC,OAAO,KACrD,MAAM,CAAC,MAAM,CAAC,OAAO,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;CACnF;;AAMD;;;;;GAKG;AACH,qBAAa,YAAa,SAAQ,iBAEjC;CAAG;AAMJ;;;;;GAKG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB;;OAEG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAEvD;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAEpC;;OAEG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAE/D;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAE1D;;OAEG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,GAAG,SAAS,CAAA;CAClG,CAAA;AAWD;;;;;GAKG;AACH,eAAO,MAAM,IAAI,4EAuHhB,CAAA;AAMD;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,SAAS,OAAO,KAAG,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CACpD,CAAA;AAE3C;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,UAAU;IACpC;;OAEG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,SAAS,CAAA;IAElF;;OAEG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAEnD;;OAEG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,SAAS,CAAA;IAE1F;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,SAAS,CAAA;IAErF;;OAEG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,GAAG,SAAS,CAAA;CAClG,KAAG,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,UAAU,CAwBpE,CAAA;AAMH;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAA;;IAOzE;;OAEG;mCAC4B,CAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,KAC7D,MAAM,CAAC,MAAM,CAChB,SAAS,CACP,QAAQ,EAAE,kBAAkB,CAAC,kBAAkB,EAC/C,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,OAAO,CAAC,OAAO,CAAC,CAC5D,EACD,OAAO,CAAC,OAAO,CAChB;;AAhBH;;;GAGG;AACH,qBAAa,YAAa,SAAQ,iBAaiB;CAAG;AAiLtD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EACvC,QAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAC7B,MAAM,CAAC,MAAM,CACd,CAAC,EACD,CAAC,EACD,OAAO,CAAC,CAAC,EAAE,YAAY,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,GAAG,YAAY,GAAG,MAAM,CAAC,oBAAoB,CAO1G,CAAA;AAEH;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAC1C,YAAY,GAAG,iBAAiB,CAAC,iBAAiB,EAClD,KAAK,EACL,YAAY,GAAG,MAAM,CAAC,oBAAoB,CACR,CAAA"}
@@ -7,9 +7,7 @@
7
7
  * @since 1.0.0
8
8
  */
9
9
  import * as Array from "effect/Array";
10
- import * as Cause from "effect/Cause";
11
10
  import * as Effect from "effect/Effect";
12
- import * as Exit from "effect/Exit";
13
11
  import { identity } from "effect/Function";
14
12
  import * as Function from "effect/Function";
15
13
  import * as Layer from "effect/Layer";
@@ -17,7 +15,6 @@ import * as Predicate from "effect/Predicate";
17
15
  import * as Queue from "effect/Queue";
18
16
  import * as RcRef from "effect/RcRef";
19
17
  import * as Redacted from "effect/Redacted";
20
- import * as Schedule from "effect/Schedule";
21
18
  import * as Schema from "effect/Schema";
22
19
  import * as Scope from "effect/Scope";
23
20
  import * as Semaphore from "effect/Semaphore";
@@ -151,22 +148,28 @@ export class OpenAiSocket extends /*#__PURE__*/ServiceMap.Service()("@effect/ai-
151
148
  const makeSocket = /*#__PURE__*/Effect.gen(function* () {
152
149
  const client = yield* OpenAiClient;
153
150
  const tracker = yield* ResponseIdTracker.make;
154
- const request = yield* Effect.orDie(client.client.httpClient.preprocess(HttpClientRequest.post("/responses")));
155
- const socket = yield* Socket.makeWebSocket(request.url.replace(/^http/, "ws")).pipe(Effect.updateService(Socket.WebSocketConstructor, f => url => f(url, {
156
- headers: request.headers
157
- })));
151
+ const socketScope = yield* Effect.scope;
152
+ const makeRequest = Effect.orDie(client.client.httpClient.preprocess(HttpClientRequest.post("/responses")));
153
+ const makeWebSocket = yield* Socket.WebSocketConstructor;
154
+ const decoder = new TextDecoder();
158
155
  const queueRef = yield* RcRef.make({
159
156
  idleTimeToLive: 60_000,
160
157
  acquire: Effect.gen(function* () {
158
+ const scope = yield* Effect.scope;
159
+ const request = yield* makeRequest;
160
+ const socket = yield* Socket.makeWebSocket(request.url.replace(/^http/, "ws")).pipe(Effect.provideService(Socket.WebSocketConstructor, url => makeWebSocket(url, {
161
+ headers: request.headers
162
+ })));
161
163
  const write = yield* socket.writer;
162
- let currentQueue = null;
163
- const send = (queue, message) => Effect.suspend(() => {
164
- currentQueue = queue;
165
- return write(JSON.stringify({
166
- type: "response.create",
167
- ...message
168
- }));
169
- }).pipe(Effect.mapError(_error => AiError.make({
164
+ yield* Scope.addFinalizerExit(scope, () => {
165
+ tracker.clearUnsafe();
166
+ return Effect.void;
167
+ });
168
+ const incoming = yield* Queue.unbounded();
169
+ const send = message => write(JSON.stringify({
170
+ type: "response.create",
171
+ ...message
172
+ })).pipe(Effect.mapError(_error => AiError.make({
170
173
  module: "OpenAiClient",
171
174
  method: "createResponseStream",
172
175
  reason: new AiError.NetworkError({
@@ -181,18 +184,10 @@ const makeSocket = /*#__PURE__*/Effect.gen(function* () {
181
184
  description: "Failed to send message over WebSocket"
182
185
  })
183
186
  })));
184
- const reset = () => {
185
- currentQueue = null;
186
- };
187
- const decoder = new TextDecoder();
188
187
  yield* socket.runRaw(msg => {
189
- if (!currentQueue) return;
190
188
  const text = typeof msg === "string" ? msg : decoder.decode(msg);
191
189
  try {
192
190
  const event = decodeEvent(text);
193
- if (event.type === "error") {
194
- tracker.clearUnsafe();
195
- }
196
191
  if (event.type === "error" && "status" in event) {
197
192
  const json = JSON.stringify(event.error);
198
193
  return Effect.fail(AiError.make({
@@ -215,62 +210,59 @@ const makeSocket = /*#__PURE__*/Effect.gen(function* () {
215
210
  })
216
211
  }));
217
212
  }
218
- Queue.offerUnsafe(currentQueue, event);
213
+ Queue.offerUnsafe(incoming, event);
219
214
  } catch {}
220
- }).pipe(Effect.catchCause(cause => {
221
- tracker.clearUnsafe();
222
- return currentQueue ? Queue.fail(currentQueue, AiError.make({
223
- module: "OpenAiClient",
224
- method: "createResponseStream",
225
- reason: new AiError.NetworkError({
226
- reason: "TransportError",
227
- request: {
228
- method: "POST",
229
- url: request.url,
230
- urlParams: [],
231
- hash: undefined,
232
- headers: request.headers
233
- },
234
- description: Cause.pretty(cause)
235
- })
236
- })) : Effect.void;
237
- }), Effect.repeat(Schedule.exponential(100, 1.5).pipe(Schedule.either(Schedule.spaced({
238
- seconds: 5
239
- })), Schedule.jittered)), Effect.forkScoped);
215
+ }).pipe(Effect.catchTag("SocketError", error => AiError.make({
216
+ module: "OpenAiClient",
217
+ method: "createResponseStream",
218
+ reason: new AiError.NetworkError({
219
+ reason: "TransportError",
220
+ request: {
221
+ method: "POST",
222
+ url: request.url,
223
+ urlParams: [],
224
+ hash: undefined,
225
+ headers: request.headers
226
+ },
227
+ description: error.message
228
+ })
229
+ }).asEffect()), Effect.catchCause(cause => Queue.failCause(incoming, cause)), Effect.ensuring(Effect.forkIn(RcRef.invalidate(queueRef), socketScope, {
230
+ startImmediately: true
231
+ })), Effect.forkScoped({
232
+ startImmediately: true
233
+ }));
240
234
  return {
241
235
  send,
242
- reset
236
+ incoming
243
237
  };
244
238
  })
245
239
  });
240
+ // Prime the websocket
241
+ yield* Effect.scoped(RcRef.get(queueRef));
246
242
  // Websocket mode only allows one request at a time
247
243
  const semaphore = Semaphore.makeUnsafe(1);
244
+ const request = yield* makeRequest;
248
245
  return OpenAiSocket.serviceMap({
249
246
  createResponseStream(options) {
250
- const stream = Effect.gen(function* () {
247
+ const stream = Stream.unwrap(Effect.gen(function* () {
248
+ const scope = yield* Effect.scope;
251
249
  yield* Effect.acquireRelease(semaphore.take(1), () => semaphore.release(1), {
252
250
  interruptible: true
253
251
  });
254
252
  const {
255
253
  send,
256
- reset
254
+ incoming
257
255
  } = yield* RcRef.get(queueRef);
258
- const incoming = yield* Queue.unbounded();
259
256
  let done = false;
260
- yield* Effect.acquireRelease(send(incoming, options), (_, exit) => {
261
- reset();
262
- if (Exit.isFailure(exit) && !Exit.hasInterrupts(exit)) return Effect.void;else if (done) return Effect.void;
263
- return RcRef.invalidate(queueRef);
264
- }, {
265
- interruptible: true
266
- }).pipe(Effect.forkScoped({
257
+ yield* Scope.addFinalizerExit(scope, () => done ? Effect.void : RcRef.invalidate(queueRef));
258
+ yield* send(options).pipe(Effect.forkScoped({
267
259
  startImmediately: true
268
260
  }));
269
261
  return Stream.fromQueue(incoming).pipe(Stream.takeUntil(e => {
270
262
  done = e.type === "response.completed" || e.type === "response.incomplete";
271
263
  return done;
272
264
  }));
273
- }).pipe(Stream.unwrap);
265
+ }));
274
266
  return Effect.succeed([HttpClientResponse.fromWeb(request, new Response()), stream]);
275
267
  }
276
268
  }).pipe(ServiceMap.add(ResponseIdTracker.ResponseIdTracker, tracker));
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAiClient.js","names":["Array","Cause","Effect","Exit","identity","Function","Layer","Predicate","Queue","RcRef","Redacted","Schedule","Schema","Scope","Semaphore","ServiceMap","Stream","AiError","ResponseIdTracker","Sse","Headers","HttpBody","HttpClient","HttpClientRequest","HttpClientResponse","Socket","Generated","Errors","OpenAiConfig","OpenAiClient","Service","RedactedOpenAiHeaders","OpenAiOrganization","OpenAiProject","make","fnUntraced","options","baseClient","apiUrl","httpClient","pipe","mapRequest","flow","prependUrl","apiKey","bearerToken","value","organizationId","setHeader","projectId","acceptJson","transformClient","httpClientOk","filterStatusOk","client","config","getOrUndefined","isNotUndefined","createResponse","payload","includeResponse","catchTags","HttpClientError","error","mapHttpClientError","SchemaError","fail","mapSchemaError","buildResponseStream","response","stream","decodeText","pipeThroughChannel","decodeDataSchema","ResponseStreamEvent","takeUntil","event","data","type","map","Retry","die","fromEffect","createResponseStream","servicesWith","services","socket","OpenAiSocket","execute","post","body","jsonUnsafe","catchTag","createEmbedding","of","updateService","CurrentRedactedNames","appendAll","Object","values","layer","effect","layerConfig","gen","undefined","makeSocket","tracker","request","orDie","preprocess","makeWebSocket","url","replace","WebSocketConstructor","f","headers","queueRef","idleTimeToLive","acquire","write","writer","currentQueue","send","queue","message","suspend","JSON","stringify","mapError","_error","module","method","reason","NetworkError","urlParams","hash","description","reset","decoder","TextDecoder","runRaw","msg","text","decode","decodeEvent","clearUnsafe","json","reasonFromHttpStatus","status","metadata","http","offerUnsafe","catchCause","cause","pretty","void","repeat","exponential","either","spaced","seconds","jittered","forkScoped","semaphore","makeUnsafe","serviceMap","acquireRelease","take","release","interruptible","get","incoming","unbounded","done","_","exit","isFailure","hasInterrupts","invalidate","startImmediately","fromQueue","e","unwrap","succeed","fromWeb","Response","add","ErrorEvent","Struct","Literal","Number","withDecodingDefault","String","AllEvents","Union","decodeUnknownSync","fromJsonString","withWebSocketMode","scopedWith","scope","flatMap","provide","provideServices","layerWebSocketMode","effectServices"],"sources":["../src/OpenAiClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"OpenAiClient.js","names":["Array","Effect","identity","Function","Layer","Predicate","Queue","RcRef","Redacted","Schema","Scope","Semaphore","ServiceMap","Stream","AiError","ResponseIdTracker","Sse","Headers","HttpBody","HttpClient","HttpClientRequest","HttpClientResponse","Socket","Generated","Errors","OpenAiConfig","OpenAiClient","Service","RedactedOpenAiHeaders","OpenAiOrganization","OpenAiProject","make","fnUntraced","options","baseClient","apiUrl","httpClient","pipe","mapRequest","flow","prependUrl","apiKey","bearerToken","value","organizationId","setHeader","projectId","acceptJson","transformClient","httpClientOk","filterStatusOk","client","config","getOrUndefined","isNotUndefined","createResponse","payload","includeResponse","catchTags","HttpClientError","error","mapHttpClientError","SchemaError","fail","mapSchemaError","buildResponseStream","response","stream","decodeText","pipeThroughChannel","decodeDataSchema","ResponseStreamEvent","takeUntil","event","data","type","map","Retry","die","fromEffect","createResponseStream","servicesWith","services","socket","OpenAiSocket","execute","post","body","jsonUnsafe","catchTag","createEmbedding","of","updateService","CurrentRedactedNames","appendAll","Object","values","layer","effect","layerConfig","gen","undefined","makeSocket","tracker","socketScope","scope","makeRequest","orDie","preprocess","makeWebSocket","WebSocketConstructor","decoder","TextDecoder","queueRef","idleTimeToLive","acquire","request","url","replace","provideService","headers","write","writer","addFinalizerExit","clearUnsafe","void","incoming","unbounded","send","message","JSON","stringify","mapError","_error","module","method","reason","NetworkError","urlParams","hash","description","runRaw","msg","text","decode","decodeEvent","json","reasonFromHttpStatus","status","metadata","http","offerUnsafe","asEffect","catchCause","cause","failCause","ensuring","forkIn","invalidate","startImmediately","forkScoped","scoped","get","semaphore","makeUnsafe","serviceMap","unwrap","acquireRelease","take","release","interruptible","done","fromQueue","e","succeed","fromWeb","Response","add","ErrorEvent","Struct","Literal","Number","withDecodingDefault","String","AllEvents","Union","decodeUnknownSync","fromJsonString","withWebSocketMode","scopedWith","flatMap","provide","provideServices","layerWebSocketMode","effectServices"],"sources":["../src/OpenAiClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -2001,10 +2001,10 @@ const prepareTools = /*#__PURE__*/Effect.fnUntraced(function* ({
2001
2001
  }
2002
2002
  // Convert the tools in the toolkit to the provider-defined format
2003
2003
  for (const tool of allowedTools) {
2004
- if (Tool.isUserDefined(tool)) {
2004
+ if (Tool.isUserDefined(tool) || Tool.isDynamic(tool)) {
2005
2005
  const strict = Tool.getStrictMode(tool) ?? config.strictJsonSchema ?? true;
2006
2006
  const description = Tool.getDescription(tool);
2007
- const parameters = yield* tryJsonSchema(tool.parametersSchema, "prepareTools");
2007
+ const parameters = yield* tryToolJsonSchema(tool, "prepareTools");
2008
2008
  tools.push({
2009
2009
  type: "function",
2010
2010
  name: tool.name,
@@ -2201,6 +2201,12 @@ const tryJsonSchema = (schema, method) => Effect.try({
2201
2201
  }),
2202
2202
  catch: error => unsupportedSchemaError(error, method)
2203
2203
  });
2204
+ const tryToolJsonSchema = (tool, method) => Effect.try({
2205
+ try: () => Tool.getJsonSchema(tool, {
2206
+ transformer: toCodecOpenAI
2207
+ }),
2208
+ catch: error => unsupportedSchemaError(error, method)
2209
+ });
2204
2210
  const prepareResponseFormat = /*#__PURE__*/Effect.fnUntraced(function* ({
2205
2211
  config,
2206
2212
  options
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAiLanguageModel.js","names":["DateTime","Effect","Encoding","dual","Layer","Option","Predicate","Redactable","Schema","AST","ServiceMap","Stream","AiError","IdGenerator","LanguageModel","AiModel","toCodecOpenAI","Tool","Generated","InternalUtilities","OpenAiClient","addGenAIAnnotations","ResponseModelIds","ModelIdsResponses","members","SharedModelIds","ModelIdsShared","Config","Service","model","config","make","layer","fnUntraced","providerConfig","client","makeConfig","gen","services","mapUnsafe","get","key","makeRequest","options","toolNameMapper","include","Set","capabilities","getModelCapabilities","messages","prepareMessages","toolChoice","tools","prepareTools","responseFormat","prepareResponseFormat","request","input","size","Array","from","text","verbosity","format","undefined","tool_choice","previousResponseId","previous_response_id","codecTransformer","generateText","NameMapper","annotateRequest","span","rawResponse","response","createResponse","annotateResponse","makeResponse","streamText","stream","createResponseStream","makeStreamResponse","effect","pipe","unwrap","map","annotateStreamResponse","withConfigOverride","self","overrides","flatMap","serviceOption","provideService","_tag","value","getSystemMessageMode","startsWith","processedApprovalIds","hasConversation","isNotNullish","conversation","applyPatchTool","find","tool","isProviderDefined","name","codeInterpreterTool","shellTool","localShellTool","webSearchTool","webSearchPreviewTool","isNotUndefined","top_logprobs","add","store","isReasoningModel","prompt","incrementalPrompt","message","content","role","push","index","length","part","type","mediaType","detail","getImageDetail","data","isFileId","file_id","URL","image_url","toString","Uint8Array","base64","encodeBase64","imageUrl","file_url","fileName","fileData","filename","file_data","module","method","reason","InvalidRequestError","description","reasoningMessages","id","getItemId","isNotNull","status","openai","annotations","logprobs","encryptedContent","getEncryptedContent","isUndefined","summary","summaryParts","encrypted_content","getStatus","providerExecuted","toolName","getProviderName","params","decodeUnknownEffect","parametersSchema","mapError","error","ToolParameterValidationError","toolParams","call_id","action","arguments","JSON","stringify","hasProperty","result","has","approvalId","approval_request_id","approve","approved","output","buildHttpRequestDetails","url","urlParams","hash","getOrUndefined","headers","redact","buildHttpResponseDetails","idGenerator","approvalRequests","getApprovalRequestIdMapping","hasToolCalls","parts","createdAt","Date","created_at","modelId","timestamp","formatIso","fromDateUnsafe","getCustomName","operation","metadata","makeItemIdMetadata","code","container_id","isFailure","outputs","queries","results","try","unsafeSecureJsonParse","catch","cause","transformToolCallParams","toolId","server_label","approvalRequestId","generateId","toolCallId","contentPart","annotation","sourceType","title","fileId","containerId","startIndex","start_index","endIndex","end_index","refusal","makeEncryptedContentMetadata","finishReason","resolveFinishReason","incomplete_details","usage","getUsage","service_tier","serviceTier","streamApprovalRequests","Map","activeAnnotations","activeReasoning","getOrCreateReasoningPart","itemId","activePart","reasoningPart","activeToolCalls","mapEffect","event","item","output_index","applyPatch","hasDiff","endEmitted","delta","escapeJSONDelta","path","codeInterpreter","functionCall","emitted","providerName","toolCall","diff","toolArgs","set","slice","summaryIndex","Object","entries","item_id","toolCallPart","partial_image_b64","preliminary","summary_index","Number","flattenIterable","system","temperature","topP","top_p","maxTokens","max_output_tokens","finishReasons","inputTokens","input_tokens","outputTokens","output_tokens","total","allowedTools","allowedToolNames","oneOf","filter","mode","isUserDefined","strict","getStrictMode","strictJsonSchema","getDescription","parameters","tryJsonSchema","openAiTool","args","argsSchema","ToolConfigurationError","providerNames","includes","fileIdPrefixes","some","prefix","imageDetail","unsupportedSchemaError","UnsupportedSchemaError","Error","String","tryCodecTransform","schema","getJsonSchemaFromSchema","transformer","objectName","jsonSchema","resolveDescription","ast","supportsFlexProcessing","supportsPriorityProcessing","supportsNonReasoningParameters","systemMessageMode","mapping","isNullish","uncached","cacheRead","cacheWrite","reasoning","cachedTokens","input_tokens_details","cached_tokens","reasoningTokens","output_tokens_details","reasoning_tokens","ToolNotFoundError","availableTools","codec","transform","decodeEffect","issue"],"sources":["../src/OpenAiLanguageModel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"OpenAiLanguageModel.js","names":["DateTime","Effect","Encoding","dual","Layer","Option","Predicate","Redactable","Schema","AST","ServiceMap","Stream","AiError","IdGenerator","LanguageModel","AiModel","toCodecOpenAI","Tool","Generated","InternalUtilities","OpenAiClient","addGenAIAnnotations","ResponseModelIds","ModelIdsResponses","members","SharedModelIds","ModelIdsShared","Config","Service","model","config","make","layer","fnUntraced","providerConfig","client","makeConfig","gen","services","mapUnsafe","get","key","makeRequest","options","toolNameMapper","include","Set","capabilities","getModelCapabilities","messages","prepareMessages","toolChoice","tools","prepareTools","responseFormat","prepareResponseFormat","request","input","size","Array","from","text","verbosity","format","undefined","tool_choice","previousResponseId","previous_response_id","codecTransformer","generateText","NameMapper","annotateRequest","span","rawResponse","response","createResponse","annotateResponse","makeResponse","streamText","stream","createResponseStream","makeStreamResponse","effect","pipe","unwrap","map","annotateStreamResponse","withConfigOverride","self","overrides","flatMap","serviceOption","provideService","_tag","value","getSystemMessageMode","startsWith","processedApprovalIds","hasConversation","isNotNullish","conversation","applyPatchTool","find","tool","isProviderDefined","name","codeInterpreterTool","shellTool","localShellTool","webSearchTool","webSearchPreviewTool","isNotUndefined","top_logprobs","add","store","isReasoningModel","prompt","incrementalPrompt","message","content","role","push","index","length","part","type","mediaType","detail","getImageDetail","data","isFileId","file_id","URL","image_url","toString","Uint8Array","base64","encodeBase64","imageUrl","file_url","fileName","fileData","filename","file_data","module","method","reason","InvalidRequestError","description","reasoningMessages","id","getItemId","isNotNull","status","openai","annotations","logprobs","encryptedContent","getEncryptedContent","isUndefined","summary","summaryParts","encrypted_content","getStatus","providerExecuted","toolName","getProviderName","params","decodeUnknownEffect","parametersSchema","mapError","error","ToolParameterValidationError","toolParams","call_id","action","arguments","JSON","stringify","hasProperty","result","has","approvalId","approval_request_id","approve","approved","output","buildHttpRequestDetails","url","urlParams","hash","getOrUndefined","headers","redact","buildHttpResponseDetails","idGenerator","approvalRequests","getApprovalRequestIdMapping","hasToolCalls","parts","createdAt","Date","created_at","modelId","timestamp","formatIso","fromDateUnsafe","getCustomName","operation","metadata","makeItemIdMetadata","code","container_id","isFailure","outputs","queries","results","try","unsafeSecureJsonParse","catch","cause","transformToolCallParams","toolId","server_label","approvalRequestId","generateId","toolCallId","contentPart","annotation","sourceType","title","fileId","containerId","startIndex","start_index","endIndex","end_index","refusal","makeEncryptedContentMetadata","finishReason","resolveFinishReason","incomplete_details","usage","getUsage","service_tier","serviceTier","streamApprovalRequests","Map","activeAnnotations","activeReasoning","getOrCreateReasoningPart","itemId","activePart","reasoningPart","activeToolCalls","mapEffect","event","item","output_index","applyPatch","hasDiff","endEmitted","delta","escapeJSONDelta","path","codeInterpreter","functionCall","emitted","providerName","toolCall","diff","toolArgs","set","slice","summaryIndex","Object","entries","item_id","toolCallPart","partial_image_b64","preliminary","summary_index","Number","flattenIterable","system","temperature","topP","top_p","maxTokens","max_output_tokens","finishReasons","inputTokens","input_tokens","outputTokens","output_tokens","total","allowedTools","allowedToolNames","oneOf","filter","mode","isUserDefined","isDynamic","strict","getStrictMode","strictJsonSchema","getDescription","parameters","tryToolJsonSchema","openAiTool","args","argsSchema","ToolConfigurationError","providerNames","includes","fileIdPrefixes","some","prefix","imageDetail","unsupportedSchemaError","UnsupportedSchemaError","Error","String","tryCodecTransform","schema","tryJsonSchema","getJsonSchemaFromSchema","transformer","getJsonSchema","objectName","jsonSchema","resolveDescription","ast","supportsFlexProcessing","supportsPriorityProcessing","supportsNonReasoningParameters","systemMessageMode","mapping","isNullish","uncached","cacheRead","cacheWrite","reasoning","cachedTokens","input_tokens_details","cached_tokens","reasoningTokens","output_tokens_details","reasoning_tokens","ToolNotFoundError","availableTools","codec","transform","decodeEffect","issue"],"sources":["../src/OpenAiLanguageModel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/ai-openai",
3
- "version": "4.0.0-beta.41",
3
+ "version": "4.0.0-beta.43",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "An OpenAI provider integration for Effect AI SDK",
@@ -43,10 +43,10 @@
43
43
  "provenance": true
44
44
  },
45
45
  "devDependencies": {
46
- "effect": "^4.0.0-beta.41"
46
+ "effect": "^4.0.0-beta.43"
47
47
  },
48
48
  "peerDependencies": {
49
- "effect": "^4.0.0-beta.41"
49
+ "effect": "^4.0.0-beta.43"
50
50
  },
51
51
  "scripts": {
52
52
  "codegen": "effect-utils codegen",
@@ -7,10 +7,8 @@
7
7
  * @since 1.0.0
8
8
  */
9
9
  import * as Array from "effect/Array"
10
- import * as Cause from "effect/Cause"
11
10
  import type * as Config from "effect/Config"
12
11
  import * as Effect from "effect/Effect"
13
- import * as Exit from "effect/Exit"
14
12
  import { identity } from "effect/Function"
15
13
  import * as Function from "effect/Function"
16
14
  import * as Layer from "effect/Layer"
@@ -18,7 +16,6 @@ import * as Predicate from "effect/Predicate"
18
16
  import * as Queue from "effect/Queue"
19
17
  import * as RcRef from "effect/RcRef"
20
18
  import * as Redacted from "effect/Redacted"
21
- import * as Schedule from "effect/Schedule"
22
19
  import * as Schema from "effect/Schema"
23
20
  import * as Scope from "effect/Scope"
24
21
  import * as Semaphore from "effect/Semaphore"
@@ -376,40 +373,41 @@ export class OpenAiSocket extends ServiceMap.Service<OpenAiSocket, {
376
373
  const makeSocket = Effect.gen(function*() {
377
374
  const client = yield* OpenAiClient
378
375
  const tracker = yield* ResponseIdTracker.make
379
- const request = yield* Effect.orDie(client.client.httpClient.preprocess(HttpClientRequest.post("/responses")))
376
+ const socketScope = yield* Effect.scope
377
+ const makeRequest = Effect.orDie(client.client.httpClient.preprocess(HttpClientRequest.post("/responses")))
378
+ const makeWebSocket = yield* Socket.WebSocketConstructor
380
379
 
381
- const socket = yield* Socket.makeWebSocket(request.url.replace(/^http/, "ws")).pipe(
382
- Effect.updateService(Socket.WebSocketConstructor, (f) => (url) =>
383
- f(url, {
384
- headers: request.headers
385
- } as any))
386
- )
380
+ const decoder = new TextDecoder()
387
381
 
388
382
  const queueRef: RcRef.RcRef<
389
383
  {
390
- readonly send: (
391
- queue: Queue.Enqueue<ResponseStreamEvent, AiError.AiError | Cause.Done>,
392
- message: typeof Generated.CreateResponse.Encoded
393
- ) => Effect.Effect<void, AiError.AiError>
394
- readonly reset: () => void
384
+ readonly send: (message: typeof Generated.CreateResponse.Encoded) => Effect.Effect<void, AiError.AiError>
385
+ readonly incoming: Queue.Dequeue<ResponseStreamEvent, AiError.AiError>
395
386
  }
396
387
  > = yield* RcRef.make({
397
388
  idleTimeToLive: 60_000,
398
389
  acquire: Effect.gen(function*() {
390
+ const scope = yield* Effect.scope
391
+ const request = yield* makeRequest
392
+ const socket = yield* Socket.makeWebSocket(request.url.replace(/^http/, "ws")).pipe(
393
+ Effect.provideService(Socket.WebSocketConstructor, (url) =>
394
+ makeWebSocket(url, {
395
+ headers: request.headers
396
+ } as any))
397
+ )
399
398
  const write = yield* socket.writer
400
399
 
401
- let currentQueue: Queue.Enqueue<ResponseStreamEvent, AiError.AiError | Cause.Done> | null = null
402
- const send = (
403
- queue: Queue.Enqueue<ResponseStreamEvent, AiError.AiError | Cause.Done>,
404
- message: typeof Generated.CreateResponse.Encoded
405
- ) =>
406
- Effect.suspend(() => {
407
- currentQueue = queue
408
- return write(JSON.stringify({
409
- type: "response.create",
410
- ...message
411
- }))
412
- }).pipe(
400
+ yield* Scope.addFinalizerExit(scope, () => {
401
+ tracker.clearUnsafe()
402
+ return Effect.void
403
+ })
404
+
405
+ const incoming = yield* Queue.unbounded<ResponseStreamEvent, AiError.AiError>()
406
+ const send = (message: typeof Generated.CreateResponse.Encoded) =>
407
+ write(JSON.stringify({
408
+ type: "response.create",
409
+ ...message
410
+ })).pipe(
413
411
  Effect.mapError((_error) =>
414
412
  AiError.make({
415
413
  module: "OpenAiClient",
@@ -428,19 +426,11 @@ const makeSocket = Effect.gen(function*() {
428
426
  })
429
427
  )
430
428
  )
431
- const reset = () => {
432
- currentQueue = null
433
- }
434
429
 
435
- const decoder = new TextDecoder()
436
430
  yield* socket.runRaw((msg) => {
437
- if (!currentQueue) return
438
431
  const text = typeof msg === "string" ? msg : decoder.decode(msg)
439
432
  try {
440
433
  const event = decodeEvent(text)
441
- if (event.type === "error") {
442
- tracker.clearUnsafe()
443
- }
444
434
  if (event.type === "error" && "status" in event) {
445
435
  const json = JSON.stringify(event.error)
446
436
  return Effect.fail(
@@ -465,79 +455,71 @@ const makeSocket = Effect.gen(function*() {
465
455
  })
466
456
  )
467
457
  }
468
- Queue.offerUnsafe(currentQueue, event)
458
+ Queue.offerUnsafe(incoming, event)
469
459
  } catch {}
470
460
  }).pipe(
471
- Effect.catchCause((cause) => {
472
- tracker.clearUnsafe()
473
- return currentQueue ?
474
- Queue.fail(
475
- currentQueue,
476
- AiError.make({
477
- module: "OpenAiClient",
478
- method: "createResponseStream",
479
- reason: new AiError.NetworkError({
480
- reason: "TransportError",
481
- request: {
482
- method: "POST",
483
- url: request.url,
484
- urlParams: [],
485
- hash: undefined,
486
- headers: request.headers
487
- },
488
- description: Cause.pretty(cause)
489
- })
490
- })
491
- ) :
492
- Effect.void
493
- }),
494
- Effect.repeat(
495
- Schedule.exponential(100, 1.5).pipe(
496
- Schedule.either(Schedule.spaced({ seconds: 5 })),
497
- Schedule.jittered
498
- )
499
- ),
500
- Effect.forkScoped
461
+ Effect.catchTag("SocketError", (error) =>
462
+ AiError.make({
463
+ module: "OpenAiClient",
464
+ method: "createResponseStream",
465
+ reason: new AiError.NetworkError({
466
+ reason: "TransportError",
467
+ request: {
468
+ method: "POST",
469
+ url: request.url,
470
+ urlParams: [],
471
+ hash: undefined,
472
+ headers: request.headers
473
+ },
474
+ description: error.message
475
+ })
476
+ }).asEffect()),
477
+ Effect.catchCause((cause) => Queue.failCause(incoming, cause)),
478
+ Effect.ensuring(Effect.forkIn(RcRef.invalidate(queueRef), socketScope, {
479
+ startImmediately: true
480
+ })),
481
+ Effect.forkScoped({ startImmediately: true })
501
482
  )
502
483
 
503
- return { send, reset } as const
484
+ return { send, incoming } as const
504
485
  })
505
486
  })
506
487
 
488
+ // Prime the websocket
489
+ yield* Effect.scoped(RcRef.get(queueRef))
490
+
507
491
  // Websocket mode only allows one request at a time
508
492
  const semaphore = Semaphore.makeUnsafe(1)
493
+ const request = yield* makeRequest
509
494
 
510
495
  return OpenAiSocket.serviceMap({
511
496
  createResponseStream(options) {
512
- const stream = Effect.gen(function*() {
497
+ const stream = Stream.unwrap(Effect.gen(function*() {
498
+ const scope = yield* Effect.scope
513
499
  yield* Effect.acquireRelease(
514
500
  semaphore.take(1),
515
501
  () => semaphore.release(1),
516
502
  { interruptible: true }
517
503
  )
518
- const { send, reset } = yield* RcRef.get(queueRef)
519
- const incoming = yield* Queue.unbounded<ResponseStreamEvent, AiError.AiError | Cause.Done>()
504
+ const { send, incoming } = yield* RcRef.get(queueRef)
520
505
  let done = false
521
506
 
522
- yield* Effect.acquireRelease(
523
- send(incoming, options),
524
- (_, exit) => {
525
- reset()
526
- if (Exit.isFailure(exit) && !Exit.hasInterrupts(exit)) return Effect.void
527
- else if (done) return Effect.void
528
- return RcRef.invalidate(queueRef)
529
- },
530
- { interruptible: true }
531
- ).pipe(
507
+ yield* Scope.addFinalizerExit(
508
+ scope,
509
+ () => done ? Effect.void : RcRef.invalidate(queueRef)
510
+ )
511
+
512
+ yield* send(options).pipe(
532
513
  Effect.forkScoped({ startImmediately: true })
533
514
  )
515
+
534
516
  return Stream.fromQueue(incoming).pipe(
535
517
  Stream.takeUntil((e) => {
536
518
  done = e.type === "response.completed" || e.type === "response.incomplete"
537
519
  return done
538
520
  })
539
521
  )
540
- }).pipe(Stream.unwrap)
522
+ }))
541
523
 
542
524
  return Effect.succeed([
543
525
  HttpClientResponse.fromWeb(request, new Response()),
@@ -2370,10 +2370,10 @@ const prepareTools = Effect.fnUntraced(function*<Tools extends ReadonlyArray<Too
2370
2370
 
2371
2371
  // Convert the tools in the toolkit to the provider-defined format
2372
2372
  for (const tool of allowedTools) {
2373
- if (Tool.isUserDefined(tool)) {
2373
+ if (Tool.isUserDefined(tool) || Tool.isDynamic(tool)) {
2374
2374
  const strict = Tool.getStrictMode(tool) ?? config.strictJsonSchema ?? true
2375
2375
  const description = Tool.getDescription(tool)
2376
- const parameters = yield* tryJsonSchema(tool.parametersSchema, "prepareTools")
2376
+ const parameters = yield* tryToolJsonSchema(tool, "prepareTools")
2377
2377
  tools.push({
2378
2378
  type: "function",
2379
2379
  name: tool.name,
@@ -2594,6 +2594,12 @@ const tryJsonSchema = <S extends Schema.Top>(schema: S, method: string) =>
2594
2594
  catch: (error) => unsupportedSchemaError(error, method)
2595
2595
  })
2596
2596
 
2597
+ const tryToolJsonSchema = <T extends Tool.Any>(tool: T, method: string) =>
2598
+ Effect.try({
2599
+ try: () => Tool.getJsonSchema(tool, { transformer: toCodecOpenAI }),
2600
+ catch: (error) => unsupportedSchemaError(error, method)
2601
+ })
2602
+
2597
2603
  const prepareResponseFormat = Effect.fnUntraced(function*({ config, options }: {
2598
2604
  readonly config: typeof Config.Service
2599
2605
  readonly options: LanguageModel.ProviderOptions