@skyold/provider-adapters 0.1.0-beta.0 → 0.1.0-beta.2

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 (45) hide show
  1. package/dist/anthropic-messages/codec.d.ts.map +1 -1
  2. package/dist/anthropic-messages/codec.js +70 -22
  3. package/dist/anthropic-messages/codec.js.map +1 -1
  4. package/dist/anthropic-messages/sse.d.ts +4 -2
  5. package/dist/anthropic-messages/sse.d.ts.map +1 -1
  6. package/dist/anthropic-messages/sse.js +22 -7
  7. package/dist/anthropic-messages/sse.js.map +1 -1
  8. package/dist/image-response-json.js +3 -3
  9. package/dist/image-response-json.js.map +1 -1
  10. package/dist/openai-chat/codec.d.ts.map +1 -1
  11. package/dist/openai-chat/codec.js +64 -29
  12. package/dist/openai-chat/codec.js.map +1 -1
  13. package/dist/openai-chat/sse.d.ts +6 -1
  14. package/dist/openai-chat/sse.d.ts.map +1 -1
  15. package/dist/openai-chat/sse.js +26 -7
  16. package/dist/openai-chat/sse.js.map +1 -1
  17. package/dist/openai-embeddings/codec.d.ts.map +1 -1
  18. package/dist/openai-embeddings/codec.js +15 -4
  19. package/dist/openai-embeddings/codec.js.map +1 -1
  20. package/dist/openai-images/codec.d.ts.map +1 -1
  21. package/dist/openai-images/codec.js +63 -5
  22. package/dist/openai-images/codec.js.map +1 -1
  23. package/dist/openai-responses/codec.d.ts.map +1 -1
  24. package/dist/openai-responses/codec.js +87 -43
  25. package/dist/openai-responses/codec.js.map +1 -1
  26. package/dist/openai-responses/sse.d.ts +4 -2
  27. package/dist/openai-responses/sse.d.ts.map +1 -1
  28. package/dist/openai-responses/sse.js +28 -12
  29. package/dist/openai-responses/sse.js.map +1 -1
  30. package/dist/ppio-video/adapter.d.ts +3 -1
  31. package/dist/ppio-video/adapter.d.ts.map +1 -1
  32. package/dist/ppio-video/adapter.js +32 -12
  33. package/dist/ppio-video/adapter.js.map +1 -1
  34. package/dist/volc-embeddings/codec.d.ts.map +1 -1
  35. package/dist/volc-embeddings/codec.js +11 -4
  36. package/dist/volc-embeddings/codec.js.map +1 -1
  37. package/dist/volc-images/codec.d.ts.map +1 -1
  38. package/dist/volc-images/codec.js +63 -5
  39. package/dist/volc-images/codec.js.map +1 -1
  40. package/dist/volc-video/adapter.d.ts +4 -2
  41. package/dist/volc-video/adapter.d.ts.map +1 -1
  42. package/dist/volc-video/adapter.js +44 -19
  43. package/dist/volc-video/adapter.js.map +1 -1
  44. package/package.json +11 -10
  45. package/LICENSE +0 -201
@@ -18,6 +18,29 @@ const REQUEST_FIELDS = new Set([
18
18
  'store',
19
19
  'stream',
20
20
  ]);
21
+ const STREAM_EVENTS = new Set([
22
+ 'response.created',
23
+ 'response.in_progress',
24
+ 'response.output_item.added',
25
+ 'response.content_part.added',
26
+ 'response.output_text.delta',
27
+ 'response.output_text.done',
28
+ 'response.refusal.delta',
29
+ 'response.refusal.done',
30
+ 'response.content_part.done',
31
+ 'response.function_call_arguments.delta',
32
+ 'response.function_call_arguments.done',
33
+ 'response.reasoning_summary_part.added',
34
+ 'response.reasoning_summary_text.delta',
35
+ 'response.reasoning_summary_text.done',
36
+ 'response.reasoning_summary_part.done',
37
+ 'response.output_item.done',
38
+ 'response.completed',
39
+ 'response.incomplete',
40
+ 'response.failed',
41
+ 'response.cancelled',
42
+ 'error',
43
+ ]);
21
44
  export const openAiResponsesCodec = {
22
45
  protocolFamily: PROTOCOL_FAMILY,
23
46
  encodeProviderRequest(task, providerModel) {
@@ -44,14 +67,15 @@ export const openAiResponsesCodec = {
44
67
  async decodeProviderStart(response) {
45
68
  const responseMetadata = metadata(response);
46
69
  if (response.status < 200 || response.status >= 300) {
47
- return failedStart(responseMetadata, response.status, response.body);
70
+ return failedStart(responseMetadata, response);
48
71
  }
49
72
  if (isAsyncIterable(response.body))
50
73
  return streamStart(response.body, responseMetadata);
51
- return syncStart(response.body, responseMetadata);
74
+ return syncStart(response.body, response, responseMetadata);
52
75
  },
53
76
  };
54
- function syncStart(body, responseMetadata) {
77
+ function syncStart(body, transportResponse, responseMetadata) {
78
+ const providerResponse = wireResponse(transportResponse, body);
55
79
  try {
56
80
  const response = parseResponse(parseJson(decoder.decode(body), RESPONSE_INVALID), RESPONSE_INVALID);
57
81
  const usage = parseUsage(response.usage, RESPONSE_INVALID);
@@ -120,18 +144,20 @@ function syncStart(body, responseMetadata) {
120
144
  ? { observedModel: response.normalizedResponse.model }
121
145
  : {}),
122
146
  },
147
+ providerResponse,
123
148
  terminal,
124
149
  };
125
150
  }
126
151
  catch {
127
- return invalidSyncStart(responseMetadata);
152
+ return invalidSyncStart(responseMetadata, providerResponse);
128
153
  }
129
154
  }
130
- function invalidSyncStart(responseMetadata) {
155
+ function invalidSyncStart(responseMetadata, providerResponse) {
131
156
  return {
132
157
  kind: 'sync',
133
158
  acceptance: { state: 'accepted' },
134
159
  responseMetadata,
160
+ providerResponse,
135
161
  terminal: {
136
162
  status: 'failed',
137
163
  acceptanceState: 'accepted',
@@ -141,14 +167,18 @@ function invalidSyncStart(responseMetadata) {
141
167
  },
142
168
  };
143
169
  }
144
- async function failedStart(responseMetadata, status, body) {
170
+ async function failedStart(responseMetadata, response) {
171
+ const status = response.status;
145
172
  const rateLimited = status === 429;
146
- const errorBody = await collectErrorBody(body);
173
+ const errorBody = await collectErrorBody(response.body);
147
174
  const providerError = errorBody ? tryParseErrorBody(errorBody) : undefined;
148
175
  return {
149
176
  kind: 'sync',
150
177
  acceptance: { state: 'not-accepted' },
151
178
  responseMetadata,
179
+ ...(errorBody === undefined
180
+ ? {}
181
+ : { providerResponse: { status, headers: response.headers, body: errorBody } }),
152
182
  terminal: {
153
183
  status: 'failed',
154
184
  acceptanceState: 'not-accepted',
@@ -159,6 +189,9 @@ async function failedStart(responseMetadata, status, body) {
159
189
  },
160
190
  };
161
191
  }
192
+ function wireResponse(response, body) {
193
+ return { status: response.status, headers: response.headers, body };
194
+ }
162
195
  function streamStart(body, responseMetadata) {
163
196
  let resolveTerminal;
164
197
  let terminalSettled = false;
@@ -183,17 +216,28 @@ function streamStart(body, responseMetadata) {
183
216
  for await (const frame of parseOpenAiResponsesSseFrames(body)) {
184
217
  if (aborted)
185
218
  return;
219
+ if (frame.invalid) {
220
+ throw new Error(PROVIDER_STREAM_INVALID);
221
+ }
222
+ if (frame.event === undefined || frame.data === undefined)
223
+ continue;
224
+ if (!STREAM_EVENTS.has(frame.event))
225
+ throw new Error(PROVIDER_STREAM_INVALID);
186
226
  const value = record(parseJson(frame.data, PROVIDER_STREAM_INVALID), PROVIDER_STREAM_INVALID);
187
227
  if (value['type'] !== frame.event)
188
228
  throw new Error(PROVIDER_STREAM_INVALID);
189
229
  const sequenceNumber = requiredSequence(value, previousSequence);
190
230
  previousSequence = sequenceNumber;
231
+ const attachProviderWire = (eventValue) => ({
232
+ ...eventValue,
233
+ providerWire: frame.wire,
234
+ });
191
235
  switch (frame.event) {
192
236
  case 'response.created': {
193
237
  if (responseId !== undefined)
194
238
  throw new Error(PROVIDER_STREAM_INVALID);
195
239
  responseId = responseIdFrom(value, PROVIDER_STREAM_INVALID);
196
- yield event('response.started', responseId, sequenceNumber);
240
+ yield attachProviderWire(event('response.started', responseId, sequenceNumber));
197
241
  break;
198
242
  }
199
243
  case 'response.in_progress': {
@@ -201,10 +245,10 @@ function streamStart(body, responseMetadata) {
201
245
  const response = record(value['response'], PROVIDER_STREAM_INVALID);
202
246
  if (response['status'] !== 'in_progress')
203
247
  throw new Error(PROVIDER_STREAM_INVALID);
204
- yield {
248
+ yield attachProviderWire({
205
249
  ...event('response.in_progress', id, sequenceNumber),
206
250
  status: 'in_progress',
207
- };
251
+ });
208
252
  break;
209
253
  }
210
254
  case 'response.output_item.added': {
@@ -219,13 +263,13 @@ function streamStart(body, responseMetadata) {
219
263
  const state = stateFromAdded(parsed, outputIndex);
220
264
  items.set(outputIndex, state);
221
265
  itemIndexes.set(parsed.id, outputIndex);
222
- yield {
266
+ yield attachProviderWire({
223
267
  ...event('output.item.added', id, sequenceNumber),
224
268
  itemId: parsed.id,
225
269
  outputIndex,
226
270
  itemKind: parsed.kind,
227
271
  item: parsed.normalized,
228
- };
272
+ });
229
273
  break;
230
274
  }
231
275
  case 'response.content_part.added': {
@@ -245,7 +289,7 @@ function streamStart(body, responseMetadata) {
245
289
  streamDone: false,
246
290
  closed: false,
247
291
  });
248
- yield {
292
+ yield attachProviderWire({
249
293
  type: 'output.content_part.added',
250
294
  eventId: `${id}:${sequenceNumber}`,
251
295
  sequenceNumber,
@@ -254,7 +298,7 @@ function streamStart(body, responseMetadata) {
254
298
  outputIndex,
255
299
  contentIndex,
256
300
  part: part.normalized,
257
- };
301
+ });
258
302
  break;
259
303
  }
260
304
  case 'response.output_text.delta': {
@@ -265,11 +309,11 @@ function streamStart(body, responseMetadata) {
265
309
  throw new Error(PROVIDER_STREAM_INVALID);
266
310
  const delta = stringValue(value['delta'], PROVIDER_STREAM_INVALID);
267
311
  content.value += delta;
268
- yield {
312
+ yield attachProviderWire({
269
313
  ...event('output.text.delta', id, sequenceNumber),
270
314
  ...indexed,
271
315
  delta,
272
- };
316
+ });
273
317
  break;
274
318
  }
275
319
  case 'response.output_text.done': {
@@ -280,11 +324,11 @@ function streamStart(body, responseMetadata) {
280
324
  if (content.streamDone || text !== content.value)
281
325
  throw new Error(PROVIDER_STREAM_INVALID);
282
326
  content.streamDone = true;
283
- yield {
327
+ yield attachProviderWire({
284
328
  ...event('output.text.completed', id, sequenceNumber),
285
329
  ...indexed,
286
330
  text,
287
- };
331
+ });
288
332
  break;
289
333
  }
290
334
  case 'response.refusal.delta': {
@@ -295,11 +339,11 @@ function streamStart(body, responseMetadata) {
295
339
  throw new Error(PROVIDER_STREAM_INVALID);
296
340
  const delta = stringValue(value['delta'], PROVIDER_STREAM_INVALID);
297
341
  content.value += delta;
298
- yield {
342
+ yield attachProviderWire({
299
343
  ...event('output.refusal.delta', id, sequenceNumber),
300
344
  ...indexed,
301
345
  delta,
302
- };
346
+ });
303
347
  break;
304
348
  }
305
349
  case 'response.refusal.done': {
@@ -310,11 +354,11 @@ function streamStart(body, responseMetadata) {
310
354
  if (content.streamDone || refusal !== content.value)
311
355
  throw new Error(PROVIDER_STREAM_INVALID);
312
356
  content.streamDone = true;
313
- yield {
357
+ yield attachProviderWire({
314
358
  ...event('output.refusal.completed', id, sequenceNumber),
315
359
  ...indexed,
316
360
  refusal,
317
- };
361
+ });
318
362
  break;
319
363
  }
320
364
  case 'response.content_part.done': {
@@ -329,14 +373,14 @@ function streamStart(body, responseMetadata) {
329
373
  throw new Error(PROVIDER_STREAM_INVALID);
330
374
  }
331
375
  content.closed = true;
332
- yield {
376
+ yield attachProviderWire({
333
377
  type: 'output.content_part.completed',
334
378
  eventId: `${id}:${sequenceNumber}`,
335
379
  sequenceNumber,
336
380
  responseId: id,
337
381
  ...indexed,
338
382
  part: part.normalized,
339
- };
383
+ });
340
384
  break;
341
385
  }
342
386
  case 'response.function_call_arguments.delta': {
@@ -347,13 +391,13 @@ function streamStart(body, responseMetadata) {
347
391
  throw new Error(PROVIDER_STREAM_INVALID);
348
392
  const delta = stringValue(value['delta'], PROVIDER_STREAM_INVALID);
349
393
  item.arguments += delta;
350
- yield {
394
+ yield attachProviderWire({
351
395
  ...event('output.tool_call.delta', id, sequenceNumber),
352
396
  ...indexed,
353
397
  callId: item.callId,
354
398
  name: item.name,
355
399
  argumentsDelta: delta,
356
- };
400
+ });
357
401
  break;
358
402
  }
359
403
  case 'response.function_call_arguments.done': {
@@ -366,13 +410,13 @@ function streamStart(body, responseMetadata) {
366
410
  throw new Error(PROVIDER_STREAM_INVALID);
367
411
  }
368
412
  item.argumentsDone = true;
369
- yield {
413
+ yield attachProviderWire({
370
414
  ...event('output.tool_call.completed', id, sequenceNumber),
371
415
  ...indexed,
372
416
  callId: item.callId,
373
417
  name,
374
418
  arguments: args,
375
- };
419
+ });
376
420
  break;
377
421
  }
378
422
  case 'response.reasoning_summary_part.added': {
@@ -389,14 +433,14 @@ function streamStart(body, responseMetadata) {
389
433
  streamDone: false,
390
434
  closed: false,
391
435
  });
392
- yield {
436
+ yield attachProviderWire({
393
437
  type: 'output.content_part.added',
394
438
  eventId: `${id}:${sequenceNumber}`,
395
439
  sequenceNumber,
396
440
  responseId: id,
397
441
  ...indexed,
398
442
  part: { type: 'reasoning_summary', text: part.text },
399
- };
443
+ });
400
444
  break;
401
445
  }
402
446
  case 'response.reasoning_summary_text.delta': {
@@ -407,11 +451,11 @@ function streamStart(body, responseMetadata) {
407
451
  throw new Error(PROVIDER_STREAM_INVALID);
408
452
  const delta = stringValue(value['delta'], PROVIDER_STREAM_INVALID);
409
453
  summary.value += delta;
410
- yield {
454
+ yield attachProviderWire({
411
455
  ...event('output.reasoning_summary.delta', id, sequenceNumber),
412
456
  ...indexed,
413
457
  delta,
414
- };
458
+ });
415
459
  break;
416
460
  }
417
461
  case 'response.reasoning_summary_text.done': {
@@ -422,11 +466,11 @@ function streamStart(body, responseMetadata) {
422
466
  if (summary.streamDone || text !== summary.value)
423
467
  throw new Error(PROVIDER_STREAM_INVALID);
424
468
  summary.streamDone = true;
425
- yield {
469
+ yield attachProviderWire({
426
470
  ...event('output.reasoning_summary.completed', id, sequenceNumber),
427
471
  ...indexed,
428
472
  text,
429
- };
473
+ });
430
474
  break;
431
475
  }
432
476
  case 'response.reasoning_summary_part.done': {
@@ -438,14 +482,14 @@ function streamStart(body, responseMetadata) {
438
482
  throw new Error(PROVIDER_STREAM_INVALID);
439
483
  }
440
484
  summary.closed = true;
441
- yield {
485
+ yield attachProviderWire({
442
486
  type: 'output.content_part.completed',
443
487
  eventId: `${id}:${sequenceNumber}`,
444
488
  sequenceNumber,
445
489
  responseId: id,
446
490
  ...indexed,
447
491
  part: { type: 'reasoning_summary', text: part.text },
448
- };
492
+ });
449
493
  break;
450
494
  }
451
495
  case 'response.output_item.done': {
@@ -465,14 +509,14 @@ function streamStart(body, responseMetadata) {
465
509
  state.closed = true;
466
510
  state.finalStatus = parsed.status;
467
511
  completedItems.set(outputIndex, normalized);
468
- yield {
512
+ yield attachProviderWire({
469
513
  ...event('output.item.completed', id, sequenceNumber),
470
514
  itemId: parsed.id,
471
515
  outputIndex,
472
516
  itemKind: parsed.kind,
473
517
  status: parsed.status,
474
518
  item: normalized,
475
- };
519
+ });
476
520
  break;
477
521
  }
478
522
  case 'response.completed': {
@@ -490,10 +534,10 @@ function streamStart(body, responseMetadata) {
490
534
  ...(usage ? { usage } : {}),
491
535
  };
492
536
  settle(terminalOutcome);
493
- yield {
537
+ yield attachProviderWire({
494
538
  ...event('response.completed', id, sequenceNumber),
495
539
  ...(usage ? { usage } : {}),
496
- };
540
+ });
497
541
  return;
498
542
  }
499
543
  case 'response.incomplete': {
@@ -513,13 +557,13 @@ function streamStart(body, responseMetadata) {
513
557
  incompleteDetails: { reason },
514
558
  };
515
559
  settle(terminalOutcome);
516
- yield {
560
+ yield attachProviderWire({
517
561
  ...event('response.incomplete', id, sequenceNumber),
518
562
  reason,
519
563
  status: 'incomplete',
520
564
  incompleteDetails: { reason },
521
565
  ...(usage ? { usage } : {}),
522
- };
566
+ });
523
567
  return;
524
568
  }
525
569
  case 'response.failed': {
@@ -566,7 +610,7 @@ function streamStart(body, responseMetadata) {
566
610
  return;
567
611
  }
568
612
  default:
569
- throw new Error(PROVIDER_STREAM_INVALID);
613
+ break;
570
614
  }
571
615
  }
572
616
  throw new Error(PROVIDER_STREAM_INVALID);
@@ -1 +1 @@
1
- {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/openai-responses/codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/openai-responses/codec.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  export declare const PROVIDER_STREAM_INVALID = "PROVIDER_STREAM_INVALID";
2
2
  export interface OpenAiResponsesSseFrame {
3
- readonly event: string;
4
- readonly data: string;
3
+ readonly event?: string;
4
+ readonly data?: string;
5
+ readonly wire: string;
6
+ readonly invalid?: true;
5
7
  }
6
8
  export declare function parseOpenAiResponsesSseFrames(body: AsyncIterable<Uint8Array>): AsyncIterable<OpenAiResponsesSseFrame>;
7
9
  //# sourceMappingURL=sse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../src/openai-responses/sse.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AAEjE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAMD,wBAAuB,6BAA6B,CAClD,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,GAC9B,aAAa,CAAC,uBAAuB,CAAC,CA4DxC"}
1
+ {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../src/openai-responses/sse.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AAEjE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;CACzB;AAMD,wBAAuB,6BAA6B,CAClD,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,GAC9B,aAAa,CAAC,uBAAuB,CAAC,CA+ExC"}