ai 5.0.26 → 5.0.27
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 +6 -0
- package/dist/index.d.mts +52 -3
- package/dist/index.d.ts +52 -3
- package/dist/index.js +45 -23
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +45 -23
- package/dist/index.mjs.map +1 -1
- package/dist/internal/index.d.mts +23 -5
- package/dist/internal/index.d.ts +23 -5
- package/dist/internal/index.js +27 -17
- package/dist/internal/index.js.map +1 -1
- package/dist/internal/index.mjs +27 -17
- package/dist/internal/index.mjs.map +1 -1
- package/dist/test/index.js +9 -12
- package/dist/test/index.js.map +1 -1
- package/dist/test/index.mjs +9 -12
- package/dist/test/index.mjs.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
package/dist/index.d.mts
CHANGED
@@ -372,6 +372,31 @@ type EmbeddingModelUsage = {
|
|
372
372
|
tokens: number;
|
373
373
|
};
|
374
374
|
|
375
|
+
/**
|
376
|
+
* Experimental. Can change in patch versions without warning.
|
377
|
+
*
|
378
|
+
* Download function. Called with the array of URLs and a boolean indicating
|
379
|
+
* whether the URL is supported by the model.
|
380
|
+
*
|
381
|
+
* The download function can decide for each URL:
|
382
|
+
* - to return null (which means that the URL should be passed to the model)
|
383
|
+
* - to download the asset and return the data (incl. retries, authentication, etc.)
|
384
|
+
*
|
385
|
+
* Should throw DownloadError if the download fails.
|
386
|
+
*
|
387
|
+
* Should return an array of objects sorted by the order of the requested downloads.
|
388
|
+
* For each object, the data should be a Uint8Array if the URL was downloaded.
|
389
|
+
* For each object, the mediaType should be the media type of the downloaded asset.
|
390
|
+
* For each object, the data should be null if the URL should be passed through as is.
|
391
|
+
*/
|
392
|
+
type DownloadFunction = (options: Array<{
|
393
|
+
url: URL;
|
394
|
+
isUrlSupportedByModel: boolean;
|
395
|
+
}>) => PromiseLike<Array<{
|
396
|
+
data: Uint8Array;
|
397
|
+
mediaType: string | undefined;
|
398
|
+
} | null>>;
|
399
|
+
|
375
400
|
/**
|
376
401
|
* A generated file.
|
377
402
|
*/
|
@@ -981,7 +1006,7 @@ If set and supported by the model, calls will generate deterministic results.
|
|
981
1006
|
@returns
|
982
1007
|
A result object that contains the generated text, the results of the tool calls, and additional information.
|
983
1008
|
*/
|
984
|
-
declare function generateText<TOOLS extends ToolSet, OUTPUT = never, OUTPUT_PARTIAL = never>({ model: modelArg, tools, toolChoice, system, prompt, messages, maxRetries: maxRetriesArg, abortSignal, headers, stopWhen, experimental_output: output, experimental_telemetry: telemetry, providerOptions, experimental_activeTools, activeTools, experimental_prepareStep, prepareStep, experimental_repairToolCall: repairToolCall, experimental_context, _internal: { generateId, currentDate, }, onStepFinish, ...settings }: CallSettings & Prompt & {
|
1009
|
+
declare function generateText<TOOLS extends ToolSet, OUTPUT = never, OUTPUT_PARTIAL = never>({ model: modelArg, tools, toolChoice, system, prompt, messages, maxRetries: maxRetriesArg, abortSignal, headers, stopWhen, experimental_output: output, experimental_telemetry: telemetry, providerOptions, experimental_activeTools, activeTools, experimental_prepareStep, prepareStep, experimental_repairToolCall: repairToolCall, experimental_download: download, experimental_context, _internal: { generateId, currentDate, }, onStepFinish, ...settings }: CallSettings & Prompt & {
|
985
1010
|
/**
|
986
1011
|
The language model to use.
|
987
1012
|
*/
|
@@ -1025,6 +1050,12 @@ Optional specification for parsing structured outputs from the LLM response.
|
|
1025
1050
|
*/
|
1026
1051
|
experimental_output?: Output<OUTPUT, OUTPUT_PARTIAL>;
|
1027
1052
|
/**
|
1053
|
+
Custom download function to use for URLs.
|
1054
|
+
|
1055
|
+
By default, files are downloaded if the model does not support the URL for the given media type.
|
1056
|
+
*/
|
1057
|
+
experimental_download?: DownloadFunction | undefined;
|
1058
|
+
/**
|
1028
1059
|
* @deprecated Use `prepareStep` instead.
|
1029
1060
|
*/
|
1030
1061
|
experimental_prepareStep?: PrepareStepFunction<NoInfer<TOOLS>>;
|
@@ -1194,7 +1225,7 @@ If set and supported by the model, calls will generate deterministic results.
|
|
1194
1225
|
@return
|
1195
1226
|
A result object for accessing different stream types and additional information.
|
1196
1227
|
*/
|
1197
|
-
declare function streamText<TOOLS extends ToolSet, OUTPUT = never, PARTIAL_OUTPUT = never>({ model, tools, toolChoice, system, prompt, messages, maxRetries, abortSignal, headers, stopWhen, experimental_output: output, experimental_telemetry: telemetry, prepareStep, providerOptions, experimental_activeTools, activeTools, experimental_repairToolCall: repairToolCall, experimental_transform: transform, includeRawChunks, onChunk, onError, onFinish, onAbort, onStepFinish, experimental_context, _internal: { now, generateId, currentDate, }, ...settings }: CallSettings & Prompt & {
|
1228
|
+
declare function streamText<TOOLS extends ToolSet, OUTPUT = never, PARTIAL_OUTPUT = never>({ model, tools, toolChoice, system, prompt, messages, maxRetries, abortSignal, headers, stopWhen, experimental_output: output, experimental_telemetry: telemetry, prepareStep, providerOptions, experimental_activeTools, activeTools, experimental_repairToolCall: repairToolCall, experimental_transform: transform, experimental_download: download, includeRawChunks, onChunk, onError, onFinish, onAbort, onStepFinish, experimental_context, _internal: { now, generateId, currentDate, }, ...settings }: CallSettings & Prompt & {
|
1198
1229
|
/**
|
1199
1230
|
The language model to use.
|
1200
1231
|
*/
|
@@ -1260,6 +1291,12 @@ The stream transformations must maintain the stream structure for streamText to
|
|
1260
1291
|
*/
|
1261
1292
|
experimental_transform?: StreamTextTransform<TOOLS> | Array<StreamTextTransform<TOOLS>>;
|
1262
1293
|
/**
|
1294
|
+
Custom download function to use for URLs.
|
1295
|
+
|
1296
|
+
By default, files are downloaded if the model does not support the URL for the given media type.
|
1297
|
+
*/
|
1298
|
+
experimental_download?: DownloadFunction | undefined;
|
1299
|
+
/**
|
1263
1300
|
Whether to include raw chunks from the provider in the stream.
|
1264
1301
|
When enabled, you will receive raw chunks with type 'raw' that contain the unprocessed data from the provider.
|
1265
1302
|
This allows access to cutting-edge provider features not yet wrapped by the AI SDK.
|
@@ -2889,6 +2926,12 @@ Optional telemetry configuration (experimental).
|
|
2889
2926
|
*/
|
2890
2927
|
experimental_telemetry?: TelemetrySettings;
|
2891
2928
|
/**
|
2929
|
+
Custom download function to use for URLs.
|
2930
|
+
|
2931
|
+
By default, files are downloaded if the model does not support the URL for the given media type.
|
2932
|
+
*/
|
2933
|
+
experimental_download?: DownloadFunction | undefined;
|
2934
|
+
/**
|
2892
2935
|
Additional provider-specific options. They are passed through
|
2893
2936
|
to the provider from the AI SDK and enable provider-specific
|
2894
2937
|
functionality that can be fully encapsulated in the provider.
|
@@ -3227,6 +3270,12 @@ Optional telemetry configuration (experimental).
|
|
3227
3270
|
*/
|
3228
3271
|
experimental_telemetry?: TelemetrySettings;
|
3229
3272
|
/**
|
3273
|
+
Custom download function to use for URLs.
|
3274
|
+
|
3275
|
+
By default, files are downloaded if the model does not support the URL for the given media type.
|
3276
|
+
*/
|
3277
|
+
experimental_download?: DownloadFunction | undefined;
|
3278
|
+
/**
|
3230
3279
|
Additional provider-specific options. They are passed through
|
3231
3280
|
to the provider from the AI SDK and enable provider-specific
|
3232
3281
|
functionality that can be fully encapsulated in the provider.
|
@@ -4375,4 +4424,4 @@ declare global {
|
|
4375
4424
|
var AI_SDK_DEFAULT_PROVIDER: ProviderV2 | undefined;
|
4376
4425
|
}
|
4377
4426
|
|
4378
|
-
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, getToolOrDynamicToolName, hasToolCall, isDeepEqualData, isToolOrDynamicToolUIPart, isToolUIPart, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, validateUIMessages, wrapLanguageModel, wrapProvider };
|
4427
|
+
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, DownloadFunction as Experimental_DownloadFunction, 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, getToolOrDynamicToolName, hasToolCall, isDeepEqualData, isToolOrDynamicToolUIPart, 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
@@ -372,6 +372,31 @@ type EmbeddingModelUsage = {
|
|
372
372
|
tokens: number;
|
373
373
|
};
|
374
374
|
|
375
|
+
/**
|
376
|
+
* Experimental. Can change in patch versions without warning.
|
377
|
+
*
|
378
|
+
* Download function. Called with the array of URLs and a boolean indicating
|
379
|
+
* whether the URL is supported by the model.
|
380
|
+
*
|
381
|
+
* The download function can decide for each URL:
|
382
|
+
* - to return null (which means that the URL should be passed to the model)
|
383
|
+
* - to download the asset and return the data (incl. retries, authentication, etc.)
|
384
|
+
*
|
385
|
+
* Should throw DownloadError if the download fails.
|
386
|
+
*
|
387
|
+
* Should return an array of objects sorted by the order of the requested downloads.
|
388
|
+
* For each object, the data should be a Uint8Array if the URL was downloaded.
|
389
|
+
* For each object, the mediaType should be the media type of the downloaded asset.
|
390
|
+
* For each object, the data should be null if the URL should be passed through as is.
|
391
|
+
*/
|
392
|
+
type DownloadFunction = (options: Array<{
|
393
|
+
url: URL;
|
394
|
+
isUrlSupportedByModel: boolean;
|
395
|
+
}>) => PromiseLike<Array<{
|
396
|
+
data: Uint8Array;
|
397
|
+
mediaType: string | undefined;
|
398
|
+
} | null>>;
|
399
|
+
|
375
400
|
/**
|
376
401
|
* A generated file.
|
377
402
|
*/
|
@@ -981,7 +1006,7 @@ If set and supported by the model, calls will generate deterministic results.
|
|
981
1006
|
@returns
|
982
1007
|
A result object that contains the generated text, the results of the tool calls, and additional information.
|
983
1008
|
*/
|
984
|
-
declare function generateText<TOOLS extends ToolSet, OUTPUT = never, OUTPUT_PARTIAL = never>({ model: modelArg, tools, toolChoice, system, prompt, messages, maxRetries: maxRetriesArg, abortSignal, headers, stopWhen, experimental_output: output, experimental_telemetry: telemetry, providerOptions, experimental_activeTools, activeTools, experimental_prepareStep, prepareStep, experimental_repairToolCall: repairToolCall, experimental_context, _internal: { generateId, currentDate, }, onStepFinish, ...settings }: CallSettings & Prompt & {
|
1009
|
+
declare function generateText<TOOLS extends ToolSet, OUTPUT = never, OUTPUT_PARTIAL = never>({ model: modelArg, tools, toolChoice, system, prompt, messages, maxRetries: maxRetriesArg, abortSignal, headers, stopWhen, experimental_output: output, experimental_telemetry: telemetry, providerOptions, experimental_activeTools, activeTools, experimental_prepareStep, prepareStep, experimental_repairToolCall: repairToolCall, experimental_download: download, experimental_context, _internal: { generateId, currentDate, }, onStepFinish, ...settings }: CallSettings & Prompt & {
|
985
1010
|
/**
|
986
1011
|
The language model to use.
|
987
1012
|
*/
|
@@ -1025,6 +1050,12 @@ Optional specification for parsing structured outputs from the LLM response.
|
|
1025
1050
|
*/
|
1026
1051
|
experimental_output?: Output<OUTPUT, OUTPUT_PARTIAL>;
|
1027
1052
|
/**
|
1053
|
+
Custom download function to use for URLs.
|
1054
|
+
|
1055
|
+
By default, files are downloaded if the model does not support the URL for the given media type.
|
1056
|
+
*/
|
1057
|
+
experimental_download?: DownloadFunction | undefined;
|
1058
|
+
/**
|
1028
1059
|
* @deprecated Use `prepareStep` instead.
|
1029
1060
|
*/
|
1030
1061
|
experimental_prepareStep?: PrepareStepFunction<NoInfer<TOOLS>>;
|
@@ -1194,7 +1225,7 @@ If set and supported by the model, calls will generate deterministic results.
|
|
1194
1225
|
@return
|
1195
1226
|
A result object for accessing different stream types and additional information.
|
1196
1227
|
*/
|
1197
|
-
declare function streamText<TOOLS extends ToolSet, OUTPUT = never, PARTIAL_OUTPUT = never>({ model, tools, toolChoice, system, prompt, messages, maxRetries, abortSignal, headers, stopWhen, experimental_output: output, experimental_telemetry: telemetry, prepareStep, providerOptions, experimental_activeTools, activeTools, experimental_repairToolCall: repairToolCall, experimental_transform: transform, includeRawChunks, onChunk, onError, onFinish, onAbort, onStepFinish, experimental_context, _internal: { now, generateId, currentDate, }, ...settings }: CallSettings & Prompt & {
|
1228
|
+
declare function streamText<TOOLS extends ToolSet, OUTPUT = never, PARTIAL_OUTPUT = never>({ model, tools, toolChoice, system, prompt, messages, maxRetries, abortSignal, headers, stopWhen, experimental_output: output, experimental_telemetry: telemetry, prepareStep, providerOptions, experimental_activeTools, activeTools, experimental_repairToolCall: repairToolCall, experimental_transform: transform, experimental_download: download, includeRawChunks, onChunk, onError, onFinish, onAbort, onStepFinish, experimental_context, _internal: { now, generateId, currentDate, }, ...settings }: CallSettings & Prompt & {
|
1198
1229
|
/**
|
1199
1230
|
The language model to use.
|
1200
1231
|
*/
|
@@ -1260,6 +1291,12 @@ The stream transformations must maintain the stream structure for streamText to
|
|
1260
1291
|
*/
|
1261
1292
|
experimental_transform?: StreamTextTransform<TOOLS> | Array<StreamTextTransform<TOOLS>>;
|
1262
1293
|
/**
|
1294
|
+
Custom download function to use for URLs.
|
1295
|
+
|
1296
|
+
By default, files are downloaded if the model does not support the URL for the given media type.
|
1297
|
+
*/
|
1298
|
+
experimental_download?: DownloadFunction | undefined;
|
1299
|
+
/**
|
1263
1300
|
Whether to include raw chunks from the provider in the stream.
|
1264
1301
|
When enabled, you will receive raw chunks with type 'raw' that contain the unprocessed data from the provider.
|
1265
1302
|
This allows access to cutting-edge provider features not yet wrapped by the AI SDK.
|
@@ -2889,6 +2926,12 @@ Optional telemetry configuration (experimental).
|
|
2889
2926
|
*/
|
2890
2927
|
experimental_telemetry?: TelemetrySettings;
|
2891
2928
|
/**
|
2929
|
+
Custom download function to use for URLs.
|
2930
|
+
|
2931
|
+
By default, files are downloaded if the model does not support the URL for the given media type.
|
2932
|
+
*/
|
2933
|
+
experimental_download?: DownloadFunction | undefined;
|
2934
|
+
/**
|
2892
2935
|
Additional provider-specific options. They are passed through
|
2893
2936
|
to the provider from the AI SDK and enable provider-specific
|
2894
2937
|
functionality that can be fully encapsulated in the provider.
|
@@ -3227,6 +3270,12 @@ Optional telemetry configuration (experimental).
|
|
3227
3270
|
*/
|
3228
3271
|
experimental_telemetry?: TelemetrySettings;
|
3229
3272
|
/**
|
3273
|
+
Custom download function to use for URLs.
|
3274
|
+
|
3275
|
+
By default, files are downloaded if the model does not support the URL for the given media type.
|
3276
|
+
*/
|
3277
|
+
experimental_download?: DownloadFunction | undefined;
|
3278
|
+
/**
|
3230
3279
|
Additional provider-specific options. They are passed through
|
3231
3280
|
to the provider from the AI SDK and enable provider-specific
|
3232
3281
|
functionality that can be fully encapsulated in the provider.
|
@@ -4375,4 +4424,4 @@ declare global {
|
|
4375
4424
|
var AI_SDK_DEFAULT_PROVIDER: ProviderV2 | undefined;
|
4376
4425
|
}
|
4377
4426
|
|
4378
|
-
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, getToolOrDynamicToolName, hasToolCall, isDeepEqualData, isToolOrDynamicToolUIPart, isToolUIPart, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, validateUIMessages, wrapLanguageModel, wrapProvider };
|
4427
|
+
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, DownloadFunction as Experimental_DownloadFunction, 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, getToolOrDynamicToolName, hasToolCall, isDeepEqualData, isToolOrDynamicToolUIPart, isToolUIPart, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, validateUIMessages, wrapLanguageModel, wrapProvider };
|
package/dist/index.js
CHANGED
@@ -435,7 +435,7 @@ var MessageConversionError = class extends import_provider14.AISDKError {
|
|
435
435
|
};
|
436
436
|
_a13 = symbol13;
|
437
437
|
|
438
|
-
// src/util/download-error.ts
|
438
|
+
// src/util/download/download-error.ts
|
439
439
|
var import_provider15 = require("@ai-sdk/provider");
|
440
440
|
var name14 = "AI_DownloadError";
|
441
441
|
var marker14 = `vercel.ai.error.${name14}`;
|
@@ -685,8 +685,8 @@ function detectMediaType({
|
|
685
685
|
return void 0;
|
686
686
|
}
|
687
687
|
|
688
|
-
// src/util/download.ts
|
689
|
-
async
|
688
|
+
// src/util/download/download.ts
|
689
|
+
var download = async ({ url }) => {
|
690
690
|
var _a17;
|
691
691
|
const urlText = url.toString();
|
692
692
|
try {
|
@@ -708,7 +708,14 @@ async function download({ url }) {
|
|
708
708
|
}
|
709
709
|
throw new DownloadError({ url: urlText, cause: error });
|
710
710
|
}
|
711
|
-
}
|
711
|
+
};
|
712
|
+
|
713
|
+
// src/util/download/download-function.ts
|
714
|
+
var createDefaultDownloadFunction = (download2 = download) => (requestedDownloads) => Promise.all(
|
715
|
+
requestedDownloads.map(
|
716
|
+
async (requestedDownload) => requestedDownload.isUrlSupportedByModel ? null : download2(requestedDownload)
|
717
|
+
)
|
718
|
+
);
|
712
719
|
|
713
720
|
// src/prompt/data-content.ts
|
714
721
|
var import_provider18 = require("@ai-sdk/provider");
|
@@ -806,11 +813,11 @@ function convertDataContentToUint8Array(content) {
|
|
806
813
|
async function convertToLanguageModelPrompt({
|
807
814
|
prompt,
|
808
815
|
supportedUrls,
|
809
|
-
|
816
|
+
download: download2 = createDefaultDownloadFunction()
|
810
817
|
}) {
|
811
818
|
const downloadedAssets = await downloadAssets(
|
812
819
|
prompt.messages,
|
813
|
-
|
820
|
+
download2,
|
814
821
|
supportedUrls
|
815
822
|
);
|
816
823
|
return [
|
@@ -932,8 +939,8 @@ function convertToLanguageModelMessage({
|
|
932
939
|
}
|
933
940
|
}
|
934
941
|
}
|
935
|
-
async function downloadAssets(messages,
|
936
|
-
const
|
942
|
+
async function downloadAssets(messages, download2, supportedUrls) {
|
943
|
+
const plannedDownloads = messages.filter((message) => message.role === "user").map((message) => message.content).filter(
|
937
944
|
(content) => Array.isArray(content)
|
938
945
|
).flat().filter(
|
939
946
|
(part) => part.type === "image" || part.type === "file"
|
@@ -949,20 +956,23 @@ async function downloadAssets(messages, downloadImplementation, supportedUrls) {
|
|
949
956
|
}
|
950
957
|
return { mediaType, data };
|
951
958
|
}).filter(
|
952
|
-
(part) => part.data instanceof URL
|
959
|
+
(part) => part.data instanceof URL
|
960
|
+
).map((part) => ({
|
961
|
+
url: part.data,
|
962
|
+
isUrlSupportedByModel: part.mediaType != null && (0, import_provider_utils3.isUrlSupported)({
|
953
963
|
url: part.data.toString(),
|
954
964
|
mediaType: part.mediaType,
|
955
965
|
supportedUrls
|
956
966
|
})
|
957
|
-
)
|
958
|
-
const
|
959
|
-
urls.map(async (url) => ({
|
960
|
-
url,
|
961
|
-
data: await downloadImplementation({ url })
|
962
|
-
}))
|
963
|
-
);
|
967
|
+
}));
|
968
|
+
const downloadedFiles = await download2(plannedDownloads);
|
964
969
|
return Object.fromEntries(
|
965
|
-
|
970
|
+
downloadedFiles.filter(
|
971
|
+
(downloadedFile) => (downloadedFile == null ? void 0 : downloadedFile.data) != null
|
972
|
+
).map(({ data, mediaType }, index) => [
|
973
|
+
plannedDownloads[index].url.toString(),
|
974
|
+
{ data, mediaType }
|
975
|
+
])
|
966
976
|
);
|
967
977
|
}
|
968
978
|
function convertPartToLanguageModelPart(part, downloadedAssets) {
|
@@ -2118,6 +2128,7 @@ async function generateText({
|
|
2118
2128
|
experimental_prepareStep,
|
2119
2129
|
prepareStep = experimental_prepareStep,
|
2120
2130
|
experimental_repairToolCall: repairToolCall,
|
2131
|
+
experimental_download: download2,
|
2121
2132
|
experimental_context,
|
2122
2133
|
_internal: {
|
2123
2134
|
generateId: generateId3 = originalGenerateId,
|
@@ -2190,7 +2201,8 @@ async function generateText({
|
|
2190
2201
|
system: (_a17 = prepareStepResult == null ? void 0 : prepareStepResult.system) != null ? _a17 : initialPrompt.system,
|
2191
2202
|
messages: (_b = prepareStepResult == null ? void 0 : prepareStepResult.messages) != null ? _b : stepInputMessages
|
2192
2203
|
},
|
2193
|
-
supportedUrls: await model.supportedUrls
|
2204
|
+
supportedUrls: await model.supportedUrls,
|
2205
|
+
download: download2
|
2194
2206
|
});
|
2195
2207
|
const stepModel = resolveLanguageModel(
|
2196
2208
|
(_c = prepareStepResult == null ? void 0 : prepareStepResult.model) != null ? _c : model
|
@@ -4388,6 +4400,7 @@ function streamText({
|
|
4388
4400
|
activeTools = experimental_activeTools,
|
4389
4401
|
experimental_repairToolCall: repairToolCall,
|
4390
4402
|
experimental_transform: transform,
|
4403
|
+
experimental_download: download2,
|
4391
4404
|
includeRawChunks = false,
|
4392
4405
|
onChunk,
|
4393
4406
|
onError = ({ error }) => {
|
@@ -4432,7 +4445,8 @@ function streamText({
|
|
4432
4445
|
now: now2,
|
4433
4446
|
currentDate,
|
4434
4447
|
generateId: generateId3,
|
4435
|
-
experimental_context
|
4448
|
+
experimental_context,
|
4449
|
+
download: download2
|
4436
4450
|
});
|
4437
4451
|
}
|
4438
4452
|
function createOutputTransformStream(output) {
|
@@ -4529,7 +4543,8 @@ var DefaultStreamTextResult = class {
|
|
4529
4543
|
onFinish,
|
4530
4544
|
onAbort,
|
4531
4545
|
onStepFinish,
|
4532
|
-
experimental_context
|
4546
|
+
experimental_context,
|
4547
|
+
download: download2
|
4533
4548
|
}) {
|
4534
4549
|
this._totalUsage = new DelayedPromise();
|
4535
4550
|
this._finishReason = new DelayedPromise();
|
@@ -4851,7 +4866,8 @@ var DefaultStreamTextResult = class {
|
|
4851
4866
|
system: (_a17 = prepareStepResult == null ? void 0 : prepareStepResult.system) != null ? _a17 : initialPrompt.system,
|
4852
4867
|
messages: (_b = prepareStepResult == null ? void 0 : prepareStepResult.messages) != null ? _b : stepInputMessages
|
4853
4868
|
},
|
4854
|
-
supportedUrls: await model.supportedUrls
|
4869
|
+
supportedUrls: await model.supportedUrls,
|
4870
|
+
download: download2
|
4855
4871
|
});
|
4856
4872
|
const stepModel = resolveLanguageModel(
|
4857
4873
|
(_c = prepareStepResult == null ? void 0 : prepareStepResult.model) != null ? _c : model
|
@@ -6615,6 +6631,7 @@ async function generateObject(options) {
|
|
6615
6631
|
headers,
|
6616
6632
|
experimental_repairText: repairText,
|
6617
6633
|
experimental_telemetry: telemetry,
|
6634
|
+
experimental_download: download2,
|
6618
6635
|
providerOptions,
|
6619
6636
|
_internal: {
|
6620
6637
|
generateId: generateId3 = originalGenerateId3,
|
@@ -6692,7 +6709,8 @@ async function generateObject(options) {
|
|
6692
6709
|
});
|
6693
6710
|
const promptMessages = await convertToLanguageModelPrompt({
|
6694
6711
|
prompt: standardizedPrompt,
|
6695
|
-
supportedUrls: await model.supportedUrls
|
6712
|
+
supportedUrls: await model.supportedUrls,
|
6713
|
+
download: download2
|
6696
6714
|
});
|
6697
6715
|
const generateResult = await retry(
|
6698
6716
|
() => recordSpan({
|
@@ -7005,6 +7023,7 @@ function streamObject(options) {
|
|
7005
7023
|
headers,
|
7006
7024
|
experimental_repairText: repairText,
|
7007
7025
|
experimental_telemetry: telemetry,
|
7026
|
+
experimental_download: download2,
|
7008
7027
|
providerOptions,
|
7009
7028
|
onError = ({ error }) => {
|
7010
7029
|
console.error(error);
|
@@ -7052,6 +7071,7 @@ function streamObject(options) {
|
|
7052
7071
|
repairText,
|
7053
7072
|
onError,
|
7054
7073
|
onFinish,
|
7074
|
+
download: download2,
|
7055
7075
|
generateId: generateId3,
|
7056
7076
|
currentDate,
|
7057
7077
|
now: now2
|
@@ -7075,6 +7095,7 @@ var DefaultStreamObjectResult = class {
|
|
7075
7095
|
repairText,
|
7076
7096
|
onError,
|
7077
7097
|
onFinish,
|
7098
|
+
download: download2,
|
7078
7099
|
generateId: generateId3,
|
7079
7100
|
currentDate,
|
7080
7101
|
now: now2
|
@@ -7148,7 +7169,8 @@ var DefaultStreamObjectResult = class {
|
|
7148
7169
|
...prepareCallSettings(settings),
|
7149
7170
|
prompt: await convertToLanguageModelPrompt({
|
7150
7171
|
prompt: standardizedPrompt,
|
7151
|
-
supportedUrls: await model.supportedUrls
|
7172
|
+
supportedUrls: await model.supportedUrls,
|
7173
|
+
download: download2
|
7152
7174
|
}),
|
7153
7175
|
providerOptions,
|
7154
7176
|
abortSignal,
|