ai 4.1.31 → 4.1.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/CHANGELOG.md +12 -0
- package/dist/index.d.mts +32 -0
- package/dist/index.d.ts +32 -0
- package/dist/index.js +129 -126
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +129 -126
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
@@ -1,5 +1,17 @@
|
|
1
1
|
# ai
|
2
2
|
|
3
|
+
## 4.1.33
|
4
|
+
|
5
|
+
### Patch Changes
|
6
|
+
|
7
|
+
- 74f0f0e: chore (ai/core): move providerMetadata to stable
|
8
|
+
|
9
|
+
## 4.1.32
|
10
|
+
|
11
|
+
### Patch Changes
|
12
|
+
|
13
|
+
- c128ca5: fix (ai/core): fix streamText onFinish messages with structured output
|
14
|
+
|
3
15
|
## 4.1.31
|
4
16
|
|
5
17
|
### Patch Changes
|
package/dist/index.d.mts
CHANGED
@@ -901,6 +901,10 @@ interface GenerateObjectResult<OBJECT> {
|
|
901
901
|
from the provider to the AI SDK and enable provider-specific
|
902
902
|
results that can be fully encapsulated in the provider.
|
903
903
|
*/
|
904
|
+
readonly providerMetadata: ProviderMetadata | undefined;
|
905
|
+
/**
|
906
|
+
@deprecated Use `providerMetadata` instead.
|
907
|
+
*/
|
904
908
|
readonly experimental_providerMetadata: ProviderMetadata | undefined;
|
905
909
|
/**
|
906
910
|
Converts the object to a JSON response.
|
@@ -1155,6 +1159,10 @@ interface StreamObjectResult<PARTIAL, RESULT, ELEMENT_STREAM> {
|
|
1155
1159
|
from the provider to the AI SDK and enable provider-specific
|
1156
1160
|
results that can be fully encapsulated in the provider.
|
1157
1161
|
*/
|
1162
|
+
readonly providerMetadata: Promise<ProviderMetadata | undefined>;
|
1163
|
+
/**
|
1164
|
+
@deprecated Use `providerMetadata` instead.
|
1165
|
+
*/
|
1158
1166
|
readonly experimental_providerMetadata: Promise<ProviderMetadata | undefined>;
|
1159
1167
|
/**
|
1160
1168
|
Additional request information from the last step.
|
@@ -1264,6 +1272,10 @@ type StreamObjectOnFinishCallback<RESULT> = (event: {
|
|
1264
1272
|
Additional provider-specific metadata. They are passed through
|
1265
1273
|
to the provider from the AI SDK and enable provider-specific
|
1266
1274
|
functionality that can be fully encapsulated in the provider.
|
1275
|
+
*/
|
1276
|
+
providerMetadata: ProviderMetadata | undefined;
|
1277
|
+
/**
|
1278
|
+
@deprecated Use `providerMetadata` instead.
|
1267
1279
|
*/
|
1268
1280
|
experimental_providerMetadata?: ProviderMetadata;
|
1269
1281
|
}) => Promise<void> | void;
|
@@ -1719,6 +1731,10 @@ type StepResult<TOOLS extends ToolSet> = {
|
|
1719
1731
|
from the provider to the AI SDK and enable provider-specific
|
1720
1732
|
results that can be fully encapsulated in the provider.
|
1721
1733
|
*/
|
1734
|
+
readonly providerMetadata: ProviderMetadata | undefined;
|
1735
|
+
/**
|
1736
|
+
@deprecated Use `providerMetadata` instead.
|
1737
|
+
*/
|
1722
1738
|
readonly experimental_providerMetadata: ProviderMetadata | undefined;
|
1723
1739
|
/**
|
1724
1740
|
The type of step that this result is for. The first step is always
|
@@ -1837,6 +1853,10 @@ interface GenerateTextResult<TOOLS extends ToolSet, OUTPUT> {
|
|
1837
1853
|
from the provider to the AI SDK and enable provider-specific
|
1838
1854
|
results that can be fully encapsulated in the provider.
|
1839
1855
|
*/
|
1856
|
+
readonly providerMetadata: ProviderMetadata | undefined;
|
1857
|
+
/**
|
1858
|
+
@deprecated Use `providerMetadata` instead.
|
1859
|
+
*/
|
1840
1860
|
readonly experimental_providerMetadata: ProviderMetadata | undefined;
|
1841
1861
|
}
|
1842
1862
|
|
@@ -2102,6 +2122,10 @@ interface StreamTextResult<TOOLS extends ToolSet, PARTIAL_OUTPUT> {
|
|
2102
2122
|
Metadata is passed through from the provider to the AI SDK and
|
2103
2123
|
enables provider-specific results that can be fully encapsulated in the provider.
|
2104
2124
|
*/
|
2125
|
+
readonly providerMetadata: Promise<ProviderMetadata | undefined>;
|
2126
|
+
/**
|
2127
|
+
@deprecated Use `providerMetadata` instead.
|
2128
|
+
*/
|
2105
2129
|
readonly experimental_providerMetadata: Promise<ProviderMetadata | undefined>;
|
2106
2130
|
/**
|
2107
2131
|
The full text that has been generated by the last step.
|
@@ -2293,12 +2317,20 @@ type TextStreamPart<TOOLS extends ToolSet> = {
|
|
2293
2317
|
response: LanguageModelResponseMetadata;
|
2294
2318
|
usage: LanguageModelUsage;
|
2295
2319
|
finishReason: FinishReason;
|
2320
|
+
providerMetadata: ProviderMetadata | undefined;
|
2321
|
+
/**
|
2322
|
+
* @deprecated Use `providerMetadata` instead.
|
2323
|
+
*/
|
2296
2324
|
experimental_providerMetadata?: ProviderMetadata;
|
2297
2325
|
isContinued: boolean;
|
2298
2326
|
} | {
|
2299
2327
|
type: 'finish';
|
2300
2328
|
finishReason: FinishReason;
|
2301
2329
|
usage: LanguageModelUsage;
|
2330
|
+
providerMetadata: ProviderMetadata | undefined;
|
2331
|
+
/**
|
2332
|
+
* @deprecated Use `providerMetadata` instead.
|
2333
|
+
*/
|
2302
2334
|
experimental_providerMetadata?: ProviderMetadata;
|
2303
2335
|
/**
|
2304
2336
|
* @deprecated will be moved into provider metadata
|
package/dist/index.d.ts
CHANGED
@@ -901,6 +901,10 @@ interface GenerateObjectResult<OBJECT> {
|
|
901
901
|
from the provider to the AI SDK and enable provider-specific
|
902
902
|
results that can be fully encapsulated in the provider.
|
903
903
|
*/
|
904
|
+
readonly providerMetadata: ProviderMetadata | undefined;
|
905
|
+
/**
|
906
|
+
@deprecated Use `providerMetadata` instead.
|
907
|
+
*/
|
904
908
|
readonly experimental_providerMetadata: ProviderMetadata | undefined;
|
905
909
|
/**
|
906
910
|
Converts the object to a JSON response.
|
@@ -1155,6 +1159,10 @@ interface StreamObjectResult<PARTIAL, RESULT, ELEMENT_STREAM> {
|
|
1155
1159
|
from the provider to the AI SDK and enable provider-specific
|
1156
1160
|
results that can be fully encapsulated in the provider.
|
1157
1161
|
*/
|
1162
|
+
readonly providerMetadata: Promise<ProviderMetadata | undefined>;
|
1163
|
+
/**
|
1164
|
+
@deprecated Use `providerMetadata` instead.
|
1165
|
+
*/
|
1158
1166
|
readonly experimental_providerMetadata: Promise<ProviderMetadata | undefined>;
|
1159
1167
|
/**
|
1160
1168
|
Additional request information from the last step.
|
@@ -1264,6 +1272,10 @@ type StreamObjectOnFinishCallback<RESULT> = (event: {
|
|
1264
1272
|
Additional provider-specific metadata. They are passed through
|
1265
1273
|
to the provider from the AI SDK and enable provider-specific
|
1266
1274
|
functionality that can be fully encapsulated in the provider.
|
1275
|
+
*/
|
1276
|
+
providerMetadata: ProviderMetadata | undefined;
|
1277
|
+
/**
|
1278
|
+
@deprecated Use `providerMetadata` instead.
|
1267
1279
|
*/
|
1268
1280
|
experimental_providerMetadata?: ProviderMetadata;
|
1269
1281
|
}) => Promise<void> | void;
|
@@ -1719,6 +1731,10 @@ type StepResult<TOOLS extends ToolSet> = {
|
|
1719
1731
|
from the provider to the AI SDK and enable provider-specific
|
1720
1732
|
results that can be fully encapsulated in the provider.
|
1721
1733
|
*/
|
1734
|
+
readonly providerMetadata: ProviderMetadata | undefined;
|
1735
|
+
/**
|
1736
|
+
@deprecated Use `providerMetadata` instead.
|
1737
|
+
*/
|
1722
1738
|
readonly experimental_providerMetadata: ProviderMetadata | undefined;
|
1723
1739
|
/**
|
1724
1740
|
The type of step that this result is for. The first step is always
|
@@ -1837,6 +1853,10 @@ interface GenerateTextResult<TOOLS extends ToolSet, OUTPUT> {
|
|
1837
1853
|
from the provider to the AI SDK and enable provider-specific
|
1838
1854
|
results that can be fully encapsulated in the provider.
|
1839
1855
|
*/
|
1856
|
+
readonly providerMetadata: ProviderMetadata | undefined;
|
1857
|
+
/**
|
1858
|
+
@deprecated Use `providerMetadata` instead.
|
1859
|
+
*/
|
1840
1860
|
readonly experimental_providerMetadata: ProviderMetadata | undefined;
|
1841
1861
|
}
|
1842
1862
|
|
@@ -2102,6 +2122,10 @@ interface StreamTextResult<TOOLS extends ToolSet, PARTIAL_OUTPUT> {
|
|
2102
2122
|
Metadata is passed through from the provider to the AI SDK and
|
2103
2123
|
enables provider-specific results that can be fully encapsulated in the provider.
|
2104
2124
|
*/
|
2125
|
+
readonly providerMetadata: Promise<ProviderMetadata | undefined>;
|
2126
|
+
/**
|
2127
|
+
@deprecated Use `providerMetadata` instead.
|
2128
|
+
*/
|
2105
2129
|
readonly experimental_providerMetadata: Promise<ProviderMetadata | undefined>;
|
2106
2130
|
/**
|
2107
2131
|
The full text that has been generated by the last step.
|
@@ -2293,12 +2317,20 @@ type TextStreamPart<TOOLS extends ToolSet> = {
|
|
2293
2317
|
response: LanguageModelResponseMetadata;
|
2294
2318
|
usage: LanguageModelUsage;
|
2295
2319
|
finishReason: FinishReason;
|
2320
|
+
providerMetadata: ProviderMetadata | undefined;
|
2321
|
+
/**
|
2322
|
+
* @deprecated Use `providerMetadata` instead.
|
2323
|
+
*/
|
2296
2324
|
experimental_providerMetadata?: ProviderMetadata;
|
2297
2325
|
isContinued: boolean;
|
2298
2326
|
} | {
|
2299
2327
|
type: 'finish';
|
2300
2328
|
finishReason: FinishReason;
|
2301
2329
|
usage: LanguageModelUsage;
|
2330
|
+
providerMetadata: ProviderMetadata | undefined;
|
2331
|
+
/**
|
2332
|
+
* @deprecated Use `providerMetadata` instead.
|
2333
|
+
*/
|
2302
2334
|
experimental_providerMetadata?: ProviderMetadata;
|
2303
2335
|
/**
|
2304
2336
|
* @deprecated will be moved into provider metadata
|
package/dist/index.js
CHANGED
@@ -2799,6 +2799,7 @@ var DefaultGenerateObjectResult = class {
|
|
2799
2799
|
this.finishReason = options.finishReason;
|
2800
2800
|
this.usage = options.usage;
|
2801
2801
|
this.warnings = options.warnings;
|
2802
|
+
this.providerMetadata = options.providerMetadata;
|
2802
2803
|
this.experimental_providerMetadata = options.providerMetadata;
|
2803
2804
|
this.response = options.response;
|
2804
2805
|
this.request = options.request;
|
@@ -3409,6 +3410,7 @@ var DefaultStreamObjectResult = class {
|
|
3409
3410
|
headers: rawResponse == null ? void 0 : rawResponse.headers
|
3410
3411
|
},
|
3411
3412
|
warnings,
|
3413
|
+
providerMetadata,
|
3412
3414
|
experimental_providerMetadata: providerMetadata
|
3413
3415
|
}));
|
3414
3416
|
} catch (error2) {
|
@@ -3444,6 +3446,9 @@ var DefaultStreamObjectResult = class {
|
|
3444
3446
|
get experimental_providerMetadata() {
|
3445
3447
|
return this.providerMetadataPromise.value;
|
3446
3448
|
}
|
3449
|
+
get providerMetadata() {
|
3450
|
+
return this.providerMetadataPromise.value;
|
3451
|
+
}
|
3447
3452
|
get warnings() {
|
3448
3453
|
return this.warningsPromise.value;
|
3449
3454
|
}
|
@@ -4103,6 +4108,7 @@ async function generateText({
|
|
4103
4108
|
// deep clone msgs to avoid mutating past messages in multi-step:
|
4104
4109
|
messages: structuredClone(responseMessages)
|
4105
4110
|
},
|
4111
|
+
providerMetadata: currentModelResponse.providerMetadata,
|
4106
4112
|
experimental_providerMetadata: currentModelResponse.providerMetadata,
|
4107
4113
|
isContinued: nextStepType === "continue"
|
4108
4114
|
};
|
@@ -4245,6 +4251,7 @@ var DefaultGenerateTextResult = class {
|
|
4245
4251
|
this.response = options.response;
|
4246
4252
|
this.steps = options.steps;
|
4247
4253
|
this.experimental_providerMetadata = options.providerMetadata;
|
4254
|
+
this.providerMetadata = options.providerMetadata;
|
4248
4255
|
this.logprobs = options.logprobs;
|
4249
4256
|
this.outputResolver = options.outputResolver;
|
4250
4257
|
this.sources = options.sources;
|
@@ -4763,13 +4770,23 @@ function createOutputTransformStream(output) {
|
|
4763
4770
|
let text2 = "";
|
4764
4771
|
let textChunk = "";
|
4765
4772
|
let lastPublishedJson = "";
|
4773
|
+
function publishTextChunk({
|
4774
|
+
controller,
|
4775
|
+
partialOutput = void 0
|
4776
|
+
}) {
|
4777
|
+
controller.enqueue({
|
4778
|
+
part: { type: "text-delta", textDelta: textChunk },
|
4779
|
+
partialOutput
|
4780
|
+
});
|
4781
|
+
textChunk = "";
|
4782
|
+
}
|
4766
4783
|
return new TransformStream({
|
4767
4784
|
transform(chunk, controller) {
|
4785
|
+
if (chunk.type === "step-finish") {
|
4786
|
+
publishTextChunk({ controller });
|
4787
|
+
}
|
4768
4788
|
if (chunk.type !== "text-delta") {
|
4769
|
-
controller.enqueue({
|
4770
|
-
part: chunk,
|
4771
|
-
partialOutput: void 0
|
4772
|
-
});
|
4789
|
+
controller.enqueue({ part: chunk, partialOutput: void 0 });
|
4773
4790
|
return;
|
4774
4791
|
}
|
4775
4792
|
text2 += chunk.textDelta;
|
@@ -4778,27 +4795,14 @@ function createOutputTransformStream(output) {
|
|
4778
4795
|
if (result != null) {
|
4779
4796
|
const currentJson = JSON.stringify(result.partial);
|
4780
4797
|
if (currentJson !== lastPublishedJson) {
|
4781
|
-
controller.
|
4782
|
-
part: {
|
4783
|
-
type: "text-delta",
|
4784
|
-
textDelta: textChunk
|
4785
|
-
},
|
4786
|
-
partialOutput: result.partial
|
4787
|
-
});
|
4798
|
+
publishTextChunk({ controller, partialOutput: result.partial });
|
4788
4799
|
lastPublishedJson = currentJson;
|
4789
|
-
textChunk = "";
|
4790
4800
|
}
|
4791
4801
|
}
|
4792
4802
|
},
|
4793
4803
|
flush(controller) {
|
4794
4804
|
if (textChunk.length > 0) {
|
4795
|
-
|
4796
|
-
part: {
|
4797
|
-
type: "text-delta",
|
4798
|
-
textDelta: textChunk
|
4799
|
-
},
|
4800
|
-
partialOutput: void 0
|
4801
|
-
});
|
4805
|
+
publishTextChunk({ controller });
|
4802
4806
|
}
|
4803
4807
|
}
|
4804
4808
|
});
|
@@ -4940,6 +4944,7 @@ var DefaultStreamTextResult = class {
|
|
4940
4944
|
...part.response,
|
4941
4945
|
messages: [...recordedResponse.messages, ...stepMessages]
|
4942
4946
|
},
|
4947
|
+
providerMetadata: part.experimental_providerMetadata,
|
4943
4948
|
experimental_providerMetadata: part.experimental_providerMetadata,
|
4944
4949
|
isContinued: part.isContinued
|
4945
4950
|
};
|
@@ -5005,6 +5010,7 @@ var DefaultStreamTextResult = class {
|
|
5005
5010
|
request: (_a16 = lastStep.request) != null ? _a16 : {},
|
5006
5011
|
response: lastStep.response,
|
5007
5012
|
warnings: lastStep.warnings,
|
5013
|
+
providerMetadata: lastStep.providerMetadata,
|
5008
5014
|
experimental_providerMetadata: lastStep.experimental_providerMetadata,
|
5009
5015
|
steps: recordedSteps
|
5010
5016
|
}));
|
@@ -5385,6 +5391,7 @@ var DefaultStreamTextResult = class {
|
|
5385
5391
|
type: "step-finish",
|
5386
5392
|
finishReason: stepFinishReason,
|
5387
5393
|
usage: stepUsage,
|
5394
|
+
providerMetadata: stepProviderMetadata,
|
5388
5395
|
experimental_providerMetadata: stepProviderMetadata,
|
5389
5396
|
logprobs: stepLogProbs,
|
5390
5397
|
request: stepRequest,
|
@@ -5402,6 +5409,7 @@ var DefaultStreamTextResult = class {
|
|
5402
5409
|
type: "finish",
|
5403
5410
|
finishReason: stepFinishReason,
|
5404
5411
|
usage: combinedUsage,
|
5412
|
+
providerMetadata: stepProviderMetadata,
|
5405
5413
|
experimental_providerMetadata: stepProviderMetadata,
|
5406
5414
|
logprobs: stepLogProbs,
|
5407
5415
|
response: {
|
@@ -5489,6 +5497,9 @@ var DefaultStreamTextResult = class {
|
|
5489
5497
|
get experimental_providerMetadata() {
|
5490
5498
|
return this.providerMetadataPromise.value;
|
5491
5499
|
}
|
5500
|
+
get providerMetadata() {
|
5501
|
+
return this.providerMetadataPromise.value;
|
5502
|
+
}
|
5492
5503
|
get text() {
|
5493
5504
|
return this.textPromise.value;
|
5494
5505
|
}
|
@@ -5577,118 +5588,110 @@ var DefaultStreamTextResult = class {
|
|
5577
5588
|
sendUsage = true,
|
5578
5589
|
sendReasoning = false
|
5579
5590
|
}) {
|
5580
|
-
|
5581
|
-
|
5582
|
-
|
5583
|
-
|
5584
|
-
|
5585
|
-
|
5586
|
-
|
5587
|
-
|
5588
|
-
|
5589
|
-
|
5590
|
-
|
5591
|
-
|
5592
|
-
|
5593
|
-
|
5594
|
-
|
5595
|
-
|
5596
|
-
|
5597
|
-
|
5598
|
-
|
5591
|
+
return this.fullStream.pipeThrough(
|
5592
|
+
new TransformStream({
|
5593
|
+
transform: async (chunk, controller) => {
|
5594
|
+
const chunkType = chunk.type;
|
5595
|
+
switch (chunkType) {
|
5596
|
+
case "text-delta": {
|
5597
|
+
controller.enqueue((0, import_ui_utils8.formatDataStreamPart)("text", chunk.textDelta));
|
5598
|
+
break;
|
5599
|
+
}
|
5600
|
+
case "reasoning": {
|
5601
|
+
if (sendReasoning) {
|
5602
|
+
controller.enqueue(
|
5603
|
+
(0, import_ui_utils8.formatDataStreamPart)("reasoning", chunk.textDelta)
|
5604
|
+
);
|
5605
|
+
}
|
5606
|
+
break;
|
5607
|
+
}
|
5608
|
+
case "source": {
|
5609
|
+
break;
|
5610
|
+
}
|
5611
|
+
case "tool-call-streaming-start": {
|
5599
5612
|
controller.enqueue(
|
5600
|
-
(0, import_ui_utils8.formatDataStreamPart)("
|
5613
|
+
(0, import_ui_utils8.formatDataStreamPart)("tool_call_streaming_start", {
|
5614
|
+
toolCallId: chunk.toolCallId,
|
5615
|
+
toolName: chunk.toolName
|
5616
|
+
})
|
5601
5617
|
);
|
5618
|
+
break;
|
5619
|
+
}
|
5620
|
+
case "tool-call-delta": {
|
5621
|
+
controller.enqueue(
|
5622
|
+
(0, import_ui_utils8.formatDataStreamPart)("tool_call_delta", {
|
5623
|
+
toolCallId: chunk.toolCallId,
|
5624
|
+
argsTextDelta: chunk.argsTextDelta
|
5625
|
+
})
|
5626
|
+
);
|
5627
|
+
break;
|
5628
|
+
}
|
5629
|
+
case "tool-call": {
|
5630
|
+
controller.enqueue(
|
5631
|
+
(0, import_ui_utils8.formatDataStreamPart)("tool_call", {
|
5632
|
+
toolCallId: chunk.toolCallId,
|
5633
|
+
toolName: chunk.toolName,
|
5634
|
+
args: chunk.args
|
5635
|
+
})
|
5636
|
+
);
|
5637
|
+
break;
|
5638
|
+
}
|
5639
|
+
case "tool-result": {
|
5640
|
+
controller.enqueue(
|
5641
|
+
(0, import_ui_utils8.formatDataStreamPart)("tool_result", {
|
5642
|
+
toolCallId: chunk.toolCallId,
|
5643
|
+
result: chunk.result
|
5644
|
+
})
|
5645
|
+
);
|
5646
|
+
break;
|
5647
|
+
}
|
5648
|
+
case "error": {
|
5649
|
+
controller.enqueue(
|
5650
|
+
(0, import_ui_utils8.formatDataStreamPart)("error", getErrorMessage5(chunk.error))
|
5651
|
+
);
|
5652
|
+
break;
|
5653
|
+
}
|
5654
|
+
case "step-start": {
|
5655
|
+
controller.enqueue(
|
5656
|
+
(0, import_ui_utils8.formatDataStreamPart)("start_step", {
|
5657
|
+
messageId: chunk.messageId
|
5658
|
+
})
|
5659
|
+
);
|
5660
|
+
break;
|
5661
|
+
}
|
5662
|
+
case "step-finish": {
|
5663
|
+
controller.enqueue(
|
5664
|
+
(0, import_ui_utils8.formatDataStreamPart)("finish_step", {
|
5665
|
+
finishReason: chunk.finishReason,
|
5666
|
+
usage: sendUsage ? {
|
5667
|
+
promptTokens: chunk.usage.promptTokens,
|
5668
|
+
completionTokens: chunk.usage.completionTokens
|
5669
|
+
} : void 0,
|
5670
|
+
isContinued: chunk.isContinued
|
5671
|
+
})
|
5672
|
+
);
|
5673
|
+
break;
|
5674
|
+
}
|
5675
|
+
case "finish": {
|
5676
|
+
controller.enqueue(
|
5677
|
+
(0, import_ui_utils8.formatDataStreamPart)("finish_message", {
|
5678
|
+
finishReason: chunk.finishReason,
|
5679
|
+
usage: sendUsage ? {
|
5680
|
+
promptTokens: chunk.usage.promptTokens,
|
5681
|
+
completionTokens: chunk.usage.completionTokens
|
5682
|
+
} : void 0
|
5683
|
+
})
|
5684
|
+
);
|
5685
|
+
break;
|
5686
|
+
}
|
5687
|
+
default: {
|
5688
|
+
const exhaustiveCheck = chunkType;
|
5689
|
+
throw new Error(`Unknown chunk type: ${exhaustiveCheck}`);
|
5602
5690
|
}
|
5603
|
-
break;
|
5604
|
-
}
|
5605
|
-
case "source": {
|
5606
|
-
break;
|
5607
|
-
}
|
5608
|
-
case "tool-call-streaming-start": {
|
5609
|
-
controller.enqueue(
|
5610
|
-
(0, import_ui_utils8.formatDataStreamPart)("tool_call_streaming_start", {
|
5611
|
-
toolCallId: chunk.toolCallId,
|
5612
|
-
toolName: chunk.toolName
|
5613
|
-
})
|
5614
|
-
);
|
5615
|
-
break;
|
5616
|
-
}
|
5617
|
-
case "tool-call-delta": {
|
5618
|
-
controller.enqueue(
|
5619
|
-
(0, import_ui_utils8.formatDataStreamPart)("tool_call_delta", {
|
5620
|
-
toolCallId: chunk.toolCallId,
|
5621
|
-
argsTextDelta: chunk.argsTextDelta
|
5622
|
-
})
|
5623
|
-
);
|
5624
|
-
break;
|
5625
|
-
}
|
5626
|
-
case "tool-call": {
|
5627
|
-
controller.enqueue(
|
5628
|
-
(0, import_ui_utils8.formatDataStreamPart)("tool_call", {
|
5629
|
-
toolCallId: chunk.toolCallId,
|
5630
|
-
toolName: chunk.toolName,
|
5631
|
-
args: chunk.args
|
5632
|
-
})
|
5633
|
-
);
|
5634
|
-
break;
|
5635
|
-
}
|
5636
|
-
case "tool-result": {
|
5637
|
-
controller.enqueue(
|
5638
|
-
(0, import_ui_utils8.formatDataStreamPart)("tool_result", {
|
5639
|
-
toolCallId: chunk.toolCallId,
|
5640
|
-
result: chunk.result
|
5641
|
-
})
|
5642
|
-
);
|
5643
|
-
break;
|
5644
|
-
}
|
5645
|
-
case "error": {
|
5646
|
-
controller.enqueue(
|
5647
|
-
(0, import_ui_utils8.formatDataStreamPart)("error", getErrorMessage5(chunk.error))
|
5648
|
-
);
|
5649
|
-
break;
|
5650
|
-
}
|
5651
|
-
case "step-start": {
|
5652
|
-
controller.enqueue(
|
5653
|
-
(0, import_ui_utils8.formatDataStreamPart)("start_step", {
|
5654
|
-
messageId: chunk.messageId
|
5655
|
-
})
|
5656
|
-
);
|
5657
|
-
break;
|
5658
|
-
}
|
5659
|
-
case "step-finish": {
|
5660
|
-
controller.enqueue(
|
5661
|
-
(0, import_ui_utils8.formatDataStreamPart)("finish_step", {
|
5662
|
-
finishReason: chunk.finishReason,
|
5663
|
-
usage: sendUsage ? {
|
5664
|
-
promptTokens: chunk.usage.promptTokens,
|
5665
|
-
completionTokens: chunk.usage.completionTokens
|
5666
|
-
} : void 0,
|
5667
|
-
isContinued: chunk.isContinued
|
5668
|
-
})
|
5669
|
-
);
|
5670
|
-
break;
|
5671
|
-
}
|
5672
|
-
case "finish": {
|
5673
|
-
controller.enqueue(
|
5674
|
-
(0, import_ui_utils8.formatDataStreamPart)("finish_message", {
|
5675
|
-
finishReason: chunk.finishReason,
|
5676
|
-
usage: sendUsage ? {
|
5677
|
-
promptTokens: chunk.usage.promptTokens,
|
5678
|
-
completionTokens: chunk.usage.completionTokens
|
5679
|
-
} : void 0
|
5680
|
-
})
|
5681
|
-
);
|
5682
|
-
break;
|
5683
|
-
}
|
5684
|
-
default: {
|
5685
|
-
const exhaustiveCheck = chunkType;
|
5686
|
-
throw new Error(`Unknown chunk type: ${exhaustiveCheck}`);
|
5687
5691
|
}
|
5688
5692
|
}
|
5689
|
-
}
|
5690
|
-
|
5691
|
-
return this.fullStream.pipeThrough(callbackTransformer).pipeThrough(streamPartsTransformer);
|
5693
|
+
})
|
5694
|
+
);
|
5692
5695
|
}
|
5693
5696
|
pipeDataStreamToResponse(response, {
|
5694
5697
|
status,
|