ai 4.0.0-canary.3 → 4.0.0-canary.5
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 +39 -0
- package/dist/index.d.mts +45 -374
- package/dist/index.d.ts +45 -374
- package/dist/index.js +87 -338
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +61 -303
- package/dist/index.mjs.map +1 -1
- package/package.json +6 -9
- package/react/dist/index.d.ts +0 -17
- package/rsc/dist/rsc-server.mjs +0 -6
- package/rsc/dist/rsc-server.mjs.map +1 -1
- package/react/dist/index.server.d.mts +0 -17
- package/react/dist/index.server.d.ts +0 -17
- package/react/dist/index.server.js +0 -50
- package/react/dist/index.server.js.map +0 -1
- package/react/dist/index.server.mjs +0 -23
- package/react/dist/index.server.mjs.map +0 -1
package/dist/index.mjs
CHANGED
@@ -6,12 +6,12 @@ var __export = (target, all) => {
|
|
6
6
|
|
7
7
|
// streams/index.ts
|
8
8
|
import {
|
9
|
-
formatStreamPart,
|
9
|
+
formatStreamPart as formatStreamPart4,
|
10
10
|
parseStreamPart,
|
11
11
|
readDataStream,
|
12
12
|
processDataProtocolResponse
|
13
13
|
} from "@ai-sdk/ui-utils";
|
14
|
-
import { generateId as
|
14
|
+
import { generateId as generateId2 } from "@ai-sdk/provider-utils";
|
15
15
|
|
16
16
|
// core/index.ts
|
17
17
|
import { jsonSchema } from "@ai-sdk/ui-utils";
|
@@ -2085,9 +2085,6 @@ async function generateObject({
|
|
2085
2085
|
"ai.response.timestamp": responseData.timestamp.toISOString(),
|
2086
2086
|
"ai.usage.promptTokens": result2.usage.promptTokens,
|
2087
2087
|
"ai.usage.completionTokens": result2.usage.completionTokens,
|
2088
|
-
// deprecated:
|
2089
|
-
"ai.finishReason": result2.finishReason,
|
2090
|
-
"ai.result.object": { output: () => result2.text },
|
2091
2088
|
// standardized gen-ai llm span attributes:
|
2092
2089
|
"gen_ai.response.finish_reasons": [result2.finishReason],
|
2093
2090
|
"gen_ai.response.id": responseData.id,
|
@@ -2192,9 +2189,6 @@ async function generateObject({
|
|
2192
2189
|
"ai.response.timestamp": responseData.timestamp.toISOString(),
|
2193
2190
|
"ai.usage.promptTokens": result2.usage.promptTokens,
|
2194
2191
|
"ai.usage.completionTokens": result2.usage.completionTokens,
|
2195
|
-
// deprecated:
|
2196
|
-
"ai.finishReason": result2.finishReason,
|
2197
|
-
"ai.result.object": { output: () => objectText },
|
2198
2192
|
// standardized gen-ai llm span attributes:
|
2199
2193
|
"gen_ai.response.finish_reasons": [result2.finishReason],
|
2200
2194
|
"gen_ai.response.id": responseData.id,
|
@@ -2248,12 +2242,7 @@ async function generateObject({
|
|
2248
2242
|
output: () => JSON.stringify(validationResult.value)
|
2249
2243
|
},
|
2250
2244
|
"ai.usage.promptTokens": usage.promptTokens,
|
2251
|
-
"ai.usage.completionTokens": usage.completionTokens
|
2252
|
-
// deprecated:
|
2253
|
-
"ai.finishReason": finishReason,
|
2254
|
-
"ai.result.object": {
|
2255
|
-
output: () => JSON.stringify(validationResult.value)
|
2256
|
-
}
|
2245
|
+
"ai.usage.completionTokens": usage.completionTokens
|
2257
2246
|
}
|
2258
2247
|
})
|
2259
2248
|
);
|
@@ -2282,9 +2271,6 @@ var DefaultGenerateObjectResult = class {
|
|
2282
2271
|
this.experimental_providerMetadata = options.providerMetadata;
|
2283
2272
|
this.response = options.response;
|
2284
2273
|
this.request = options.request;
|
2285
|
-
this.rawResponse = {
|
2286
|
-
headers: options.response.headers
|
2287
|
-
};
|
2288
2274
|
this.logprobs = options.logprobs;
|
2289
2275
|
}
|
2290
2276
|
toJsonResponse(init) {
|
@@ -2297,7 +2283,6 @@ var DefaultGenerateObjectResult = class {
|
|
2297
2283
|
});
|
2298
2284
|
}
|
2299
2285
|
};
|
2300
|
-
var experimental_generateObject = generateObject;
|
2301
2286
|
|
2302
2287
|
// core/generate-object/stream-object.ts
|
2303
2288
|
import { createIdGenerator as createIdGenerator2 } from "@ai-sdk/provider-utils";
|
@@ -2663,7 +2648,6 @@ var DefaultStreamObjectResult = class {
|
|
2663
2648
|
generateId: generateId3
|
2664
2649
|
}) {
|
2665
2650
|
this.warnings = warnings;
|
2666
|
-
this.rawResponse = rawResponse;
|
2667
2651
|
this.outputStrategy = outputStrategy;
|
2668
2652
|
this.request = Promise.resolve(request);
|
2669
2653
|
this.objectPromise = new DelayedPromise();
|
@@ -2796,9 +2780,6 @@ var DefaultStreamObjectResult = class {
|
|
2796
2780
|
"ai.response.timestamp": response.timestamp.toISOString(),
|
2797
2781
|
"ai.usage.promptTokens": finalUsage.promptTokens,
|
2798
2782
|
"ai.usage.completionTokens": finalUsage.completionTokens,
|
2799
|
-
// deprecated
|
2800
|
-
"ai.finishReason": finishReason,
|
2801
|
-
"ai.result.object": { output: () => JSON.stringify(object) },
|
2802
2783
|
// standardized gen-ai llm span attributes:
|
2803
2784
|
"gen_ai.response.finish_reasons": [finishReason],
|
2804
2785
|
"gen_ai.response.id": response.id,
|
@@ -2817,9 +2798,7 @@ var DefaultStreamObjectResult = class {
|
|
2817
2798
|
"ai.usage.completionTokens": finalUsage.completionTokens,
|
2818
2799
|
"ai.response.object": {
|
2819
2800
|
output: () => JSON.stringify(object)
|
2820
|
-
}
|
2821
|
-
// deprecated
|
2822
|
-
"ai.result.object": { output: () => JSON.stringify(object) }
|
2801
|
+
}
|
2823
2802
|
}
|
2824
2803
|
})
|
2825
2804
|
);
|
@@ -2827,7 +2806,6 @@ var DefaultStreamObjectResult = class {
|
|
2827
2806
|
usage: finalUsage,
|
2828
2807
|
object,
|
2829
2808
|
error,
|
2830
|
-
rawResponse,
|
2831
2809
|
response: {
|
2832
2810
|
...response,
|
2833
2811
|
headers: rawResponse == null ? void 0 : rawResponse.headers
|
@@ -2920,7 +2898,6 @@ var DefaultStreamObjectResult = class {
|
|
2920
2898
|
});
|
2921
2899
|
}
|
2922
2900
|
};
|
2923
|
-
var experimental_streamObject = streamObject;
|
2924
2901
|
|
2925
2902
|
// core/generate-text/generate-text.ts
|
2926
2903
|
import { createIdGenerator as createIdGenerator3 } from "@ai-sdk/provider-utils";
|
@@ -2963,12 +2940,6 @@ var InvalidToolArgumentsError = class extends AISDKError8 {
|
|
2963
2940
|
static isInstance(error) {
|
2964
2941
|
return AISDKError8.hasMarker(error, marker8);
|
2965
2942
|
}
|
2966
|
-
/**
|
2967
|
-
* @deprecated use `isInstance` instead
|
2968
|
-
*/
|
2969
|
-
static isInvalidToolArgumentsError(error) {
|
2970
|
-
return error instanceof Error && error.name === name8 && typeof error.toolName === "string" && typeof error.toolArgs === "string";
|
2971
|
-
}
|
2972
2943
|
};
|
2973
2944
|
_a8 = symbol8;
|
2974
2945
|
|
@@ -3144,9 +3115,7 @@ async function generateText({
|
|
3144
3115
|
maxRetries,
|
3145
3116
|
abortSignal,
|
3146
3117
|
headers,
|
3147
|
-
|
3148
|
-
maxToolRoundtrips = maxAutomaticRoundtrips,
|
3149
|
-
maxSteps = maxToolRoundtrips != null ? maxToolRoundtrips + 1 : 1,
|
3118
|
+
maxSteps = 1,
|
3150
3119
|
experimental_continuationSteps,
|
3151
3120
|
experimental_continueSteps: continueSteps = experimental_continuationSteps != null ? experimental_continuationSteps : false,
|
3152
3121
|
experimental_telemetry: telemetry,
|
@@ -3300,14 +3269,6 @@ async function generateText({
|
|
3300
3269
|
"ai.response.timestamp": responseData.timestamp.toISOString(),
|
3301
3270
|
"ai.usage.promptTokens": result.usage.promptTokens,
|
3302
3271
|
"ai.usage.completionTokens": result.usage.completionTokens,
|
3303
|
-
// deprecated:
|
3304
|
-
"ai.finishReason": result.finishReason,
|
3305
|
-
"ai.result.text": {
|
3306
|
-
output: () => result.text
|
3307
|
-
},
|
3308
|
-
"ai.result.toolCalls": {
|
3309
|
-
output: () => JSON.stringify(result.toolCalls)
|
3310
|
-
},
|
3311
3272
|
// standardized gen-ai llm span attributes:
|
3312
3273
|
"gen_ai.response.finish_reasons": [result.finishReason],
|
3313
3274
|
"gen_ai.response.id": responseData.id,
|
@@ -3410,15 +3371,7 @@ async function generateText({
|
|
3410
3371
|
output: () => JSON.stringify(currentModelResponse.toolCalls)
|
3411
3372
|
},
|
3412
3373
|
"ai.usage.promptTokens": currentModelResponse.usage.promptTokens,
|
3413
|
-
"ai.usage.completionTokens": currentModelResponse.usage.completionTokens
|
3414
|
-
// deprecated:
|
3415
|
-
"ai.finishReason": currentModelResponse.finishReason,
|
3416
|
-
"ai.result.text": {
|
3417
|
-
output: () => currentModelResponse.text
|
3418
|
-
},
|
3419
|
-
"ai.result.toolCalls": {
|
3420
|
-
output: () => JSON.stringify(currentModelResponse.toolCalls)
|
3421
|
-
}
|
3374
|
+
"ai.usage.completionTokens": currentModelResponse.usage.completionTokens
|
3422
3375
|
}
|
3423
3376
|
})
|
3424
3377
|
);
|
@@ -3514,19 +3467,15 @@ var DefaultGenerateTextResult = class {
|
|
3514
3467
|
this.request = options.request;
|
3515
3468
|
this.response = options.response;
|
3516
3469
|
this.responseMessages = options.responseMessages;
|
3517
|
-
this.roundtrips = options.steps;
|
3518
3470
|
this.steps = options.steps;
|
3519
3471
|
this.experimental_providerMetadata = options.providerMetadata;
|
3520
|
-
this.rawResponse = {
|
3521
|
-
headers: options.response.headers
|
3522
|
-
};
|
3523
3472
|
this.logprobs = options.logprobs;
|
3524
3473
|
}
|
3525
3474
|
};
|
3526
|
-
var experimental_generateText = generateText;
|
3527
3475
|
|
3528
3476
|
// core/generate-text/stream-text.ts
|
3529
3477
|
import { createIdGenerator as createIdGenerator4 } from "@ai-sdk/provider-utils";
|
3478
|
+
import { formatStreamPart } from "@ai-sdk/ui-utils";
|
3530
3479
|
|
3531
3480
|
// core/util/create-stitchable-stream.ts
|
3532
3481
|
function createStitchableStream() {
|
@@ -3883,8 +3832,7 @@ async function streamText({
|
|
3883
3832
|
maxRetries,
|
3884
3833
|
abortSignal,
|
3885
3834
|
headers,
|
3886
|
-
|
3887
|
-
maxSteps = maxToolRoundtrips != null ? maxToolRoundtrips + 1 : 1,
|
3835
|
+
maxSteps = 1,
|
3888
3836
|
experimental_continueSteps: continueSteps = false,
|
3889
3837
|
experimental_telemetry: telemetry,
|
3890
3838
|
experimental_providerMetadata: providerMetadata,
|
@@ -4177,14 +4125,10 @@ var DefaultStreamTextResult = class {
|
|
4177
4125
|
const msToFirstChunk = now2() - startTimestamp;
|
4178
4126
|
stepFirstChunk = false;
|
4179
4127
|
doStreamSpan2.addEvent("ai.stream.firstChunk", {
|
4180
|
-
"ai.response.msToFirstChunk": msToFirstChunk
|
4181
|
-
// deprecated:
|
4182
|
-
"ai.stream.msToFirstChunk": msToFirstChunk
|
4128
|
+
"ai.response.msToFirstChunk": msToFirstChunk
|
4183
4129
|
});
|
4184
4130
|
doStreamSpan2.setAttributes({
|
4185
|
-
"ai.response.msToFirstChunk": msToFirstChunk
|
4186
|
-
// deprecated:
|
4187
|
-
"ai.stream.msToFirstChunk": msToFirstChunk
|
4131
|
+
"ai.response.msToFirstChunk": msToFirstChunk
|
4188
4132
|
});
|
4189
4133
|
}
|
4190
4134
|
if (chunk.type === "text-delta" && chunk.textDelta.length === 0) {
|
@@ -4309,12 +4253,6 @@ var DefaultStreamTextResult = class {
|
|
4309
4253
|
"ai.response.timestamp": stepResponse.timestamp.toISOString(),
|
4310
4254
|
"ai.usage.promptTokens": stepUsage.promptTokens,
|
4311
4255
|
"ai.usage.completionTokens": stepUsage.completionTokens,
|
4312
|
-
// deprecated
|
4313
|
-
"ai.finishReason": stepFinishReason,
|
4314
|
-
"ai.result.text": { output: () => stepText },
|
4315
|
-
"ai.result.toolCalls": {
|
4316
|
-
output: () => stepToolCallsJson
|
4317
|
-
},
|
4318
4256
|
// standardized gen-ai llm span attributes:
|
4319
4257
|
"gen_ai.response.finish_reasons": [stepFinishReason],
|
4320
4258
|
"gen_ai.response.id": stepResponse.id,
|
@@ -4369,7 +4307,6 @@ var DefaultStreamTextResult = class {
|
|
4369
4307
|
warnings: self.warnings,
|
4370
4308
|
logprobs: stepLogProbs,
|
4371
4309
|
request: stepRequest,
|
4372
|
-
rawResponse: self.rawResponse,
|
4373
4310
|
response: {
|
4374
4311
|
...stepResponse,
|
4375
4312
|
headers: (_a11 = self.rawResponse) == null ? void 0 : _a11.headers,
|
@@ -4430,13 +4367,7 @@ var DefaultStreamTextResult = class {
|
|
4430
4367
|
output: () => stepToolCallsJson
|
4431
4368
|
},
|
4432
4369
|
"ai.usage.promptTokens": combinedUsage.promptTokens,
|
4433
|
-
"ai.usage.completionTokens": combinedUsage.completionTokens
|
4434
|
-
// deprecated
|
4435
|
-
"ai.finishReason": stepFinishReason,
|
4436
|
-
"ai.result.text": { output: () => fullStepText },
|
4437
|
-
"ai.result.toolCalls": {
|
4438
|
-
output: () => stepToolCallsJson
|
4439
|
-
}
|
4370
|
+
"ai.usage.completionTokens": combinedUsage.completionTokens
|
4440
4371
|
}
|
4441
4372
|
})
|
4442
4373
|
);
|
@@ -4466,7 +4397,6 @@ var DefaultStreamTextResult = class {
|
|
4466
4397
|
// The type exposed to the users will be correctly inferred.
|
4467
4398
|
toolResults: stepToolResults,
|
4468
4399
|
request: stepRequest,
|
4469
|
-
rawResponse,
|
4470
4400
|
response: {
|
4471
4401
|
...stepResponse,
|
4472
4402
|
headers: rawResponse == null ? void 0 : rawResponse.headers,
|
@@ -4530,37 +4460,18 @@ var DefaultStreamTextResult = class {
|
|
4530
4460
|
}
|
4531
4461
|
});
|
4532
4462
|
}
|
4533
|
-
toAIStream(callbacks = {}) {
|
4534
|
-
return this.toDataStreamInternal({ callbacks });
|
4535
|
-
}
|
4536
4463
|
toDataStreamInternal({
|
4537
|
-
callbacks = {},
|
4538
4464
|
getErrorMessage: getErrorMessage3 = () => "",
|
4539
4465
|
// mask error messages for safety by default
|
4540
4466
|
sendUsage = true
|
4541
4467
|
} = {}) {
|
4542
4468
|
let aggregatedResponse = "";
|
4543
4469
|
const callbackTransformer = new TransformStream({
|
4544
|
-
async start() {
|
4545
|
-
if (callbacks.onStart)
|
4546
|
-
await callbacks.onStart();
|
4547
|
-
},
|
4548
4470
|
async transform(chunk, controller) {
|
4549
4471
|
controller.enqueue(chunk);
|
4550
4472
|
if (chunk.type === "text-delta") {
|
4551
|
-
|
4552
|
-
aggregatedResponse += textDelta;
|
4553
|
-
if (callbacks.onToken)
|
4554
|
-
await callbacks.onToken(textDelta);
|
4555
|
-
if (callbacks.onText)
|
4556
|
-
await callbacks.onText(textDelta);
|
4473
|
+
aggregatedResponse += chunk.textDelta;
|
4557
4474
|
}
|
4558
|
-
},
|
4559
|
-
async flush() {
|
4560
|
-
if (callbacks.onCompletion)
|
4561
|
-
await callbacks.onCompletion(aggregatedResponse);
|
4562
|
-
if (callbacks.onFinal)
|
4563
|
-
await callbacks.onFinal(aggregatedResponse);
|
4564
4475
|
}
|
4565
4476
|
});
|
4566
4477
|
const streamPartsTransformer = new TransformStream({
|
@@ -4648,9 +4559,6 @@ var DefaultStreamTextResult = class {
|
|
4648
4559
|
});
|
4649
4560
|
return this.fullStream.pipeThrough(callbackTransformer).pipeThrough(streamPartsTransformer).pipeThrough(new TextEncoderStream());
|
4650
4561
|
}
|
4651
|
-
pipeAIStreamToResponse(response, init) {
|
4652
|
-
return this.pipeDataStreamToResponse(response, init);
|
4653
|
-
}
|
4654
4562
|
pipeDataStreamToResponse(response, options) {
|
4655
4563
|
const init = options == null ? void 0 : "init" in options ? options.init : {
|
4656
4564
|
headers: "headers" in options ? options.headers : void 0,
|
@@ -4682,9 +4590,6 @@ var DefaultStreamTextResult = class {
|
|
4682
4590
|
stream: this.textStream.pipeThrough(new TextEncoderStream())
|
4683
4591
|
});
|
4684
4592
|
}
|
4685
|
-
toAIStreamResponse(options) {
|
4686
|
-
return this.toDataStreamResponse(options);
|
4687
|
-
}
|
4688
4593
|
toDataStream(options) {
|
4689
4594
|
const stream = this.toDataStreamInternal({
|
4690
4595
|
getErrorMessage: options == null ? void 0 : options.getErrorMessage,
|
@@ -4724,7 +4629,6 @@ var DefaultStreamTextResult = class {
|
|
4724
4629
|
});
|
4725
4630
|
}
|
4726
4631
|
};
|
4727
|
-
var experimental_streamText = streamText;
|
4728
4632
|
|
4729
4633
|
// core/middleware/wrap-language-model.ts
|
4730
4634
|
var experimental_wrapLanguageModel = ({
|
@@ -4911,123 +4815,6 @@ function magnitude(vector) {
|
|
4911
4815
|
return Math.sqrt(dotProduct(vector, vector));
|
4912
4816
|
}
|
4913
4817
|
|
4914
|
-
// streams/ai-stream.ts
|
4915
|
-
import {
|
4916
|
-
createParser
|
4917
|
-
} from "eventsource-parser";
|
4918
|
-
function createEventStreamTransformer(customParser) {
|
4919
|
-
const textDecoder = new TextDecoder();
|
4920
|
-
let eventSourceParser;
|
4921
|
-
return new TransformStream({
|
4922
|
-
async start(controller) {
|
4923
|
-
eventSourceParser = createParser(
|
4924
|
-
(event) => {
|
4925
|
-
if ("data" in event && event.type === "event" && event.data === "[DONE]" || // Replicate doesn't send [DONE] but does send a 'done' event
|
4926
|
-
// @see https://replicate.com/docs/streaming
|
4927
|
-
event.event === "done") {
|
4928
|
-
controller.terminate();
|
4929
|
-
return;
|
4930
|
-
}
|
4931
|
-
if ("data" in event) {
|
4932
|
-
const parsedMessage = customParser ? customParser(event.data, {
|
4933
|
-
event: event.event
|
4934
|
-
}) : event.data;
|
4935
|
-
if (parsedMessage)
|
4936
|
-
controller.enqueue(parsedMessage);
|
4937
|
-
}
|
4938
|
-
}
|
4939
|
-
);
|
4940
|
-
},
|
4941
|
-
transform(chunk) {
|
4942
|
-
eventSourceParser.feed(textDecoder.decode(chunk));
|
4943
|
-
}
|
4944
|
-
});
|
4945
|
-
}
|
4946
|
-
function createCallbacksTransformer(cb) {
|
4947
|
-
const textEncoder = new TextEncoder();
|
4948
|
-
let aggregatedResponse = "";
|
4949
|
-
const callbacks = cb || {};
|
4950
|
-
return new TransformStream({
|
4951
|
-
async start() {
|
4952
|
-
if (callbacks.onStart)
|
4953
|
-
await callbacks.onStart();
|
4954
|
-
},
|
4955
|
-
async transform(message, controller) {
|
4956
|
-
const content = typeof message === "string" ? message : message.content;
|
4957
|
-
controller.enqueue(textEncoder.encode(content));
|
4958
|
-
aggregatedResponse += content;
|
4959
|
-
if (callbacks.onToken)
|
4960
|
-
await callbacks.onToken(content);
|
4961
|
-
if (callbacks.onText && typeof message === "string") {
|
4962
|
-
await callbacks.onText(message);
|
4963
|
-
}
|
4964
|
-
},
|
4965
|
-
async flush() {
|
4966
|
-
if (callbacks.onCompletion) {
|
4967
|
-
await callbacks.onCompletion(aggregatedResponse);
|
4968
|
-
}
|
4969
|
-
}
|
4970
|
-
});
|
4971
|
-
}
|
4972
|
-
function trimStartOfStreamHelper() {
|
4973
|
-
let isStreamStart = true;
|
4974
|
-
return (text) => {
|
4975
|
-
if (isStreamStart) {
|
4976
|
-
text = text.trimStart();
|
4977
|
-
if (text)
|
4978
|
-
isStreamStart = false;
|
4979
|
-
}
|
4980
|
-
return text;
|
4981
|
-
};
|
4982
|
-
}
|
4983
|
-
function AIStream(response, customParser, callbacks) {
|
4984
|
-
if (!response.ok) {
|
4985
|
-
if (response.body) {
|
4986
|
-
const reader = response.body.getReader();
|
4987
|
-
return new ReadableStream({
|
4988
|
-
async start(controller) {
|
4989
|
-
const { done, value } = await reader.read();
|
4990
|
-
if (!done) {
|
4991
|
-
const errorText = new TextDecoder().decode(value);
|
4992
|
-
controller.error(new Error(`Response error: ${errorText}`));
|
4993
|
-
}
|
4994
|
-
}
|
4995
|
-
});
|
4996
|
-
} else {
|
4997
|
-
return new ReadableStream({
|
4998
|
-
start(controller) {
|
4999
|
-
controller.error(new Error("Response error: No response body"));
|
5000
|
-
}
|
5001
|
-
});
|
5002
|
-
}
|
5003
|
-
}
|
5004
|
-
const responseBodyStream = response.body || createEmptyReadableStream();
|
5005
|
-
return responseBodyStream.pipeThrough(createEventStreamTransformer(customParser)).pipeThrough(createCallbacksTransformer(callbacks));
|
5006
|
-
}
|
5007
|
-
function createEmptyReadableStream() {
|
5008
|
-
return new ReadableStream({
|
5009
|
-
start(controller) {
|
5010
|
-
controller.close();
|
5011
|
-
}
|
5012
|
-
});
|
5013
|
-
}
|
5014
|
-
function readableFromAsyncIterable(iterable) {
|
5015
|
-
let it = iterable[Symbol.asyncIterator]();
|
5016
|
-
return new ReadableStream({
|
5017
|
-
async pull(controller) {
|
5018
|
-
const { done, value } = await it.next();
|
5019
|
-
if (done)
|
5020
|
-
controller.close();
|
5021
|
-
else
|
5022
|
-
controller.enqueue(value);
|
5023
|
-
},
|
5024
|
-
async cancel(reason) {
|
5025
|
-
var _a11;
|
5026
|
-
await ((_a11 = it.return) == null ? void 0 : _a11.call(it, reason));
|
5027
|
-
}
|
5028
|
-
});
|
5029
|
-
}
|
5030
|
-
|
5031
4818
|
// streams/assistant-response.ts
|
5032
4819
|
import {
|
5033
4820
|
formatStreamPart as formatStreamPart2
|
@@ -5133,6 +4920,32 @@ __export(langchain_adapter_exports, {
|
|
5133
4920
|
toDataStreamResponse: () => toDataStreamResponse
|
5134
4921
|
});
|
5135
4922
|
|
4923
|
+
// streams/stream-callbacks.ts
|
4924
|
+
function createCallbacksTransformer(callbacks = {}) {
|
4925
|
+
const textEncoder = new TextEncoder();
|
4926
|
+
let aggregatedResponse = "";
|
4927
|
+
return new TransformStream({
|
4928
|
+
async start() {
|
4929
|
+
if (callbacks.onStart)
|
4930
|
+
await callbacks.onStart();
|
4931
|
+
},
|
4932
|
+
async transform(message, controller) {
|
4933
|
+
controller.enqueue(textEncoder.encode(message));
|
4934
|
+
aggregatedResponse += message;
|
4935
|
+
if (callbacks.onToken)
|
4936
|
+
await callbacks.onToken(message);
|
4937
|
+
if (callbacks.onText && typeof message === "string") {
|
4938
|
+
await callbacks.onText(message);
|
4939
|
+
}
|
4940
|
+
},
|
4941
|
+
async flush() {
|
4942
|
+
if (callbacks.onCompletion) {
|
4943
|
+
await callbacks.onCompletion(aggregatedResponse);
|
4944
|
+
}
|
4945
|
+
}
|
4946
|
+
});
|
4947
|
+
}
|
4948
|
+
|
5136
4949
|
// streams/stream-data.ts
|
5137
4950
|
import { formatStreamPart as formatStreamPart3 } from "@ai-sdk/ui-utils";
|
5138
4951
|
|
@@ -5140,7 +4953,7 @@ import { formatStreamPart as formatStreamPart3 } from "@ai-sdk/ui-utils";
|
|
5140
4953
|
var HANGING_STREAM_WARNING_TIME_MS = 15 * 1e3;
|
5141
4954
|
|
5142
4955
|
// streams/stream-data.ts
|
5143
|
-
var
|
4956
|
+
var StreamData = class {
|
5144
4957
|
constructor() {
|
5145
4958
|
this.encoder = new TextEncoder();
|
5146
4959
|
this.controller = null;
|
@@ -5211,7 +5024,7 @@ function createStreamDataTransformer() {
|
|
5211
5024
|
}
|
5212
5025
|
});
|
5213
5026
|
}
|
5214
|
-
var experimental_StreamData = class extends
|
5027
|
+
var experimental_StreamData = class extends StreamData {
|
5215
5028
|
};
|
5216
5029
|
|
5217
5030
|
// streams/langchain-adapter.ts
|
@@ -5275,8 +5088,16 @@ __export(llamaindex_adapter_exports, {
|
|
5275
5088
|
toDataStream: () => toDataStream2,
|
5276
5089
|
toDataStreamResponse: () => toDataStreamResponse2
|
5277
5090
|
});
|
5091
|
+
import { convertAsyncIteratorToReadableStream } from "@ai-sdk/provider-utils";
|
5278
5092
|
function toDataStream2(stream, callbacks) {
|
5279
|
-
|
5093
|
+
const trimStart = trimStartOfStream();
|
5094
|
+
return convertAsyncIteratorToReadableStream(stream[Symbol.asyncIterator]()).pipeThrough(
|
5095
|
+
new TransformStream({
|
5096
|
+
async transform(message, controller) {
|
5097
|
+
controller.enqueue(trimStart(message.delta));
|
5098
|
+
}
|
5099
|
+
})
|
5100
|
+
).pipeThrough(createCallbacksTransformer(callbacks)).pipeThrough(createStreamDataTransformer());
|
5280
5101
|
}
|
5281
5102
|
function toDataStreamResponse2(stream, options = {}) {
|
5282
5103
|
var _a11;
|
@@ -5292,72 +5113,19 @@ function toDataStreamResponse2(stream, options = {}) {
|
|
5292
5113
|
})
|
5293
5114
|
});
|
5294
5115
|
}
|
5295
|
-
function
|
5296
|
-
|
5297
|
-
|
5298
|
-
|
5299
|
-
|
5300
|
-
|
5301
|
-
|
5302
|
-
if (done) {
|
5303
|
-
controller.close();
|
5304
|
-
return;
|
5305
|
-
}
|
5306
|
-
const text = trimStartOfStream((_a11 = value.delta) != null ? _a11 : "");
|
5307
|
-
if (text) {
|
5308
|
-
controller.enqueue(text);
|
5309
|
-
}
|
5116
|
+
function trimStartOfStream() {
|
5117
|
+
let isStreamStart = true;
|
5118
|
+
return (text) => {
|
5119
|
+
if (isStreamStart) {
|
5120
|
+
text = text.trimStart();
|
5121
|
+
if (text)
|
5122
|
+
isStreamStart = false;
|
5310
5123
|
}
|
5311
|
-
|
5312
|
-
}
|
5313
|
-
|
5314
|
-
// streams/stream-to-response.ts
|
5315
|
-
function streamToResponse(res, response, init, data) {
|
5316
|
-
var _a11;
|
5317
|
-
response.writeHead((_a11 = init == null ? void 0 : init.status) != null ? _a11 : 200, {
|
5318
|
-
"Content-Type": "text/plain; charset=utf-8",
|
5319
|
-
...init == null ? void 0 : init.headers
|
5320
|
-
});
|
5321
|
-
let processedStream = res;
|
5322
|
-
if (data) {
|
5323
|
-
processedStream = mergeStreams(data.stream, res);
|
5324
|
-
}
|
5325
|
-
const reader = processedStream.getReader();
|
5326
|
-
function read() {
|
5327
|
-
reader.read().then(({ done, value }) => {
|
5328
|
-
if (done) {
|
5329
|
-
response.end();
|
5330
|
-
return;
|
5331
|
-
}
|
5332
|
-
response.write(value);
|
5333
|
-
read();
|
5334
|
-
});
|
5335
|
-
}
|
5336
|
-
read();
|
5124
|
+
return text;
|
5125
|
+
};
|
5337
5126
|
}
|
5338
|
-
|
5339
|
-
// streams/streaming-text-response.ts
|
5340
|
-
var StreamingTextResponse = class extends Response {
|
5341
|
-
constructor(res, init, data) {
|
5342
|
-
let processedStream = res;
|
5343
|
-
if (data) {
|
5344
|
-
processedStream = mergeStreams(data.stream, res);
|
5345
|
-
}
|
5346
|
-
super(processedStream, {
|
5347
|
-
...init,
|
5348
|
-
status: 200,
|
5349
|
-
headers: prepareResponseHeaders(init, {
|
5350
|
-
contentType: "text/plain; charset=utf-8"
|
5351
|
-
})
|
5352
|
-
});
|
5353
|
-
}
|
5354
|
-
};
|
5355
|
-
|
5356
|
-
// streams/index.ts
|
5357
|
-
var generateId2 = generateIdImpl;
|
5358
5127
|
export {
|
5359
5128
|
AISDKError10 as AISDKError,
|
5360
|
-
AIStream,
|
5361
5129
|
APICallError2 as APICallError,
|
5362
5130
|
AssistantResponse,
|
5363
5131
|
DownloadError,
|
@@ -5379,14 +5147,11 @@ export {
|
|
5379
5147
|
NoSuchProviderError,
|
5380
5148
|
NoSuchToolError,
|
5381
5149
|
RetryError,
|
5382
|
-
|
5383
|
-
StreamingTextResponse,
|
5150
|
+
StreamData,
|
5384
5151
|
TypeValidationError2 as TypeValidationError,
|
5385
5152
|
UnsupportedFunctionalityError2 as UnsupportedFunctionalityError,
|
5386
5153
|
convertToCoreMessages,
|
5387
5154
|
cosineSimilarity,
|
5388
|
-
createCallbacksTransformer,
|
5389
|
-
createEventStreamTransformer,
|
5390
5155
|
createStreamDataTransformer,
|
5391
5156
|
embed,
|
5392
5157
|
embedMany,
|
@@ -5395,12 +5160,8 @@ export {
|
|
5395
5160
|
experimental_createModelRegistry,
|
5396
5161
|
experimental_createProviderRegistry,
|
5397
5162
|
experimental_customProvider,
|
5398
|
-
experimental_generateObject,
|
5399
|
-
experimental_generateText,
|
5400
|
-
experimental_streamObject,
|
5401
|
-
experimental_streamText,
|
5402
5163
|
experimental_wrapLanguageModel,
|
5403
|
-
formatStreamPart,
|
5164
|
+
formatStreamPart4 as formatStreamPart,
|
5404
5165
|
generateId2 as generateId,
|
5405
5166
|
generateObject,
|
5406
5167
|
generateText,
|
@@ -5408,11 +5169,8 @@ export {
|
|
5408
5169
|
parseStreamPart,
|
5409
5170
|
processDataProtocolResponse,
|
5410
5171
|
readDataStream,
|
5411
|
-
readableFromAsyncIterable,
|
5412
5172
|
streamObject,
|
5413
5173
|
streamText,
|
5414
|
-
|
5415
|
-
tool,
|
5416
|
-
trimStartOfStreamHelper
|
5174
|
+
tool
|
5417
5175
|
};
|
5418
5176
|
//# sourceMappingURL=index.mjs.map
|