ai 7.0.0-beta.80 → 7.0.0-beta.82

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 CHANGED
@@ -1,5 +1,18 @@
1
1
  # ai
2
2
 
3
+ ## 7.0.0-beta.82
4
+
5
+ ### Patch Changes
6
+
7
+ - e27ed76: feat(devtools): add new devtools integration for telemetry
8
+
9
+ ## 7.0.0-beta.81
10
+
11
+ ### Patch Changes
12
+
13
+ - 2fe1099: feat(ai): emit streaming chunks throught the onChunk callback
14
+ - f04adcb: feat(ai): refresh `customProvider` and `createProviderRegistry` to support file and skill upload abstractions
15
+
3
16
  ## 7.0.0-beta.80
4
17
 
5
18
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -4,7 +4,7 @@ import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
4
4
  import { ToolSet, InferToolInput, InferToolOutput, FlexibleSchema, InferSchema, SystemModelMessage, ModelMessage, ProviderOptions, AssistantModelMessage, ToolModelMessage, Context, InferToolSetContext, ReasoningPart, ReasoningFilePart, HasRequiredKey, UserModelMessage, DataContent, IdGenerator, Tool, ToolCall, MaybePromiseLike, TextPart, FilePart, Resolvable, FetchFunction } from '@ai-sdk/provider-utils';
5
5
  export { AssistantContent, AssistantModelMessage, DataContent, DownloadError, FilePart, FlexibleSchema, IdGenerator, ImagePart, InferSchema, InferToolInput, InferToolOutput, ModelMessage, Schema, SystemModelMessage, TextPart, Tool, ToolApprovalRequest, ToolApprovalResponse, ToolCallPart, ToolContent, ToolExecuteFunction, ToolExecutionOptions, ToolModelMessage, ToolResultPart, ToolSet, UserContent, UserModelMessage, asSchema, createIdGenerator, dynamicTool, generateId, jsonSchema, parseJsonEventStream, tool, zodSchema } from '@ai-sdk/provider-utils';
6
6
  import * as _ai_sdk_provider from '@ai-sdk/provider';
7
- import { EmbeddingModelV4, EmbeddingModelV3, EmbeddingModelV2, EmbeddingModelV4Embedding, EmbeddingModelV4Middleware, ImageModelV4, ImageModelV3, ImageModelV2, ImageModelV4ProviderMetadata, ImageModelV2ProviderMetadata, ImageModelV4Middleware, JSONValue as JSONValue$1, LanguageModelV4, LanguageModelV3, LanguageModelV2, SharedV4Warning, LanguageModelV4Source, LanguageModelV4Middleware, RerankingModelV4, RerankingModelV3, SharedV4ProviderMetadata, SharedV4ProviderReference, SpeechModelV4, SpeechModelV3, SpeechModelV2, TranscriptionModelV4, TranscriptionModelV3, TranscriptionModelV2, JSONObject, ImageModelV4Usage, LanguageModelV4CallOptions, LanguageModelV4Prompt, AISDKError, LanguageModelV4ToolCall, JSONSchema7, SharedV4Headers, LanguageModelV4ToolChoice, JSONParseError, TypeValidationError, Experimental_VideoModelV4, Experimental_VideoModelV3, EmbeddingModelV4CallOptions, ProviderV4, ProviderV3, ProviderV2, NoSuchModelError, SkillsV4UploadSkillResult, SkillsV4, SkillsV4File, FilesV4 } from '@ai-sdk/provider';
7
+ import { EmbeddingModelV4, EmbeddingModelV3, EmbeddingModelV2, EmbeddingModelV4Embedding, EmbeddingModelV4Middleware, ImageModelV4, ImageModelV3, ImageModelV2, ImageModelV4ProviderMetadata, ImageModelV2ProviderMetadata, ImageModelV4Middleware, JSONValue as JSONValue$1, LanguageModelV4, LanguageModelV3, LanguageModelV2, SharedV4Warning, LanguageModelV4Source, LanguageModelV4Middleware, RerankingModelV4, RerankingModelV3, SharedV4ProviderMetadata, SharedV4ProviderReference, SpeechModelV4, SpeechModelV3, SpeechModelV2, TranscriptionModelV4, TranscriptionModelV3, TranscriptionModelV2, JSONObject, ImageModelV4Usage, LanguageModelV4CallOptions, LanguageModelV4Prompt, AISDKError, LanguageModelV4ToolCall, JSONSchema7, SharedV4Headers, LanguageModelV4ToolChoice, JSONParseError, TypeValidationError, Experimental_VideoModelV4, Experimental_VideoModelV3, EmbeddingModelV4CallOptions, ProviderV4, ProviderV3, ProviderV2, FilesV4, SkillsV4, NoSuchModelError, SkillsV4UploadSkillResult, SkillsV4File } from '@ai-sdk/provider';
8
8
  export { AISDKError, APICallError, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, JSONSchema7, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, NoSuchProviderReferenceError, TooManyEmbeddingValuesForCallError, TypeValidationError, UnsupportedFunctionalityError } from '@ai-sdk/provider';
9
9
  import { ServerResponse } from 'node:http';
10
10
  import { ServerResponse as ServerResponse$1 } from 'http';
@@ -3261,9 +3261,7 @@ type OnToolCallFinishEvent<TOOLS extends ToolSet = ToolSet> = {
3261
3261
  * a stream lifecycle marker (`ai.stream.firstChunk` / `ai.stream.finish`).
3262
3262
  */
3263
3263
  interface OnChunkEvent<TOOLS extends ToolSet = ToolSet> {
3264
- readonly chunk: Extract<TextStreamPart<TOOLS>, {
3265
- type: 'text-delta' | 'reasoning-delta' | 'source' | 'tool-call' | 'tool-input-start' | 'tool-input-delta' | 'tool-result' | 'raw';
3266
- }> | {
3264
+ readonly chunk: TextStreamPart<TOOLS> | {
3267
3265
  readonly type: 'ai.stream.firstChunk' | 'ai.stream.finish';
3268
3266
  readonly callId: string;
3269
3267
  readonly stepNumber: number;
@@ -6962,7 +6960,7 @@ declare function wrapProvider({ provider, languageModelMiddleware, imageModelMid
6962
6960
  *
6963
6961
  * @throws {NoSuchModelError} Throws when a requested model is not found and no fallback provider is available.
6964
6962
  */
6965
- declare function customProvider<LANGUAGE_MODELS extends Record<string, LanguageModelV2 | LanguageModelV3 | LanguageModelV4>, EMBEDDING_MODELS extends Record<string, EmbeddingModelV3 | EmbeddingModelV4>, IMAGE_MODELS extends Record<string, ImageModelV2 | ImageModelV3 | ImageModelV4>, TRANSCRIPTION_MODELS extends Record<string, TranscriptionModelV2 | TranscriptionModelV3 | TranscriptionModelV4>, SPEECH_MODELS extends Record<string, SpeechModelV2 | SpeechModelV3 | SpeechModelV4>, RERANKING_MODELS extends Record<string, RerankingModelV3 | RerankingModelV4>, VIDEO_MODELS extends Record<string, Experimental_VideoModelV3 | Experimental_VideoModelV4>>({ languageModels, embeddingModels, imageModels, transcriptionModels, speechModels, rerankingModels, videoModels, fallbackProvider: fallbackProviderArg, }: {
6963
+ declare function customProvider<LANGUAGE_MODELS extends Record<string, LanguageModelV2 | LanguageModelV3 | LanguageModelV4>, EMBEDDING_MODELS extends Record<string, EmbeddingModelV3 | EmbeddingModelV4>, IMAGE_MODELS extends Record<string, ImageModelV2 | ImageModelV3 | ImageModelV4>, TRANSCRIPTION_MODELS extends Record<string, TranscriptionModelV2 | TranscriptionModelV3 | TranscriptionModelV4>, SPEECH_MODELS extends Record<string, SpeechModelV2 | SpeechModelV3 | SpeechModelV4>, RERANKING_MODELS extends Record<string, RerankingModelV3 | RerankingModelV4>, VIDEO_MODELS extends Record<string, Experimental_VideoModelV3 | Experimental_VideoModelV4>, FILES extends FilesV4 | undefined = undefined, SKILLS extends SkillsV4 | undefined = undefined>({ languageModels, embeddingModels, imageModels, transcriptionModels, speechModels, rerankingModels, videoModels, files, skills, fallbackProvider: fallbackProviderArg, }: {
6966
6964
  languageModels?: LANGUAGE_MODELS;
6967
6965
  embeddingModels?: EMBEDDING_MODELS;
6968
6966
  imageModels?: IMAGE_MODELS;
@@ -6970,6 +6968,8 @@ declare function customProvider<LANGUAGE_MODELS extends Record<string, LanguageM
6970
6968
  speechModels?: SPEECH_MODELS;
6971
6969
  rerankingModels?: RERANKING_MODELS;
6972
6970
  videoModels?: VIDEO_MODELS;
6971
+ files?: FILES;
6972
+ skills?: SKILLS;
6973
6973
  fallbackProvider?: ProviderV4 | ProviderV3 | ProviderV2;
6974
6974
  }): ProviderV4 & {
6975
6975
  languageModel(modelId: ExtractModelId<LANGUAGE_MODELS>): LanguageModelV4;
@@ -6979,7 +6979,15 @@ declare function customProvider<LANGUAGE_MODELS extends Record<string, LanguageM
6979
6979
  rerankingModel(modelId: ExtractModelId<RERANKING_MODELS>): RerankingModelV4;
6980
6980
  speechModel(modelId: ExtractModelId<SPEECH_MODELS>): SpeechModelV4;
6981
6981
  videoModel(modelId: ExtractModelId<VIDEO_MODELS>): Experimental_VideoModelV4;
6982
- };
6982
+ } & (FILES extends FilesV4 ? {
6983
+ files(): FilesV4;
6984
+ } : {
6985
+ files?(): FilesV4;
6986
+ }) & (SKILLS extends SkillsV4 ? {
6987
+ skills(): SkillsV4;
6988
+ } : {
6989
+ skills?(): SkillsV4;
6990
+ });
6983
6991
  /**
6984
6992
  * @deprecated Use `customProvider` instead.
6985
6993
  */
@@ -6993,7 +7001,7 @@ declare class NoSuchProviderError extends NoSuchModelError {
6993
7001
  readonly availableProviders: string[];
6994
7002
  constructor({ modelId, modelType, providerId, availableProviders, message, }: {
6995
7003
  modelId: string;
6996
- modelType: 'languageModel' | 'embeddingModel' | 'imageModel' | 'transcriptionModel' | 'speechModel' | 'rerankingModel';
7004
+ modelType: 'languageModel' | 'embeddingModel' | 'imageModel' | 'transcriptionModel' | 'speechModel' | 'rerankingModel' | 'videoModel';
6997
7005
  providerId: string;
6998
7006
  availableProviders: string[];
6999
7007
  message?: string;
@@ -7015,6 +7023,9 @@ interface ProviderRegistryProvider<PROVIDERS extends Record<string, ProviderV4>
7015
7023
  speechModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${string}` : never): SpeechModelV4;
7016
7024
  rerankingModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${ExtractLiteralUnion<Parameters<NonNullable<PROVIDERS[KEY]['rerankingModel']>>[0]>}` : never): RerankingModelV4;
7017
7025
  rerankingModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${string}` : never): RerankingModelV4;
7026
+ videoModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${string}` : never): Experimental_VideoModelV4;
7027
+ files<KEY extends keyof PROVIDERS>(providerId: KEY & string): FilesV4;
7028
+ skills<KEY extends keyof PROVIDERS>(providerId: KEY & string): SkillsV4;
7018
7029
  }
7019
7030
  /**
7020
7031
  * Creates a registry for the given providers with optional middleware functionality.
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@ import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
4
4
  import { ToolSet, InferToolInput, InferToolOutput, FlexibleSchema, InferSchema, SystemModelMessage, ModelMessage, ProviderOptions, AssistantModelMessage, ToolModelMessage, Context, InferToolSetContext, ReasoningPart, ReasoningFilePart, HasRequiredKey, UserModelMessage, DataContent, IdGenerator, Tool, ToolCall, MaybePromiseLike, TextPart, FilePart, Resolvable, FetchFunction } from '@ai-sdk/provider-utils';
5
5
  export { AssistantContent, AssistantModelMessage, DataContent, DownloadError, FilePart, FlexibleSchema, IdGenerator, ImagePart, InferSchema, InferToolInput, InferToolOutput, ModelMessage, Schema, SystemModelMessage, TextPart, Tool, ToolApprovalRequest, ToolApprovalResponse, ToolCallPart, ToolContent, ToolExecuteFunction, ToolExecutionOptions, ToolModelMessage, ToolResultPart, ToolSet, UserContent, UserModelMessage, asSchema, createIdGenerator, dynamicTool, generateId, jsonSchema, parseJsonEventStream, tool, zodSchema } from '@ai-sdk/provider-utils';
6
6
  import * as _ai_sdk_provider from '@ai-sdk/provider';
7
- import { EmbeddingModelV4, EmbeddingModelV3, EmbeddingModelV2, EmbeddingModelV4Embedding, EmbeddingModelV4Middleware, ImageModelV4, ImageModelV3, ImageModelV2, ImageModelV4ProviderMetadata, ImageModelV2ProviderMetadata, ImageModelV4Middleware, JSONValue as JSONValue$1, LanguageModelV4, LanguageModelV3, LanguageModelV2, SharedV4Warning, LanguageModelV4Source, LanguageModelV4Middleware, RerankingModelV4, RerankingModelV3, SharedV4ProviderMetadata, SharedV4ProviderReference, SpeechModelV4, SpeechModelV3, SpeechModelV2, TranscriptionModelV4, TranscriptionModelV3, TranscriptionModelV2, JSONObject, ImageModelV4Usage, LanguageModelV4CallOptions, LanguageModelV4Prompt, AISDKError, LanguageModelV4ToolCall, JSONSchema7, SharedV4Headers, LanguageModelV4ToolChoice, JSONParseError, TypeValidationError, Experimental_VideoModelV4, Experimental_VideoModelV3, EmbeddingModelV4CallOptions, ProviderV4, ProviderV3, ProviderV2, NoSuchModelError, SkillsV4UploadSkillResult, SkillsV4, SkillsV4File, FilesV4 } from '@ai-sdk/provider';
7
+ import { EmbeddingModelV4, EmbeddingModelV3, EmbeddingModelV2, EmbeddingModelV4Embedding, EmbeddingModelV4Middleware, ImageModelV4, ImageModelV3, ImageModelV2, ImageModelV4ProviderMetadata, ImageModelV2ProviderMetadata, ImageModelV4Middleware, JSONValue as JSONValue$1, LanguageModelV4, LanguageModelV3, LanguageModelV2, SharedV4Warning, LanguageModelV4Source, LanguageModelV4Middleware, RerankingModelV4, RerankingModelV3, SharedV4ProviderMetadata, SharedV4ProviderReference, SpeechModelV4, SpeechModelV3, SpeechModelV2, TranscriptionModelV4, TranscriptionModelV3, TranscriptionModelV2, JSONObject, ImageModelV4Usage, LanguageModelV4CallOptions, LanguageModelV4Prompt, AISDKError, LanguageModelV4ToolCall, JSONSchema7, SharedV4Headers, LanguageModelV4ToolChoice, JSONParseError, TypeValidationError, Experimental_VideoModelV4, Experimental_VideoModelV3, EmbeddingModelV4CallOptions, ProviderV4, ProviderV3, ProviderV2, FilesV4, SkillsV4, NoSuchModelError, SkillsV4UploadSkillResult, SkillsV4File } from '@ai-sdk/provider';
8
8
  export { AISDKError, APICallError, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, JSONSchema7, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, NoSuchProviderReferenceError, TooManyEmbeddingValuesForCallError, TypeValidationError, UnsupportedFunctionalityError } from '@ai-sdk/provider';
9
9
  import { ServerResponse } from 'node:http';
10
10
  import { ServerResponse as ServerResponse$1 } from 'http';
@@ -3261,9 +3261,7 @@ type OnToolCallFinishEvent<TOOLS extends ToolSet = ToolSet> = {
3261
3261
  * a stream lifecycle marker (`ai.stream.firstChunk` / `ai.stream.finish`).
3262
3262
  */
3263
3263
  interface OnChunkEvent<TOOLS extends ToolSet = ToolSet> {
3264
- readonly chunk: Extract<TextStreamPart<TOOLS>, {
3265
- type: 'text-delta' | 'reasoning-delta' | 'source' | 'tool-call' | 'tool-input-start' | 'tool-input-delta' | 'tool-result' | 'raw';
3266
- }> | {
3264
+ readonly chunk: TextStreamPart<TOOLS> | {
3267
3265
  readonly type: 'ai.stream.firstChunk' | 'ai.stream.finish';
3268
3266
  readonly callId: string;
3269
3267
  readonly stepNumber: number;
@@ -6962,7 +6960,7 @@ declare function wrapProvider({ provider, languageModelMiddleware, imageModelMid
6962
6960
  *
6963
6961
  * @throws {NoSuchModelError} Throws when a requested model is not found and no fallback provider is available.
6964
6962
  */
6965
- declare function customProvider<LANGUAGE_MODELS extends Record<string, LanguageModelV2 | LanguageModelV3 | LanguageModelV4>, EMBEDDING_MODELS extends Record<string, EmbeddingModelV3 | EmbeddingModelV4>, IMAGE_MODELS extends Record<string, ImageModelV2 | ImageModelV3 | ImageModelV4>, TRANSCRIPTION_MODELS extends Record<string, TranscriptionModelV2 | TranscriptionModelV3 | TranscriptionModelV4>, SPEECH_MODELS extends Record<string, SpeechModelV2 | SpeechModelV3 | SpeechModelV4>, RERANKING_MODELS extends Record<string, RerankingModelV3 | RerankingModelV4>, VIDEO_MODELS extends Record<string, Experimental_VideoModelV3 | Experimental_VideoModelV4>>({ languageModels, embeddingModels, imageModels, transcriptionModels, speechModels, rerankingModels, videoModels, fallbackProvider: fallbackProviderArg, }: {
6963
+ declare function customProvider<LANGUAGE_MODELS extends Record<string, LanguageModelV2 | LanguageModelV3 | LanguageModelV4>, EMBEDDING_MODELS extends Record<string, EmbeddingModelV3 | EmbeddingModelV4>, IMAGE_MODELS extends Record<string, ImageModelV2 | ImageModelV3 | ImageModelV4>, TRANSCRIPTION_MODELS extends Record<string, TranscriptionModelV2 | TranscriptionModelV3 | TranscriptionModelV4>, SPEECH_MODELS extends Record<string, SpeechModelV2 | SpeechModelV3 | SpeechModelV4>, RERANKING_MODELS extends Record<string, RerankingModelV3 | RerankingModelV4>, VIDEO_MODELS extends Record<string, Experimental_VideoModelV3 | Experimental_VideoModelV4>, FILES extends FilesV4 | undefined = undefined, SKILLS extends SkillsV4 | undefined = undefined>({ languageModels, embeddingModels, imageModels, transcriptionModels, speechModels, rerankingModels, videoModels, files, skills, fallbackProvider: fallbackProviderArg, }: {
6966
6964
  languageModels?: LANGUAGE_MODELS;
6967
6965
  embeddingModels?: EMBEDDING_MODELS;
6968
6966
  imageModels?: IMAGE_MODELS;
@@ -6970,6 +6968,8 @@ declare function customProvider<LANGUAGE_MODELS extends Record<string, LanguageM
6970
6968
  speechModels?: SPEECH_MODELS;
6971
6969
  rerankingModels?: RERANKING_MODELS;
6972
6970
  videoModels?: VIDEO_MODELS;
6971
+ files?: FILES;
6972
+ skills?: SKILLS;
6973
6973
  fallbackProvider?: ProviderV4 | ProviderV3 | ProviderV2;
6974
6974
  }): ProviderV4 & {
6975
6975
  languageModel(modelId: ExtractModelId<LANGUAGE_MODELS>): LanguageModelV4;
@@ -6979,7 +6979,15 @@ declare function customProvider<LANGUAGE_MODELS extends Record<string, LanguageM
6979
6979
  rerankingModel(modelId: ExtractModelId<RERANKING_MODELS>): RerankingModelV4;
6980
6980
  speechModel(modelId: ExtractModelId<SPEECH_MODELS>): SpeechModelV4;
6981
6981
  videoModel(modelId: ExtractModelId<VIDEO_MODELS>): Experimental_VideoModelV4;
6982
- };
6982
+ } & (FILES extends FilesV4 ? {
6983
+ files(): FilesV4;
6984
+ } : {
6985
+ files?(): FilesV4;
6986
+ }) & (SKILLS extends SkillsV4 ? {
6987
+ skills(): SkillsV4;
6988
+ } : {
6989
+ skills?(): SkillsV4;
6990
+ });
6983
6991
  /**
6984
6992
  * @deprecated Use `customProvider` instead.
6985
6993
  */
@@ -6993,7 +7001,7 @@ declare class NoSuchProviderError extends NoSuchModelError {
6993
7001
  readonly availableProviders: string[];
6994
7002
  constructor({ modelId, modelType, providerId, availableProviders, message, }: {
6995
7003
  modelId: string;
6996
- modelType: 'languageModel' | 'embeddingModel' | 'imageModel' | 'transcriptionModel' | 'speechModel' | 'rerankingModel';
7004
+ modelType: 'languageModel' | 'embeddingModel' | 'imageModel' | 'transcriptionModel' | 'speechModel' | 'rerankingModel' | 'videoModel';
6997
7005
  providerId: string;
6998
7006
  availableProviders: string[];
6999
7007
  message?: string;
@@ -7015,6 +7023,9 @@ interface ProviderRegistryProvider<PROVIDERS extends Record<string, ProviderV4>
7015
7023
  speechModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${string}` : never): SpeechModelV4;
7016
7024
  rerankingModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${ExtractLiteralUnion<Parameters<NonNullable<PROVIDERS[KEY]['rerankingModel']>>[0]>}` : never): RerankingModelV4;
7017
7025
  rerankingModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${string}` : never): RerankingModelV4;
7026
+ videoModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${string}` : never): Experimental_VideoModelV4;
7027
+ files<KEY extends keyof PROVIDERS>(providerId: KEY & string): FilesV4;
7028
+ skills<KEY extends keyof PROVIDERS>(providerId: KEY & string): SkillsV4;
7018
7029
  }
7019
7030
  /**
7020
7031
  * Creates a registry for the given providers with optional middleware functionality.
package/dist/index.js CHANGED
@@ -1401,7 +1401,7 @@ var import_provider_utils3 = require("@ai-sdk/provider-utils");
1401
1401
  var import_provider_utils4 = require("@ai-sdk/provider-utils");
1402
1402
 
1403
1403
  // src/version.ts
1404
- var VERSION = true ? "7.0.0-beta.80" : "0.0.0-test";
1404
+ var VERSION = true ? "7.0.0-beta.82" : "0.0.0-test";
1405
1405
 
1406
1406
  // src/util/download/download.ts
1407
1407
  var download = async ({
@@ -7453,7 +7453,7 @@ var DefaultStreamTextResult = class {
7453
7453
  streamWithToolResults.pipeThrough(
7454
7454
  new TransformStream({
7455
7455
  async transform(chunk, controller) {
7456
- var _a22, _b2, _c2, _d2, _e2, _f2;
7456
+ var _a22, _b2, _c2, _d2, _e2, _f2, _g2;
7457
7457
  resetChunkTimeout();
7458
7458
  if (chunk.type === "model-call-start") {
7459
7459
  warnings = chunk.warnings;
@@ -7580,6 +7580,9 @@ var DefaultStreamTextResult = class {
7580
7580
  throw new Error(`Unknown chunk type: ${exhaustiveCheck}`);
7581
7581
  }
7582
7582
  }
7583
+ if (chunkType !== "model-call-end" && chunkType !== "model-call-response-metadata") {
7584
+ void ((_g2 = globalTelemetry.onChunk) == null ? void 0 : _g2.call(globalTelemetry, { chunk }));
7585
+ }
7583
7586
  },
7584
7587
  // invoke onFinish callback and resolve toolResults promise when the stream is about to close:
7585
7588
  async flush(controller) {
@@ -12293,9 +12296,14 @@ function customProvider({
12293
12296
  speechModels,
12294
12297
  rerankingModels,
12295
12298
  videoModels,
12299
+ files,
12300
+ skills,
12296
12301
  fallbackProvider: fallbackProviderArg
12297
12302
  }) {
12303
+ var _a21, _b;
12298
12304
  const fallbackProvider = fallbackProviderArg ? asProviderV4(fallbackProviderArg) : void 0;
12305
+ const resolvedFiles = files != null ? files : (_a21 = fallbackProvider == null ? void 0 : fallbackProvider.files) == null ? void 0 : _a21.call(fallbackProvider);
12306
+ const resolvedSkills = skills != null ? skills : (_b = fallbackProvider == null ? void 0 : fallbackProvider.skills) == null ? void 0 : _b.call(fallbackProvider);
12299
12307
  return {
12300
12308
  specificationVersion: "v4",
12301
12309
  languageModel(modelId) {
@@ -12361,7 +12369,9 @@ function customProvider({
12361
12369
  return videoModel(modelId);
12362
12370
  }
12363
12371
  throw new import_provider34.NoSuchModelError({ modelId, modelType: "videoModel" });
12364
- }
12372
+ },
12373
+ ...resolvedFiles != null ? { files: () => resolvedFiles } : {},
12374
+ ...resolvedSkills != null ? { skills: () => resolvedSkills } : {}
12365
12375
  };
12366
12376
  }
12367
12377
  var experimental_customProvider = customProvider;
@@ -12529,6 +12539,54 @@ var DefaultProviderRegistry = class {
12529
12539
  }
12530
12540
  return model;
12531
12541
  }
12542
+ videoModel(id) {
12543
+ var _a21;
12544
+ const [providerId, modelId] = this.splitId(id, "videoModel");
12545
+ const provider = this.getProvider(providerId, "videoModel");
12546
+ const model = (_a21 = provider.videoModel) == null ? void 0 : _a21.call(provider, modelId);
12547
+ if (model == null) {
12548
+ throw new import_provider36.NoSuchModelError({ modelId: id, modelType: "videoModel" });
12549
+ }
12550
+ return model;
12551
+ }
12552
+ files(providerId) {
12553
+ var _a21, _b;
12554
+ const providerInstance = this.providers[providerId];
12555
+ if (providerInstance == null) {
12556
+ throw new NoSuchProviderError({
12557
+ modelId: providerId,
12558
+ modelType: "languageModel",
12559
+ providerId,
12560
+ availableProviders: Object.keys(this.providers)
12561
+ });
12562
+ }
12563
+ const filesInterface = (_b = (_a21 = asProviderV4(providerInstance)).files) == null ? void 0 : _b.call(_a21);
12564
+ if (filesInterface == null) {
12565
+ throw new Error(
12566
+ `Provider '${providerId}' does not support files. Make sure the provider has a files() method.`
12567
+ );
12568
+ }
12569
+ return filesInterface;
12570
+ }
12571
+ skills(providerId) {
12572
+ var _a21, _b;
12573
+ const providerInstance = this.providers[providerId];
12574
+ if (providerInstance == null) {
12575
+ throw new NoSuchProviderError({
12576
+ modelId: providerId,
12577
+ modelType: "languageModel",
12578
+ providerId,
12579
+ availableProviders: Object.keys(this.providers)
12580
+ });
12581
+ }
12582
+ const skillsInterface = (_b = (_a21 = asProviderV4(providerInstance)).skills) == null ? void 0 : _b.call(_a21);
12583
+ if (skillsInterface == null) {
12584
+ throw new Error(
12585
+ `Provider '${providerId}' does not support skills. Make sure the provider has a skills() method.`
12586
+ );
12587
+ }
12588
+ return skillsInterface;
12589
+ }
12532
12590
  };
12533
12591
 
12534
12592
  // src/rerank/rerank.ts