ai 3.3.11 → 3.3.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -103,12 +103,6 @@ some settings might not be supported, which can lead to suboptimal results.
103
103
  */
104
104
  type CallWarning = LanguageModelV1CallWarning;
105
105
  /**
106
- Additional provider-specific metadata. They are passed through
107
- to the provider from the AI SDK and enable provider-specific
108
- functionality that can be fully encapsulated in the provider.
109
- */
110
- type ProviderMetadata = LanguageModelV1ProviderMetadata;
111
- /**
112
106
  Tool choice for the generation. It supports the following settings:
113
107
 
114
108
  - `auto` (default): the model can choose whether and which tools to call.
@@ -121,6 +115,13 @@ type CoreToolChoice<TOOLS extends Record<string, unknown>> = 'auto' | 'none' | '
121
115
  toolName: keyof TOOLS;
122
116
  };
123
117
 
118
+ /**
119
+ Additional provider-specific metadata. They are passed through
120
+ to the provider from the AI SDK and enable provider-specific
121
+ functionality that can be fully encapsulated in the provider.
122
+ */
123
+ type ProviderMetadata = LanguageModelV1ProviderMetadata;
124
+
124
125
  /**
125
126
  * @deprecated Use CompletionTokenUsage instead.
126
127
  */
@@ -344,27 +345,6 @@ type CallSettings = {
344
345
  Data content. Can either be a base64-encoded string, a Uint8Array, an ArrayBuffer, or a Buffer.
345
346
  */
346
347
  type DataContent = string | Uint8Array | ArrayBuffer | Buffer;
347
- /**
348
- Converts data content to a base64-encoded string.
349
-
350
- @param content - Data content to convert.
351
- @returns Base64-encoded string.
352
- */
353
- declare function convertDataContentToBase64String(content: DataContent): string;
354
- /**
355
- Converts data content to a Uint8Array.
356
-
357
- @param content - Data content to convert.
358
- @returns Uint8Array.
359
- */
360
- declare function convertDataContentToUint8Array(content: DataContent): Uint8Array;
361
- /**
362
- * Converts a Uint8Array to a string of text.
363
- *
364
- * @param uint8Array - The Uint8Array to convert.
365
- * @returns The converted string.
366
- */
367
- declare function convertUint8ArrayToText(uint8Array: Uint8Array): string;
368
348
 
369
349
  /**
370
350
  Text content part of a prompt. It contains a string of text.
@@ -452,11 +432,6 @@ interface ToolResultPart {
452
432
  experimental_providerMetadata?: ProviderMetadata;
453
433
  }
454
434
 
455
- /**
456
- A message that can be used in the `messages` field of a prompt.
457
- It can be a user message, an assistant message, or a tool message.
458
- */
459
- type CoreMessage = CoreSystemMessage | CoreUserMessage | CoreAssistantMessage | CoreToolMessage;
460
435
  /**
461
436
  A system message. It can contain system information.
462
437
 
@@ -541,6 +516,11 @@ type ExperimentalToolMessage = CoreToolMessage;
541
516
  Content of a tool message. It is an array of tool result parts.
542
517
  */
543
518
  type ToolContent = Array<ToolResultPart>;
519
+ /**
520
+ A message that can be used in the `messages` field of a prompt.
521
+ It can be a user message, an assistant message, or a tool message.
522
+ */
523
+ type CoreMessage = CoreSystemMessage | CoreUserMessage | CoreAssistantMessage | CoreToolMessage;
544
524
 
545
525
  /**
546
526
  Prompt part of the AI function options. It contains a system message, a simple text prompt, or a list of messages.
@@ -2801,4 +2781,4 @@ declare const generateId: (size?: number) => string;
2801
2781
  */
2802
2782
  declare const nanoid: (size?: number) => string;
2803
2783
 
2804
- export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantResponse, CallWarning, CohereStream, CompletionTokenUsage, CompletionUsage, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolChoice, CoreToolMessage, CoreUserMessage, DataContent, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingTokenUsage, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, FinishReason, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidModelIdError, InvalidToolArgumentsError, langchainAdapter as LangChainAdapter, LangChainStream, LanguageModel, LogProbs, MistralStream, ModelType, NoObjectGeneratedError, NoSuchModelError, NoSuchProviderError, NoSuchToolError, ObjectStreamInputPart, ObjectStreamPart, OpenAIStream, OpenAIStreamCallbacks, ProviderMetadata, ReplicateStream, RetryError, StreamData, StreamObjectResult, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, TokenUsage, ToolCallPart, ToolCallPayload, ToolContent, ToolResultPart, UserContent, convertDataContentToBase64String, convertDataContentToUint8Array, convertToCoreMessages, convertUint8ArrayToText, cosineSimilarity, createCallbacksTransformer, createEventStreamTransformer, createStreamDataTransformer, embed, embedMany, experimental_AssistantResponse, experimental_ModelRegistry, experimental_Provider, experimental_ProviderRegistry, experimental_StreamData, experimental_createModelRegistry, experimental_createProviderRegistry, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, generateId, generateObject, generateText, nanoid, readableFromAsyncIterable, streamObject, streamText, streamToResponse, tool, trimStartOfStreamHelper };
2784
+ export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantResponse, CallWarning, CohereStream, CompletionTokenUsage, CompletionUsage, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolChoice, CoreToolMessage, CoreUserMessage, DataContent, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingTokenUsage, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, FinishReason, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidModelIdError, InvalidToolArgumentsError, langchainAdapter as LangChainAdapter, LangChainStream, LanguageModel, LogProbs, MistralStream, ModelType, NoObjectGeneratedError, NoSuchModelError, NoSuchProviderError, NoSuchToolError, ObjectStreamInputPart, ObjectStreamPart, OpenAIStream, OpenAIStreamCallbacks, ProviderMetadata, ReplicateStream, RetryError, StreamData, StreamObjectResult, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, TokenUsage, ToolCallPart, ToolCallPayload, ToolContent, ToolResultPart, UserContent, convertToCoreMessages, cosineSimilarity, createCallbacksTransformer, createEventStreamTransformer, createStreamDataTransformer, embed, embedMany, experimental_AssistantResponse, experimental_ModelRegistry, experimental_Provider, experimental_ProviderRegistry, experimental_StreamData, experimental_createModelRegistry, experimental_createProviderRegistry, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, generateId, generateObject, generateText, nanoid, readableFromAsyncIterable, streamObject, streamText, streamToResponse, tool, trimStartOfStreamHelper };
package/dist/index.d.ts CHANGED
@@ -103,12 +103,6 @@ some settings might not be supported, which can lead to suboptimal results.
103
103
  */
104
104
  type CallWarning = LanguageModelV1CallWarning;
105
105
  /**
106
- Additional provider-specific metadata. They are passed through
107
- to the provider from the AI SDK and enable provider-specific
108
- functionality that can be fully encapsulated in the provider.
109
- */
110
- type ProviderMetadata = LanguageModelV1ProviderMetadata;
111
- /**
112
106
  Tool choice for the generation. It supports the following settings:
113
107
 
114
108
  - `auto` (default): the model can choose whether and which tools to call.
@@ -121,6 +115,13 @@ type CoreToolChoice<TOOLS extends Record<string, unknown>> = 'auto' | 'none' | '
121
115
  toolName: keyof TOOLS;
122
116
  };
123
117
 
118
+ /**
119
+ Additional provider-specific metadata. They are passed through
120
+ to the provider from the AI SDK and enable provider-specific
121
+ functionality that can be fully encapsulated in the provider.
122
+ */
123
+ type ProviderMetadata = LanguageModelV1ProviderMetadata;
124
+
124
125
  /**
125
126
  * @deprecated Use CompletionTokenUsage instead.
126
127
  */
@@ -344,27 +345,6 @@ type CallSettings = {
344
345
  Data content. Can either be a base64-encoded string, a Uint8Array, an ArrayBuffer, or a Buffer.
345
346
  */
346
347
  type DataContent = string | Uint8Array | ArrayBuffer | Buffer;
347
- /**
348
- Converts data content to a base64-encoded string.
349
-
350
- @param content - Data content to convert.
351
- @returns Base64-encoded string.
352
- */
353
- declare function convertDataContentToBase64String(content: DataContent): string;
354
- /**
355
- Converts data content to a Uint8Array.
356
-
357
- @param content - Data content to convert.
358
- @returns Uint8Array.
359
- */
360
- declare function convertDataContentToUint8Array(content: DataContent): Uint8Array;
361
- /**
362
- * Converts a Uint8Array to a string of text.
363
- *
364
- * @param uint8Array - The Uint8Array to convert.
365
- * @returns The converted string.
366
- */
367
- declare function convertUint8ArrayToText(uint8Array: Uint8Array): string;
368
348
 
369
349
  /**
370
350
  Text content part of a prompt. It contains a string of text.
@@ -452,11 +432,6 @@ interface ToolResultPart {
452
432
  experimental_providerMetadata?: ProviderMetadata;
453
433
  }
454
434
 
455
- /**
456
- A message that can be used in the `messages` field of a prompt.
457
- It can be a user message, an assistant message, or a tool message.
458
- */
459
- type CoreMessage = CoreSystemMessage | CoreUserMessage | CoreAssistantMessage | CoreToolMessage;
460
435
  /**
461
436
  A system message. It can contain system information.
462
437
 
@@ -541,6 +516,11 @@ type ExperimentalToolMessage = CoreToolMessage;
541
516
  Content of a tool message. It is an array of tool result parts.
542
517
  */
543
518
  type ToolContent = Array<ToolResultPart>;
519
+ /**
520
+ A message that can be used in the `messages` field of a prompt.
521
+ It can be a user message, an assistant message, or a tool message.
522
+ */
523
+ type CoreMessage = CoreSystemMessage | CoreUserMessage | CoreAssistantMessage | CoreToolMessage;
544
524
 
545
525
  /**
546
526
  Prompt part of the AI function options. It contains a system message, a simple text prompt, or a list of messages.
@@ -2801,4 +2781,4 @@ declare const generateId: (size?: number) => string;
2801
2781
  */
2802
2782
  declare const nanoid: (size?: number) => string;
2803
2783
 
2804
- export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantResponse, CallWarning, CohereStream, CompletionTokenUsage, CompletionUsage, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolChoice, CoreToolMessage, CoreUserMessage, DataContent, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingTokenUsage, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, FinishReason, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidModelIdError, InvalidToolArgumentsError, langchainAdapter as LangChainAdapter, LangChainStream, LanguageModel, LogProbs, MistralStream, ModelType, NoObjectGeneratedError, NoSuchModelError, NoSuchProviderError, NoSuchToolError, ObjectStreamInputPart, ObjectStreamPart, OpenAIStream, OpenAIStreamCallbacks, ProviderMetadata, ReplicateStream, RetryError, StreamData, StreamObjectResult, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, TokenUsage, ToolCallPart, ToolCallPayload, ToolContent, ToolResultPart, UserContent, convertDataContentToBase64String, convertDataContentToUint8Array, convertToCoreMessages, convertUint8ArrayToText, cosineSimilarity, createCallbacksTransformer, createEventStreamTransformer, createStreamDataTransformer, embed, embedMany, experimental_AssistantResponse, experimental_ModelRegistry, experimental_Provider, experimental_ProviderRegistry, experimental_StreamData, experimental_createModelRegistry, experimental_createProviderRegistry, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, generateId, generateObject, generateText, nanoid, readableFromAsyncIterable, streamObject, streamText, streamToResponse, tool, trimStartOfStreamHelper };
2784
+ export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantResponse, CallWarning, CohereStream, CompletionTokenUsage, CompletionUsage, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolChoice, CoreToolMessage, CoreUserMessage, DataContent, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingTokenUsage, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, FinishReason, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidModelIdError, InvalidToolArgumentsError, langchainAdapter as LangChainAdapter, LangChainStream, LanguageModel, LogProbs, MistralStream, ModelType, NoObjectGeneratedError, NoSuchModelError, NoSuchProviderError, NoSuchToolError, ObjectStreamInputPart, ObjectStreamPart, OpenAIStream, OpenAIStreamCallbacks, ProviderMetadata, ReplicateStream, RetryError, StreamData, StreamObjectResult, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, TokenUsage, ToolCallPart, ToolCallPayload, ToolContent, ToolResultPart, UserContent, convertToCoreMessages, cosineSimilarity, createCallbacksTransformer, createEventStreamTransformer, createStreamDataTransformer, embed, embedMany, experimental_AssistantResponse, experimental_ModelRegistry, experimental_Provider, experimental_ProviderRegistry, experimental_StreamData, experimental_createModelRegistry, experimental_createProviderRegistry, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, generateId, generateObject, generateText, nanoid, readableFromAsyncIterable, streamObject, streamText, streamToResponse, tool, trimStartOfStreamHelper };
package/dist/index.js CHANGED
@@ -59,10 +59,7 @@ __export(streams_exports, {
59
59
  StreamingTextResponse: () => StreamingTextResponse,
60
60
  TypeValidationError: () => import_provider14.TypeValidationError,
61
61
  UnsupportedFunctionalityError: () => import_provider14.UnsupportedFunctionalityError,
62
- convertDataContentToBase64String: () => convertDataContentToBase64String,
63
- convertDataContentToUint8Array: () => convertDataContentToUint8Array,
64
62
  convertToCoreMessages: () => convertToCoreMessages,
65
- convertUint8ArrayToText: () => convertUint8ArrayToText,
66
63
  cosineSimilarity: () => cosineSimilarity,
67
64
  createCallbacksTransformer: () => createCallbacksTransformer,
68
65
  createEventStreamTransformer: () => createEventStreamTransformer,
@@ -95,7 +92,7 @@ __export(streams_exports, {
95
92
  });
96
93
  module.exports = __toCommonJS(streams_exports);
97
94
  var import_ui_utils10 = require("@ai-sdk/ui-utils");
98
- var import_provider_utils7 = require("@ai-sdk/provider-utils");
95
+ var import_provider_utils8 = require("@ai-sdk/provider-utils");
99
96
 
100
97
  // core/index.ts
101
98
  var import_ui_utils6 = require("@ai-sdk/ui-utils");
@@ -672,7 +669,7 @@ var DefaultEmbedManyResult = class {
672
669
  };
673
670
 
674
671
  // core/generate-object/generate-object.ts
675
- var import_provider_utils4 = require("@ai-sdk/provider-utils");
672
+ var import_provider_utils5 = require("@ai-sdk/provider-utils");
676
673
  var import_ui_utils = require("@ai-sdk/ui-utils");
677
674
 
678
675
  // core/prompt/convert-to-language-model-prompt.ts
@@ -811,15 +808,13 @@ var InvalidDataContentError = class extends import_provider4.AISDKError {
811
808
  _a3 = symbol3;
812
809
 
813
810
  // core/prompt/data-content.ts
814
- function convertDataContentToBase64String(content) {
815
- if (typeof content === "string") {
816
- return content;
817
- }
818
- if (content instanceof ArrayBuffer) {
819
- return (0, import_provider_utils2.convertUint8ArrayToBase64)(new Uint8Array(content));
820
- }
821
- return (0, import_provider_utils2.convertUint8ArrayToBase64)(content);
822
- }
811
+ var import_zod = require("zod");
812
+ var dataContentSchema = import_zod.z.union([
813
+ import_zod.z.string(),
814
+ import_zod.z.instanceof(Uint8Array),
815
+ import_zod.z.instanceof(ArrayBuffer),
816
+ import_zod.z.instanceof(Buffer)
817
+ ]);
823
818
  function convertDataContentToUint8Array(content) {
824
819
  if (content instanceof Uint8Array) {
825
820
  return content;
@@ -1094,52 +1089,13 @@ async function downloadImages(messages, downloadImplementation) {
1094
1089
  );
1095
1090
  }
1096
1091
 
1097
- // core/prompt/get-validated-prompt.ts
1098
- var import_provider6 = require("@ai-sdk/provider");
1099
- function getValidatedPrompt(prompt) {
1100
- if (prompt.prompt == null && prompt.messages == null) {
1101
- throw new import_provider6.InvalidPromptError({
1102
- prompt,
1103
- message: "prompt or messages must be defined"
1104
- });
1105
- }
1106
- if (prompt.prompt != null && prompt.messages != null) {
1107
- throw new import_provider6.InvalidPromptError({
1108
- prompt,
1109
- message: "prompt and messages cannot be defined at the same time"
1110
- });
1111
- }
1112
- if (prompt.messages != null) {
1113
- for (const message of prompt.messages) {
1114
- if (message.role === "system" && typeof message.content !== "string") {
1115
- throw new import_provider6.InvalidPromptError({
1116
- prompt,
1117
- message: "system message content must be a string"
1118
- });
1119
- }
1120
- }
1121
- }
1122
- return prompt.prompt != null ? {
1123
- type: "prompt",
1124
- prompt: prompt.prompt,
1125
- messages: void 0,
1126
- system: prompt.system
1127
- } : {
1128
- type: "messages",
1129
- prompt: void 0,
1130
- messages: prompt.messages,
1131
- // only possible case bc of checks above
1132
- system: prompt.system
1133
- };
1134
- }
1135
-
1136
1092
  // errors/invalid-argument-error.ts
1137
- var import_provider7 = require("@ai-sdk/provider");
1093
+ var import_provider6 = require("@ai-sdk/provider");
1138
1094
  var name5 = "AI_InvalidArgumentError";
1139
1095
  var marker5 = `vercel.ai.error.${name5}`;
1140
1096
  var symbol5 = Symbol.for(marker5);
1141
1097
  var _a5;
1142
- var InvalidArgumentError = class extends import_provider7.AISDKError {
1098
+ var InvalidArgumentError = class extends import_provider6.AISDKError {
1143
1099
  constructor({
1144
1100
  parameter,
1145
1101
  value,
@@ -1154,7 +1110,7 @@ var InvalidArgumentError = class extends import_provider7.AISDKError {
1154
1110
  this.value = value;
1155
1111
  }
1156
1112
  static isInstance(error) {
1157
- return import_provider7.AISDKError.hasMarker(error, marker5);
1113
+ return import_provider6.AISDKError.hasMarker(error, marker5);
1158
1114
  }
1159
1115
  /**
1160
1116
  * @deprecated use `isInstance` instead
@@ -1274,6 +1230,155 @@ function prepareCallSettings({
1274
1230
  };
1275
1231
  }
1276
1232
 
1233
+ // core/prompt/validate-prompt.ts
1234
+ var import_provider7 = require("@ai-sdk/provider");
1235
+ var import_provider_utils4 = require("@ai-sdk/provider-utils");
1236
+ var import_zod6 = require("zod");
1237
+
1238
+ // core/prompt/message.ts
1239
+ var import_zod5 = require("zod");
1240
+
1241
+ // core/types/provider-metadata.ts
1242
+ var import_zod3 = require("zod");
1243
+
1244
+ // core/types/json-value.ts
1245
+ var import_zod2 = require("zod");
1246
+ var jsonValueSchema = import_zod2.z.lazy(
1247
+ () => import_zod2.z.union([
1248
+ import_zod2.z.null(),
1249
+ import_zod2.z.string(),
1250
+ import_zod2.z.number(),
1251
+ import_zod2.z.boolean(),
1252
+ import_zod2.z.record(import_zod2.z.string(), jsonValueSchema),
1253
+ import_zod2.z.array(jsonValueSchema)
1254
+ ])
1255
+ );
1256
+
1257
+ // core/types/provider-metadata.ts
1258
+ var providerMetadataSchema = import_zod3.z.record(
1259
+ import_zod3.z.string(),
1260
+ import_zod3.z.record(import_zod3.z.string(), jsonValueSchema)
1261
+ );
1262
+
1263
+ // core/prompt/content-part.ts
1264
+ var import_zod4 = require("zod");
1265
+ var textPartSchema = import_zod4.z.object({
1266
+ type: import_zod4.z.literal("text"),
1267
+ text: import_zod4.z.string(),
1268
+ experimental_providerMetadata: providerMetadataSchema.optional()
1269
+ });
1270
+ var imagePartSchema = import_zod4.z.object({
1271
+ type: import_zod4.z.literal("image"),
1272
+ image: import_zod4.z.union([dataContentSchema, import_zod4.z.instanceof(URL)]),
1273
+ mimeType: import_zod4.z.string().optional(),
1274
+ experimental_providerMetadata: providerMetadataSchema.optional()
1275
+ });
1276
+ var toolCallPartSchema = import_zod4.z.object({
1277
+ type: import_zod4.z.literal("tool-call"),
1278
+ toolCallId: import_zod4.z.string(),
1279
+ toolName: import_zod4.z.string(),
1280
+ args: import_zod4.z.unknown()
1281
+ });
1282
+ var toolResultPartSchema = import_zod4.z.object({
1283
+ type: import_zod4.z.literal("tool-result"),
1284
+ toolCallId: import_zod4.z.string(),
1285
+ toolName: import_zod4.z.string(),
1286
+ result: import_zod4.z.unknown(),
1287
+ isError: import_zod4.z.boolean().optional(),
1288
+ experimental_providerMetadata: providerMetadataSchema.optional()
1289
+ });
1290
+
1291
+ // core/prompt/message.ts
1292
+ var coreSystemMessageSchema = import_zod5.z.object({
1293
+ role: import_zod5.z.literal("system"),
1294
+ content: import_zod5.z.string(),
1295
+ experimental_providerMetadata: providerMetadataSchema.optional()
1296
+ });
1297
+ var coreUserMessageSchema = import_zod5.z.object({
1298
+ role: import_zod5.z.literal("user"),
1299
+ content: import_zod5.z.union([
1300
+ import_zod5.z.string(),
1301
+ import_zod5.z.array(import_zod5.z.union([textPartSchema, imagePartSchema]))
1302
+ ]),
1303
+ experimental_providerMetadata: providerMetadataSchema.optional()
1304
+ });
1305
+ var coreAssistantMessageSchema = import_zod5.z.object({
1306
+ role: import_zod5.z.literal("assistant"),
1307
+ content: import_zod5.z.union([
1308
+ import_zod5.z.string(),
1309
+ import_zod5.z.array(import_zod5.z.union([textPartSchema, toolCallPartSchema]))
1310
+ ]),
1311
+ experimental_providerMetadata: providerMetadataSchema.optional()
1312
+ });
1313
+ var coreToolMessageSchema = import_zod5.z.object({
1314
+ role: import_zod5.z.literal("tool"),
1315
+ content: import_zod5.z.array(toolResultPartSchema),
1316
+ experimental_providerMetadata: providerMetadataSchema.optional()
1317
+ });
1318
+ var coreMessageSchema = import_zod5.z.union([
1319
+ coreSystemMessageSchema,
1320
+ coreUserMessageSchema,
1321
+ coreAssistantMessageSchema,
1322
+ coreToolMessageSchema
1323
+ ]);
1324
+
1325
+ // core/prompt/validate-prompt.ts
1326
+ function validatePrompt(prompt) {
1327
+ if (prompt.prompt == null && prompt.messages == null) {
1328
+ throw new import_provider7.InvalidPromptError({
1329
+ prompt,
1330
+ message: "prompt or messages must be defined"
1331
+ });
1332
+ }
1333
+ if (prompt.prompt != null && prompt.messages != null) {
1334
+ throw new import_provider7.InvalidPromptError({
1335
+ prompt,
1336
+ message: "prompt and messages cannot be defined at the same time"
1337
+ });
1338
+ }
1339
+ if (prompt.system != null && typeof prompt.system !== "string") {
1340
+ throw new import_provider7.InvalidPromptError({
1341
+ prompt,
1342
+ message: "system must be a string"
1343
+ });
1344
+ }
1345
+ if (prompt.prompt != null) {
1346
+ if (typeof prompt.prompt !== "string") {
1347
+ throw new import_provider7.InvalidPromptError({
1348
+ prompt,
1349
+ message: "prompt must be a string"
1350
+ });
1351
+ }
1352
+ return {
1353
+ type: "prompt",
1354
+ prompt: prompt.prompt,
1355
+ messages: void 0,
1356
+ system: prompt.system
1357
+ };
1358
+ }
1359
+ if (prompt.messages != null) {
1360
+ const validationResult = (0, import_provider_utils4.safeValidateTypes)({
1361
+ value: prompt.messages,
1362
+ schema: import_zod6.z.array(coreMessageSchema)
1363
+ });
1364
+ if (!validationResult.success) {
1365
+ throw new import_provider7.InvalidPromptError({
1366
+ prompt,
1367
+ message: "messages must be an array of CoreMessage",
1368
+ cause: validationResult.error
1369
+ });
1370
+ }
1371
+ return {
1372
+ type: "messages",
1373
+ prompt: void 0,
1374
+ messages: prompt.messages,
1375
+ // only possible case bc of checks above
1376
+ system: prompt.system
1377
+ };
1378
+ }
1379
+ throw new Error("unreachable");
1380
+ }
1381
+
1277
1382
  // core/types/token-usage.ts
1278
1383
  function calculateCompletionTokenUsage(usage) {
1279
1384
  return {
@@ -1415,7 +1520,7 @@ async function generateObject({
1415
1520
  let providerMetadata;
1416
1521
  switch (mode) {
1417
1522
  case "json": {
1418
- const validatedPrompt = getValidatedPrompt({
1523
+ const validatedPrompt = validatePrompt({
1419
1524
  system: model.supportsStructuredOutputs ? system : injectJsonSchemaIntoSystem({
1420
1525
  system,
1421
1526
  schema: schema.jsonSchema
@@ -1501,7 +1606,7 @@ async function generateObject({
1501
1606
  break;
1502
1607
  }
1503
1608
  case "tool": {
1504
- const validatedPrompt = getValidatedPrompt({
1609
+ const validatedPrompt = validatePrompt({
1505
1610
  system,
1506
1611
  prompt,
1507
1612
  messages
@@ -1598,7 +1703,7 @@ async function generateObject({
1598
1703
  throw new Error(`Unsupported mode: ${_exhaustiveCheck}`);
1599
1704
  }
1600
1705
  }
1601
- const parseResult = (0, import_provider_utils4.safeParseJSON)({ text: result, schema });
1706
+ const parseResult = (0, import_provider_utils5.safeParseJSON)({ text: result, schema });
1602
1707
  if (!parseResult.success) {
1603
1708
  throw parseResult.error;
1604
1709
  }
@@ -1650,7 +1755,7 @@ var DefaultGenerateObjectResult = class {
1650
1755
  var experimental_generateObject = generateObject;
1651
1756
 
1652
1757
  // core/generate-object/stream-object.ts
1653
- var import_provider_utils5 = require("@ai-sdk/provider-utils");
1758
+ var import_provider_utils6 = require("@ai-sdk/provider-utils");
1654
1759
  var import_ui_utils2 = require("@ai-sdk/ui-utils");
1655
1760
 
1656
1761
  // util/create-resolvable-promise.ts
@@ -1780,7 +1885,7 @@ async function streamObject({
1780
1885
  let transformer;
1781
1886
  switch (mode) {
1782
1887
  case "json": {
1783
- const validatedPrompt = getValidatedPrompt({
1888
+ const validatedPrompt = validatePrompt({
1784
1889
  system: model.supportsStructuredOutputs ? system : injectJsonSchemaIntoSystem({
1785
1890
  system,
1786
1891
  schema: schema.jsonSchema
@@ -1820,7 +1925,7 @@ async function streamObject({
1820
1925
  break;
1821
1926
  }
1822
1927
  case "tool": {
1823
- const validatedPrompt = getValidatedPrompt({
1928
+ const validatedPrompt = validatePrompt({
1824
1929
  system,
1825
1930
  prompt,
1826
1931
  messages
@@ -2002,7 +2107,7 @@ var DefaultStreamObjectResult = class {
2002
2107
  controller.enqueue({ ...chunk, usage });
2003
2108
  resolveUsage(usage);
2004
2109
  resolveProviderMetadata(providerMetadata);
2005
- const validationResult = (0, import_provider_utils5.safeValidateTypes)({
2110
+ const validationResult = (0, import_provider_utils6.safeValidateTypes)({
2006
2111
  value: latestObject,
2007
2112
  schema
2008
2113
  });
@@ -2194,7 +2299,7 @@ function prepareToolsAndToolChoice({
2194
2299
  }
2195
2300
 
2196
2301
  // core/generate-text/tool-call.ts
2197
- var import_provider_utils6 = require("@ai-sdk/provider-utils");
2302
+ var import_provider_utils7 = require("@ai-sdk/provider-utils");
2198
2303
  var import_ui_utils4 = require("@ai-sdk/ui-utils");
2199
2304
 
2200
2305
  // errors/invalid-tool-arguments-error.ts
@@ -2299,7 +2404,7 @@ function parseToolCall({
2299
2404
  availableTools: Object.keys(tools)
2300
2405
  });
2301
2406
  }
2302
- const parseResult = (0, import_provider_utils6.safeParseJSON)({
2407
+ const parseResult = (0, import_provider_utils7.safeParseJSON)({
2303
2408
  text: toolCall.args,
2304
2409
  schema: (0, import_ui_utils4.asSchema)(tool2.parameters)
2305
2410
  });
@@ -2363,7 +2468,7 @@ async function generateText({
2363
2468
  fn: async (span) => {
2364
2469
  var _a13, _b, _c, _d;
2365
2470
  const retry = retryWithExponentialBackoff({ maxRetries });
2366
- const validatedPrompt = getValidatedPrompt({
2471
+ const validatedPrompt = validatePrompt({
2367
2472
  system,
2368
2473
  prompt,
2369
2474
  messages
@@ -2940,7 +3045,7 @@ async function streamText({
2940
3045
  endWhenDone: false,
2941
3046
  fn: async (rootSpan) => {
2942
3047
  const retry = retryWithExponentialBackoff({ maxRetries });
2943
- const validatedPrompt = getValidatedPrompt({ system, prompt, messages });
3048
+ const validatedPrompt = validatePrompt({ system, prompt, messages });
2944
3049
  const promptMessages = await convertToLanguageModelPrompt({
2945
3050
  prompt: validatedPrompt,
2946
3051
  modelSupportsImageUrls: model.supportsImageUrls
@@ -4756,8 +4861,8 @@ var StreamingTextResponse = class extends Response {
4756
4861
  };
4757
4862
 
4758
4863
  // streams/index.ts
4759
- var generateId2 = import_provider_utils7.generateId;
4760
- var nanoid = import_provider_utils7.generateId;
4864
+ var generateId2 = import_provider_utils8.generateId;
4865
+ var nanoid = import_provider_utils8.generateId;
4761
4866
  // Annotate the CommonJS export names for ESM import in node:
4762
4867
  0 && (module.exports = {
4763
4868
  AISDKError,
@@ -4799,10 +4904,7 @@ var nanoid = import_provider_utils7.generateId;
4799
4904
  StreamingTextResponse,
4800
4905
  TypeValidationError,
4801
4906
  UnsupportedFunctionalityError,
4802
- convertDataContentToBase64String,
4803
- convertDataContentToUint8Array,
4804
4907
  convertToCoreMessages,
4805
- convertUint8ArrayToText,
4806
4908
  cosineSimilarity,
4807
4909
  createCallbacksTransformer,
4808
4910
  createEventStreamTransformer,