@ai-sdk/anthropic 2.0.107 → 2.0.109
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 +19 -0
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +43 -13
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +43 -13
- package/dist/index.mjs.map +1 -1
- package/dist/internal/index.d.mts +6 -1
- package/dist/internal/index.d.ts +6 -1
- package/dist/internal/index.js +42 -12
- package/dist/internal/index.js.map +1 -1
- package/dist/internal/index.mjs +42 -12
- package/dist/internal/index.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -2,7 +2,7 @@ import { LanguageModelV2, JSONSchema7, SharedV2ProviderMetadata, LanguageModelV2
|
|
|
2
2
|
import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
|
|
3
3
|
import { Resolvable, FetchFunction } from '@ai-sdk/provider-utils';
|
|
4
4
|
|
|
5
|
-
type AnthropicMessagesModelId = 'claude-3-5-haiku-20241022' | 'claude-3-5-haiku-latest' | 'claude-3-7-sonnet-20250219' | 'claude-3-7-sonnet-latest' | 'claude-3-haiku-20240307' | 'claude-haiku-4-5-20251001' | 'claude-haiku-4-5' | 'claude-opus-4-0' | 'claude-opus-4-1-20250805' | 'claude-opus-4-1' | 'claude-opus-4-20250514' | 'claude-opus-4-5' | 'claude-opus-4-5-20251101' | 'claude-sonnet-4-0' | 'claude-sonnet-4-20250514' | 'claude-sonnet-4-5-20250929' | 'claude-sonnet-4-5' | 'claude-sonnet-4-6' | 'claude-opus-4-6' | 'claude-opus-4-7' | 'claude-opus-4-8' | 'claude-opus-5' | 'claude-opus-5-5' | 'claude-fable-5' | 'claude-fable-5-1' | 'claude-sonnet-5' | 'claude-sonnet-5-5' | (string & {});
|
|
5
|
+
type AnthropicMessagesModelId = 'claude-3-5-haiku-20241022' | 'claude-3-5-haiku-latest' | 'claude-3-7-sonnet-20250219' | 'claude-3-7-sonnet-latest' | 'claude-3-haiku-20240307' | 'claude-haiku-4-5-20251001' | 'claude-haiku-4-5' | 'claude-haiku-5-5' | 'claude-opus-4-0' | 'claude-opus-4-1-20250805' | 'claude-opus-4-1' | 'claude-opus-4-20250514' | 'claude-opus-4-5' | 'claude-opus-4-5-20251101' | 'claude-sonnet-4-0' | 'claude-sonnet-4-20250514' | 'claude-sonnet-4-5-20250929' | 'claude-sonnet-4-5' | 'claude-sonnet-4-6' | 'claude-opus-4-6' | 'claude-opus-4-7' | 'claude-opus-4-8' | 'claude-opus-5' | 'claude-opus-5-5' | 'claude-fable-5' | 'claude-fable-5-1' | 'claude-sonnet-5' | 'claude-sonnet-5-5' | (string & {});
|
|
6
6
|
|
|
7
7
|
type AnthropicMessagesConfig = {
|
|
8
8
|
provider: string;
|
|
@@ -48,6 +48,11 @@ declare function getModelCapabilities(modelId: string): {
|
|
|
48
48
|
* are rejected with a 400.
|
|
49
49
|
*/
|
|
50
50
|
rejectsThinkingDisabled: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Budget-based thinking (`thinking.type` `enabled` with `budget_tokens`) is
|
|
53
|
+
* rejected with a 400. Only adaptive thinking is supported.
|
|
54
|
+
*/
|
|
55
|
+
rejectsBudgetThinking: boolean;
|
|
51
56
|
/**
|
|
52
57
|
* Forced tool use (`tool_choice` `any` or a named tool) is rejected with a 400.
|
|
53
58
|
*/
|
package/dist/internal/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { LanguageModelV2, JSONSchema7, SharedV2ProviderMetadata, LanguageModelV2
|
|
|
2
2
|
import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
|
|
3
3
|
import { Resolvable, FetchFunction } from '@ai-sdk/provider-utils';
|
|
4
4
|
|
|
5
|
-
type AnthropicMessagesModelId = 'claude-3-5-haiku-20241022' | 'claude-3-5-haiku-latest' | 'claude-3-7-sonnet-20250219' | 'claude-3-7-sonnet-latest' | 'claude-3-haiku-20240307' | 'claude-haiku-4-5-20251001' | 'claude-haiku-4-5' | 'claude-opus-4-0' | 'claude-opus-4-1-20250805' | 'claude-opus-4-1' | 'claude-opus-4-20250514' | 'claude-opus-4-5' | 'claude-opus-4-5-20251101' | 'claude-sonnet-4-0' | 'claude-sonnet-4-20250514' | 'claude-sonnet-4-5-20250929' | 'claude-sonnet-4-5' | 'claude-sonnet-4-6' | 'claude-opus-4-6' | 'claude-opus-4-7' | 'claude-opus-4-8' | 'claude-opus-5' | 'claude-opus-5-5' | 'claude-fable-5' | 'claude-fable-5-1' | 'claude-sonnet-5' | 'claude-sonnet-5-5' | (string & {});
|
|
5
|
+
type AnthropicMessagesModelId = 'claude-3-5-haiku-20241022' | 'claude-3-5-haiku-latest' | 'claude-3-7-sonnet-20250219' | 'claude-3-7-sonnet-latest' | 'claude-3-haiku-20240307' | 'claude-haiku-4-5-20251001' | 'claude-haiku-4-5' | 'claude-haiku-5-5' | 'claude-opus-4-0' | 'claude-opus-4-1-20250805' | 'claude-opus-4-1' | 'claude-opus-4-20250514' | 'claude-opus-4-5' | 'claude-opus-4-5-20251101' | 'claude-sonnet-4-0' | 'claude-sonnet-4-20250514' | 'claude-sonnet-4-5-20250929' | 'claude-sonnet-4-5' | 'claude-sonnet-4-6' | 'claude-opus-4-6' | 'claude-opus-4-7' | 'claude-opus-4-8' | 'claude-opus-5' | 'claude-opus-5-5' | 'claude-fable-5' | 'claude-fable-5-1' | 'claude-sonnet-5' | 'claude-sonnet-5-5' | (string & {});
|
|
6
6
|
|
|
7
7
|
type AnthropicMessagesConfig = {
|
|
8
8
|
provider: string;
|
|
@@ -48,6 +48,11 @@ declare function getModelCapabilities(modelId: string): {
|
|
|
48
48
|
* are rejected with a 400.
|
|
49
49
|
*/
|
|
50
50
|
rejectsThinkingDisabled: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Budget-based thinking (`thinking.type` `enabled` with `budget_tokens`) is
|
|
53
|
+
* rejected with a 400. Only adaptive thinking is supported.
|
|
54
|
+
*/
|
|
55
|
+
rejectsBudgetThinking: boolean;
|
|
51
56
|
/**
|
|
52
57
|
* Forced tool use (`tool_choice` `any` or a named tool) is rejected with a 400.
|
|
53
58
|
*/
|
package/dist/internal/index.js
CHANGED
|
@@ -2644,6 +2644,7 @@ var AnthropicMessagesLanguageModel = class {
|
|
|
2644
2644
|
rejectsSamplingParameters,
|
|
2645
2645
|
rejectsThinkingDisabledAboveHighEffort,
|
|
2646
2646
|
rejectsThinkingDisabled,
|
|
2647
|
+
rejectsBudgetThinking,
|
|
2647
2648
|
rejectsForcedToolUse,
|
|
2648
2649
|
supportsBetweenToolsThinking,
|
|
2649
2650
|
isKnownModel
|
|
@@ -2730,20 +2731,22 @@ var AnthropicMessagesLanguageModel = class {
|
|
|
2730
2731
|
details: `thinking cannot be disabled for ${this.modelId}; it always uses adaptive thinking. The thinking setting has been removed. Lower 'effort' to reduce thinking.`
|
|
2731
2732
|
});
|
|
2732
2733
|
anthropicOptions.thinking = void 0;
|
|
2733
|
-
} else if ("type" in thinking && thinking.type === "enabled") {
|
|
2734
|
-
warnings.push({
|
|
2735
|
-
type: "unsupported-setting",
|
|
2736
|
-
setting: "providerOptions.anthropic.thinking",
|
|
2737
|
-
details: `budget-based thinking is not supported by ${this.modelId}; it always uses adaptive thinking. Using adaptive thinking instead. Use 'effort' to control how much the model thinks.`
|
|
2738
|
-
});
|
|
2739
|
-
anthropicOptions.thinking = {
|
|
2740
|
-
type: "adaptive",
|
|
2741
|
-
...thinking.blockBinding != null && {
|
|
2742
|
-
blockBinding: thinking.blockBinding
|
|
2743
|
-
}
|
|
2744
|
-
};
|
|
2745
2734
|
}
|
|
2746
2735
|
}
|
|
2736
|
+
const budgetThinking = anthropicOptions == null ? void 0 : anthropicOptions.thinking;
|
|
2737
|
+
if (anthropicOptions != null && rejectsBudgetThinking && budgetThinking != null && "type" in budgetThinking && budgetThinking.type === "enabled") {
|
|
2738
|
+
warnings.push({
|
|
2739
|
+
type: "unsupported-setting",
|
|
2740
|
+
setting: "providerOptions.anthropic.thinking",
|
|
2741
|
+
details: rejectsThinkingDisabled ? `budget-based thinking is not supported by ${this.modelId}; it always uses adaptive thinking. Using adaptive thinking instead. Use 'effort' to control how much the model thinks.` : `budget-based thinking is not supported by ${this.modelId}. Using adaptive thinking instead. Use 'effort' to control how much the model thinks.`
|
|
2742
|
+
});
|
|
2743
|
+
anthropicOptions.thinking = {
|
|
2744
|
+
type: "adaptive",
|
|
2745
|
+
...budgetThinking.blockBinding != null && {
|
|
2746
|
+
blockBinding: budgetThinking.blockBinding
|
|
2747
|
+
}
|
|
2748
|
+
};
|
|
2749
|
+
}
|
|
2747
2750
|
const thinkingOptions = anthropicOptions == null ? void 0 : anthropicOptions.thinking;
|
|
2748
2751
|
const thinkingType = thinkingOptions != null && "type" in thinkingOptions ? thinkingOptions.type : void 0;
|
|
2749
2752
|
if (rejectsThinkingDisabledAboveHighEffort && thinkingType === "disabled" && anthropicOptions != null && (anthropicOptions.effort === "xhigh" || anthropicOptions.effort === "max")) {
|
|
@@ -4134,6 +4137,7 @@ function getModelCapabilities(modelId) {
|
|
|
4134
4137
|
rejectsSamplingParameters: true,
|
|
4135
4138
|
rejectsThinkingDisabledAboveHighEffort: true,
|
|
4136
4139
|
rejectsThinkingDisabled: true,
|
|
4140
|
+
rejectsBudgetThinking: true,
|
|
4137
4141
|
rejectsForcedToolUse: true,
|
|
4138
4142
|
supportsBetweenToolsThinking: true,
|
|
4139
4143
|
isKnownModel: true
|
|
@@ -4145,10 +4149,23 @@ function getModelCapabilities(modelId) {
|
|
|
4145
4149
|
rejectsSamplingParameters: true,
|
|
4146
4150
|
rejectsThinkingDisabledAboveHighEffort: true,
|
|
4147
4151
|
rejectsThinkingDisabled: true,
|
|
4152
|
+
rejectsBudgetThinking: true,
|
|
4148
4153
|
rejectsForcedToolUse: true,
|
|
4149
4154
|
supportsBetweenToolsThinking: false,
|
|
4150
4155
|
isKnownModel: true
|
|
4151
4156
|
};
|
|
4157
|
+
} else if (modelId.includes("claude-haiku-5-5")) {
|
|
4158
|
+
return {
|
|
4159
|
+
maxOutputTokens: 128e3,
|
|
4160
|
+
supportsStructuredOutput: true,
|
|
4161
|
+
rejectsSamplingParameters: true,
|
|
4162
|
+
rejectsThinkingDisabledAboveHighEffort: true,
|
|
4163
|
+
rejectsThinkingDisabled: false,
|
|
4164
|
+
rejectsBudgetThinking: true,
|
|
4165
|
+
rejectsForcedToolUse: false,
|
|
4166
|
+
supportsBetweenToolsThinking: false,
|
|
4167
|
+
isKnownModel: true
|
|
4168
|
+
};
|
|
4152
4169
|
} else if (modelId.includes("claude-opus-5")) {
|
|
4153
4170
|
return {
|
|
4154
4171
|
maxOutputTokens: 128e3,
|
|
@@ -4156,6 +4173,7 @@ function getModelCapabilities(modelId) {
|
|
|
4156
4173
|
rejectsSamplingParameters: true,
|
|
4157
4174
|
rejectsThinkingDisabledAboveHighEffort: true,
|
|
4158
4175
|
rejectsThinkingDisabled: false,
|
|
4176
|
+
rejectsBudgetThinking: false,
|
|
4159
4177
|
rejectsForcedToolUse: false,
|
|
4160
4178
|
supportsBetweenToolsThinking: false,
|
|
4161
4179
|
isKnownModel: true
|
|
@@ -4167,6 +4185,7 @@ function getModelCapabilities(modelId) {
|
|
|
4167
4185
|
rejectsSamplingParameters: true,
|
|
4168
4186
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4169
4187
|
rejectsThinkingDisabled: true,
|
|
4188
|
+
rejectsBudgetThinking: true,
|
|
4170
4189
|
rejectsForcedToolUse: true,
|
|
4171
4190
|
supportsBetweenToolsThinking: false,
|
|
4172
4191
|
isKnownModel: true
|
|
@@ -4178,6 +4197,7 @@ function getModelCapabilities(modelId) {
|
|
|
4178
4197
|
rejectsSamplingParameters: true,
|
|
4179
4198
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4180
4199
|
rejectsThinkingDisabled: true,
|
|
4200
|
+
rejectsBudgetThinking: true,
|
|
4181
4201
|
rejectsForcedToolUse: false,
|
|
4182
4202
|
supportsBetweenToolsThinking: false,
|
|
4183
4203
|
isKnownModel: true
|
|
@@ -4189,6 +4209,7 @@ function getModelCapabilities(modelId) {
|
|
|
4189
4209
|
rejectsSamplingParameters: true,
|
|
4190
4210
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4191
4211
|
rejectsThinkingDisabled: false,
|
|
4212
|
+
rejectsBudgetThinking: false,
|
|
4192
4213
|
rejectsForcedToolUse: false,
|
|
4193
4214
|
supportsBetweenToolsThinking: false,
|
|
4194
4215
|
isKnownModel: true
|
|
@@ -4200,6 +4221,7 @@ function getModelCapabilities(modelId) {
|
|
|
4200
4221
|
rejectsSamplingParameters: false,
|
|
4201
4222
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4202
4223
|
rejectsThinkingDisabled: false,
|
|
4224
|
+
rejectsBudgetThinking: false,
|
|
4203
4225
|
rejectsForcedToolUse: false,
|
|
4204
4226
|
supportsBetweenToolsThinking: false,
|
|
4205
4227
|
isKnownModel: true
|
|
@@ -4211,6 +4233,7 @@ function getModelCapabilities(modelId) {
|
|
|
4211
4233
|
rejectsSamplingParameters: false,
|
|
4212
4234
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4213
4235
|
rejectsThinkingDisabled: false,
|
|
4236
|
+
rejectsBudgetThinking: false,
|
|
4214
4237
|
rejectsForcedToolUse: false,
|
|
4215
4238
|
supportsBetweenToolsThinking: false,
|
|
4216
4239
|
isKnownModel: true
|
|
@@ -4222,6 +4245,7 @@ function getModelCapabilities(modelId) {
|
|
|
4222
4245
|
rejectsSamplingParameters: false,
|
|
4223
4246
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4224
4247
|
rejectsThinkingDisabled: false,
|
|
4248
|
+
rejectsBudgetThinking: false,
|
|
4225
4249
|
rejectsForcedToolUse: false,
|
|
4226
4250
|
supportsBetweenToolsThinking: false,
|
|
4227
4251
|
isKnownModel: true
|
|
@@ -4233,6 +4257,7 @@ function getModelCapabilities(modelId) {
|
|
|
4233
4257
|
rejectsSamplingParameters: false,
|
|
4234
4258
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4235
4259
|
rejectsThinkingDisabled: false,
|
|
4260
|
+
rejectsBudgetThinking: false,
|
|
4236
4261
|
rejectsForcedToolUse: false,
|
|
4237
4262
|
supportsBetweenToolsThinking: false,
|
|
4238
4263
|
isKnownModel: true
|
|
@@ -4244,6 +4269,7 @@ function getModelCapabilities(modelId) {
|
|
|
4244
4269
|
rejectsSamplingParameters: false,
|
|
4245
4270
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4246
4271
|
rejectsThinkingDisabled: false,
|
|
4272
|
+
rejectsBudgetThinking: false,
|
|
4247
4273
|
rejectsForcedToolUse: false,
|
|
4248
4274
|
supportsBetweenToolsThinking: false,
|
|
4249
4275
|
isKnownModel: true
|
|
@@ -4255,6 +4281,7 @@ function getModelCapabilities(modelId) {
|
|
|
4255
4281
|
rejectsSamplingParameters: false,
|
|
4256
4282
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4257
4283
|
rejectsThinkingDisabled: false,
|
|
4284
|
+
rejectsBudgetThinking: false,
|
|
4258
4285
|
rejectsForcedToolUse: false,
|
|
4259
4286
|
supportsBetweenToolsThinking: false,
|
|
4260
4287
|
isKnownModel: true
|
|
@@ -4266,6 +4293,7 @@ function getModelCapabilities(modelId) {
|
|
|
4266
4293
|
rejectsSamplingParameters: false,
|
|
4267
4294
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4268
4295
|
rejectsThinkingDisabled: false,
|
|
4296
|
+
rejectsBudgetThinking: false,
|
|
4269
4297
|
rejectsForcedToolUse: false,
|
|
4270
4298
|
supportsBetweenToolsThinking: false,
|
|
4271
4299
|
isKnownModel: false
|
|
@@ -4277,6 +4305,7 @@ function getModelCapabilities(modelId) {
|
|
|
4277
4305
|
rejectsSamplingParameters: true,
|
|
4278
4306
|
rejectsThinkingDisabledAboveHighEffort: true,
|
|
4279
4307
|
rejectsThinkingDisabled: false,
|
|
4308
|
+
rejectsBudgetThinking: false,
|
|
4280
4309
|
rejectsForcedToolUse: false,
|
|
4281
4310
|
supportsBetweenToolsThinking: false,
|
|
4282
4311
|
isKnownModel: false
|
|
@@ -4288,6 +4317,7 @@ function getModelCapabilities(modelId) {
|
|
|
4288
4317
|
rejectsSamplingParameters: false,
|
|
4289
4318
|
rejectsThinkingDisabledAboveHighEffort: false,
|
|
4290
4319
|
rejectsThinkingDisabled: false,
|
|
4320
|
+
rejectsBudgetThinking: false,
|
|
4291
4321
|
rejectsForcedToolUse: false,
|
|
4292
4322
|
supportsBetweenToolsThinking: false,
|
|
4293
4323
|
isKnownModel: false
|