ai 4.2.10 → 4.3.0

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/index.mjs CHANGED
@@ -1037,13 +1037,15 @@ var NoObjectGeneratedError = class extends AISDKError4 {
1037
1037
  cause,
1038
1038
  text: text2,
1039
1039
  response,
1040
- usage
1040
+ usage,
1041
+ finishReason
1041
1042
  }) {
1042
1043
  super({ name: name4, message, cause });
1043
1044
  this[_a4] = true;
1044
1045
  this.text = text2;
1045
1046
  this.response = response;
1046
1047
  this.usage = usage;
1048
+ this.finishReason = finishReason;
1047
1049
  }
1048
1050
  static isInstance(error) {
1049
1051
  return AISDKError4.hasMarker(error, marker4);
@@ -1078,14 +1080,11 @@ var DownloadError = class extends AISDKError5 {
1078
1080
  _a5 = symbol5;
1079
1081
 
1080
1082
  // util/download.ts
1081
- async function download({
1082
- url,
1083
- fetchImplementation = fetch
1084
- }) {
1083
+ async function download({ url }) {
1085
1084
  var _a17;
1086
1085
  const urlText = url.toString();
1087
1086
  try {
1088
- const response = await fetchImplementation(urlText);
1087
+ const response = await fetch(urlText);
1089
1088
  if (!response.ok) {
1090
1089
  throw new DownloadError({
1091
1090
  url: urlText,
@@ -2216,7 +2215,8 @@ var noSchemaOutputStrategy = {
2216
2215
  message: "No object generated: response did not match schema.",
2217
2216
  text: context.text,
2218
2217
  response: context.response,
2219
- usage: context.usage
2218
+ usage: context.usage,
2219
+ finishReason: context.finishReason
2220
2220
  })
2221
2221
  } : { success: true, value };
2222
2222
  },
@@ -2713,7 +2713,8 @@ async function generateObject({
2713
2713
  throw new NoObjectGeneratedError({
2714
2714
  message: "No object generated: the model did not return a response.",
2715
2715
  response: responseData,
2716
- usage: calculateLanguageModelUsage(result2.usage)
2716
+ usage: calculateLanguageModelUsage(result2.usage),
2717
+ finishReason: result2.finishReason
2717
2718
  });
2718
2719
  }
2719
2720
  span2.setAttributes(
@@ -2822,7 +2823,8 @@ async function generateObject({
2822
2823
  throw new NoObjectGeneratedError({
2823
2824
  message: "No object generated: the tool was not called.",
2824
2825
  response: responseData,
2825
- usage: calculateLanguageModelUsage(result2.usage)
2826
+ usage: calculateLanguageModelUsage(result2.usage),
2827
+ finishReason: result2.finishReason
2826
2828
  });
2827
2829
  }
2828
2830
  span2.setAttributes(
@@ -2878,7 +2880,8 @@ async function generateObject({
2878
2880
  cause: parseResult.error,
2879
2881
  text: result2,
2880
2882
  response,
2881
- usage: calculateLanguageModelUsage(usage)
2883
+ usage: calculateLanguageModelUsage(usage),
2884
+ finishReason
2882
2885
  });
2883
2886
  }
2884
2887
  const validationResult = outputStrategy.validateFinalResult(
@@ -2895,7 +2898,8 @@ async function generateObject({
2895
2898
  cause: validationResult.error,
2896
2899
  text: result2,
2897
2900
  response,
2898
- usage: calculateLanguageModelUsage(usage)
2901
+ usage: calculateLanguageModelUsage(usage),
2902
+ finishReason
2899
2903
  });
2900
2904
  }
2901
2905
  return validationResult.value;
@@ -3503,7 +3507,8 @@ var DefaultStreamObjectResult = class {
3503
3507
  cause: validationResult.error,
3504
3508
  text: accumulatedText,
3505
3509
  response,
3506
- usage
3510
+ usage,
3511
+ finishReason
3507
3512
  });
3508
3513
  self.objectPromise.reject(error);
3509
3514
  }
@@ -4331,7 +4336,11 @@ async function generateText({
4331
4336
  }
4332
4337
  return output.parseOutput(
4333
4338
  { text: text2 },
4334
- { response: currentModelResponse.response, usage }
4339
+ {
4340
+ response: currentModelResponse.response,
4341
+ usage,
4342
+ finishReason: currentModelResponse.finishReason
4343
+ }
4335
4344
  );
4336
4345
  },
4337
4346
  toolCalls: currentToolCalls,
@@ -4591,7 +4600,8 @@ var object = ({
4591
4600
  cause: parseResult.error,
4592
4601
  text: text2,
4593
4602
  response: context.response,
4594
- usage: context.usage
4603
+ usage: context.usage,
4604
+ finishReason: context.finishReason
4595
4605
  });
4596
4606
  }
4597
4607
  const validationResult = safeValidateTypes4({
@@ -4604,7 +4614,8 @@ var object = ({
4604
4614
  cause: validationResult.error,
4605
4615
  text: text2,
4606
4616
  response: context.response,
4607
- usage: context.usage
4617
+ usage: context.usage,
4618
+ finishReason: context.finishReason
4608
4619
  });
4609
4620
  }
4610
4621
  return validationResult.value;
@@ -4635,7 +4646,7 @@ function smoothStream({
4635
4646
  let buffer = "";
4636
4647
  return new TransformStream({
4637
4648
  async transform(chunk, controller) {
4638
- if (chunk.type === "step-finish") {
4649
+ if (chunk.type !== "text-delta") {
4639
4650
  if (buffer.length > 0) {
4640
4651
  controller.enqueue({ type: "text-delta", textDelta: buffer });
4641
4652
  buffer = "";
@@ -4643,10 +4654,6 @@ function smoothStream({
4643
4654
  controller.enqueue(chunk);
4644
4655
  return;
4645
4656
  }
4646
- if (chunk.type !== "text-delta") {
4647
- controller.enqueue(chunk);
4648
- return;
4649
- }
4650
4657
  buffer += chunk.textDelta;
4651
4658
  let match;
4652
4659
  while ((match = chunkingRegexp.exec(buffer)) != null) {