@ai-sdk/provider 2.0.0-canary.7 → 2.0.0-canary.8

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,12 @@
1
1
  # @ai-sdk/provider
2
2
 
3
+ ## 2.0.0-canary.8
4
+
5
+ ### Major Changes
6
+
7
+ - 95857aa: chore: restructure language model supported urls
8
+ - 7ea4132: chore: remove object generation mode
9
+
3
10
  ## 2.0.0-canary.7
4
11
 
5
12
  ### Major Changes
package/dist/index.d.mts CHANGED
@@ -1038,46 +1038,17 @@ type LanguageModelV2 = {
1038
1038
  */
1039
1039
  readonly modelId: string;
1040
1040
  /**
1041
- Default object generation mode that should be used with this model when
1042
- no mode is specified. Should be the mode with the best results for this
1043
- model. `undefined` can be returned if object generation is not supported.
1044
-
1045
- This is needed to generate the best objects possible w/o requiring the
1046
- user to explicitly specify the object generation mode.
1047
- */
1048
- readonly defaultObjectGenerationMode: LanguageModelV2ObjectGenerationMode;
1049
- /**
1050
- Flag whether this model supports image URLs. Default is `true`.
1051
-
1052
- When the flag is set to `false`, the AI SDK will download the image and
1053
- pass the image data to the model.
1054
- */
1055
- readonly supportsImageUrls?: boolean;
1056
- /**
1057
- Flag whether this model supports grammar-guided generation,
1058
- i.e. follows JSON schemas for object generation
1059
- when the response format is set to 'json' or
1060
- when the `object-json` mode is used.
1061
-
1062
- This means that the model guarantees that the generated JSON
1063
- will be a valid JSON object AND that the object will match the
1064
- JSON schema.
1065
-
1066
- Please note that `generateObject` and `streamObject` will work
1067
- regardless of this flag, but might send different prompts and
1068
- use further optimizations if this flag is set to `true`.
1069
-
1070
- Defaults to `false`.
1071
- */
1072
- readonly supportsStructuredOutputs?: boolean;
1073
- /**
1074
- Checks if the model supports the given URL for file parts natively.
1075
- If the model does not support the URL,
1076
- the AI SDK will download the file and pass the file data to the model.
1077
-
1078
- When undefined, the AI SDK will download the file.
1041
+ * Returns a map of supported URL patterns for the model.
1042
+ * The keys are media type patterns or full media types (e.g. `*\/*` for everything, `audio/*`, `video/*`, or `application/pdf`).
1043
+ * and the values are arrays of regular expressions that match the URL paths.
1044
+ *
1045
+ * The matching should be against lower-case URLs.
1046
+ *
1047
+ * Matched URLs are supported natively by the model and are not downloaded.
1048
+ *
1049
+ * @returns A promise resolving to a map of supported URL patterns.
1079
1050
  */
1080
- supportsUrl?(url: URL): boolean;
1051
+ getSupportedUrls(): PromiseLike<Record<string, RegExp[]>>;
1081
1052
  /**
1082
1053
  Generates a language model output (non-streaming).
1083
1054
 
@@ -1197,11 +1168,6 @@ type LanguageModelV2StreamPart = LanguageModelV2Content | LanguageModelV2ToolCal
1197
1168
  type: 'error';
1198
1169
  error: unknown;
1199
1170
  };
1200
- /**
1201
- The object generation modes available for use with a model. `undefined`
1202
- represents no support for object generation.
1203
- */
1204
- type LanguageModelV2ObjectGenerationMode = 'json' | 'tool' | undefined;
1205
1171
 
1206
1172
  /**
1207
1173
  * Experimental middleware for LanguageModelV2.
@@ -2439,4 +2405,4 @@ interface ProviderV2 {
2439
2405
  readonly imageModel: (modelId: string) => ImageModelV1;
2440
2406
  }
2441
2407
 
2442
- export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV1, type ImageModelV1CallOptions, type ImageModelV1CallWarning, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FilePart, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1ObjectGenerationMode, type LanguageModelV1Prompt, type LanguageModelV1ProviderDefinedTool, type LanguageModelV1ProviderMetadata, type LanguageModelV1ReasoningPart, type LanguageModelV1RedactedReasoningPart, type LanguageModelV1Source, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2LogProbs, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2ObjectGenerationMode, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2RedactedReasoningPart, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallDelta, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV1, type ProviderV2, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SpeechModelV1, type SpeechModelV1CallOptions, type SpeechModelV1CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV1, type TranscriptionModelV1CallOptions, type TranscriptionModelV1CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
2408
+ export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV1, type ImageModelV1CallOptions, type ImageModelV1CallWarning, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FilePart, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1ObjectGenerationMode, type LanguageModelV1Prompt, type LanguageModelV1ProviderDefinedTool, type LanguageModelV1ProviderMetadata, type LanguageModelV1ReasoningPart, type LanguageModelV1RedactedReasoningPart, type LanguageModelV1Source, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2LogProbs, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2RedactedReasoningPart, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallDelta, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV1, type ProviderV2, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SpeechModelV1, type SpeechModelV1CallOptions, type SpeechModelV1CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV1, type TranscriptionModelV1CallOptions, type TranscriptionModelV1CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
package/dist/index.d.ts CHANGED
@@ -1038,46 +1038,17 @@ type LanguageModelV2 = {
1038
1038
  */
1039
1039
  readonly modelId: string;
1040
1040
  /**
1041
- Default object generation mode that should be used with this model when
1042
- no mode is specified. Should be the mode with the best results for this
1043
- model. `undefined` can be returned if object generation is not supported.
1044
-
1045
- This is needed to generate the best objects possible w/o requiring the
1046
- user to explicitly specify the object generation mode.
1047
- */
1048
- readonly defaultObjectGenerationMode: LanguageModelV2ObjectGenerationMode;
1049
- /**
1050
- Flag whether this model supports image URLs. Default is `true`.
1051
-
1052
- When the flag is set to `false`, the AI SDK will download the image and
1053
- pass the image data to the model.
1054
- */
1055
- readonly supportsImageUrls?: boolean;
1056
- /**
1057
- Flag whether this model supports grammar-guided generation,
1058
- i.e. follows JSON schemas for object generation
1059
- when the response format is set to 'json' or
1060
- when the `object-json` mode is used.
1061
-
1062
- This means that the model guarantees that the generated JSON
1063
- will be a valid JSON object AND that the object will match the
1064
- JSON schema.
1065
-
1066
- Please note that `generateObject` and `streamObject` will work
1067
- regardless of this flag, but might send different prompts and
1068
- use further optimizations if this flag is set to `true`.
1069
-
1070
- Defaults to `false`.
1071
- */
1072
- readonly supportsStructuredOutputs?: boolean;
1073
- /**
1074
- Checks if the model supports the given URL for file parts natively.
1075
- If the model does not support the URL,
1076
- the AI SDK will download the file and pass the file data to the model.
1077
-
1078
- When undefined, the AI SDK will download the file.
1041
+ * Returns a map of supported URL patterns for the model.
1042
+ * The keys are media type patterns or full media types (e.g. `*\/*` for everything, `audio/*`, `video/*`, or `application/pdf`).
1043
+ * and the values are arrays of regular expressions that match the URL paths.
1044
+ *
1045
+ * The matching should be against lower-case URLs.
1046
+ *
1047
+ * Matched URLs are supported natively by the model and are not downloaded.
1048
+ *
1049
+ * @returns A promise resolving to a map of supported URL patterns.
1079
1050
  */
1080
- supportsUrl?(url: URL): boolean;
1051
+ getSupportedUrls(): PromiseLike<Record<string, RegExp[]>>;
1081
1052
  /**
1082
1053
  Generates a language model output (non-streaming).
1083
1054
 
@@ -1197,11 +1168,6 @@ type LanguageModelV2StreamPart = LanguageModelV2Content | LanguageModelV2ToolCal
1197
1168
  type: 'error';
1198
1169
  error: unknown;
1199
1170
  };
1200
- /**
1201
- The object generation modes available for use with a model. `undefined`
1202
- represents no support for object generation.
1203
- */
1204
- type LanguageModelV2ObjectGenerationMode = 'json' | 'tool' | undefined;
1205
1171
 
1206
1172
  /**
1207
1173
  * Experimental middleware for LanguageModelV2.
@@ -2439,4 +2405,4 @@ interface ProviderV2 {
2439
2405
  readonly imageModel: (modelId: string) => ImageModelV1;
2440
2406
  }
2441
2407
 
2442
- export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV1, type ImageModelV1CallOptions, type ImageModelV1CallWarning, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FilePart, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1ObjectGenerationMode, type LanguageModelV1Prompt, type LanguageModelV1ProviderDefinedTool, type LanguageModelV1ProviderMetadata, type LanguageModelV1ReasoningPart, type LanguageModelV1RedactedReasoningPart, type LanguageModelV1Source, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2LogProbs, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2ObjectGenerationMode, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2RedactedReasoningPart, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallDelta, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV1, type ProviderV2, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SpeechModelV1, type SpeechModelV1CallOptions, type SpeechModelV1CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV1, type TranscriptionModelV1CallOptions, type TranscriptionModelV1CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
2408
+ export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV1, type ImageModelV1CallOptions, type ImageModelV1CallWarning, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FilePart, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1ObjectGenerationMode, type LanguageModelV1Prompt, type LanguageModelV1ProviderDefinedTool, type LanguageModelV1ProviderMetadata, type LanguageModelV1ReasoningPart, type LanguageModelV1RedactedReasoningPart, type LanguageModelV1Source, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2LogProbs, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2RedactedReasoningPart, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallDelta, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV1, type ProviderV2, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SpeechModelV1, type SpeechModelV1CallOptions, type SpeechModelV1CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV1, type TranscriptionModelV1CallOptions, type TranscriptionModelV1CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-sdk/provider",
3
- "version": "2.0.0-canary.7",
3
+ "version": "2.0.0-canary.8",
4
4
  "license": "Apache-2.0",
5
5
  "sideEffects": false,
6
6
  "main": "./dist/index.js",