@ai-sdk/provider 2.0.0-alpha.13 → 2.0.0-alpha.15

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,22 @@
1
1
  # @ai-sdk/provider
2
2
 
3
+ ## 2.0.0-alpha.15
4
+
5
+ ### Patch Changes
6
+
7
+ - 48d257a: release alpha.15
8
+
9
+ ## 2.0.0-alpha.14
10
+
11
+ ### Major Changes
12
+
13
+ - 63f9e9b: chore (provider,ai): tools have input/output instead of args,result
14
+
15
+ ### Patch Changes
16
+
17
+ - b5da06a: update to LanguageModelV2ProviderDefinedClientTool to add server side tool later on
18
+ - 2e13791: feat(anthropic): add server-side web search support
19
+
3
20
  ## 2.0.0-alpha.13
4
21
 
5
22
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -555,7 +555,7 @@ type LanguageModelV2FunctionTool = {
555
555
  The parameters that the tool expects. The language model uses this to
556
556
  understand the tool's input requirements and to provide matching suggestions.
557
557
  */
558
- parameters: JSONSchema7;
558
+ inputSchema: JSONSchema7;
559
559
  };
560
560
 
561
561
  /**
@@ -669,7 +669,7 @@ interface LanguageModelV2ToolCallPart {
669
669
  /**
670
670
  Arguments of the tool call. This is a JSON-serializable object that matches the tool's input schema.
671
671
  */
672
- args: unknown;
672
+ input: unknown;
673
673
  /**
674
674
  * Additional provider-specific options. They are passed through
675
675
  * to the provider from the AI SDK and enable provider-specific
@@ -693,7 +693,7 @@ interface LanguageModelV2ToolResultPart {
693
693
  /**
694
694
  Result of the tool call. This is a JSON-serializable object.
695
695
  */
696
- result: unknown;
696
+ output: unknown;
697
697
  /**
698
698
  Optional flag if the result is an error or an error message.
699
699
  */
@@ -732,11 +732,33 @@ IANA media type of the image.
732
732
  /**
733
733
  The configuration of a tool that is defined by the provider.
734
734
  */
735
- type LanguageModelV2ProviderDefinedTool = {
735
+ type LanguageModelV2ProviderDefinedClientTool = {
736
736
  /**
737
- The type of the tool (always 'provider-defined').
737
+ The type of the tool (always 'provider-defined-client').
738
738
  */
739
- type: 'provider-defined';
739
+ type: 'provider-defined-client';
740
+ /**
741
+ The ID of the tool. Should follow the format `<provider-name>.<tool-name>`.
742
+ */
743
+ id: `${string}.${string}`;
744
+ /**
745
+ The name of the tool. Unique within this model call.
746
+ */
747
+ name: string;
748
+ /**
749
+ The arguments for configuring the tool. Must match the expected arguments defined by the provider for this tool.
750
+ */
751
+ args: Record<string, unknown>;
752
+ };
753
+
754
+ /**
755
+ The configuration of a server-side tool that is defined and executed by the provider.
756
+ */
757
+ type LanguageModelV2ProviderDefinedServerTool = {
758
+ /**
759
+ The type of the tool (always 'provider-defined-server').
760
+ */
761
+ type: 'provider-defined-server';
740
762
  /**
741
763
  The ID of the tool. Should follow the format `<provider-name>.<tool-name>`.
742
764
  */
@@ -837,7 +859,7 @@ type LanguageModelV2CallOptions = {
837
859
  /**
838
860
  The tools that are available for the model.
839
861
  */
840
- tools?: Array<LanguageModelV2FunctionTool | LanguageModelV2ProviderDefinedTool>;
862
+ tools?: Array<LanguageModelV2FunctionTool | LanguageModelV2ProviderDefinedClientTool | LanguageModelV2ProviderDefinedServerTool>;
841
863
  /**
842
864
  Specifies how the tool should be selected. Defaults to 'auto'.
843
865
  */
@@ -873,7 +895,7 @@ type LanguageModelV2CallWarning = {
873
895
  details?: string;
874
896
  } | {
875
897
  type: 'unsupported-tool';
876
- tool: LanguageModelV2FunctionTool | LanguageModelV2ProviderDefinedTool;
898
+ tool: LanguageModelV2FunctionTool | LanguageModelV2ProviderDefinedClientTool | LanguageModelV2ProviderDefinedServerTool;
877
899
  details?: string;
878
900
  } | {
879
901
  type: 'other';
@@ -992,7 +1014,7 @@ type LanguageModelV2ToolCall = {
992
1014
  Stringified JSON object with the tool call arguments. Must match the
993
1015
  parameters schema of the tool.
994
1016
  */
995
- args: string;
1017
+ input: string;
996
1018
  };
997
1019
 
998
1020
  type LanguageModelV2Content = LanguageModelV2Text | LanguageModelV2Reasoning | LanguageModelV2File | LanguageModelV2Source | LanguageModelV2ToolCall;
@@ -1031,7 +1053,7 @@ type LanguageModelV2ToolCallDelta = {
1031
1053
  toolCallType: 'function';
1032
1054
  toolCallId: string;
1033
1055
  toolName: string;
1034
- argsTextDelta: string;
1056
+ inputTextDelta: string;
1035
1057
  };
1036
1058
 
1037
1059
  /**
@@ -2029,7 +2051,7 @@ be returned as binary data.
2029
2051
  toolCallType: 'function';
2030
2052
  toolCallId: string;
2031
2053
  toolName: string;
2032
- argsTextDelta: string;
2054
+ inputTextDelta: string;
2033
2055
  } | {
2034
2056
  type: 'response-metadata';
2035
2057
  id?: string;
@@ -2433,4 +2455,4 @@ interface ProviderV2 {
2433
2455
  imageModel(modelId: string): ImageModelV2;
2434
2456
  }
2435
2457
 
2436
- export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, type ImageModelV2ProviderMetadata, 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 LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, 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 SharedV2Headers, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SpeechModelV1, type SpeechModelV1CallOptions, type SpeechModelV1CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV1, type TranscriptionModelV1CallOptions, type TranscriptionModelV1CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
2458
+ export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, type ImageModelV2ProviderMetadata, 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 LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedClientTool, type LanguageModelV2ProviderDefinedServerTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, 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 SharedV2Headers, 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
@@ -555,7 +555,7 @@ type LanguageModelV2FunctionTool = {
555
555
  The parameters that the tool expects. The language model uses this to
556
556
  understand the tool's input requirements and to provide matching suggestions.
557
557
  */
558
- parameters: JSONSchema7;
558
+ inputSchema: JSONSchema7;
559
559
  };
560
560
 
561
561
  /**
@@ -669,7 +669,7 @@ interface LanguageModelV2ToolCallPart {
669
669
  /**
670
670
  Arguments of the tool call. This is a JSON-serializable object that matches the tool's input schema.
671
671
  */
672
- args: unknown;
672
+ input: unknown;
673
673
  /**
674
674
  * Additional provider-specific options. They are passed through
675
675
  * to the provider from the AI SDK and enable provider-specific
@@ -693,7 +693,7 @@ interface LanguageModelV2ToolResultPart {
693
693
  /**
694
694
  Result of the tool call. This is a JSON-serializable object.
695
695
  */
696
- result: unknown;
696
+ output: unknown;
697
697
  /**
698
698
  Optional flag if the result is an error or an error message.
699
699
  */
@@ -732,11 +732,33 @@ IANA media type of the image.
732
732
  /**
733
733
  The configuration of a tool that is defined by the provider.
734
734
  */
735
- type LanguageModelV2ProviderDefinedTool = {
735
+ type LanguageModelV2ProviderDefinedClientTool = {
736
736
  /**
737
- The type of the tool (always 'provider-defined').
737
+ The type of the tool (always 'provider-defined-client').
738
738
  */
739
- type: 'provider-defined';
739
+ type: 'provider-defined-client';
740
+ /**
741
+ The ID of the tool. Should follow the format `<provider-name>.<tool-name>`.
742
+ */
743
+ id: `${string}.${string}`;
744
+ /**
745
+ The name of the tool. Unique within this model call.
746
+ */
747
+ name: string;
748
+ /**
749
+ The arguments for configuring the tool. Must match the expected arguments defined by the provider for this tool.
750
+ */
751
+ args: Record<string, unknown>;
752
+ };
753
+
754
+ /**
755
+ The configuration of a server-side tool that is defined and executed by the provider.
756
+ */
757
+ type LanguageModelV2ProviderDefinedServerTool = {
758
+ /**
759
+ The type of the tool (always 'provider-defined-server').
760
+ */
761
+ type: 'provider-defined-server';
740
762
  /**
741
763
  The ID of the tool. Should follow the format `<provider-name>.<tool-name>`.
742
764
  */
@@ -837,7 +859,7 @@ type LanguageModelV2CallOptions = {
837
859
  /**
838
860
  The tools that are available for the model.
839
861
  */
840
- tools?: Array<LanguageModelV2FunctionTool | LanguageModelV2ProviderDefinedTool>;
862
+ tools?: Array<LanguageModelV2FunctionTool | LanguageModelV2ProviderDefinedClientTool | LanguageModelV2ProviderDefinedServerTool>;
841
863
  /**
842
864
  Specifies how the tool should be selected. Defaults to 'auto'.
843
865
  */
@@ -873,7 +895,7 @@ type LanguageModelV2CallWarning = {
873
895
  details?: string;
874
896
  } | {
875
897
  type: 'unsupported-tool';
876
- tool: LanguageModelV2FunctionTool | LanguageModelV2ProviderDefinedTool;
898
+ tool: LanguageModelV2FunctionTool | LanguageModelV2ProviderDefinedClientTool | LanguageModelV2ProviderDefinedServerTool;
877
899
  details?: string;
878
900
  } | {
879
901
  type: 'other';
@@ -992,7 +1014,7 @@ type LanguageModelV2ToolCall = {
992
1014
  Stringified JSON object with the tool call arguments. Must match the
993
1015
  parameters schema of the tool.
994
1016
  */
995
- args: string;
1017
+ input: string;
996
1018
  };
997
1019
 
998
1020
  type LanguageModelV2Content = LanguageModelV2Text | LanguageModelV2Reasoning | LanguageModelV2File | LanguageModelV2Source | LanguageModelV2ToolCall;
@@ -1031,7 +1053,7 @@ type LanguageModelV2ToolCallDelta = {
1031
1053
  toolCallType: 'function';
1032
1054
  toolCallId: string;
1033
1055
  toolName: string;
1034
- argsTextDelta: string;
1056
+ inputTextDelta: string;
1035
1057
  };
1036
1058
 
1037
1059
  /**
@@ -2029,7 +2051,7 @@ be returned as binary data.
2029
2051
  toolCallType: 'function';
2030
2052
  toolCallId: string;
2031
2053
  toolName: string;
2032
- argsTextDelta: string;
2054
+ inputTextDelta: string;
2033
2055
  } | {
2034
2056
  type: 'response-metadata';
2035
2057
  id?: string;
@@ -2433,4 +2455,4 @@ interface ProviderV2 {
2433
2455
  imageModel(modelId: string): ImageModelV2;
2434
2456
  }
2435
2457
 
2436
- export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, type ImageModelV2ProviderMetadata, 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 LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, 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 SharedV2Headers, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SpeechModelV1, type SpeechModelV1CallOptions, type SpeechModelV1CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV1, type TranscriptionModelV1CallOptions, type TranscriptionModelV1CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
2458
+ export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, type ImageModelV2ProviderMetadata, 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 LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedClientTool, type LanguageModelV2ProviderDefinedServerTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, 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 SharedV2Headers, 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-alpha.13",
3
+ "version": "2.0.0-alpha.15",
4
4
  "license": "Apache-2.0",
5
5
  "sideEffects": false,
6
6
  "main": "./dist/index.js",