@effect-uai/responses 0.12.0 → 0.12.1
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/OpenAIDeepResearch.d.mts +6 -5
- package/dist/OpenAIDeepResearch.d.mts.map +1 -1
- package/dist/OpenAIDeepResearch.mjs +8 -4
- package/dist/OpenAIDeepResearch.mjs.map +1 -1
- package/dist/OpenAIEmbedding.d.mts +2 -3
- package/dist/OpenAIEmbedding.d.mts.map +1 -1
- package/dist/OpenAIEmbedding.mjs +1 -1
- package/dist/OpenAIEmbedding.mjs.map +1 -1
- package/dist/Responses.d.mts +0 -2
- package/dist/Responses.d.mts.map +1 -1
- package/dist/Responses.mjs +4 -3
- package/dist/Responses.mjs.map +1 -1
- package/dist/ResponsesTools.d.mts +0 -2
- package/dist/ResponsesTools.d.mts.map +1 -1
- package/dist/ResponsesTools.mjs +1 -1
- package/dist/ResponsesTools.mjs.map +1 -1
- package/dist/codec.d.mts +0 -2
- package/dist/codec.d.mts.map +1 -1
- package/dist/codec.mjs +1 -1
- package/dist/codec.mjs.map +1 -1
- package/dist/codec.test.d.mts +1 -1
- package/dist/codec.test.mjs +4 -3
- package/dist/codec.test.mjs.map +1 -1
- package/dist/{magic-string.es-CaWgF-3p.mjs → magic-string.es-CUAnjKYC.mjs} +14 -13
- package/dist/{magic-string.es-CaWgF-3p.mjs.map → magic-string.es-CUAnjKYC.mjs.map} +1 -1
- package/dist/models.d.mts.map +1 -1
- package/dist/region.d.mts.map +1 -1
- package/dist/region.mjs.map +1 -1
- package/dist/region.test.d.mts +1 -1
- package/dist/region.test.mjs +1 -1
- package/dist/region.test.mjs.map +1 -1
- package/dist/responsesTools.test.d.mts +1 -1
- package/dist/responsesTools.test.mjs +7 -5
- package/dist/responsesTools.test.mjs.map +1 -1
- package/dist/streamEvents.d.mts +0 -2
- package/dist/streamEvents.d.mts.map +1 -1
- package/dist/streamEvents.mjs +1 -1
- package/dist/streamEvents.mjs.map +1 -1
- package/dist/{test.DNmyFkvJ-CPKukVWS.mjs → test.DNmyFkvJ-N3QqMRwZ.mjs} +247 -222
- package/dist/test.DNmyFkvJ-N3QqMRwZ.mjs.map +1 -0
- package/package.json +5 -5
- package/src/OpenAIDeepResearch.ts +9 -14
- package/src/OpenAIEmbedding.ts +24 -29
- package/src/Responses.ts +4 -7
- package/src/ResponsesTools.ts +4 -6
- package/dist/test.DNmyFkvJ-CPKukVWS.mjs.map +0 -1
- /package/dist/{chunk-CfYAbeIz.mjs → rolldown-runtime-D7D4PA-g.mjs} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect-uai/responses",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.1",
|
|
4
4
|
"description": "OpenAI Responses API provider for @effect-uai/core.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -55,13 +55,13 @@
|
|
|
55
55
|
"access": "public"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
|
-
"effect": "4.0.0-
|
|
59
|
-
"typescript": "^
|
|
60
|
-
"@effect-uai/core": "0.12.
|
|
58
|
+
"effect": "4.0.0-rc.111",
|
|
59
|
+
"typescript": "^7.0.2",
|
|
60
|
+
"@effect-uai/core": "0.12.1"
|
|
61
61
|
},
|
|
62
62
|
"peerDependencies": {
|
|
63
63
|
"@effect-uai/core": ">=0.2.0 <1",
|
|
64
|
-
"effect": ">=4.0.0-
|
|
64
|
+
"effect": ">=4.0.0-rc.111 <5.0.0"
|
|
65
65
|
},
|
|
66
66
|
"scripts": {
|
|
67
67
|
"build": "tsdown",
|
|
@@ -87,20 +87,15 @@ export const jobStateOf = (wire: WireResponseCompleted): ResearchState =>
|
|
|
87
87
|
Match.value(wire.status ?? "").pipe(
|
|
88
88
|
Match.when("queued", (): ResearchState => ({ _tag: "Pending" })),
|
|
89
89
|
Match.when("in_progress", (): ResearchState => ({ _tag: "Running" })),
|
|
90
|
-
Match.whenOr(
|
|
91
|
-
"
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
)
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
_tag: "Failed",
|
|
100
|
-
...(wire.error?.message != null && { reason: wire.error.message }),
|
|
101
|
-
raw: wire,
|
|
102
|
-
}),
|
|
103
|
-
),
|
|
90
|
+
Match.whenOr("completed", "incomplete", (): ResearchState => ({
|
|
91
|
+
_tag: "Succeeded",
|
|
92
|
+
result: turnFromCompleted(wire),
|
|
93
|
+
})),
|
|
94
|
+
Match.whenOr("failed", "cancelled", (): ResearchState => ({
|
|
95
|
+
_tag: "Failed",
|
|
96
|
+
...(wire.error?.message != null && { reason: wire.error.message }),
|
|
97
|
+
raw: wire,
|
|
98
|
+
})),
|
|
104
99
|
Match.orElse((): ResearchState => ({ _tag: "Running" })),
|
|
105
100
|
)
|
|
106
101
|
|
package/src/OpenAIEmbedding.ts
CHANGED
|
@@ -241,12 +241,10 @@ const embedManyImpl =
|
|
|
241
241
|
): Effect.Effect<EmbedManyResponse, AiError.AiError, HttpClient.HttpClient> =>
|
|
242
242
|
buildBatchBody(request).pipe(
|
|
243
243
|
Effect.flatMap((body) => postEmbed(cfg, body)),
|
|
244
|
-
Effect.map(
|
|
245
|
-
(decoded)
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
}),
|
|
249
|
-
),
|
|
244
|
+
Effect.map((decoded): EmbedManyResponse => ({
|
|
245
|
+
embeddings: orderedEmbeddings(decoded.data),
|
|
246
|
+
usage: usageOf(decoded.usage),
|
|
247
|
+
})),
|
|
250
248
|
)
|
|
251
249
|
|
|
252
250
|
// ---------------------------------------------------------------------------
|
|
@@ -279,29 +277,26 @@ export const layer = (
|
|
|
279
277
|
const typed = Layer.effect(OpenAIEmbedding, make(cfg))
|
|
280
278
|
const generic = Layer.effect(
|
|
281
279
|
EmbeddingModel,
|
|
282
|
-
Effect.map(
|
|
283
|
-
|
|
284
|
-
(
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
) as Effect.Effect<EmbedManyResponse<E>, AiError.AiError>,
|
|
303
|
-
}),
|
|
304
|
-
),
|
|
280
|
+
Effect.map(make(cfg), (s): EmbeddingModelService => ({
|
|
281
|
+
// OpenAI emits float32 only and has no task parameter. Reject a
|
|
282
|
+
// non-float32 `encoding` (bucket 1, else a float32 vector comes back
|
|
283
|
+
// mislabeled as the requested type) and warn on a dropped `task`
|
|
284
|
+
// (bucket 2).
|
|
285
|
+
embed: <E extends EmbedEncoding | undefined = undefined>(
|
|
286
|
+
req: Omit<CommonEmbedRequest, "encoding"> & { readonly encoding?: E },
|
|
287
|
+
) =>
|
|
288
|
+
assertEncoding(req.encoding, ["float32"], "openai").pipe(
|
|
289
|
+
Effect.andThen(warnTaskDropped(req.task)),
|
|
290
|
+
Effect.andThen(s.embed(req as OpenAIEmbedRequest)),
|
|
291
|
+
) as Effect.Effect<EmbedResponse<E>, AiError.AiError>,
|
|
292
|
+
embedMany: <E extends EmbedEncoding | undefined = undefined>(
|
|
293
|
+
req: Omit<CommonEmbedManyRequest, "encoding"> & { readonly encoding?: E },
|
|
294
|
+
) =>
|
|
295
|
+
assertEncoding(req.encoding, ["float32"], "openai").pipe(
|
|
296
|
+
Effect.andThen(warnTaskDropped(req.task)),
|
|
297
|
+
Effect.andThen(s.embedMany(req as OpenAIEmbedManyRequest)),
|
|
298
|
+
) as Effect.Effect<EmbedManyResponse<E>, AiError.AiError>,
|
|
299
|
+
})),
|
|
305
300
|
)
|
|
306
301
|
return Layer.merge(typed, generic)
|
|
307
302
|
}
|
package/src/Responses.ts
CHANGED
|
@@ -396,13 +396,10 @@ export const layer = (
|
|
|
396
396
|
const typed = Layer.effect(Responses, make(cfg))
|
|
397
397
|
const generic = Layer.effect(
|
|
398
398
|
LanguageModel,
|
|
399
|
-
Effect.map(
|
|
400
|
-
|
|
401
|
-
(
|
|
402
|
-
|
|
403
|
-
turn: (request) => s.turn(request as ResponsesRequest),
|
|
404
|
-
}),
|
|
405
|
-
),
|
|
399
|
+
Effect.map(make(cfg), (s): LanguageModelService => ({
|
|
400
|
+
streamTurn: (request) => s.streamTurn(request as ResponsesRequest),
|
|
401
|
+
turn: (request) => s.turn(request as ResponsesRequest),
|
|
402
|
+
})),
|
|
406
403
|
)
|
|
407
404
|
return Layer.merge(typed, generic)
|
|
408
405
|
}
|
package/src/ResponsesTools.ts
CHANGED
|
@@ -139,12 +139,10 @@ const renderOne = (
|
|
|
139
139
|
})
|
|
140
140
|
: decodeConfig(tool.config).pipe(
|
|
141
141
|
Result.map(configToWire),
|
|
142
|
-
Result.mapError(
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
}),
|
|
147
|
-
),
|
|
142
|
+
Result.mapError((): ToolRenderError => ({
|
|
143
|
+
capability: "providerTool",
|
|
144
|
+
reason: `unrecognized Responses provider tool config on "${tool.name}"`,
|
|
145
|
+
})),
|
|
148
146
|
)
|
|
149
147
|
|
|
150
148
|
/**
|