ai 5.0.0-canary.0 → 5.0.0-canary.1

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,21 @@
1
1
  # ai
2
2
 
3
+ ## 5.0.0-canary.1
4
+
5
+ ### Minor Changes
6
+
7
+ - b7eae2d: feat (core): Add finishReason field to NoObjectGeneratedError
8
+
9
+ ### Patch Changes
10
+
11
+ - c22ad54: feat(smooth-stream): chunking callbacks
12
+ - a4f3007: chore: remove ai/react
13
+ - Updated dependencies [060370c]
14
+ - Updated dependencies [0c0c0b3]
15
+ - Updated dependencies [63d791d]
16
+ - @ai-sdk/provider-utils@3.0.0-canary.1
17
+ - @ai-sdk/ui-utils@2.0.0-canary.1
18
+
3
19
  ## 5.0.0-canary.0
4
20
 
5
21
  ### Major Changes
package/dist/index.d.mts CHANGED
@@ -2,8 +2,8 @@ import { IDGenerator } from '@ai-sdk/provider-utils';
2
2
  export { CoreToolCall, CoreToolResult, IDGenerator, ToolCall, ToolResult, createIdGenerator, generateId } from '@ai-sdk/provider-utils';
3
3
  import { DataStreamString, Message, Schema, DeepPartial, JSONValue as JSONValue$1 } from '@ai-sdk/ui-utils';
4
4
  export { Attachment, ChatRequest, ChatRequestOptions, CreateMessage, DataStreamPart, DeepPartial, IdGenerator, JSONValue, Message, RequestOptions, Schema, ToolInvocation, UIMessage, formatDataStreamPart, jsonSchema, parseDataStreamPart, processDataStream, processTextStream, zodSchema } from '@ai-sdk/ui-utils';
5
- import { LanguageModelV1, LanguageModelV1FinishReason, LanguageModelV1LogProbs, LanguageModelV1CallWarning, LanguageModelV1Source, JSONValue, EmbeddingModelV1, EmbeddingModelV1Embedding, ImageModelV1, ImageModelV1CallWarning, LanguageModelV1ProviderMetadata, LanguageModelV1CallOptions, AISDKError, LanguageModelV1FunctionToolCall, JSONSchema7, JSONParseError, TypeValidationError, ProviderV1, NoSuchModelError } from '@ai-sdk/provider';
6
- export { AISDKError, APICallError, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, LanguageModelV1, LanguageModelV1CallOptions, LanguageModelV1Prompt, LanguageModelV1StreamPart, LoadAPIKeyError, NoContentGeneratedError, NoSuchModelError, TypeValidationError, UnsupportedFunctionalityError } from '@ai-sdk/provider';
5
+ import { LanguageModelV2, LanguageModelV2FinishReason, LanguageModelV2LogProbs, LanguageModelV2CallWarning, LanguageModelV2Source, JSONValue, EmbeddingModelV1, EmbeddingModelV1Embedding, ImageModelV1, ImageModelV1CallWarning, LanguageModelV2ProviderMetadata, LanguageModelV2CallOptions, AISDKError, LanguageModelV2FunctionToolCall, JSONSchema7, JSONParseError, TypeValidationError, LanguageModelV2Middleware, ProviderV2, NoSuchModelError } from '@ai-sdk/provider';
6
+ export { AISDKError, APICallError, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, LanguageModelV2, LanguageModelV2CallOptions, LanguageModelV2Prompt, LanguageModelV2StreamPart, LoadAPIKeyError, NoContentGeneratedError, NoSuchModelError, TypeValidationError, UnsupportedFunctionalityError } from '@ai-sdk/provider';
7
7
  import { ServerResponse } from 'node:http';
8
8
  import { AttributeValue, Tracer } from '@opentelemetry/api';
9
9
  import { z } from 'zod';
@@ -12,7 +12,7 @@ import { ServerResponse as ServerResponse$1 } from 'http';
12
12
  /**
13
13
  Language model that is used by the AI SDK Core functions.
14
14
  */
15
- type LanguageModel = LanguageModelV1;
15
+ type LanguageModel = LanguageModelV2;
16
16
  /**
17
17
  Reason why a language model finished generating a response.
18
18
 
@@ -24,22 +24,22 @@ Can be one of the following:
24
24
  - `error`: model stopped because of an error
25
25
  - `other`: model stopped for other reasons
26
26
  */
27
- type FinishReason = LanguageModelV1FinishReason;
27
+ type FinishReason = LanguageModelV2FinishReason;
28
28
  /**
29
29
  Log probabilities for each token and its top log probabilities.
30
30
 
31
31
  @deprecated Will become a provider extension in the future.
32
32
  */
33
- type LogProbs = LanguageModelV1LogProbs;
33
+ type LogProbs = LanguageModelV2LogProbs;
34
34
  /**
35
35
  Warning from the model provider for this call. The call will proceed, but e.g.
36
36
  some settings might not be supported, which can lead to suboptimal results.
37
37
  */
38
- type CallWarning = LanguageModelV1CallWarning;
38
+ type CallWarning = LanguageModelV2CallWarning;
39
39
  /**
40
40
  A source that has been used as input to generate the response.
41
41
  */
42
- type Source = LanguageModelV1Source;
42
+ type Source = LanguageModelV2Source;
43
43
  /**
44
44
  Tool choice for the generation. It supports the following settings:
45
45
 
@@ -240,14 +240,14 @@ Additional provider-specific metadata that is returned from the provider.
240
240
  This is needed to enable provider-specific functionality that can be
241
241
  fully encapsulated in the provider.
242
242
  */
243
- type ProviderMetadata = LanguageModelV1ProviderMetadata;
243
+ type ProviderMetadata = LanguageModelV2ProviderMetadata;
244
244
  /**
245
245
  Additional provider-specific options.
246
246
 
247
247
  They are passed through to the provider from the AI SDK and enable
248
248
  provider-specific functionality that can be fully encapsulated in the provider.
249
249
  */
250
- type ProviderOptions = LanguageModelV1ProviderMetadata;
250
+ type ProviderOptions = LanguageModelV2ProviderMetadata;
251
251
 
252
252
  /**
253
253
  Represents the number of tokens used in a prompt and completion.
@@ -2243,7 +2243,7 @@ interface Output<OUTPUT, PARTIAL> {
2243
2243
  }): string | undefined;
2244
2244
  responseFormat: (options: {
2245
2245
  model: LanguageModel;
2246
- }) => LanguageModelV1CallOptions['responseFormat'];
2246
+ }) => LanguageModelV2CallOptions['responseFormat'];
2247
2247
  parsePartial(options: {
2248
2248
  text: string;
2249
2249
  }): {
@@ -2254,6 +2254,7 @@ interface Output<OUTPUT, PARTIAL> {
2254
2254
  }, context: {
2255
2255
  response: LanguageModelResponseMetadata;
2256
2256
  usage: LanguageModelUsage;
2257
+ finishReason: FinishReason;
2257
2258
  }): OUTPUT;
2258
2259
  }
2259
2260
  declare const text: () => Output<string, string>;
@@ -2351,13 +2352,13 @@ declare function convertToCoreMessages<TOOLS extends ToolSet = never>(messages:
2351
2352
  type ToolCallRepairFunction<TOOLS extends ToolSet> = (options: {
2352
2353
  system: string | undefined;
2353
2354
  messages: CoreMessage[];
2354
- toolCall: LanguageModelV1FunctionToolCall;
2355
+ toolCall: LanguageModelV2FunctionToolCall;
2355
2356
  tools: TOOLS;
2356
2357
  parameterSchema: (options: {
2357
2358
  toolName: string;
2358
2359
  }) => JSONSchema7;
2359
2360
  error: NoSuchToolError | InvalidToolArgumentsError;
2360
- }) => Promise<LanguageModelV1FunctionToolCall | null>;
2361
+ }) => Promise<LanguageModelV2FunctionToolCall | null>;
2361
2362
 
2362
2363
  /**
2363
2364
  Callback that is set using the `onStepFinish` option.
@@ -2805,6 +2806,14 @@ type TextStreamPart<TOOLS extends ToolSet> = {
2805
2806
  error: unknown;
2806
2807
  };
2807
2808
 
2809
+ /**
2810
+ * Detects the first chunk in a buffer.
2811
+ *
2812
+ * @param buffer - The buffer to detect the first chunk in.
2813
+ *
2814
+ * @returns The first detected chunk, or `undefined` if no chunk was detected.
2815
+ */
2816
+ type ChunkDetector = (buffer: string) => string | undefined | null;
2808
2817
  /**
2809
2818
  * Smooths text streaming output.
2810
2819
  *
@@ -2815,7 +2824,7 @@ type TextStreamPart<TOOLS extends ToolSet> = {
2815
2824
  */
2816
2825
  declare function smoothStream<TOOLS extends ToolSet>({ delayInMs, chunking, _internal: { delay }, }?: {
2817
2826
  delayInMs?: number | null;
2818
- chunking?: 'word' | 'line' | RegExp;
2827
+ chunking?: 'word' | 'line' | RegExp | ChunkDetector;
2819
2828
  /**
2820
2829
  * Internal. For test use only. May change without notice.
2821
2830
  */
@@ -3778,74 +3787,14 @@ Callback that is called when the LLM response and the final object validation ar
3778
3787
  };
3779
3788
  }): StreamObjectResult<JSONValue, JSONValue, never>;
3780
3789
 
3781
- /**
3782
- * Experimental middleware for LanguageModelV1.
3783
- * This type defines the structure for middleware that can be used to modify
3784
- * the behavior of LanguageModelV1 operations.
3785
- */
3786
- type LanguageModelV1Middleware = {
3787
- /**
3788
- * Middleware specification version. Use `v1` for the current version.
3789
- */
3790
- middlewareVersion?: 'v1' | undefined;
3791
- /**
3792
- * Transforms the parameters before they are passed to the language model.
3793
- * @param options - Object containing the type of operation and the parameters.
3794
- * @param options.type - The type of operation ('generate' or 'stream').
3795
- * @param options.params - The original parameters for the language model call.
3796
- * @returns A promise that resolves to the transformed parameters.
3797
- */
3798
- transformParams?: (options: {
3799
- type: 'generate' | 'stream';
3800
- params: LanguageModelV1CallOptions;
3801
- }) => PromiseLike<LanguageModelV1CallOptions>;
3802
- /**
3803
- * Wraps the generate operation of the language model.
3804
- * @param options - Object containing the generate function, parameters, and model.
3805
- * @param options.doGenerate - The original generate function.
3806
- * @param options.doStream - The original stream function.
3807
- * @param options.params - The parameters for the generate call. If the
3808
- * `transformParams` middleware is used, this will be the transformed parameters.
3809
- * @param options.model - The language model instance.
3810
- * @returns A promise that resolves to the result of the generate operation.
3811
- */
3812
- wrapGenerate?: (options: {
3813
- doGenerate: () => ReturnType<LanguageModelV1['doGenerate']>;
3814
- doStream: () => ReturnType<LanguageModelV1['doStream']>;
3815
- params: LanguageModelV1CallOptions;
3816
- model: LanguageModelV1;
3817
- }) => Promise<Awaited<ReturnType<LanguageModelV1['doGenerate']>>>;
3818
- /**
3819
- * Wraps the stream operation of the language model.
3820
- *
3821
- * @param options - Object containing the stream function, parameters, and model.
3822
- * @param options.doGenerate - The original generate function.
3823
- * @param options.doStream - The original stream function.
3824
- * @param options.params - The parameters for the stream call. If the
3825
- * `transformParams` middleware is used, this will be the transformed parameters.
3826
- * @param options.model - The language model instance.
3827
- * @returns A promise that resolves to the result of the stream operation.
3828
- */
3829
- wrapStream?: (options: {
3830
- doGenerate: () => ReturnType<LanguageModelV1['doGenerate']>;
3831
- doStream: () => ReturnType<LanguageModelV1['doStream']>;
3832
- params: LanguageModelV1CallOptions;
3833
- model: LanguageModelV1;
3834
- }) => PromiseLike<Awaited<ReturnType<LanguageModelV1['doStream']>>>;
3835
- };
3836
- /**
3837
- * @deprecated Use `LanguageModelV1Middleware` instead.
3838
- */
3839
- type Experimental_LanguageModelV1Middleware = LanguageModelV1Middleware;
3840
-
3841
3790
  /**
3842
3791
  * Applies default settings for a language model.
3843
3792
  */
3844
3793
  declare function defaultSettingsMiddleware({ settings, }: {
3845
- settings: Partial<LanguageModelV1CallOptions & {
3846
- providerMetadata?: LanguageModelV1ProviderMetadata;
3794
+ settings: Partial<LanguageModelV2CallOptions & {
3795
+ providerMetadata?: LanguageModelV2ProviderMetadata;
3847
3796
  }>;
3848
- }): LanguageModelV1Middleware;
3797
+ }): LanguageModelV2Middleware;
3849
3798
 
3850
3799
  /**
3851
3800
  * Extract an XML-tagged reasoning section from the generated text and exposes it
@@ -3859,40 +3808,40 @@ declare function extractReasoningMiddleware({ tagName, separator, startWithReaso
3859
3808
  tagName: string;
3860
3809
  separator?: string;
3861
3810
  startWithReasoning?: boolean;
3862
- }): LanguageModelV1Middleware;
3811
+ }): LanguageModelV2Middleware;
3863
3812
 
3864
3813
  /**
3865
3814
  * Simulates streaming chunks with the response from a generate call.
3866
3815
  */
3867
- declare function simulateStreamingMiddleware(): LanguageModelV1Middleware;
3816
+ declare function simulateStreamingMiddleware(): LanguageModelV2Middleware;
3868
3817
 
3869
3818
  /**
3870
- * Wraps a LanguageModelV1 instance with middleware functionality.
3819
+ * Wraps a LanguageModelV2 instance with middleware functionality.
3871
3820
  * This function allows you to apply middleware to transform parameters,
3872
3821
  * wrap generate operations, and wrap stream operations of a language model.
3873
3822
  *
3874
3823
  * @param options - Configuration options for wrapping the language model.
3875
- * @param options.model - The original LanguageModelV1 instance to be wrapped.
3824
+ * @param options.model - The original LanguageModelV2 instance to be wrapped.
3876
3825
  * @param options.middleware - The middleware to be applied to the language model. When multiple middlewares are provided, the first middleware will transform the input first, and the last middleware will be wrapped directly around the model.
3877
3826
  * @param options.modelId - Optional custom model ID to override the original model's ID.
3878
3827
  * @param options.providerId - Optional custom provider ID to override the original model's provider.
3879
- * @returns A new LanguageModelV1 instance with middleware applied.
3828
+ * @returns A new LanguageModelV2 instance with middleware applied.
3880
3829
  */
3881
3830
  declare const wrapLanguageModel: ({ model, middleware: middlewareArg, modelId, providerId, }: {
3882
- model: LanguageModelV1;
3883
- middleware: LanguageModelV1Middleware | LanguageModelV1Middleware[];
3831
+ model: LanguageModelV2;
3832
+ middleware: LanguageModelV2Middleware | LanguageModelV2Middleware[];
3884
3833
  modelId?: string;
3885
3834
  providerId?: string;
3886
- }) => LanguageModelV1;
3835
+ }) => LanguageModelV2;
3887
3836
  /**
3888
3837
  * @deprecated Use `wrapLanguageModel` instead.
3889
3838
  */
3890
3839
  declare const experimental_wrapLanguageModel: ({ model, middleware: middlewareArg, modelId, providerId, }: {
3891
- model: LanguageModelV1;
3892
- middleware: LanguageModelV1Middleware | LanguageModelV1Middleware[];
3840
+ model: LanguageModelV2;
3841
+ middleware: LanguageModelV2Middleware | LanguageModelV2Middleware[];
3893
3842
  modelId?: string;
3894
3843
  providerId?: string;
3895
- }) => LanguageModelV1;
3844
+ }) => LanguageModelV2;
3896
3845
 
3897
3846
  /**
3898
3847
  * Creates a custom provider with specified language models, text embedding models, and an optional fallback provider.
@@ -3910,7 +3859,7 @@ declare function customProvider<LANGUAGE_MODELS extends Record<string, LanguageM
3910
3859
  languageModels?: LANGUAGE_MODELS;
3911
3860
  textEmbeddingModels?: EMBEDDING_MODELS;
3912
3861
  imageModels?: IMAGE_MODELS;
3913
- fallbackProvider?: ProviderV1;
3862
+ fallbackProvider?: ProviderV2;
3914
3863
  }): Provider & {
3915
3864
  languageModel(modelId: ExtractModelId<LANGUAGE_MODELS>): LanguageModel;
3916
3865
  textEmbeddingModel(modelId: ExtractModelId<EMBEDDING_MODELS>): EmbeddingModel<string>;
@@ -3938,7 +3887,7 @@ declare class NoSuchProviderError extends NoSuchModelError {
3938
3887
  }
3939
3888
 
3940
3889
  type ExtractLiteralUnion<T> = T extends string ? string extends T ? never : T : never;
3941
- interface ProviderRegistryProvider<PROVIDERS extends Record<string, ProviderV1> = Record<string, ProviderV1>, SEPARATOR extends string = ':'> {
3890
+ interface ProviderRegistryProvider<PROVIDERS extends Record<string, ProviderV2> = Record<string, ProviderV2>, SEPARATOR extends string = ':'> {
3942
3891
  languageModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${ExtractLiteralUnion<Parameters<NonNullable<PROVIDERS[KEY]['languageModel']>>[0]>}` : never): LanguageModel;
3943
3892
  languageModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${string}` : never): LanguageModel;
3944
3893
  textEmbeddingModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${ExtractLiteralUnion<Parameters<NonNullable<PROVIDERS[KEY]['textEmbeddingModel']>>[0]>}` : never): EmbeddingModel<string>;
@@ -3949,7 +3898,7 @@ interface ProviderRegistryProvider<PROVIDERS extends Record<string, ProviderV1>
3949
3898
  /**
3950
3899
  * Creates a registry for the given providers.
3951
3900
  */
3952
- declare function createProviderRegistry<PROVIDERS extends Record<string, ProviderV1>, SEPARATOR extends string = ':'>(providers: PROVIDERS, { separator, }?: {
3901
+ declare function createProviderRegistry<PROVIDERS extends Record<string, ProviderV2>, SEPARATOR extends string = ':'>(providers: PROVIDERS, { separator, }?: {
3953
3902
  separator?: SEPARATOR;
3954
3903
  }): ProviderRegistryProvider<PROVIDERS, SEPARATOR>;
3955
3904
  /**
@@ -4114,12 +4063,17 @@ declare class NoObjectGeneratedError extends AISDKError {
4114
4063
  The usage of the model.
4115
4064
  */
4116
4065
  readonly usage: LanguageModelUsage | undefined;
4117
- constructor({ message, cause, text, response, usage, }: {
4066
+ /**
4067
+ Reason why the model finished generating a response.
4068
+ */
4069
+ readonly finishReason: FinishReason | undefined;
4070
+ constructor({ message, cause, text, response, usage, finishReason, }: {
4118
4071
  message?: string;
4119
4072
  cause?: Error;
4120
4073
  text?: string;
4121
4074
  response: LanguageModelResponseMetadata;
4122
4075
  usage: LanguageModelUsage;
4076
+ finishReason: FinishReason;
4123
4077
  });
4124
4078
  static isInstance(error: unknown): error is NoObjectGeneratedError;
4125
4079
  }
@@ -4339,4 +4293,4 @@ declare namespace llamaindexAdapter {
4339
4293
  };
4340
4294
  }
4341
4295
 
4342
- export { AssistantContent, CallWarning, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolCallUnion, CoreToolChoice, CoreToolMessage, CoreToolResultUnion, CoreUserMessage, DataContent, DataStreamOptions, DataStreamWriter, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, Experimental_LanguageModelV1Middleware, FilePart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedFile, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelResponseMetadata, ImagePart, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolArgumentsError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, langchainAdapter as LangChainAdapter, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, LanguageModelV1Middleware, llamaindexAdapter as LlamaIndexAdapter, LogProbs, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, Provider, ProviderMetadata, ProviderRegistryProvider, RepairTextFunction, RetryError, StepResult, StreamData, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextPart, TextStreamPart, Tool, ToolCallPart, ToolCallRepairError, ToolCallRepairFunction, ToolCallUnion, ToolChoice, ToolContent, ToolExecutionError, ToolExecutionOptions, ToolResultPart, ToolResultUnion, ToolSet, UserContent, appendClientMessage, appendResponseMessages, convertToCoreMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createDataStream, createDataStreamResponse, createProviderRegistry, customProvider, defaultSettingsMiddleware, embed, embedMany, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, experimental_wrapLanguageModel, extractReasoningMiddleware, generateObject, generateText, pipeDataStreamToResponse, simulateReadableStream, simulateStreamingMiddleware, smoothStream, streamObject, streamText, tool, wrapLanguageModel };
4296
+ export { AssistantContent, CallWarning, ChunkDetector, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolCallUnion, CoreToolChoice, CoreToolMessage, CoreToolResultUnion, CoreUserMessage, DataContent, DataStreamOptions, DataStreamWriter, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, FilePart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedFile, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelResponseMetadata, ImagePart, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolArgumentsError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, langchainAdapter as LangChainAdapter, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, llamaindexAdapter as LlamaIndexAdapter, LogProbs, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, Provider, ProviderMetadata, ProviderRegistryProvider, RepairTextFunction, RetryError, StepResult, StreamData, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextPart, TextStreamPart, Tool, ToolCallPart, ToolCallRepairError, ToolCallRepairFunction, ToolCallUnion, ToolChoice, ToolContent, ToolExecutionError, ToolExecutionOptions, ToolResultPart, ToolResultUnion, ToolSet, UserContent, appendClientMessage, appendResponseMessages, convertToCoreMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createDataStream, createDataStreamResponse, createProviderRegistry, customProvider, defaultSettingsMiddleware, embed, embedMany, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, experimental_wrapLanguageModel, extractReasoningMiddleware, generateObject, generateText, pipeDataStreamToResponse, simulateReadableStream, simulateStreamingMiddleware, smoothStream, streamObject, streamText, tool, wrapLanguageModel };
package/dist/index.d.ts CHANGED
@@ -2,8 +2,8 @@ import { IDGenerator } from '@ai-sdk/provider-utils';
2
2
  export { CoreToolCall, CoreToolResult, IDGenerator, ToolCall, ToolResult, createIdGenerator, generateId } from '@ai-sdk/provider-utils';
3
3
  import { DataStreamString, Message, Schema, DeepPartial, JSONValue as JSONValue$1 } from '@ai-sdk/ui-utils';
4
4
  export { Attachment, ChatRequest, ChatRequestOptions, CreateMessage, DataStreamPart, DeepPartial, IdGenerator, JSONValue, Message, RequestOptions, Schema, ToolInvocation, UIMessage, formatDataStreamPart, jsonSchema, parseDataStreamPart, processDataStream, processTextStream, zodSchema } from '@ai-sdk/ui-utils';
5
- import { LanguageModelV1, LanguageModelV1FinishReason, LanguageModelV1LogProbs, LanguageModelV1CallWarning, LanguageModelV1Source, JSONValue, EmbeddingModelV1, EmbeddingModelV1Embedding, ImageModelV1, ImageModelV1CallWarning, LanguageModelV1ProviderMetadata, LanguageModelV1CallOptions, AISDKError, LanguageModelV1FunctionToolCall, JSONSchema7, JSONParseError, TypeValidationError, ProviderV1, NoSuchModelError } from '@ai-sdk/provider';
6
- export { AISDKError, APICallError, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, LanguageModelV1, LanguageModelV1CallOptions, LanguageModelV1Prompt, LanguageModelV1StreamPart, LoadAPIKeyError, NoContentGeneratedError, NoSuchModelError, TypeValidationError, UnsupportedFunctionalityError } from '@ai-sdk/provider';
5
+ import { LanguageModelV2, LanguageModelV2FinishReason, LanguageModelV2LogProbs, LanguageModelV2CallWarning, LanguageModelV2Source, JSONValue, EmbeddingModelV1, EmbeddingModelV1Embedding, ImageModelV1, ImageModelV1CallWarning, LanguageModelV2ProviderMetadata, LanguageModelV2CallOptions, AISDKError, LanguageModelV2FunctionToolCall, JSONSchema7, JSONParseError, TypeValidationError, LanguageModelV2Middleware, ProviderV2, NoSuchModelError } from '@ai-sdk/provider';
6
+ export { AISDKError, APICallError, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, LanguageModelV2, LanguageModelV2CallOptions, LanguageModelV2Prompt, LanguageModelV2StreamPart, LoadAPIKeyError, NoContentGeneratedError, NoSuchModelError, TypeValidationError, UnsupportedFunctionalityError } from '@ai-sdk/provider';
7
7
  import { ServerResponse } from 'node:http';
8
8
  import { AttributeValue, Tracer } from '@opentelemetry/api';
9
9
  import { z } from 'zod';
@@ -12,7 +12,7 @@ import { ServerResponse as ServerResponse$1 } from 'http';
12
12
  /**
13
13
  Language model that is used by the AI SDK Core functions.
14
14
  */
15
- type LanguageModel = LanguageModelV1;
15
+ type LanguageModel = LanguageModelV2;
16
16
  /**
17
17
  Reason why a language model finished generating a response.
18
18
 
@@ -24,22 +24,22 @@ Can be one of the following:
24
24
  - `error`: model stopped because of an error
25
25
  - `other`: model stopped for other reasons
26
26
  */
27
- type FinishReason = LanguageModelV1FinishReason;
27
+ type FinishReason = LanguageModelV2FinishReason;
28
28
  /**
29
29
  Log probabilities for each token and its top log probabilities.
30
30
 
31
31
  @deprecated Will become a provider extension in the future.
32
32
  */
33
- type LogProbs = LanguageModelV1LogProbs;
33
+ type LogProbs = LanguageModelV2LogProbs;
34
34
  /**
35
35
  Warning from the model provider for this call. The call will proceed, but e.g.
36
36
  some settings might not be supported, which can lead to suboptimal results.
37
37
  */
38
- type CallWarning = LanguageModelV1CallWarning;
38
+ type CallWarning = LanguageModelV2CallWarning;
39
39
  /**
40
40
  A source that has been used as input to generate the response.
41
41
  */
42
- type Source = LanguageModelV1Source;
42
+ type Source = LanguageModelV2Source;
43
43
  /**
44
44
  Tool choice for the generation. It supports the following settings:
45
45
 
@@ -240,14 +240,14 @@ Additional provider-specific metadata that is returned from the provider.
240
240
  This is needed to enable provider-specific functionality that can be
241
241
  fully encapsulated in the provider.
242
242
  */
243
- type ProviderMetadata = LanguageModelV1ProviderMetadata;
243
+ type ProviderMetadata = LanguageModelV2ProviderMetadata;
244
244
  /**
245
245
  Additional provider-specific options.
246
246
 
247
247
  They are passed through to the provider from the AI SDK and enable
248
248
  provider-specific functionality that can be fully encapsulated in the provider.
249
249
  */
250
- type ProviderOptions = LanguageModelV1ProviderMetadata;
250
+ type ProviderOptions = LanguageModelV2ProviderMetadata;
251
251
 
252
252
  /**
253
253
  Represents the number of tokens used in a prompt and completion.
@@ -2243,7 +2243,7 @@ interface Output<OUTPUT, PARTIAL> {
2243
2243
  }): string | undefined;
2244
2244
  responseFormat: (options: {
2245
2245
  model: LanguageModel;
2246
- }) => LanguageModelV1CallOptions['responseFormat'];
2246
+ }) => LanguageModelV2CallOptions['responseFormat'];
2247
2247
  parsePartial(options: {
2248
2248
  text: string;
2249
2249
  }): {
@@ -2254,6 +2254,7 @@ interface Output<OUTPUT, PARTIAL> {
2254
2254
  }, context: {
2255
2255
  response: LanguageModelResponseMetadata;
2256
2256
  usage: LanguageModelUsage;
2257
+ finishReason: FinishReason;
2257
2258
  }): OUTPUT;
2258
2259
  }
2259
2260
  declare const text: () => Output<string, string>;
@@ -2351,13 +2352,13 @@ declare function convertToCoreMessages<TOOLS extends ToolSet = never>(messages:
2351
2352
  type ToolCallRepairFunction<TOOLS extends ToolSet> = (options: {
2352
2353
  system: string | undefined;
2353
2354
  messages: CoreMessage[];
2354
- toolCall: LanguageModelV1FunctionToolCall;
2355
+ toolCall: LanguageModelV2FunctionToolCall;
2355
2356
  tools: TOOLS;
2356
2357
  parameterSchema: (options: {
2357
2358
  toolName: string;
2358
2359
  }) => JSONSchema7;
2359
2360
  error: NoSuchToolError | InvalidToolArgumentsError;
2360
- }) => Promise<LanguageModelV1FunctionToolCall | null>;
2361
+ }) => Promise<LanguageModelV2FunctionToolCall | null>;
2361
2362
 
2362
2363
  /**
2363
2364
  Callback that is set using the `onStepFinish` option.
@@ -2805,6 +2806,14 @@ type TextStreamPart<TOOLS extends ToolSet> = {
2805
2806
  error: unknown;
2806
2807
  };
2807
2808
 
2809
+ /**
2810
+ * Detects the first chunk in a buffer.
2811
+ *
2812
+ * @param buffer - The buffer to detect the first chunk in.
2813
+ *
2814
+ * @returns The first detected chunk, or `undefined` if no chunk was detected.
2815
+ */
2816
+ type ChunkDetector = (buffer: string) => string | undefined | null;
2808
2817
  /**
2809
2818
  * Smooths text streaming output.
2810
2819
  *
@@ -2815,7 +2824,7 @@ type TextStreamPart<TOOLS extends ToolSet> = {
2815
2824
  */
2816
2825
  declare function smoothStream<TOOLS extends ToolSet>({ delayInMs, chunking, _internal: { delay }, }?: {
2817
2826
  delayInMs?: number | null;
2818
- chunking?: 'word' | 'line' | RegExp;
2827
+ chunking?: 'word' | 'line' | RegExp | ChunkDetector;
2819
2828
  /**
2820
2829
  * Internal. For test use only. May change without notice.
2821
2830
  */
@@ -3778,74 +3787,14 @@ Callback that is called when the LLM response and the final object validation ar
3778
3787
  };
3779
3788
  }): StreamObjectResult<JSONValue, JSONValue, never>;
3780
3789
 
3781
- /**
3782
- * Experimental middleware for LanguageModelV1.
3783
- * This type defines the structure for middleware that can be used to modify
3784
- * the behavior of LanguageModelV1 operations.
3785
- */
3786
- type LanguageModelV1Middleware = {
3787
- /**
3788
- * Middleware specification version. Use `v1` for the current version.
3789
- */
3790
- middlewareVersion?: 'v1' | undefined;
3791
- /**
3792
- * Transforms the parameters before they are passed to the language model.
3793
- * @param options - Object containing the type of operation and the parameters.
3794
- * @param options.type - The type of operation ('generate' or 'stream').
3795
- * @param options.params - The original parameters for the language model call.
3796
- * @returns A promise that resolves to the transformed parameters.
3797
- */
3798
- transformParams?: (options: {
3799
- type: 'generate' | 'stream';
3800
- params: LanguageModelV1CallOptions;
3801
- }) => PromiseLike<LanguageModelV1CallOptions>;
3802
- /**
3803
- * Wraps the generate operation of the language model.
3804
- * @param options - Object containing the generate function, parameters, and model.
3805
- * @param options.doGenerate - The original generate function.
3806
- * @param options.doStream - The original stream function.
3807
- * @param options.params - The parameters for the generate call. If the
3808
- * `transformParams` middleware is used, this will be the transformed parameters.
3809
- * @param options.model - The language model instance.
3810
- * @returns A promise that resolves to the result of the generate operation.
3811
- */
3812
- wrapGenerate?: (options: {
3813
- doGenerate: () => ReturnType<LanguageModelV1['doGenerate']>;
3814
- doStream: () => ReturnType<LanguageModelV1['doStream']>;
3815
- params: LanguageModelV1CallOptions;
3816
- model: LanguageModelV1;
3817
- }) => Promise<Awaited<ReturnType<LanguageModelV1['doGenerate']>>>;
3818
- /**
3819
- * Wraps the stream operation of the language model.
3820
- *
3821
- * @param options - Object containing the stream function, parameters, and model.
3822
- * @param options.doGenerate - The original generate function.
3823
- * @param options.doStream - The original stream function.
3824
- * @param options.params - The parameters for the stream call. If the
3825
- * `transformParams` middleware is used, this will be the transformed parameters.
3826
- * @param options.model - The language model instance.
3827
- * @returns A promise that resolves to the result of the stream operation.
3828
- */
3829
- wrapStream?: (options: {
3830
- doGenerate: () => ReturnType<LanguageModelV1['doGenerate']>;
3831
- doStream: () => ReturnType<LanguageModelV1['doStream']>;
3832
- params: LanguageModelV1CallOptions;
3833
- model: LanguageModelV1;
3834
- }) => PromiseLike<Awaited<ReturnType<LanguageModelV1['doStream']>>>;
3835
- };
3836
- /**
3837
- * @deprecated Use `LanguageModelV1Middleware` instead.
3838
- */
3839
- type Experimental_LanguageModelV1Middleware = LanguageModelV1Middleware;
3840
-
3841
3790
  /**
3842
3791
  * Applies default settings for a language model.
3843
3792
  */
3844
3793
  declare function defaultSettingsMiddleware({ settings, }: {
3845
- settings: Partial<LanguageModelV1CallOptions & {
3846
- providerMetadata?: LanguageModelV1ProviderMetadata;
3794
+ settings: Partial<LanguageModelV2CallOptions & {
3795
+ providerMetadata?: LanguageModelV2ProviderMetadata;
3847
3796
  }>;
3848
- }): LanguageModelV1Middleware;
3797
+ }): LanguageModelV2Middleware;
3849
3798
 
3850
3799
  /**
3851
3800
  * Extract an XML-tagged reasoning section from the generated text and exposes it
@@ -3859,40 +3808,40 @@ declare function extractReasoningMiddleware({ tagName, separator, startWithReaso
3859
3808
  tagName: string;
3860
3809
  separator?: string;
3861
3810
  startWithReasoning?: boolean;
3862
- }): LanguageModelV1Middleware;
3811
+ }): LanguageModelV2Middleware;
3863
3812
 
3864
3813
  /**
3865
3814
  * Simulates streaming chunks with the response from a generate call.
3866
3815
  */
3867
- declare function simulateStreamingMiddleware(): LanguageModelV1Middleware;
3816
+ declare function simulateStreamingMiddleware(): LanguageModelV2Middleware;
3868
3817
 
3869
3818
  /**
3870
- * Wraps a LanguageModelV1 instance with middleware functionality.
3819
+ * Wraps a LanguageModelV2 instance with middleware functionality.
3871
3820
  * This function allows you to apply middleware to transform parameters,
3872
3821
  * wrap generate operations, and wrap stream operations of a language model.
3873
3822
  *
3874
3823
  * @param options - Configuration options for wrapping the language model.
3875
- * @param options.model - The original LanguageModelV1 instance to be wrapped.
3824
+ * @param options.model - The original LanguageModelV2 instance to be wrapped.
3876
3825
  * @param options.middleware - The middleware to be applied to the language model. When multiple middlewares are provided, the first middleware will transform the input first, and the last middleware will be wrapped directly around the model.
3877
3826
  * @param options.modelId - Optional custom model ID to override the original model's ID.
3878
3827
  * @param options.providerId - Optional custom provider ID to override the original model's provider.
3879
- * @returns A new LanguageModelV1 instance with middleware applied.
3828
+ * @returns A new LanguageModelV2 instance with middleware applied.
3880
3829
  */
3881
3830
  declare const wrapLanguageModel: ({ model, middleware: middlewareArg, modelId, providerId, }: {
3882
- model: LanguageModelV1;
3883
- middleware: LanguageModelV1Middleware | LanguageModelV1Middleware[];
3831
+ model: LanguageModelV2;
3832
+ middleware: LanguageModelV2Middleware | LanguageModelV2Middleware[];
3884
3833
  modelId?: string;
3885
3834
  providerId?: string;
3886
- }) => LanguageModelV1;
3835
+ }) => LanguageModelV2;
3887
3836
  /**
3888
3837
  * @deprecated Use `wrapLanguageModel` instead.
3889
3838
  */
3890
3839
  declare const experimental_wrapLanguageModel: ({ model, middleware: middlewareArg, modelId, providerId, }: {
3891
- model: LanguageModelV1;
3892
- middleware: LanguageModelV1Middleware | LanguageModelV1Middleware[];
3840
+ model: LanguageModelV2;
3841
+ middleware: LanguageModelV2Middleware | LanguageModelV2Middleware[];
3893
3842
  modelId?: string;
3894
3843
  providerId?: string;
3895
- }) => LanguageModelV1;
3844
+ }) => LanguageModelV2;
3896
3845
 
3897
3846
  /**
3898
3847
  * Creates a custom provider with specified language models, text embedding models, and an optional fallback provider.
@@ -3910,7 +3859,7 @@ declare function customProvider<LANGUAGE_MODELS extends Record<string, LanguageM
3910
3859
  languageModels?: LANGUAGE_MODELS;
3911
3860
  textEmbeddingModels?: EMBEDDING_MODELS;
3912
3861
  imageModels?: IMAGE_MODELS;
3913
- fallbackProvider?: ProviderV1;
3862
+ fallbackProvider?: ProviderV2;
3914
3863
  }): Provider & {
3915
3864
  languageModel(modelId: ExtractModelId<LANGUAGE_MODELS>): LanguageModel;
3916
3865
  textEmbeddingModel(modelId: ExtractModelId<EMBEDDING_MODELS>): EmbeddingModel<string>;
@@ -3938,7 +3887,7 @@ declare class NoSuchProviderError extends NoSuchModelError {
3938
3887
  }
3939
3888
 
3940
3889
  type ExtractLiteralUnion<T> = T extends string ? string extends T ? never : T : never;
3941
- interface ProviderRegistryProvider<PROVIDERS extends Record<string, ProviderV1> = Record<string, ProviderV1>, SEPARATOR extends string = ':'> {
3890
+ interface ProviderRegistryProvider<PROVIDERS extends Record<string, ProviderV2> = Record<string, ProviderV2>, SEPARATOR extends string = ':'> {
3942
3891
  languageModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${ExtractLiteralUnion<Parameters<NonNullable<PROVIDERS[KEY]['languageModel']>>[0]>}` : never): LanguageModel;
3943
3892
  languageModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${string}` : never): LanguageModel;
3944
3893
  textEmbeddingModel<KEY extends keyof PROVIDERS>(id: KEY extends string ? `${KEY & string}${SEPARATOR}${ExtractLiteralUnion<Parameters<NonNullable<PROVIDERS[KEY]['textEmbeddingModel']>>[0]>}` : never): EmbeddingModel<string>;
@@ -3949,7 +3898,7 @@ interface ProviderRegistryProvider<PROVIDERS extends Record<string, ProviderV1>
3949
3898
  /**
3950
3899
  * Creates a registry for the given providers.
3951
3900
  */
3952
- declare function createProviderRegistry<PROVIDERS extends Record<string, ProviderV1>, SEPARATOR extends string = ':'>(providers: PROVIDERS, { separator, }?: {
3901
+ declare function createProviderRegistry<PROVIDERS extends Record<string, ProviderV2>, SEPARATOR extends string = ':'>(providers: PROVIDERS, { separator, }?: {
3953
3902
  separator?: SEPARATOR;
3954
3903
  }): ProviderRegistryProvider<PROVIDERS, SEPARATOR>;
3955
3904
  /**
@@ -4114,12 +4063,17 @@ declare class NoObjectGeneratedError extends AISDKError {
4114
4063
  The usage of the model.
4115
4064
  */
4116
4065
  readonly usage: LanguageModelUsage | undefined;
4117
- constructor({ message, cause, text, response, usage, }: {
4066
+ /**
4067
+ Reason why the model finished generating a response.
4068
+ */
4069
+ readonly finishReason: FinishReason | undefined;
4070
+ constructor({ message, cause, text, response, usage, finishReason, }: {
4118
4071
  message?: string;
4119
4072
  cause?: Error;
4120
4073
  text?: string;
4121
4074
  response: LanguageModelResponseMetadata;
4122
4075
  usage: LanguageModelUsage;
4076
+ finishReason: FinishReason;
4123
4077
  });
4124
4078
  static isInstance(error: unknown): error is NoObjectGeneratedError;
4125
4079
  }
@@ -4339,4 +4293,4 @@ declare namespace llamaindexAdapter {
4339
4293
  };
4340
4294
  }
4341
4295
 
4342
- export { AssistantContent, CallWarning, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolCallUnion, CoreToolChoice, CoreToolMessage, CoreToolResultUnion, CoreUserMessage, DataContent, DataStreamOptions, DataStreamWriter, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, Experimental_LanguageModelV1Middleware, FilePart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedFile, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelResponseMetadata, ImagePart, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolArgumentsError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, langchainAdapter as LangChainAdapter, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, LanguageModelV1Middleware, llamaindexAdapter as LlamaIndexAdapter, LogProbs, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, Provider, ProviderMetadata, ProviderRegistryProvider, RepairTextFunction, RetryError, StepResult, StreamData, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextPart, TextStreamPart, Tool, ToolCallPart, ToolCallRepairError, ToolCallRepairFunction, ToolCallUnion, ToolChoice, ToolContent, ToolExecutionError, ToolExecutionOptions, ToolResultPart, ToolResultUnion, ToolSet, UserContent, appendClientMessage, appendResponseMessages, convertToCoreMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createDataStream, createDataStreamResponse, createProviderRegistry, customProvider, defaultSettingsMiddleware, embed, embedMany, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, experimental_wrapLanguageModel, extractReasoningMiddleware, generateObject, generateText, pipeDataStreamToResponse, simulateReadableStream, simulateStreamingMiddleware, smoothStream, streamObject, streamText, tool, wrapLanguageModel };
4296
+ export { AssistantContent, CallWarning, ChunkDetector, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolCallUnion, CoreToolChoice, CoreToolMessage, CoreToolResultUnion, CoreUserMessage, DataContent, DataStreamOptions, DataStreamWriter, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, FilePart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedFile, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelResponseMetadata, ImagePart, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolArgumentsError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, langchainAdapter as LangChainAdapter, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, llamaindexAdapter as LlamaIndexAdapter, LogProbs, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, Provider, ProviderMetadata, ProviderRegistryProvider, RepairTextFunction, RetryError, StepResult, StreamData, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextPart, TextStreamPart, Tool, ToolCallPart, ToolCallRepairError, ToolCallRepairFunction, ToolCallUnion, ToolChoice, ToolContent, ToolExecutionError, ToolExecutionOptions, ToolResultPart, ToolResultUnion, ToolSet, UserContent, appendClientMessage, appendResponseMessages, convertToCoreMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createDataStream, createDataStreamResponse, createProviderRegistry, customProvider, defaultSettingsMiddleware, embed, embedMany, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, experimental_wrapLanguageModel, extractReasoningMiddleware, generateObject, generateText, pipeDataStreamToResponse, simulateReadableStream, simulateStreamingMiddleware, smoothStream, streamObject, streamText, tool, wrapLanguageModel };