ai 5.0.15 → 5.0.17

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,20 @@
1
1
  # ai
2
2
 
3
+ ## 5.0.17
4
+
5
+ ### Patch Changes
6
+
7
+ - 4176ecb: feat(ai): add reasoning text to generateObject result
8
+ - 20f23f9: feat(ai): export LanguageModelMiddleware type
9
+
10
+ ## 5.0.16
11
+
12
+ ### Patch Changes
13
+
14
+ - Updated dependencies [68751f9]
15
+ - @ai-sdk/provider-utils@3.0.4
16
+ - @ai-sdk/gateway@1.0.8
17
+
3
18
  ## 5.0.15
4
19
 
5
20
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ModelMessage, Tool, InferToolInput, InferToolOutput, AssistantModelMessage, ToolModelMessage, ReasoningPart, Schema, SystemModelMessage, UserModelMessage, ProviderOptions, IdGenerator, ToolCall, InferSchema, FlexibleSchema, DataContent, Validator, StandardSchemaV1, Resolvable, FetchFunction } from '@ai-sdk/provider-utils';
2
2
  export { AssistantContent, AssistantModelMessage, DataContent, FilePart, IdGenerator, ImagePart, InferToolInput, InferToolOutput, ModelMessage, Schema, SystemModelMessage, TextPart, Tool, ToolCallOptions, ToolCallPart, ToolContent, ToolExecuteFunction, ToolModelMessage, ToolResultPart, UserContent, UserModelMessage, asSchema, createIdGenerator, dynamicTool, generateId, jsonSchema, tool, zodSchema } from '@ai-sdk/provider-utils';
3
3
  import { AttributeValue, Tracer } from '@opentelemetry/api';
4
- import { EmbeddingModelV2, EmbeddingModelV2Embedding, ImageModelV2, ImageModelV2CallWarning, ImageModelV2ProviderMetadata, JSONValue as JSONValue$1, LanguageModelV2, LanguageModelV2FinishReason, LanguageModelV2CallWarning, LanguageModelV2Source, SharedV2ProviderMetadata, SpeechModelV2, SpeechModelV2CallWarning, TranscriptionModelV2, TranscriptionModelV2CallWarning, LanguageModelV2Usage, LanguageModelV2CallOptions, AISDKError, LanguageModelV2ToolCall, JSONSchema7, JSONParseError, TypeValidationError, LanguageModelV2Middleware, ProviderV2, NoSuchModelError, JSONObject } from '@ai-sdk/provider';
4
+ import { EmbeddingModelV2, EmbeddingModelV2Embedding, ImageModelV2, ImageModelV2CallWarning, ImageModelV2ProviderMetadata, JSONValue as JSONValue$1, LanguageModelV2, LanguageModelV2FinishReason, LanguageModelV2CallWarning, LanguageModelV2Source, LanguageModelV2Middleware, SharedV2ProviderMetadata, SpeechModelV2, SpeechModelV2CallWarning, TranscriptionModelV2, TranscriptionModelV2CallWarning, LanguageModelV2Usage, LanguageModelV2CallOptions, AISDKError, LanguageModelV2ToolCall, JSONSchema7, JSONParseError, TypeValidationError, ProviderV2, NoSuchModelError, JSONObject } from '@ai-sdk/provider';
5
5
  export { AISDKError, APICallError, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, JSONSchema7, LoadAPIKeyError, NoContentGeneratedError, NoSuchModelError, TypeValidationError, UnsupportedFunctionalityError } from '@ai-sdk/provider';
6
6
  import * as z3 from 'zod/v3';
7
7
  import * as z4 from 'zod/v4';
@@ -217,6 +217,8 @@ type ToolChoice<TOOLS extends Record<string, unknown>> = 'auto' | 'none' | 'requ
217
217
  toolName: Extract<keyof TOOLS, string>;
218
218
  };
219
219
 
220
+ type LanguageModelMiddleware = LanguageModelV2Middleware;
221
+
220
222
  type LanguageModelRequestMetadata = {
221
223
  /**
222
224
  Request HTTP body that was sent to the provider API.
@@ -2695,6 +2697,11 @@ interface GenerateObjectResult<OBJECT> {
2695
2697
  The generated object (typed according to the schema).
2696
2698
  */
2697
2699
  readonly object: OBJECT;
2700
+ /**
2701
+ * The reasoning that was used to generate the object.
2702
+ * Concatenated from all reasoning parts.
2703
+ */
2704
+ readonly reasoning: string | undefined;
2698
2705
  /**
2699
2706
  The reason why the generation finished.
2700
2707
  */
@@ -3354,7 +3361,7 @@ declare function defaultSettingsMiddleware({ settings, }: {
3354
3361
  headers?: LanguageModelV2CallOptions['headers'];
3355
3362
  providerOptions?: LanguageModelV2CallOptions['providerOptions'];
3356
3363
  }>;
3357
- }): LanguageModelV2Middleware;
3364
+ }): LanguageModelMiddleware;
3358
3365
 
3359
3366
  /**
3360
3367
  * Extract an XML-tagged reasoning section from the generated text and exposes it
@@ -3368,12 +3375,12 @@ declare function extractReasoningMiddleware({ tagName, separator, startWithReaso
3368
3375
  tagName: string;
3369
3376
  separator?: string;
3370
3377
  startWithReasoning?: boolean;
3371
- }): LanguageModelV2Middleware;
3378
+ }): LanguageModelMiddleware;
3372
3379
 
3373
3380
  /**
3374
3381
  * Simulates streaming chunks with the response from a generate call.
3375
3382
  */
3376
- declare function simulateStreamingMiddleware(): LanguageModelV2Middleware;
3383
+ declare function simulateStreamingMiddleware(): LanguageModelMiddleware;
3377
3384
 
3378
3385
  /**
3379
3386
  * Wraps a LanguageModelV2 instance with middleware functionality.
@@ -3389,7 +3396,7 @@ declare function simulateStreamingMiddleware(): LanguageModelV2Middleware;
3389
3396
  */
3390
3397
  declare const wrapLanguageModel: ({ model, middleware: middlewareArg, modelId, providerId, }: {
3391
3398
  model: LanguageModelV2;
3392
- middleware: LanguageModelV2Middleware | LanguageModelV2Middleware[];
3399
+ middleware: LanguageModelMiddleware | LanguageModelMiddleware[];
3393
3400
  modelId?: string;
3394
3401
  providerId?: string;
3395
3402
  }) => LanguageModelV2;
@@ -3407,7 +3414,7 @@ declare const wrapLanguageModel: ({ model, middleware: middlewareArg, modelId, p
3407
3414
  */
3408
3415
  declare function wrapProvider({ provider, languageModelMiddleware, }: {
3409
3416
  provider: ProviderV2;
3410
- languageModelMiddleware: LanguageModelV2Middleware | LanguageModelV2Middleware[];
3417
+ languageModelMiddleware: LanguageModelMiddleware | LanguageModelMiddleware[];
3411
3418
  }): ProviderV2;
3412
3419
 
3413
3420
  /**
@@ -3486,7 +3493,7 @@ interface ProviderRegistryProvider<PROVIDERS extends Record<string, ProviderV2>
3486
3493
  */
3487
3494
  declare function createProviderRegistry<PROVIDERS extends Record<string, ProviderV2>, SEPARATOR extends string = ':'>(providers: PROVIDERS, { separator, languageModelMiddleware, }?: {
3488
3495
  separator?: SEPARATOR;
3489
- languageModelMiddleware?: LanguageModelV2Middleware | LanguageModelV2Middleware[];
3496
+ languageModelMiddleware?: LanguageModelMiddleware | LanguageModelMiddleware[];
3490
3497
  }): ProviderRegistryProvider<PROVIDERS, SEPARATOR>;
3491
3498
  /**
3492
3499
  * @deprecated Use `createProviderRegistry` instead.
@@ -4347,4 +4354,4 @@ declare global {
4347
4354
  var AI_SDK_DEFAULT_PROVIDER: ProviderV2 | undefined;
4348
4355
  }
4349
4356
 
4350
- export { AbstractChat, AsyncIterableStream, CallSettings, CallWarning, ChatInit, ChatOnDataCallback, ChatOnErrorCallback, ChatOnFinishCallback, ChatOnToolCallCallback, ChatRequestOptions, ChatState, ChatStatus, ChatTransport, ChunkDetector, CompletionRequestOptions, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreToolMessage, CoreUserMessage, CreateUIMessage, DataUIPart, DeepPartial, DefaultChatTransport, DownloadError, DynamicToolCall, DynamicToolError, DynamicToolResult, DynamicToolUIPart, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, ErrorHandler, Agent as Experimental_Agent, AgentSettings as Experimental_AgentSettings, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, SpeechResult as Experimental_SpeechResult, TranscriptionResult as Experimental_TranscriptionResult, FileUIPart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedAudioFile, GeneratedFile, HttpChatTransport, HttpChatTransportInitOptions, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelProviderMetadata, ImageModelResponseMetadata, InferUIDataParts, InferUIMessageChunk, InferUITool, InferUITools, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolInputError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, JSONValue, JsonToSseTransformStream, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, PrepareReconnectToStreamRequest, PrepareSendMessagesRequest, PrepareStepFunction, PrepareStepResult, Prompt, Provider, ProviderMetadata, ProviderRegistryProvider, ReasoningUIPart, RepairTextFunction, RetryError, SerialJobExecutor, SourceDocumentUIPart, SourceUrlUIPart, SpeechModel, SpeechModelResponseMetadata, SpeechWarning, StaticToolCall, StaticToolError, StaticToolResult, StepResult, StepStartUIPart, StopCondition, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextStreamChatTransport, TextStreamPart, TextUIPart, ToolCallRepairError, ToolCallRepairFunction, ToolChoice, ToolSet, ToolUIPart, TranscriptionModel, TranscriptionModelResponseMetadata, TranscriptionWarning, TypedToolCall, TypedToolError, TypedToolResult, UIDataPartSchemas, UIDataTypes, UIMessage, UIMessageChunk, UIMessagePart, UIMessageStreamOnFinishCallback, UIMessageStreamOptions, UIMessageStreamWriter, UITool, UITools, UI_MESSAGE_STREAM_HEADERS, UnsupportedModelVersionError, UseCompletionOptions, assistantModelMessageSchema, callCompletionApi, consumeStream, convertFileListToFileUIParts, convertToCoreMessages, convertToModelMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createProviderRegistry, createTextStreamResponse, createUIMessageStream, createUIMessageStreamResponse, customProvider, defaultSettingsMiddleware, embed, embedMany, MCPClient as experimental_MCPClient, MCPClientConfig as experimental_MCPClientConfig, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, generateSpeech as experimental_generateSpeech, transcribe as experimental_transcribe, extractReasoningMiddleware, generateObject, generateText, getTextFromDataUrl, getToolName, hasToolCall, isDeepEqualData, isToolUIPart, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, validateUIMessages, wrapLanguageModel, wrapProvider };
4357
+ export { AbstractChat, AsyncIterableStream, CallSettings, CallWarning, ChatInit, ChatOnDataCallback, ChatOnErrorCallback, ChatOnFinishCallback, ChatOnToolCallCallback, ChatRequestOptions, ChatState, ChatStatus, ChatTransport, ChunkDetector, CompletionRequestOptions, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreToolMessage, CoreUserMessage, CreateUIMessage, DataUIPart, DeepPartial, DefaultChatTransport, DownloadError, DynamicToolCall, DynamicToolError, DynamicToolResult, DynamicToolUIPart, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, ErrorHandler, Agent as Experimental_Agent, AgentSettings as Experimental_AgentSettings, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, SpeechResult as Experimental_SpeechResult, TranscriptionResult as Experimental_TranscriptionResult, FileUIPart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedAudioFile, GeneratedFile, HttpChatTransport, HttpChatTransportInitOptions, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelProviderMetadata, ImageModelResponseMetadata, InferUIDataParts, InferUIMessageChunk, InferUITool, InferUITools, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolInputError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, JSONValue, JsonToSseTransformStream, LanguageModel, LanguageModelMiddleware, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, PrepareReconnectToStreamRequest, PrepareSendMessagesRequest, PrepareStepFunction, PrepareStepResult, Prompt, Provider, ProviderMetadata, ProviderRegistryProvider, ReasoningUIPart, RepairTextFunction, RetryError, SerialJobExecutor, SourceDocumentUIPart, SourceUrlUIPart, SpeechModel, SpeechModelResponseMetadata, SpeechWarning, StaticToolCall, StaticToolError, StaticToolResult, StepResult, StepStartUIPart, StopCondition, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextStreamChatTransport, TextStreamPart, TextUIPart, ToolCallRepairError, ToolCallRepairFunction, ToolChoice, ToolSet, ToolUIPart, TranscriptionModel, TranscriptionModelResponseMetadata, TranscriptionWarning, TypedToolCall, TypedToolError, TypedToolResult, UIDataPartSchemas, UIDataTypes, UIMessage, UIMessageChunk, UIMessagePart, UIMessageStreamOnFinishCallback, UIMessageStreamOptions, UIMessageStreamWriter, UITool, UITools, UI_MESSAGE_STREAM_HEADERS, UnsupportedModelVersionError, UseCompletionOptions, assistantModelMessageSchema, callCompletionApi, consumeStream, convertFileListToFileUIParts, convertToCoreMessages, convertToModelMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createProviderRegistry, createTextStreamResponse, createUIMessageStream, createUIMessageStreamResponse, customProvider, defaultSettingsMiddleware, embed, embedMany, MCPClient as experimental_MCPClient, MCPClientConfig as experimental_MCPClientConfig, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, generateSpeech as experimental_generateSpeech, transcribe as experimental_transcribe, extractReasoningMiddleware, generateObject, generateText, getTextFromDataUrl, getToolName, hasToolCall, isDeepEqualData, isToolUIPart, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, validateUIMessages, wrapLanguageModel, wrapProvider };
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ModelMessage, Tool, InferToolInput, InferToolOutput, AssistantModelMessage, ToolModelMessage, ReasoningPart, Schema, SystemModelMessage, UserModelMessage, ProviderOptions, IdGenerator, ToolCall, InferSchema, FlexibleSchema, DataContent, Validator, StandardSchemaV1, Resolvable, FetchFunction } from '@ai-sdk/provider-utils';
2
2
  export { AssistantContent, AssistantModelMessage, DataContent, FilePart, IdGenerator, ImagePart, InferToolInput, InferToolOutput, ModelMessage, Schema, SystemModelMessage, TextPart, Tool, ToolCallOptions, ToolCallPart, ToolContent, ToolExecuteFunction, ToolModelMessage, ToolResultPart, UserContent, UserModelMessage, asSchema, createIdGenerator, dynamicTool, generateId, jsonSchema, tool, zodSchema } from '@ai-sdk/provider-utils';
3
3
  import { AttributeValue, Tracer } from '@opentelemetry/api';
4
- import { EmbeddingModelV2, EmbeddingModelV2Embedding, ImageModelV2, ImageModelV2CallWarning, ImageModelV2ProviderMetadata, JSONValue as JSONValue$1, LanguageModelV2, LanguageModelV2FinishReason, LanguageModelV2CallWarning, LanguageModelV2Source, SharedV2ProviderMetadata, SpeechModelV2, SpeechModelV2CallWarning, TranscriptionModelV2, TranscriptionModelV2CallWarning, LanguageModelV2Usage, LanguageModelV2CallOptions, AISDKError, LanguageModelV2ToolCall, JSONSchema7, JSONParseError, TypeValidationError, LanguageModelV2Middleware, ProviderV2, NoSuchModelError, JSONObject } from '@ai-sdk/provider';
4
+ import { EmbeddingModelV2, EmbeddingModelV2Embedding, ImageModelV2, ImageModelV2CallWarning, ImageModelV2ProviderMetadata, JSONValue as JSONValue$1, LanguageModelV2, LanguageModelV2FinishReason, LanguageModelV2CallWarning, LanguageModelV2Source, LanguageModelV2Middleware, SharedV2ProviderMetadata, SpeechModelV2, SpeechModelV2CallWarning, TranscriptionModelV2, TranscriptionModelV2CallWarning, LanguageModelV2Usage, LanguageModelV2CallOptions, AISDKError, LanguageModelV2ToolCall, JSONSchema7, JSONParseError, TypeValidationError, ProviderV2, NoSuchModelError, JSONObject } from '@ai-sdk/provider';
5
5
  export { AISDKError, APICallError, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, JSONSchema7, LoadAPIKeyError, NoContentGeneratedError, NoSuchModelError, TypeValidationError, UnsupportedFunctionalityError } from '@ai-sdk/provider';
6
6
  import * as z3 from 'zod/v3';
7
7
  import * as z4 from 'zod/v4';
@@ -217,6 +217,8 @@ type ToolChoice<TOOLS extends Record<string, unknown>> = 'auto' | 'none' | 'requ
217
217
  toolName: Extract<keyof TOOLS, string>;
218
218
  };
219
219
 
220
+ type LanguageModelMiddleware = LanguageModelV2Middleware;
221
+
220
222
  type LanguageModelRequestMetadata = {
221
223
  /**
222
224
  Request HTTP body that was sent to the provider API.
@@ -2695,6 +2697,11 @@ interface GenerateObjectResult<OBJECT> {
2695
2697
  The generated object (typed according to the schema).
2696
2698
  */
2697
2699
  readonly object: OBJECT;
2700
+ /**
2701
+ * The reasoning that was used to generate the object.
2702
+ * Concatenated from all reasoning parts.
2703
+ */
2704
+ readonly reasoning: string | undefined;
2698
2705
  /**
2699
2706
  The reason why the generation finished.
2700
2707
  */
@@ -3354,7 +3361,7 @@ declare function defaultSettingsMiddleware({ settings, }: {
3354
3361
  headers?: LanguageModelV2CallOptions['headers'];
3355
3362
  providerOptions?: LanguageModelV2CallOptions['providerOptions'];
3356
3363
  }>;
3357
- }): LanguageModelV2Middleware;
3364
+ }): LanguageModelMiddleware;
3358
3365
 
3359
3366
  /**
3360
3367
  * Extract an XML-tagged reasoning section from the generated text and exposes it
@@ -3368,12 +3375,12 @@ declare function extractReasoningMiddleware({ tagName, separator, startWithReaso
3368
3375
  tagName: string;
3369
3376
  separator?: string;
3370
3377
  startWithReasoning?: boolean;
3371
- }): LanguageModelV2Middleware;
3378
+ }): LanguageModelMiddleware;
3372
3379
 
3373
3380
  /**
3374
3381
  * Simulates streaming chunks with the response from a generate call.
3375
3382
  */
3376
- declare function simulateStreamingMiddleware(): LanguageModelV2Middleware;
3383
+ declare function simulateStreamingMiddleware(): LanguageModelMiddleware;
3377
3384
 
3378
3385
  /**
3379
3386
  * Wraps a LanguageModelV2 instance with middleware functionality.
@@ -3389,7 +3396,7 @@ declare function simulateStreamingMiddleware(): LanguageModelV2Middleware;
3389
3396
  */
3390
3397
  declare const wrapLanguageModel: ({ model, middleware: middlewareArg, modelId, providerId, }: {
3391
3398
  model: LanguageModelV2;
3392
- middleware: LanguageModelV2Middleware | LanguageModelV2Middleware[];
3399
+ middleware: LanguageModelMiddleware | LanguageModelMiddleware[];
3393
3400
  modelId?: string;
3394
3401
  providerId?: string;
3395
3402
  }) => LanguageModelV2;
@@ -3407,7 +3414,7 @@ declare const wrapLanguageModel: ({ model, middleware: middlewareArg, modelId, p
3407
3414
  */
3408
3415
  declare function wrapProvider({ provider, languageModelMiddleware, }: {
3409
3416
  provider: ProviderV2;
3410
- languageModelMiddleware: LanguageModelV2Middleware | LanguageModelV2Middleware[];
3417
+ languageModelMiddleware: LanguageModelMiddleware | LanguageModelMiddleware[];
3411
3418
  }): ProviderV2;
3412
3419
 
3413
3420
  /**
@@ -3486,7 +3493,7 @@ interface ProviderRegistryProvider<PROVIDERS extends Record<string, ProviderV2>
3486
3493
  */
3487
3494
  declare function createProviderRegistry<PROVIDERS extends Record<string, ProviderV2>, SEPARATOR extends string = ':'>(providers: PROVIDERS, { separator, languageModelMiddleware, }?: {
3488
3495
  separator?: SEPARATOR;
3489
- languageModelMiddleware?: LanguageModelV2Middleware | LanguageModelV2Middleware[];
3496
+ languageModelMiddleware?: LanguageModelMiddleware | LanguageModelMiddleware[];
3490
3497
  }): ProviderRegistryProvider<PROVIDERS, SEPARATOR>;
3491
3498
  /**
3492
3499
  * @deprecated Use `createProviderRegistry` instead.
@@ -4347,4 +4354,4 @@ declare global {
4347
4354
  var AI_SDK_DEFAULT_PROVIDER: ProviderV2 | undefined;
4348
4355
  }
4349
4356
 
4350
- export { AbstractChat, AsyncIterableStream, CallSettings, CallWarning, ChatInit, ChatOnDataCallback, ChatOnErrorCallback, ChatOnFinishCallback, ChatOnToolCallCallback, ChatRequestOptions, ChatState, ChatStatus, ChatTransport, ChunkDetector, CompletionRequestOptions, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreToolMessage, CoreUserMessage, CreateUIMessage, DataUIPart, DeepPartial, DefaultChatTransport, DownloadError, DynamicToolCall, DynamicToolError, DynamicToolResult, DynamicToolUIPart, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, ErrorHandler, Agent as Experimental_Agent, AgentSettings as Experimental_AgentSettings, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, SpeechResult as Experimental_SpeechResult, TranscriptionResult as Experimental_TranscriptionResult, FileUIPart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedAudioFile, GeneratedFile, HttpChatTransport, HttpChatTransportInitOptions, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelProviderMetadata, ImageModelResponseMetadata, InferUIDataParts, InferUIMessageChunk, InferUITool, InferUITools, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolInputError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, JSONValue, JsonToSseTransformStream, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, PrepareReconnectToStreamRequest, PrepareSendMessagesRequest, PrepareStepFunction, PrepareStepResult, Prompt, Provider, ProviderMetadata, ProviderRegistryProvider, ReasoningUIPart, RepairTextFunction, RetryError, SerialJobExecutor, SourceDocumentUIPart, SourceUrlUIPart, SpeechModel, SpeechModelResponseMetadata, SpeechWarning, StaticToolCall, StaticToolError, StaticToolResult, StepResult, StepStartUIPart, StopCondition, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextStreamChatTransport, TextStreamPart, TextUIPart, ToolCallRepairError, ToolCallRepairFunction, ToolChoice, ToolSet, ToolUIPart, TranscriptionModel, TranscriptionModelResponseMetadata, TranscriptionWarning, TypedToolCall, TypedToolError, TypedToolResult, UIDataPartSchemas, UIDataTypes, UIMessage, UIMessageChunk, UIMessagePart, UIMessageStreamOnFinishCallback, UIMessageStreamOptions, UIMessageStreamWriter, UITool, UITools, UI_MESSAGE_STREAM_HEADERS, UnsupportedModelVersionError, UseCompletionOptions, assistantModelMessageSchema, callCompletionApi, consumeStream, convertFileListToFileUIParts, convertToCoreMessages, convertToModelMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createProviderRegistry, createTextStreamResponse, createUIMessageStream, createUIMessageStreamResponse, customProvider, defaultSettingsMiddleware, embed, embedMany, MCPClient as experimental_MCPClient, MCPClientConfig as experimental_MCPClientConfig, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, generateSpeech as experimental_generateSpeech, transcribe as experimental_transcribe, extractReasoningMiddleware, generateObject, generateText, getTextFromDataUrl, getToolName, hasToolCall, isDeepEqualData, isToolUIPart, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, validateUIMessages, wrapLanguageModel, wrapProvider };
4357
+ export { AbstractChat, AsyncIterableStream, CallSettings, CallWarning, ChatInit, ChatOnDataCallback, ChatOnErrorCallback, ChatOnFinishCallback, ChatOnToolCallCallback, ChatRequestOptions, ChatState, ChatStatus, ChatTransport, ChunkDetector, CompletionRequestOptions, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreToolMessage, CoreUserMessage, CreateUIMessage, DataUIPart, DeepPartial, DefaultChatTransport, DownloadError, DynamicToolCall, DynamicToolError, DynamicToolResult, DynamicToolUIPart, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, ErrorHandler, Agent as Experimental_Agent, AgentSettings as Experimental_AgentSettings, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, SpeechResult as Experimental_SpeechResult, TranscriptionResult as Experimental_TranscriptionResult, FileUIPart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedAudioFile, GeneratedFile, HttpChatTransport, HttpChatTransportInitOptions, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelProviderMetadata, ImageModelResponseMetadata, InferUIDataParts, InferUIMessageChunk, InferUITool, InferUITools, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolInputError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, JSONValue, JsonToSseTransformStream, LanguageModel, LanguageModelMiddleware, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, PrepareReconnectToStreamRequest, PrepareSendMessagesRequest, PrepareStepFunction, PrepareStepResult, Prompt, Provider, ProviderMetadata, ProviderRegistryProvider, ReasoningUIPart, RepairTextFunction, RetryError, SerialJobExecutor, SourceDocumentUIPart, SourceUrlUIPart, SpeechModel, SpeechModelResponseMetadata, SpeechWarning, StaticToolCall, StaticToolError, StaticToolResult, StepResult, StepStartUIPart, StopCondition, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextStreamChatTransport, TextStreamPart, TextUIPart, ToolCallRepairError, ToolCallRepairFunction, ToolChoice, ToolSet, ToolUIPart, TranscriptionModel, TranscriptionModelResponseMetadata, TranscriptionWarning, TypedToolCall, TypedToolError, TypedToolResult, UIDataPartSchemas, UIDataTypes, UIMessage, UIMessageChunk, UIMessagePart, UIMessageStreamOnFinishCallback, UIMessageStreamOptions, UIMessageStreamWriter, UITool, UITools, UI_MESSAGE_STREAM_HEADERS, UnsupportedModelVersionError, UseCompletionOptions, assistantModelMessageSchema, callCompletionApi, consumeStream, convertFileListToFileUIParts, convertToCoreMessages, convertToModelMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createProviderRegistry, createTextStreamResponse, createUIMessageStream, createUIMessageStreamResponse, customProvider, defaultSettingsMiddleware, embed, embedMany, MCPClient as experimental_MCPClient, MCPClientConfig as experimental_MCPClientConfig, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, generateSpeech as experimental_generateSpeech, transcribe as experimental_transcribe, extractReasoningMiddleware, generateObject, generateText, getTextFromDataUrl, getToolName, hasToolCall, isDeepEqualData, isToolUIPart, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, validateUIMessages, wrapLanguageModel, wrapProvider };
package/dist/index.js CHANGED
@@ -1759,8 +1759,8 @@ function prepareRetries({
1759
1759
  };
1760
1760
  }
1761
1761
 
1762
- // src/generate-text/extract-content-text.ts
1763
- function extractContentText(content) {
1762
+ // src/generate-text/extract-text-content.ts
1763
+ function extractTextContent(content) {
1764
1764
  const parts = content.filter(
1765
1765
  (content2) => content2.type === "text"
1766
1766
  );
@@ -2261,7 +2261,7 @@ async function generateText({
2261
2261
  attributes: {
2262
2262
  "ai.response.finishReason": result.finishReason,
2263
2263
  "ai.response.text": {
2264
- output: () => extractContentText(result.content)
2264
+ output: () => extractTextContent(result.content)
2265
2265
  },
2266
2266
  "ai.response.toolCalls": {
2267
2267
  output: () => {
@@ -2390,7 +2390,7 @@ async function generateText({
2390
2390
  attributes: {
2391
2391
  "ai.response.finishReason": currentModelResponse.finishReason,
2392
2392
  "ai.response.text": {
2393
- output: () => extractContentText(currentModelResponse.content)
2393
+ output: () => extractTextContent(currentModelResponse.content)
2394
2394
  },
2395
2395
  "ai.response.toolCalls": {
2396
2396
  output: () => {
@@ -6097,6 +6097,14 @@ async function invokeModelMaxImagesPerCall(model) {
6097
6097
  // src/generate-object/generate-object.ts
6098
6098
  var import_provider_utils16 = require("@ai-sdk/provider-utils");
6099
6099
 
6100
+ // src/generate-text/extract-reasoning-content.ts
6101
+ function extractReasoningContent(content) {
6102
+ const parts = content.filter(
6103
+ (content2) => content2.type === "reasoning"
6104
+ );
6105
+ return parts.length === 0 ? void 0 : parts.map((content2) => content2.text).join("\n");
6106
+ }
6107
+
6100
6108
  // src/generate-object/output-strategy.ts
6101
6109
  var import_provider24 = require("@ai-sdk/provider");
6102
6110
  var import_provider_utils14 = require("@ai-sdk/provider-utils");
@@ -6613,6 +6621,7 @@ async function generateObject(options) {
6613
6621
  let response;
6614
6622
  let request;
6615
6623
  let resultProviderMetadata;
6624
+ let reasoning;
6616
6625
  const standardizedPrompt = await standardizePrompt({
6617
6626
  system,
6618
6627
  prompt,
@@ -6670,7 +6679,8 @@ async function generateObject(options) {
6670
6679
  headers: (_g = result2.response) == null ? void 0 : _g.headers,
6671
6680
  body: (_h = result2.response) == null ? void 0 : _h.body
6672
6681
  };
6673
- const text2 = extractContentText(result2.content);
6682
+ const text2 = extractTextContent(result2.content);
6683
+ const reasoning2 = extractReasoningContent(result2.content);
6674
6684
  if (text2 === void 0) {
6675
6685
  throw new NoObjectGeneratedError({
6676
6686
  message: "No object generated: the model did not return a response.",
@@ -6703,7 +6713,12 @@ async function generateObject(options) {
6703
6713
  }
6704
6714
  })
6705
6715
  );
6706
- return { ...result2, objectText: text2, responseData };
6716
+ return {
6717
+ ...result2,
6718
+ objectText: text2,
6719
+ reasoning: reasoning2,
6720
+ responseData
6721
+ };
6707
6722
  }
6708
6723
  })
6709
6724
  );
@@ -6714,6 +6729,7 @@ async function generateObject(options) {
6714
6729
  resultProviderMetadata = generateResult.providerMetadata;
6715
6730
  request = (_a17 = generateResult.request) != null ? _a17 : {};
6716
6731
  response = generateResult.responseData;
6732
+ reasoning = generateResult.reasoning;
6717
6733
  const object2 = await parseAndValidateObjectResultWithRepair(
6718
6734
  result,
6719
6735
  outputStrategy,
@@ -6743,6 +6759,7 @@ async function generateObject(options) {
6743
6759
  );
6744
6760
  return new DefaultGenerateObjectResult({
6745
6761
  object: object2,
6762
+ reasoning,
6746
6763
  finishReason,
6747
6764
  usage,
6748
6765
  warnings,
@@ -6765,6 +6782,7 @@ var DefaultGenerateObjectResult = class {
6765
6782
  this.providerMetadata = options.providerMetadata;
6766
6783
  this.response = options.response;
6767
6784
  this.request = options.request;
6785
+ this.reasoning = options.reasoning;
6768
6786
  }
6769
6787
  toJsonResponse(init) {
6770
6788
  var _a17;