@effect/ai-openai 4.0.0-beta.32 → 4.0.0-beta.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/OpenAiClient.d.ts +53 -7
- package/dist/OpenAiClient.d.ts.map +1 -1
- package/dist/OpenAiClient.js +144 -7
- package/dist/OpenAiClient.js.map +1 -1
- package/dist/OpenAiLanguageModel.d.ts.map +1 -1
- package/dist/OpenAiLanguageModel.js +9 -5
- package/dist/OpenAiLanguageModel.js.map +1 -1
- package/package.json +3 -3
- package/src/OpenAiClient.ts +251 -37
- package/src/OpenAiLanguageModel.ts +7 -5
package/dist/OpenAiClient.d.ts
CHANGED
|
@@ -4,9 +4,11 @@ import * as Layer from "effect/Layer";
|
|
|
4
4
|
import * as Redacted from "effect/Redacted";
|
|
5
5
|
import * as ServiceMap from "effect/ServiceMap";
|
|
6
6
|
import * as Stream from "effect/Stream";
|
|
7
|
-
import
|
|
7
|
+
import * as AiError from "effect/unstable/ai/AiError";
|
|
8
|
+
import * as ResponseIdTracker from "effect/unstable/ai/ResponseIdTracker";
|
|
8
9
|
import * as HttpClient from "effect/unstable/http/HttpClient";
|
|
9
|
-
import
|
|
10
|
+
import * as HttpClientResponse from "effect/unstable/http/HttpClientResponse";
|
|
11
|
+
import * as Socket from "effect/unstable/socket/Socket";
|
|
10
12
|
import * as Generated from "./Generated.ts";
|
|
11
13
|
/**
|
|
12
14
|
* The OpenAI client interface.
|
|
@@ -22,14 +24,11 @@ export interface Service {
|
|
|
22
24
|
/**
|
|
23
25
|
* Create a response using the OpenAI responses endpoint.
|
|
24
26
|
*/
|
|
25
|
-
readonly createResponse: (options: typeof Generated.CreateResponse.Encoded) => Effect.Effect<[
|
|
26
|
-
body: typeof Generated.Response.Type,
|
|
27
|
-
response: HttpClientResponse.HttpClientResponse
|
|
28
|
-
], AiError.AiError>;
|
|
27
|
+
readonly createResponse: (options: typeof Generated.CreateResponse.Encoded) => Effect.Effect<readonly [body: typeof Generated.Response.Type, response: HttpClientResponse.HttpClientResponse], AiError.AiError>;
|
|
29
28
|
/**
|
|
30
29
|
* Create a streaming response using the OpenAI responses endpoint.
|
|
31
30
|
*/
|
|
32
|
-
readonly createResponseStream: (options: Omit<typeof Generated.CreateResponse.Encoded, "stream">) => Effect.Effect<[
|
|
31
|
+
readonly createResponseStream: (options: Omit<typeof Generated.CreateResponse.Encoded, "stream">) => Effect.Effect<readonly [
|
|
33
32
|
response: HttpClientResponse.HttpClientResponse,
|
|
34
33
|
stream: Stream.Stream<typeof Generated.ResponseStreamEvent.Type, AiError.AiError>
|
|
35
34
|
], AiError.AiError>;
|
|
@@ -120,5 +119,52 @@ export declare const layerConfig: (options?: {
|
|
|
120
119
|
*/
|
|
121
120
|
readonly transformClient?: ((client: HttpClient.HttpClient) => HttpClient.HttpClient) | undefined;
|
|
122
121
|
}) => Layer.Layer<OpenAiClient, Config.ConfigError, HttpClient.HttpClient>;
|
|
122
|
+
/**
|
|
123
|
+
* @since 1.0.0
|
|
124
|
+
* @category Events
|
|
125
|
+
*/
|
|
126
|
+
export type ResponseStreamEvent = typeof Generated.ResponseStreamEvent.Type;
|
|
127
|
+
declare const OpenAiSocket_base: ServiceMap.ServiceClass<OpenAiSocket, "@effect/ai-openai/OpenAiClient/OpenAiSocket", {
|
|
128
|
+
/**
|
|
129
|
+
* Create a streaming response using the OpenAI responses endpoint.
|
|
130
|
+
*/
|
|
131
|
+
readonly createResponseStream: (options: Omit<typeof Generated.CreateResponse.Encoded, "stream">) => Effect.Effect<readonly [response: HttpClientResponse.HttpClientResponse, stream: Stream.Stream<ResponseStreamEvent, AiError.AiError>], AiError.AiError>;
|
|
132
|
+
}>;
|
|
133
|
+
/**
|
|
134
|
+
* @since 1.0.0
|
|
135
|
+
* @category Websocket mode
|
|
136
|
+
*/
|
|
137
|
+
export declare class OpenAiSocket extends OpenAiSocket_base {
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Uses OpenAI's websocket mode for all responses within the provided effect.
|
|
141
|
+
*
|
|
142
|
+
* Note: This only works with the following WebSocket constructor layers:
|
|
143
|
+
*
|
|
144
|
+
* - `NodeSocket.layerWebSocketConstructorWS`
|
|
145
|
+
* - `BunSocket.layerWebSocketConstructor`
|
|
146
|
+
*
|
|
147
|
+
* This is because it needs to use non-standard options for setting the
|
|
148
|
+
* Authorization header.
|
|
149
|
+
*
|
|
150
|
+
* @since 1.0.0
|
|
151
|
+
* @category Websocket mode
|
|
152
|
+
*/
|
|
153
|
+
export declare const withWebSocketMode: <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<R, OpenAiSocket | ResponseIdTracker.ResponseIdTracker> | OpenAiClient | Socket.WebSocketConstructor>;
|
|
154
|
+
/**
|
|
155
|
+
* Uses OpenAI's websocket mode for all responses that use the Layer.
|
|
156
|
+
*
|
|
157
|
+
* Note: This only works with the following WebSocket constructor layers:
|
|
158
|
+
*
|
|
159
|
+
* - `NodeSocket.layerWebSocketConstructorWS`
|
|
160
|
+
* - `BunSocket.layerWebSocketConstructor`
|
|
161
|
+
*
|
|
162
|
+
* This is because it needs to use non-standard options for setting the
|
|
163
|
+
* Authorization header.
|
|
164
|
+
*
|
|
165
|
+
* @since 1.0.0
|
|
166
|
+
* @category Websocket mode
|
|
167
|
+
*/
|
|
168
|
+
export declare const layerWebSocketMode: Layer.Layer<OpenAiSocket | ResponseIdTracker.ResponseIdTracker, never, OpenAiClient | Socket.WebSocketConstructor>;
|
|
123
169
|
export {};
|
|
124
170
|
//# sourceMappingURL=OpenAiClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAiClient.d.ts","sourceRoot":"","sources":["../src/OpenAiClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OpenAiClient.d.ts","sourceRoot":"","sources":["../src/OpenAiClient.ts"],"names":[],"mappings":"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"}
|
package/dist/OpenAiClient.js
CHANGED
|
@@ -7,18 +7,30 @@
|
|
|
7
7
|
* @since 1.0.0
|
|
8
8
|
*/
|
|
9
9
|
import * as Array from "effect/Array";
|
|
10
|
+
import * as Cause from "effect/Cause";
|
|
10
11
|
import * as Effect from "effect/Effect";
|
|
11
12
|
import { identity } from "effect/Function";
|
|
13
|
+
import * as Function from "effect/Function";
|
|
12
14
|
import * as Layer from "effect/Layer";
|
|
13
15
|
import * as Predicate from "effect/Predicate";
|
|
16
|
+
import * as Queue from "effect/Queue";
|
|
17
|
+
import * as RcRef from "effect/RcRef";
|
|
14
18
|
import * as Redacted from "effect/Redacted";
|
|
19
|
+
import * as Schedule from "effect/Schedule";
|
|
20
|
+
import * as Schema from "effect/Schema";
|
|
21
|
+
import * as Scope from "effect/Scope";
|
|
22
|
+
import * as Semaphore from "effect/Semaphore";
|
|
15
23
|
import * as ServiceMap from "effect/ServiceMap";
|
|
16
24
|
import * as Stream from "effect/Stream";
|
|
25
|
+
import * as AiError from "effect/unstable/ai/AiError";
|
|
26
|
+
import * as ResponseIdTracker from "effect/unstable/ai/ResponseIdTracker";
|
|
17
27
|
import * as Sse from "effect/unstable/encoding/Sse";
|
|
18
28
|
import * as Headers from "effect/unstable/http/Headers";
|
|
19
29
|
import * as HttpBody from "effect/unstable/http/HttpBody";
|
|
20
30
|
import * as HttpClient from "effect/unstable/http/HttpClient";
|
|
21
31
|
import * as HttpClientRequest from "effect/unstable/http/HttpClientRequest";
|
|
32
|
+
import * as HttpClientResponse from "effect/unstable/http/HttpClientResponse";
|
|
33
|
+
import * as Socket from "effect/unstable/socket/Socket";
|
|
22
34
|
import * as Generated from "./Generated.js";
|
|
23
35
|
import * as Errors from "./internal/errors.js";
|
|
24
36
|
import { OpenAiConfig } from "./OpenAiConfig.js";
|
|
@@ -47,7 +59,8 @@ const RedactedOpenAiHeaders = {
|
|
|
47
59
|
*/
|
|
48
60
|
export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
|
|
49
61
|
const baseClient = yield* HttpClient.HttpClient;
|
|
50
|
-
const
|
|
62
|
+
const apiUrl = options.apiUrl ?? "https://api.openai.com/v1";
|
|
63
|
+
const httpClient = baseClient.pipe(HttpClient.mapRequest(Function.flow(HttpClientRequest.prependUrl(apiUrl), options.apiKey ? HttpClientRequest.bearerToken(Redacted.value(options.apiKey)) : identity, options.organizationId ? HttpClientRequest.setHeader(RedactedOpenAiHeaders.OpenAiOrganization, Redacted.value(options.organizationId)) : identity, options.projectId ? HttpClientRequest.setHeader(RedactedOpenAiHeaders.OpenAiProject, Redacted.value(options.projectId)) : identity, HttpClientRequest.acceptJson)), options.transformClient ? options.transformClient : identity);
|
|
51
64
|
const httpClientOk = HttpClient.filterStatusOk(httpClient);
|
|
52
65
|
const client = Generated.make(httpClient, {
|
|
53
66
|
transformClient: Effect.fnUntraced(function* (client) {
|
|
@@ -76,12 +89,16 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
|
|
|
76
89
|
}));
|
|
77
90
|
return [response, stream];
|
|
78
91
|
};
|
|
79
|
-
const createResponseStream = payload =>
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
92
|
+
const createResponseStream = payload => Effect.servicesWith(services => {
|
|
93
|
+
const socket = ServiceMap.getOrUndefined(services, OpenAiSocket);
|
|
94
|
+
if (socket) return socket.createResponseStream(payload);
|
|
95
|
+
return httpClientOk.execute(HttpClientRequest.post("/responses", {
|
|
96
|
+
body: HttpBody.jsonUnsafe({
|
|
97
|
+
...payload,
|
|
98
|
+
stream: true
|
|
99
|
+
})
|
|
100
|
+
})).pipe(Effect.map(buildResponseStream), Effect.catchTag("HttpClientError", error => Errors.mapHttpClientError(error, "createResponseStream")));
|
|
101
|
+
});
|
|
85
102
|
const createEmbedding = payload => client.createEmbedding({
|
|
86
103
|
payload
|
|
87
104
|
}).pipe(Effect.catchTags({
|
|
@@ -125,4 +142,124 @@ export const layerConfig = options => Layer.effect(OpenAiClient, Effect.gen(func
|
|
|
125
142
|
transformClient: options?.transformClient
|
|
126
143
|
});
|
|
127
144
|
}));
|
|
145
|
+
/**
|
|
146
|
+
* @since 1.0.0
|
|
147
|
+
* @category Websocket mode
|
|
148
|
+
*/
|
|
149
|
+
export class OpenAiSocket extends /*#__PURE__*/ServiceMap.Service()("@effect/ai-openai/OpenAiClient/OpenAiSocket") {}
|
|
150
|
+
const makeSocket = /*#__PURE__*/Effect.gen(function* () {
|
|
151
|
+
const client = yield* OpenAiClient;
|
|
152
|
+
const tracker = yield* ResponseIdTracker.make;
|
|
153
|
+
const request = yield* Effect.orDie(client.client.httpClient.preprocess(HttpClientRequest.post("/responses")));
|
|
154
|
+
const socket = yield* Socket.makeWebSocket(request.url.replace(/^http/, "ws")).pipe(Effect.updateService(Socket.WebSocketConstructor, f => url => f(url, {
|
|
155
|
+
headers: request.headers
|
|
156
|
+
})));
|
|
157
|
+
const queueRef = yield* RcRef.make({
|
|
158
|
+
idleTimeToLive: 60_000,
|
|
159
|
+
acquire: Effect.gen(function* () {
|
|
160
|
+
const write = yield* socket.writer;
|
|
161
|
+
let currentQueue = null;
|
|
162
|
+
const send = (queue, message) => Effect.suspend(() => {
|
|
163
|
+
currentQueue = queue;
|
|
164
|
+
return write(JSON.stringify({
|
|
165
|
+
type: "response.create",
|
|
166
|
+
...message
|
|
167
|
+
}));
|
|
168
|
+
}).pipe(Effect.mapError(_error => AiError.make({
|
|
169
|
+
module: "OpenAiClient",
|
|
170
|
+
method: "createResponseStream",
|
|
171
|
+
reason: new AiError.NetworkError({
|
|
172
|
+
reason: "TransportError",
|
|
173
|
+
request: {
|
|
174
|
+
method: "POST",
|
|
175
|
+
url: request.url,
|
|
176
|
+
urlParams: [],
|
|
177
|
+
hash: undefined,
|
|
178
|
+
headers: request.headers
|
|
179
|
+
},
|
|
180
|
+
description: "Failed to send message over WebSocket"
|
|
181
|
+
})
|
|
182
|
+
})));
|
|
183
|
+
const decoder = new TextDecoder();
|
|
184
|
+
const decode = Schema.decodeUnknownSync(Schema.fromJsonString(Generated.ResponseStreamEvent));
|
|
185
|
+
yield* socket.runRaw(msg => {
|
|
186
|
+
if (!currentQueue) return;
|
|
187
|
+
const text = typeof msg === "string" ? msg : decoder.decode(msg);
|
|
188
|
+
try {
|
|
189
|
+
Queue.offerUnsafe(currentQueue, decode(text));
|
|
190
|
+
} catch {}
|
|
191
|
+
}).pipe(Effect.catchCause(cause => {
|
|
192
|
+
tracker.clearUnsafe();
|
|
193
|
+
return currentQueue ? Queue.fail(currentQueue, AiError.make({
|
|
194
|
+
module: "OpenAiClient",
|
|
195
|
+
method: "createResponseStream",
|
|
196
|
+
reason: new AiError.NetworkError({
|
|
197
|
+
reason: "TransportError",
|
|
198
|
+
request: {
|
|
199
|
+
method: "POST",
|
|
200
|
+
url: request.url,
|
|
201
|
+
urlParams: [],
|
|
202
|
+
hash: undefined,
|
|
203
|
+
headers: request.headers
|
|
204
|
+
},
|
|
205
|
+
description: Cause.pretty(cause)
|
|
206
|
+
})
|
|
207
|
+
})) : Effect.void;
|
|
208
|
+
}), Effect.retry(Schedule.exponential(100, 1.5).pipe(Schedule.either(Schedule.spaced({
|
|
209
|
+
seconds: 5
|
|
210
|
+
})), Schedule.jittered)), Effect.orDie, Effect.forkScoped);
|
|
211
|
+
return {
|
|
212
|
+
send
|
|
213
|
+
};
|
|
214
|
+
})
|
|
215
|
+
});
|
|
216
|
+
// Websocket mode only allows one request at a time
|
|
217
|
+
const semaphore = Semaphore.makeUnsafe(1);
|
|
218
|
+
return OpenAiSocket.serviceMap({
|
|
219
|
+
createResponseStream(options) {
|
|
220
|
+
const stream = Effect.gen(function* () {
|
|
221
|
+
yield* Effect.acquireRelease(semaphore.take(1), () => semaphore.release(1));
|
|
222
|
+
const {
|
|
223
|
+
send
|
|
224
|
+
} = yield* RcRef.get(queueRef);
|
|
225
|
+
const incoming = yield* Queue.unbounded();
|
|
226
|
+
yield* Effect.forkScoped(send(incoming, options), {
|
|
227
|
+
startImmediately: true
|
|
228
|
+
});
|
|
229
|
+
return Stream.fromQueue(incoming).pipe(Stream.takeUntil(e => e.type === "response.completed" || e.type === "response.incomplete"));
|
|
230
|
+
}).pipe(Stream.unwrap);
|
|
231
|
+
return Effect.succeed([HttpClientResponse.fromWeb(request, new Response()), stream]);
|
|
232
|
+
}
|
|
233
|
+
}).pipe(ServiceMap.add(ResponseIdTracker.ResponseIdTracker, tracker));
|
|
234
|
+
});
|
|
235
|
+
/**
|
|
236
|
+
* Uses OpenAI's websocket mode for all responses within the provided effect.
|
|
237
|
+
*
|
|
238
|
+
* Note: This only works with the following WebSocket constructor layers:
|
|
239
|
+
*
|
|
240
|
+
* - `NodeSocket.layerWebSocketConstructorWS`
|
|
241
|
+
* - `BunSocket.layerWebSocketConstructor`
|
|
242
|
+
*
|
|
243
|
+
* This is because it needs to use non-standard options for setting the
|
|
244
|
+
* Authorization header.
|
|
245
|
+
*
|
|
246
|
+
* @since 1.0.0
|
|
247
|
+
* @category Websocket mode
|
|
248
|
+
*/
|
|
249
|
+
export const withWebSocketMode = effect => Effect.scopedWith(scope => Effect.flatMap(Scope.provide(makeSocket, scope), services => Effect.provideServices(effect, services)));
|
|
250
|
+
/**
|
|
251
|
+
* Uses OpenAI's websocket mode for all responses that use the Layer.
|
|
252
|
+
*
|
|
253
|
+
* Note: This only works with the following WebSocket constructor layers:
|
|
254
|
+
*
|
|
255
|
+
* - `NodeSocket.layerWebSocketConstructorWS`
|
|
256
|
+
* - `BunSocket.layerWebSocketConstructor`
|
|
257
|
+
*
|
|
258
|
+
* This is because it needs to use non-standard options for setting the
|
|
259
|
+
* Authorization header.
|
|
260
|
+
*
|
|
261
|
+
* @since 1.0.0
|
|
262
|
+
* @category Websocket mode
|
|
263
|
+
*/
|
|
264
|
+
export const layerWebSocketMode = /*#__PURE__*/Layer.effectServices(makeSocket);
|
|
128
265
|
//# sourceMappingURL=OpenAiClient.js.map
|
package/dist/OpenAiClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAiClient.js","names":["Array","Effect","identity","Layer","Predicate","Redacted","ServiceMap","Stream","Sse","Headers","HttpBody","HttpClient","HttpClientRequest","Generated","Errors","OpenAiConfig","OpenAiClient","Service","RedactedOpenAiHeaders","OpenAiOrganization","OpenAiProject","make","fnUntraced","options","baseClient","httpClient","pipe","mapRequest","request","prependUrl","apiUrl","isNotUndefined","apiKey","bearerToken","value","organizationId","setHeader","projectId","acceptJson","transformClient","httpClientOk","filterStatusOk","client","config","getOrUndefined","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","execute","post","body","jsonUnsafe","catchTag","createEmbedding","of","updateService","CurrentRedactedNames","appendAll","Object","values","layer","effect","layerConfig","gen","undefined"],"sources":["../src/OpenAiClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"OpenAiClient.js","names":["Array","Cause","Effect","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","decoder","TextDecoder","decode","decodeUnknownSync","fromJsonString","runRaw","msg","text","offerUnsafe","catchCause","cause","clearUnsafe","pretty","void","retry","exponential","either","spaced","seconds","jittered","forkScoped","semaphore","makeUnsafe","serviceMap","acquireRelease","take","release","get","incoming","unbounded","startImmediately","fromQueue","e","unwrap","succeed","fromWeb","Response","add","withWebSocketMode","scopedWith","scope","flatMap","provide","provideServices","layerWebSocketMode","effectServices"],"sources":["../src/OpenAiClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAiLanguageModel.d.ts","sourceRoot":"","sources":["../src/OpenAiLanguageModel.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"OpenAiLanguageModel.d.ts","sourceRoot":"","sources":["../src/OpenAiLanguageModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -114,11 +114,14 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
114
114
|
verbosity: config.text?.verbosity ?? null,
|
|
115
115
|
format: responseFormat
|
|
116
116
|
},
|
|
117
|
-
...(
|
|
117
|
+
...(tools ? {
|
|
118
118
|
tools
|
|
119
119
|
} : undefined),
|
|
120
|
-
...(
|
|
120
|
+
...(toolChoice ? {
|
|
121
121
|
tool_choice: toolChoice
|
|
122
|
+
} : undefined),
|
|
123
|
+
...(options.previousResponseId ? {
|
|
124
|
+
previous_response_id: options.previousResponseId
|
|
122
125
|
} : undefined)
|
|
123
126
|
};
|
|
124
127
|
return request;
|
|
@@ -210,14 +213,15 @@ const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* ({
|
|
|
210
213
|
if (config.store === false && capabilities.isReasoningModel) {
|
|
211
214
|
include.add("reasoning.encrypted_content");
|
|
212
215
|
}
|
|
213
|
-
if (
|
|
216
|
+
if (codeInterpreterTool) {
|
|
214
217
|
include.add("code_interpreter_call.outputs");
|
|
215
218
|
}
|
|
216
|
-
if (
|
|
219
|
+
if (webSearchTool || webSearchPreviewTool) {
|
|
217
220
|
include.add("web_search_call.action.sources");
|
|
218
221
|
}
|
|
219
222
|
const messages = [];
|
|
220
|
-
|
|
223
|
+
const prompt = options.incrementalPrompt ?? options.prompt;
|
|
224
|
+
for (const message of prompt.content) {
|
|
221
225
|
switch (message.role) {
|
|
222
226
|
case "system":
|
|
223
227
|
{
|
|
@@ -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","isNotUndefined","undefined","tool_choice","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","top_logprobs","add","store","isReasoningModel","message","prompt","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","activeToolCalls","mapEffect","event","item","output_index","applyPatch","hasDiff","endEmitted","delta","escapeJSONDelta","path","codeInterpreter","providerName","toolCall","diff","toolArgs","set","slice","reasoningPart","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","itemId","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","activeToolCalls","mapEffect","event","item","output_index","applyPatch","hasDiff","endEmitted","delta","escapeJSONDelta","path","codeInterpreter","providerName","toolCall","diff","toolArgs","set","slice","reasoningPart","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","itemId","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":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/ai-openai",
|
|
3
|
-
"version": "4.0.0-beta.
|
|
3
|
+
"version": "4.0.0-beta.33",
|
|
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.
|
|
46
|
+
"effect": "^4.0.0-beta.33"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
49
|
-
"effect": "^4.0.0-beta.
|
|
49
|
+
"effect": "^4.0.0-beta.33"
|
|
50
50
|
},
|
|
51
51
|
"scripts": {
|
|
52
52
|
"codegen": "effect-utils codegen",
|
package/src/OpenAiClient.ts
CHANGED
|
@@ -7,21 +7,31 @@
|
|
|
7
7
|
* @since 1.0.0
|
|
8
8
|
*/
|
|
9
9
|
import * as Array from "effect/Array"
|
|
10
|
+
import * as Cause from "effect/Cause"
|
|
10
11
|
import type * as Config from "effect/Config"
|
|
11
12
|
import * as Effect from "effect/Effect"
|
|
12
13
|
import { identity } from "effect/Function"
|
|
14
|
+
import * as Function from "effect/Function"
|
|
13
15
|
import * as Layer from "effect/Layer"
|
|
14
16
|
import * as Predicate from "effect/Predicate"
|
|
17
|
+
import * as Queue from "effect/Queue"
|
|
18
|
+
import * as RcRef from "effect/RcRef"
|
|
15
19
|
import * as Redacted from "effect/Redacted"
|
|
20
|
+
import * as Schedule from "effect/Schedule"
|
|
21
|
+
import * as Schema from "effect/Schema"
|
|
22
|
+
import * as Scope from "effect/Scope"
|
|
23
|
+
import * as Semaphore from "effect/Semaphore"
|
|
16
24
|
import * as ServiceMap from "effect/ServiceMap"
|
|
17
25
|
import * as Stream from "effect/Stream"
|
|
18
|
-
import
|
|
26
|
+
import * as AiError from "effect/unstable/ai/AiError"
|
|
27
|
+
import * as ResponseIdTracker from "effect/unstable/ai/ResponseIdTracker"
|
|
19
28
|
import * as Sse from "effect/unstable/encoding/Sse"
|
|
20
29
|
import * as Headers from "effect/unstable/http/Headers"
|
|
21
30
|
import * as HttpBody from "effect/unstable/http/HttpBody"
|
|
22
31
|
import * as HttpClient from "effect/unstable/http/HttpClient"
|
|
23
32
|
import * as HttpClientRequest from "effect/unstable/http/HttpClientRequest"
|
|
24
|
-
import
|
|
33
|
+
import * as HttpClientResponse from "effect/unstable/http/HttpClientResponse"
|
|
34
|
+
import * as Socket from "effect/unstable/socket/Socket"
|
|
25
35
|
import * as Generated from "./Generated.ts"
|
|
26
36
|
import * as Errors from "./internal/errors.ts"
|
|
27
37
|
import { OpenAiConfig } from "./OpenAiConfig.ts"
|
|
@@ -48,7 +58,7 @@ export interface Service {
|
|
|
48
58
|
readonly createResponse: (
|
|
49
59
|
options: typeof Generated.CreateResponse.Encoded
|
|
50
60
|
) => Effect.Effect<
|
|
51
|
-
[body: typeof Generated.Response.Type, response: HttpClientResponse.HttpClientResponse],
|
|
61
|
+
readonly [body: typeof Generated.Response.Type, response: HttpClientResponse.HttpClientResponse],
|
|
52
62
|
AiError.AiError
|
|
53
63
|
>
|
|
54
64
|
|
|
@@ -58,7 +68,7 @@ export interface Service {
|
|
|
58
68
|
readonly createResponseStream: (
|
|
59
69
|
options: Omit<typeof Generated.CreateResponse.Encoded, "stream">
|
|
60
70
|
) => Effect.Effect<
|
|
61
|
-
[
|
|
71
|
+
readonly [
|
|
62
72
|
response: HttpClientResponse.HttpClientResponse,
|
|
63
73
|
stream: Stream.Stream<typeof Generated.ResponseStreamEvent.Type, AiError.AiError>
|
|
64
74
|
],
|
|
@@ -142,32 +152,33 @@ const RedactedOpenAiHeaders = {
|
|
|
142
152
|
* @category constructors
|
|
143
153
|
*/
|
|
144
154
|
export const make = Effect.fnUntraced(
|
|
145
|
-
function*(
|
|
155
|
+
function*(
|
|
156
|
+
options: Options
|
|
157
|
+
): Effect.fn.Return<Service, never, HttpClient.HttpClient> {
|
|
146
158
|
const baseClient = yield* HttpClient.HttpClient
|
|
159
|
+
const apiUrl = options.apiUrl ?? "https://api.openai.com/v1"
|
|
147
160
|
|
|
148
161
|
const httpClient = baseClient.pipe(
|
|
149
|
-
HttpClient.mapRequest((
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
),
|
|
170
|
-
Predicate.isNotUndefined(options.transformClient)
|
|
162
|
+
HttpClient.mapRequest(Function.flow(
|
|
163
|
+
HttpClientRequest.prependUrl(apiUrl),
|
|
164
|
+
options.apiKey
|
|
165
|
+
? HttpClientRequest.bearerToken(Redacted.value(options.apiKey))
|
|
166
|
+
: identity,
|
|
167
|
+
options.organizationId
|
|
168
|
+
? HttpClientRequest.setHeader(
|
|
169
|
+
RedactedOpenAiHeaders.OpenAiOrganization,
|
|
170
|
+
Redacted.value(options.organizationId)
|
|
171
|
+
)
|
|
172
|
+
: identity,
|
|
173
|
+
options.projectId
|
|
174
|
+
? HttpClientRequest.setHeader(
|
|
175
|
+
RedactedOpenAiHeaders.OpenAiProject,
|
|
176
|
+
Redacted.value(options.projectId)
|
|
177
|
+
)
|
|
178
|
+
: identity,
|
|
179
|
+
HttpClientRequest.acceptJson
|
|
180
|
+
)),
|
|
181
|
+
options.transformClient
|
|
171
182
|
? options.transformClient
|
|
172
183
|
: identity
|
|
173
184
|
)
|
|
@@ -222,17 +233,21 @@ export const make = Effect.fnUntraced(
|
|
|
222
233
|
}
|
|
223
234
|
|
|
224
235
|
const createResponseStream: Service["createResponseStream"] = (payload) =>
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
(
|
|
236
|
+
Effect.servicesWith((services) => {
|
|
237
|
+
const socket = ServiceMap.getOrUndefined(services, OpenAiSocket)
|
|
238
|
+
if (socket) return socket.createResponseStream(payload)
|
|
239
|
+
return httpClientOk.execute(
|
|
240
|
+
HttpClientRequest.post("/responses", {
|
|
241
|
+
body: HttpBody.jsonUnsafe({ ...payload, stream: true })
|
|
242
|
+
})
|
|
243
|
+
).pipe(
|
|
244
|
+
Effect.map(buildResponseStream),
|
|
245
|
+
Effect.catchTag(
|
|
246
|
+
"HttpClientError",
|
|
247
|
+
(error) => Errors.mapHttpClientError(error, "createResponseStream")
|
|
248
|
+
)
|
|
234
249
|
)
|
|
235
|
-
)
|
|
250
|
+
})
|
|
236
251
|
|
|
237
252
|
const createEmbedding = (
|
|
238
253
|
payload: typeof Generated.CreateEmbeddingRequest.Encoded
|
|
@@ -327,3 +342,202 @@ export const layerConfig = (options?: {
|
|
|
327
342
|
})
|
|
328
343
|
})
|
|
329
344
|
)
|
|
345
|
+
|
|
346
|
+
// =============================================================================
|
|
347
|
+
// Websocket mode
|
|
348
|
+
// =============================================================================
|
|
349
|
+
|
|
350
|
+
/**
|
|
351
|
+
* @since 1.0.0
|
|
352
|
+
* @category Events
|
|
353
|
+
*/
|
|
354
|
+
export type ResponseStreamEvent = typeof Generated.ResponseStreamEvent.Type
|
|
355
|
+
|
|
356
|
+
/**
|
|
357
|
+
* @since 1.0.0
|
|
358
|
+
* @category Websocket mode
|
|
359
|
+
*/
|
|
360
|
+
export class OpenAiSocket extends ServiceMap.Service<OpenAiSocket, {
|
|
361
|
+
/**
|
|
362
|
+
* Create a streaming response using the OpenAI responses endpoint.
|
|
363
|
+
*/
|
|
364
|
+
readonly createResponseStream: (
|
|
365
|
+
options: Omit<typeof Generated.CreateResponse.Encoded, "stream">
|
|
366
|
+
) => Effect.Effect<
|
|
367
|
+
readonly [
|
|
368
|
+
response: HttpClientResponse.HttpClientResponse,
|
|
369
|
+
stream: Stream.Stream<ResponseStreamEvent, AiError.AiError>
|
|
370
|
+
],
|
|
371
|
+
AiError.AiError
|
|
372
|
+
>
|
|
373
|
+
}>()("@effect/ai-openai/OpenAiClient/OpenAiSocket") {}
|
|
374
|
+
|
|
375
|
+
const makeSocket = Effect.gen(function*() {
|
|
376
|
+
const client = yield* OpenAiClient
|
|
377
|
+
const tracker = yield* ResponseIdTracker.make
|
|
378
|
+
const request = yield* Effect.orDie(client.client.httpClient.preprocess(HttpClientRequest.post("/responses")))
|
|
379
|
+
|
|
380
|
+
const socket = yield* Socket.makeWebSocket(request.url.replace(/^http/, "ws")).pipe(
|
|
381
|
+
Effect.updateService(Socket.WebSocketConstructor, (f) => (url) =>
|
|
382
|
+
f(url, {
|
|
383
|
+
headers: request.headers
|
|
384
|
+
} as any))
|
|
385
|
+
)
|
|
386
|
+
|
|
387
|
+
const queueRef = yield* RcRef.make({
|
|
388
|
+
idleTimeToLive: 60_000,
|
|
389
|
+
acquire: Effect.gen(function*() {
|
|
390
|
+
const write = yield* socket.writer
|
|
391
|
+
|
|
392
|
+
let currentQueue: Queue.Enqueue<ResponseStreamEvent, AiError.AiError | Cause.Done> | null = null
|
|
393
|
+
const send = (
|
|
394
|
+
queue: Queue.Enqueue<ResponseStreamEvent, AiError.AiError | Cause.Done>,
|
|
395
|
+
message: typeof Generated.CreateResponse.Encoded
|
|
396
|
+
) =>
|
|
397
|
+
Effect.suspend(() => {
|
|
398
|
+
currentQueue = queue
|
|
399
|
+
return write(JSON.stringify({
|
|
400
|
+
type: "response.create",
|
|
401
|
+
...message
|
|
402
|
+
}))
|
|
403
|
+
}).pipe(
|
|
404
|
+
Effect.mapError((_error) =>
|
|
405
|
+
AiError.make({
|
|
406
|
+
module: "OpenAiClient",
|
|
407
|
+
method: "createResponseStream",
|
|
408
|
+
reason: new AiError.NetworkError({
|
|
409
|
+
reason: "TransportError",
|
|
410
|
+
request: {
|
|
411
|
+
method: "POST",
|
|
412
|
+
url: request.url,
|
|
413
|
+
urlParams: [],
|
|
414
|
+
hash: undefined,
|
|
415
|
+
headers: request.headers
|
|
416
|
+
},
|
|
417
|
+
description: "Failed to send message over WebSocket"
|
|
418
|
+
})
|
|
419
|
+
})
|
|
420
|
+
)
|
|
421
|
+
)
|
|
422
|
+
|
|
423
|
+
const decoder = new TextDecoder()
|
|
424
|
+
const decode = Schema.decodeUnknownSync(Schema.fromJsonString(Generated.ResponseStreamEvent))
|
|
425
|
+
yield* socket.runRaw((msg) => {
|
|
426
|
+
if (!currentQueue) return
|
|
427
|
+
const text = typeof msg === "string" ? msg : decoder.decode(msg)
|
|
428
|
+
try {
|
|
429
|
+
Queue.offerUnsafe(currentQueue, decode(text))
|
|
430
|
+
} catch {}
|
|
431
|
+
}).pipe(
|
|
432
|
+
Effect.catchCause((cause) => {
|
|
433
|
+
tracker.clearUnsafe()
|
|
434
|
+
return currentQueue ?
|
|
435
|
+
Queue.fail(
|
|
436
|
+
currentQueue,
|
|
437
|
+
AiError.make({
|
|
438
|
+
module: "OpenAiClient",
|
|
439
|
+
method: "createResponseStream",
|
|
440
|
+
reason: new AiError.NetworkError({
|
|
441
|
+
reason: "TransportError",
|
|
442
|
+
request: {
|
|
443
|
+
method: "POST",
|
|
444
|
+
url: request.url,
|
|
445
|
+
urlParams: [],
|
|
446
|
+
hash: undefined,
|
|
447
|
+
headers: request.headers
|
|
448
|
+
},
|
|
449
|
+
description: Cause.pretty(cause)
|
|
450
|
+
})
|
|
451
|
+
})
|
|
452
|
+
) :
|
|
453
|
+
Effect.void
|
|
454
|
+
}),
|
|
455
|
+
Effect.retry(
|
|
456
|
+
Schedule.exponential(100, 1.5).pipe(
|
|
457
|
+
Schedule.either(Schedule.spaced({ seconds: 5 })),
|
|
458
|
+
Schedule.jittered
|
|
459
|
+
)
|
|
460
|
+
),
|
|
461
|
+
Effect.orDie,
|
|
462
|
+
Effect.forkScoped
|
|
463
|
+
)
|
|
464
|
+
|
|
465
|
+
return { send } as const
|
|
466
|
+
})
|
|
467
|
+
})
|
|
468
|
+
|
|
469
|
+
// Websocket mode only allows one request at a time
|
|
470
|
+
const semaphore = Semaphore.makeUnsafe(1)
|
|
471
|
+
|
|
472
|
+
return OpenAiSocket.serviceMap({
|
|
473
|
+
createResponseStream(options) {
|
|
474
|
+
const stream = Effect.gen(function*() {
|
|
475
|
+
yield* Effect.acquireRelease(
|
|
476
|
+
semaphore.take(1),
|
|
477
|
+
() => semaphore.release(1)
|
|
478
|
+
)
|
|
479
|
+
const { send } = yield* RcRef.get(queueRef)
|
|
480
|
+
const incoming = yield* Queue.unbounded<ResponseStreamEvent, AiError.AiError | Cause.Done>()
|
|
481
|
+
yield* Effect.forkScoped(send(incoming, options), { startImmediately: true })
|
|
482
|
+
return Stream.fromQueue(incoming).pipe(
|
|
483
|
+
Stream.takeUntil((e) => e.type === "response.completed" || e.type === "response.incomplete")
|
|
484
|
+
)
|
|
485
|
+
}).pipe(Stream.unwrap)
|
|
486
|
+
|
|
487
|
+
return Effect.succeed([
|
|
488
|
+
HttpClientResponse.fromWeb(request, new Response()),
|
|
489
|
+
stream
|
|
490
|
+
])
|
|
491
|
+
}
|
|
492
|
+
}).pipe(
|
|
493
|
+
ServiceMap.add(ResponseIdTracker.ResponseIdTracker, tracker)
|
|
494
|
+
)
|
|
495
|
+
})
|
|
496
|
+
|
|
497
|
+
/**
|
|
498
|
+
* Uses OpenAI's websocket mode for all responses within the provided effect.
|
|
499
|
+
*
|
|
500
|
+
* Note: This only works with the following WebSocket constructor layers:
|
|
501
|
+
*
|
|
502
|
+
* - `NodeSocket.layerWebSocketConstructorWS`
|
|
503
|
+
* - `BunSocket.layerWebSocketConstructor`
|
|
504
|
+
*
|
|
505
|
+
* This is because it needs to use non-standard options for setting the
|
|
506
|
+
* Authorization header.
|
|
507
|
+
*
|
|
508
|
+
* @since 1.0.0
|
|
509
|
+
* @category Websocket mode
|
|
510
|
+
*/
|
|
511
|
+
export const withWebSocketMode = <A, E, R>(
|
|
512
|
+
effect: Effect.Effect<A, E, R>
|
|
513
|
+
): Effect.Effect<
|
|
514
|
+
A,
|
|
515
|
+
E,
|
|
516
|
+
Exclude<R, OpenAiSocket | ResponseIdTracker.ResponseIdTracker> | OpenAiClient | Socket.WebSocketConstructor
|
|
517
|
+
> =>
|
|
518
|
+
Effect.scopedWith((scope) =>
|
|
519
|
+
Effect.flatMap(
|
|
520
|
+
Scope.provide(makeSocket, scope),
|
|
521
|
+
(services) => Effect.provideServices(effect, services)
|
|
522
|
+
)
|
|
523
|
+
)
|
|
524
|
+
|
|
525
|
+
/**
|
|
526
|
+
* Uses OpenAI's websocket mode for all responses that use the Layer.
|
|
527
|
+
*
|
|
528
|
+
* Note: This only works with the following WebSocket constructor layers:
|
|
529
|
+
*
|
|
530
|
+
* - `NodeSocket.layerWebSocketConstructorWS`
|
|
531
|
+
* - `BunSocket.layerWebSocketConstructor`
|
|
532
|
+
*
|
|
533
|
+
* This is because it needs to use non-standard options for setting the
|
|
534
|
+
* Authorization header.
|
|
535
|
+
*
|
|
536
|
+
* @since 1.0.0
|
|
537
|
+
* @category Websocket mode
|
|
538
|
+
*/
|
|
539
|
+
export const layerWebSocketMode: Layer.Layer<
|
|
540
|
+
OpenAiSocket | ResponseIdTracker.ResponseIdTracker,
|
|
541
|
+
never,
|
|
542
|
+
OpenAiClient | Socket.WebSocketConstructor
|
|
543
|
+
> = Layer.effectServices(makeSocket)
|
|
@@ -383,8 +383,9 @@ export const make = Effect.fnUntraced(function*({ model, config: providerConfig
|
|
|
383
383
|
verbosity: config.text?.verbosity ?? null,
|
|
384
384
|
format: responseFormat
|
|
385
385
|
},
|
|
386
|
-
...(
|
|
387
|
-
...(
|
|
386
|
+
...(tools ? { tools } : undefined),
|
|
387
|
+
...(toolChoice ? { tool_choice: toolChoice } : undefined),
|
|
388
|
+
...(options.previousResponseId ? { previous_response_id: options.previousResponseId } : undefined)
|
|
388
389
|
}
|
|
389
390
|
return request
|
|
390
391
|
}
|
|
@@ -550,16 +551,17 @@ const prepareMessages = Effect.fnUntraced(
|
|
|
550
551
|
if (config.store === false && capabilities.isReasoningModel) {
|
|
551
552
|
include.add("reasoning.encrypted_content")
|
|
552
553
|
}
|
|
553
|
-
if (
|
|
554
|
+
if (codeInterpreterTool) {
|
|
554
555
|
include.add("code_interpreter_call.outputs")
|
|
555
556
|
}
|
|
556
|
-
if (
|
|
557
|
+
if (webSearchTool || webSearchPreviewTool) {
|
|
557
558
|
include.add("web_search_call.action.sources")
|
|
558
559
|
}
|
|
559
560
|
|
|
560
561
|
const messages: Array<typeof Generated.InputItem.Encoded> = []
|
|
562
|
+
const prompt = options.incrementalPrompt ?? options.prompt
|
|
561
563
|
|
|
562
|
-
for (const message of
|
|
564
|
+
for (const message of prompt.content) {
|
|
563
565
|
switch (message.role) {
|
|
564
566
|
case "system": {
|
|
565
567
|
messages.push({
|