@ai-sdk/amazon-bedrock 5.0.14 → 5.0.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 +12 -0
- package/dist/anthropic/index.js +1 -1
- package/dist/index.d.ts +15 -2
- package/dist/index.js +80 -35
- package/dist/index.js.map +1 -1
- package/dist/mantle/index.cjs +1 -1
- package/dist/mantle/index.js +1 -1
- package/docs/08-amazon-bedrock.mdx +108 -133
- package/package.json +5 -5
- package/src/amazon-bedrock-image-model-options.ts +44 -0
- package/src/amazon-bedrock-image-model.ts +14 -2
- package/src/index.ts +1 -0
package/dist/mantle/index.cjs
CHANGED
|
@@ -35,7 +35,7 @@ var import_provider_utils = require("@ai-sdk/provider-utils");
|
|
|
35
35
|
var import_aws4fetch = require("aws4fetch");
|
|
36
36
|
|
|
37
37
|
// src/version.ts
|
|
38
|
-
var VERSION = true ? "5.0.
|
|
38
|
+
var VERSION = true ? "5.0.15" : "0.0.0-test";
|
|
39
39
|
|
|
40
40
|
// src/amazon-bedrock-sigv4-fetch.ts
|
|
41
41
|
function createSigV4FetchFunction(getCredentials, fetch, service = "bedrock") {
|
package/dist/mantle/index.js
CHANGED
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
import { AwsV4Signer } from "aws4fetch";
|
|
24
24
|
|
|
25
25
|
// src/version.ts
|
|
26
|
-
var VERSION = true ? "5.0.
|
|
26
|
+
var VERSION = true ? "5.0.15" : "0.0.0-test";
|
|
27
27
|
|
|
28
28
|
// src/amazon-bedrock-sigv4-fetch.ts
|
|
29
29
|
function createSigV4FetchFunction(getCredentials, fetch, service = "bedrock") {
|
|
@@ -11,21 +11,7 @@ The Amazon Bedrock provider for the [AI SDK](/docs) contains language model supp
|
|
|
11
11
|
|
|
12
12
|
The Bedrock provider is available in the `@ai-sdk/amazon-bedrock` module. You can install it with
|
|
13
13
|
|
|
14
|
-
<
|
|
15
|
-
<Tab>
|
|
16
|
-
<Snippet text="pnpm add @ai-sdk/amazon-bedrock" dark />
|
|
17
|
-
</Tab>
|
|
18
|
-
<Tab>
|
|
19
|
-
<Snippet text="npm install @ai-sdk/amazon-bedrock" dark />
|
|
20
|
-
</Tab>
|
|
21
|
-
<Tab>
|
|
22
|
-
<Snippet text="yarn add @ai-sdk/amazon-bedrock" dark />
|
|
23
|
-
</Tab>
|
|
24
|
-
|
|
25
|
-
<Tab>
|
|
26
|
-
<Snippet text="bun add @ai-sdk/amazon-bedrock" dark />
|
|
27
|
-
</Tab>
|
|
28
|
-
</Tabs>
|
|
14
|
+
<InstallPackages packages="@ai-sdk/amazon-bedrock" />
|
|
29
15
|
|
|
30
16
|
### Prerequisites
|
|
31
17
|
|
|
@@ -110,21 +96,7 @@ _Usage:_
|
|
|
110
96
|
|
|
111
97
|
`@aws-sdk/credential-providers` package provides a set of credential providers that can be used to create a credential provider chain.
|
|
112
98
|
|
|
113
|
-
<
|
|
114
|
-
<Tab>
|
|
115
|
-
<Snippet text="pnpm add @aws-sdk/credential-providers" dark />
|
|
116
|
-
</Tab>
|
|
117
|
-
<Tab>
|
|
118
|
-
<Snippet text="npm install @aws-sdk/credential-providers" dark />
|
|
119
|
-
</Tab>
|
|
120
|
-
<Tab>
|
|
121
|
-
<Snippet text="yarn add @aws-sdk/credential-providers" dark />
|
|
122
|
-
</Tab>
|
|
123
|
-
|
|
124
|
-
<Tab>
|
|
125
|
-
<Snippet text="bun add @aws-sdk/credential-providers" dark />
|
|
126
|
-
</Tab>
|
|
127
|
-
</Tabs>
|
|
99
|
+
<InstallPackages packages="@aws-sdk/credential-providers" />
|
|
128
100
|
|
|
129
101
|
```ts
|
|
130
102
|
import { createAmazonBedrock } from '@ai-sdk/amazon-bedrock';
|
|
@@ -760,67 +732,67 @@ These tools can be used in conjunction with the `anthropic.claude-3-5-sonnet-202
|
|
|
760
732
|
|
|
761
733
|
### Model Capabilities
|
|
762
734
|
|
|
763
|
-
| Model | Image Input
|
|
764
|
-
| ---------------------------------------------- |
|
|
765
|
-
| `amazon.titan-tg1-large` | <Cross
|
|
766
|
-
| `amazon.titan-text-express-v1` | <Cross
|
|
767
|
-
| `amazon.titan-text-lite-v1` | <Cross
|
|
768
|
-
| `us.amazon.nova-premier-v1:0` | <Check
|
|
769
|
-
| `us.amazon.nova-pro-v1:0` | <Check
|
|
770
|
-
| `us.amazon.nova-lite-v1:0` | <Check
|
|
771
|
-
| `us.amazon.nova-micro-v1:0` | <Cross
|
|
772
|
-
| `anthropic.claude-haiku-4-5-20251001-v1:0` | <Check
|
|
773
|
-
| `anthropic.claude-sonnet-4-20250514-v1:0` | <Check
|
|
774
|
-
| `anthropic.claude-sonnet-4-5-20250929-v1:0` | <Check
|
|
775
|
-
| `anthropic.claude-opus-4-20250514-v1:0` | <Check
|
|
776
|
-
| `anthropic.claude-opus-4-1-20250805-v1:0` | <Check
|
|
777
|
-
| `anthropic.claude-3-5-sonnet-20241022-v2:0` | <Check
|
|
778
|
-
| `anthropic.claude-3-5-sonnet-20240620-v1:0` | <Check
|
|
779
|
-
| `anthropic.claude-3-opus-20240229-v1:0` | <Check
|
|
780
|
-
| `anthropic.claude-3-sonnet-20240229-v1:0` | <Check
|
|
781
|
-
| `anthropic.claude-3-haiku-20240307-v1:0` | <Check
|
|
782
|
-
| `us.anthropic.claude-sonnet-4-20250514-v1:0` | <Check
|
|
783
|
-
| `us.anthropic.claude-sonnet-4-5-20250929-v1:0` | <Check
|
|
784
|
-
| `us.anthropic.claude-opus-4-20250514-v1:0` | <Check
|
|
785
|
-
| `us.anthropic.claude-opus-4-1-20250805-v1:0` | <Check
|
|
786
|
-
| `us.anthropic.claude-3-5-sonnet-20241022-v2:0` | <Check
|
|
787
|
-
| `us.anthropic.claude-3-5-sonnet-20240620-v1:0` | <Check
|
|
788
|
-
| `us.anthropic.claude-3-sonnet-20240229-v1:0` | <Check
|
|
789
|
-
| `us.anthropic.claude-3-opus-20240229-v1:0` | <Check
|
|
790
|
-
| `us.anthropic.claude-3-haiku-20240307-v1:0` | <Check
|
|
791
|
-
| `anthropic.claude-v2` | <Cross
|
|
792
|
-
| `anthropic.claude-v2:1` | <Cross
|
|
793
|
-
| `anthropic.claude-instant-v1` | <Cross
|
|
794
|
-
| `cohere.command-text-v14` | <Cross
|
|
795
|
-
| `cohere.command-light-text-v14` | <Cross
|
|
796
|
-
| `cohere.command-r-v1:0` | <Cross
|
|
797
|
-
| `cohere.command-r-plus-v1:0` | <Cross
|
|
798
|
-
| `us.deepseek.r1-v1:0` | <Cross
|
|
799
|
-
| `meta.llama3-8b-instruct-v1:0` | <Cross
|
|
800
|
-
| `meta.llama3-70b-instruct-v1:0` | <Cross
|
|
801
|
-
| `meta.llama3-1-8b-instruct-v1:0` | <Cross
|
|
802
|
-
| `meta.llama3-1-70b-instruct-v1:0` | <Cross
|
|
803
|
-
| `meta.llama3-1-405b-instruct-v1:0` | <Cross
|
|
804
|
-
| `meta.llama3-2-1b-instruct-v1:0` | <Cross
|
|
805
|
-
| `meta.llama3-2-3b-instruct-v1:0` | <Cross
|
|
806
|
-
| `meta.llama3-2-11b-instruct-v1:0` | <Cross
|
|
807
|
-
| `meta.llama3-2-90b-instruct-v1:0` | <Cross
|
|
808
|
-
| `us.meta.llama3-2-1b-instruct-v1:0` | <Cross
|
|
809
|
-
| `us.meta.llama3-2-3b-instruct-v1:0` | <Cross
|
|
810
|
-
| `us.meta.llama3-2-11b-instruct-v1:0` | <Cross
|
|
811
|
-
| `us.meta.llama3-2-90b-instruct-v1:0` | <Cross
|
|
812
|
-
| `us.meta.llama3-1-8b-instruct-v1:0` | <Cross
|
|
813
|
-
| `us.meta.llama3-1-70b-instruct-v1:0` | <Cross
|
|
814
|
-
| `us.meta.llama3-3-70b-instruct-v1:0` | <Cross
|
|
815
|
-
| `us.meta.llama4-scout-17b-instruct-v1:0` | <Cross
|
|
816
|
-
| `us.meta.llama4-maverick-17b-instruct-v1:0` | <Cross
|
|
817
|
-
| `mistral.mistral-7b-instruct-v0:2` | <Cross
|
|
818
|
-
| `mistral.mixtral-8x7b-instruct-v0:1` | <Cross
|
|
819
|
-
| `mistral.mistral-large-2402-v1:0` | <Cross
|
|
820
|
-
| `mistral.mistral-small-2402-v1:0` | <Cross
|
|
821
|
-
| `us.mistral.pixtral-large-2502-v1:0` | <Check
|
|
822
|
-
| `openai.gpt-oss-120b-1:0` | <Cross
|
|
823
|
-
| `openai.gpt-oss-20b-1:0` | <Cross
|
|
735
|
+
| Model | Image Input | Object Generation | Tool Usage | Tool Streaming |
|
|
736
|
+
| ---------------------------------------------- | ----------- | ----------------- | ---------- | -------------- |
|
|
737
|
+
| `amazon.titan-tg1-large` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
738
|
+
| `amazon.titan-text-express-v1` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
739
|
+
| `amazon.titan-text-lite-v1` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
740
|
+
| `us.amazon.nova-premier-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
741
|
+
| `us.amazon.nova-pro-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
742
|
+
| `us.amazon.nova-lite-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
743
|
+
| `us.amazon.nova-micro-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
744
|
+
| `anthropic.claude-haiku-4-5-20251001-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
745
|
+
| `anthropic.claude-sonnet-4-20250514-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
746
|
+
| `anthropic.claude-sonnet-4-5-20250929-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
747
|
+
| `anthropic.claude-opus-4-20250514-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
748
|
+
| `anthropic.claude-opus-4-1-20250805-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
749
|
+
| `anthropic.claude-3-5-sonnet-20241022-v2:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
750
|
+
| `anthropic.claude-3-5-sonnet-20240620-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
751
|
+
| `anthropic.claude-3-opus-20240229-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
752
|
+
| `anthropic.claude-3-sonnet-20240229-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
753
|
+
| `anthropic.claude-3-haiku-20240307-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
754
|
+
| `us.anthropic.claude-sonnet-4-20250514-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
755
|
+
| `us.anthropic.claude-sonnet-4-5-20250929-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
756
|
+
| `us.anthropic.claude-opus-4-20250514-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
757
|
+
| `us.anthropic.claude-opus-4-1-20250805-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
758
|
+
| `us.anthropic.claude-3-5-sonnet-20241022-v2:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
759
|
+
| `us.anthropic.claude-3-5-sonnet-20240620-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
760
|
+
| `us.anthropic.claude-3-sonnet-20240229-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
761
|
+
| `us.anthropic.claude-3-opus-20240229-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
762
|
+
| `us.anthropic.claude-3-haiku-20240307-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
763
|
+
| `anthropic.claude-v2` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
764
|
+
| `anthropic.claude-v2:1` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
765
|
+
| `anthropic.claude-instant-v1` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
766
|
+
| `cohere.command-text-v14` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
767
|
+
| `cohere.command-light-text-v14` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
768
|
+
| `cohere.command-r-v1:0` | <Cross /> | <Cross /> | <Check /> | <Cross /> |
|
|
769
|
+
| `cohere.command-r-plus-v1:0` | <Cross /> | <Cross /> | <Check /> | <Cross /> |
|
|
770
|
+
| `us.deepseek.r1-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
771
|
+
| `meta.llama3-8b-instruct-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
772
|
+
| `meta.llama3-70b-instruct-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
773
|
+
| `meta.llama3-1-8b-instruct-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
774
|
+
| `meta.llama3-1-70b-instruct-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
775
|
+
| `meta.llama3-1-405b-instruct-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
776
|
+
| `meta.llama3-2-1b-instruct-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
777
|
+
| `meta.llama3-2-3b-instruct-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
778
|
+
| `meta.llama3-2-11b-instruct-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
779
|
+
| `meta.llama3-2-90b-instruct-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
780
|
+
| `us.meta.llama3-2-1b-instruct-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
781
|
+
| `us.meta.llama3-2-3b-instruct-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
782
|
+
| `us.meta.llama3-2-11b-instruct-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
783
|
+
| `us.meta.llama3-2-90b-instruct-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
784
|
+
| `us.meta.llama3-1-8b-instruct-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
785
|
+
| `us.meta.llama3-1-70b-instruct-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
786
|
+
| `us.meta.llama3-3-70b-instruct-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
787
|
+
| `us.meta.llama4-scout-17b-instruct-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
788
|
+
| `us.meta.llama4-maverick-17b-instruct-v1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
789
|
+
| `mistral.mistral-7b-instruct-v0:2` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
790
|
+
| `mistral.mixtral-8x7b-instruct-v0:1` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
791
|
+
| `mistral.mistral-large-2402-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
792
|
+
| `mistral.mistral-small-2402-v1:0` | <Cross /> | <Cross /> | <Cross /> | <Cross /> |
|
|
793
|
+
| `us.mistral.pixtral-large-2502-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
794
|
+
| `openai.gpt-oss-120b-1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
795
|
+
| `openai.gpt-oss-20b-1:0` | <Cross /> | <Check /> | <Check /> | <Check /> |
|
|
824
796
|
|
|
825
797
|
<Note>
|
|
826
798
|
The table above lists popular models. Please see the [Amazon Bedrock
|
|
@@ -939,13 +911,13 @@ The following provider options are available for Cohere embedding models:
|
|
|
939
911
|
|
|
940
912
|
### Model Capabilities
|
|
941
913
|
|
|
942
|
-
| Model | Default Dimensions | Custom Dimensions
|
|
943
|
-
| ------------------------------ | ------------------ |
|
|
944
|
-
| `amazon.titan-embed-text-v1` | 1536 | <Cross
|
|
945
|
-
| `amazon.titan-embed-text-v2:0` | 1024 | <Check
|
|
946
|
-
| `amazon.nova-embed-text-v2:0` | 1024 | <Check
|
|
947
|
-
| `cohere.embed-english-v3` | 1024 | <Cross
|
|
948
|
-
| `cohere.embed-multilingual-v3` | 1024 | <Cross
|
|
914
|
+
| Model | Default Dimensions | Custom Dimensions |
|
|
915
|
+
| ------------------------------ | ------------------ | ----------------- |
|
|
916
|
+
| `amazon.titan-embed-text-v1` | 1536 | <Cross /> |
|
|
917
|
+
| `amazon.titan-embed-text-v2:0` | 1024 | <Check /> |
|
|
918
|
+
| `amazon.nova-embed-text-v2:0` | 1024 | <Check /> |
|
|
919
|
+
| `cohere.embed-english-v3` | 1024 | <Cross /> |
|
|
920
|
+
| `cohere.embed-multilingual-v3` | 1024 | <Cross /> |
|
|
949
921
|
|
|
950
922
|
## Reranking Models
|
|
951
923
|
|
|
@@ -1048,10 +1020,13 @@ const { image } = await generateImage({
|
|
|
1048
1020
|
});
|
|
1049
1021
|
```
|
|
1050
1022
|
|
|
1051
|
-
You can also pass the `providerOptions` object to the `generateImage` function to customize the generation behavior:
|
|
1023
|
+
You can also pass the `providerOptions` object to the `generateImage` function to customize the generation behavior. Use the `AmazonBedrockImageModelOptions` type to validate Amazon Bedrock image provider options. The preferred provider option key is `providerOptions.amazonBedrock`; the legacy `providerOptions.bedrock` key remains supported for backward compatibility:
|
|
1052
1024
|
|
|
1053
1025
|
```ts
|
|
1054
|
-
import {
|
|
1026
|
+
import {
|
|
1027
|
+
amazonBedrock,
|
|
1028
|
+
type AmazonBedrockImageModelOptions,
|
|
1029
|
+
} from '@ai-sdk/amazon-bedrock';
|
|
1055
1030
|
import { generateImage } from 'ai';
|
|
1056
1031
|
|
|
1057
1032
|
const { image } = await generateImage({
|
|
@@ -1060,12 +1035,12 @@ const { image } = await generateImage({
|
|
|
1060
1035
|
size: '512x512',
|
|
1061
1036
|
seed: 42,
|
|
1062
1037
|
providerOptions: {
|
|
1063
|
-
|
|
1038
|
+
amazonBedrock: {
|
|
1064
1039
|
quality: 'premium',
|
|
1065
1040
|
negativeText: 'blurry, low quality',
|
|
1066
1041
|
cfgScale: 7.5,
|
|
1067
1042
|
style: 'PHOTOREALISM',
|
|
1068
|
-
},
|
|
1043
|
+
} satisfies AmazonBedrockImageModelOptions,
|
|
1069
1044
|
},
|
|
1070
1045
|
});
|
|
1071
1046
|
```
|
|
@@ -1114,18 +1089,18 @@ const { images } = await generateImage({
|
|
|
1114
1089
|
images: [imageBuffer],
|
|
1115
1090
|
},
|
|
1116
1091
|
providerOptions: {
|
|
1117
|
-
|
|
1092
|
+
amazonBedrock: {
|
|
1118
1093
|
taskType: 'IMAGE_VARIATION',
|
|
1119
|
-
similarityStrength: 0.7, // 0-1, higher = closer to original
|
|
1094
|
+
similarityStrength: 0.7, // 0.2-1.0, higher = closer to original
|
|
1120
1095
|
negativeText: 'bad quality, low resolution',
|
|
1121
|
-
},
|
|
1096
|
+
} satisfies AmazonBedrockImageModelOptions,
|
|
1122
1097
|
},
|
|
1123
1098
|
});
|
|
1124
1099
|
```
|
|
1125
1100
|
|
|
1126
1101
|
- **similarityStrength** _number_
|
|
1127
1102
|
|
|
1128
|
-
Controls how similar the output is to the input image. Values range from 0 to 1, where higher values produce results closer to the original.
|
|
1103
|
+
Controls how similar the output is to the input image. Values range from 0.2 to 1.0, where higher values produce results closer to the original.
|
|
1129
1104
|
|
|
1130
1105
|
#### Inpainting
|
|
1131
1106
|
|
|
@@ -1143,9 +1118,9 @@ const { images } = await generateImage({
|
|
|
1143
1118
|
images: [imageBuffer],
|
|
1144
1119
|
},
|
|
1145
1120
|
providerOptions: {
|
|
1146
|
-
|
|
1121
|
+
amazonBedrock: {
|
|
1147
1122
|
maskPrompt: 'cat', // Describe what to replace
|
|
1148
|
-
},
|
|
1123
|
+
} satisfies AmazonBedrockImageModelOptions,
|
|
1149
1124
|
},
|
|
1150
1125
|
seed: 42,
|
|
1151
1126
|
});
|
|
@@ -1185,11 +1160,11 @@ const { images } = await generateImage({
|
|
|
1185
1160
|
images: [imageBuffer],
|
|
1186
1161
|
},
|
|
1187
1162
|
providerOptions: {
|
|
1188
|
-
|
|
1163
|
+
amazonBedrock: {
|
|
1189
1164
|
taskType: 'OUTPAINTING',
|
|
1190
1165
|
maskPrompt: 'background',
|
|
1191
1166
|
outPaintingMode: 'DEFAULT', // or 'PRECISE'
|
|
1192
|
-
},
|
|
1167
|
+
} satisfies AmazonBedrockImageModelOptions,
|
|
1193
1168
|
},
|
|
1194
1169
|
});
|
|
1195
1170
|
```
|
|
@@ -1211,9 +1186,9 @@ const { images } = await generateImage({
|
|
|
1211
1186
|
images: [imageBuffer],
|
|
1212
1187
|
},
|
|
1213
1188
|
providerOptions: {
|
|
1214
|
-
|
|
1189
|
+
amazonBedrock: {
|
|
1215
1190
|
taskType: 'BACKGROUND_REMOVAL',
|
|
1216
|
-
},
|
|
1191
|
+
} satisfies AmazonBedrockImageModelOptions,
|
|
1217
1192
|
},
|
|
1218
1193
|
});
|
|
1219
1194
|
```
|
|
@@ -1237,7 +1212,7 @@ The following additional provider options are available for image editing:
|
|
|
1237
1212
|
|
|
1238
1213
|
- **similarityStrength** _number_
|
|
1239
1214
|
|
|
1240
|
-
For `IMAGE_VARIATION`: Controls similarity to the original (0-1).
|
|
1215
|
+
For `IMAGE_VARIATION`: Controls similarity to the original (0.2-1.0).
|
|
1241
1216
|
|
|
1242
1217
|
- **outPaintingMode** _string_
|
|
1243
1218
|
|
|
@@ -1623,20 +1598,20 @@ on how to integrate reasoning into your chatbot.
|
|
|
1623
1598
|
|
|
1624
1599
|
### Model Capabilities
|
|
1625
1600
|
|
|
1626
|
-
| Model | Image Input
|
|
1627
|
-
| ---------------------------------------------- |
|
|
1628
|
-
| `us.anthropic.claude-sonnet-5` | <Check
|
|
1629
|
-
| `us.anthropic.claude-fable-5` | <Check
|
|
1630
|
-
| `us.anthropic.claude-opus-4-8` | <Check
|
|
1631
|
-
| `us.anthropic.claude-opus-4-7` | <Check
|
|
1632
|
-
| `us.anthropic.claude-opus-4-6-v1` | <Check
|
|
1633
|
-
| `us.anthropic.claude-opus-4-5-20251101-v1:0` | <Check
|
|
1634
|
-
| `us.anthropic.claude-sonnet-4-5-20250929-v1:0` | <Check
|
|
1635
|
-
| `us.anthropic.claude-opus-4-20250514-v1:0` | <Check
|
|
1636
|
-
| `us.anthropic.claude-sonnet-4-20250514-v1:0` | <Check
|
|
1637
|
-
| `us.anthropic.claude-opus-4-1-20250805-v1:0` | <Check
|
|
1638
|
-
| `us.anthropic.claude-haiku-4-5-20251001-v1:0` | <Check
|
|
1639
|
-
| `us.anthropic.claude-3-5-sonnet-20241022-v2:0` | <Check
|
|
1601
|
+
| Model | Image Input | Object Generation | Tool Usage | Computer Use | Reasoning |
|
|
1602
|
+
| ---------------------------------------------- | ----------- | ----------------- | ---------- | ------------ | --------- |
|
|
1603
|
+
| `us.anthropic.claude-sonnet-5` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1604
|
+
| `us.anthropic.claude-fable-5` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1605
|
+
| `us.anthropic.claude-opus-4-8` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1606
|
+
| `us.anthropic.claude-opus-4-7` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1607
|
+
| `us.anthropic.claude-opus-4-6-v1` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1608
|
+
| `us.anthropic.claude-opus-4-5-20251101-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1609
|
+
| `us.anthropic.claude-sonnet-4-5-20250929-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1610
|
+
| `us.anthropic.claude-opus-4-20250514-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1611
|
+
| `us.anthropic.claude-sonnet-4-20250514-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1612
|
+
| `us.anthropic.claude-opus-4-1-20250805-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1613
|
+
| `us.anthropic.claude-haiku-4-5-20251001-v1:0` | <Check /> | <Check /> | <Check /> | <Check /> | <Check /> |
|
|
1614
|
+
| `us.anthropic.claude-3-5-sonnet-20241022-v2:0` | <Check /> | <Check /> | <Check /> | <Cross /> | <Cross /> |
|
|
1640
1615
|
|
|
1641
1616
|
<Note>
|
|
1642
1617
|
The Bedrock Anthropic provider uses the native InvokeModel API and supports
|
|
@@ -1787,12 +1762,12 @@ const { text } = await generateText({
|
|
|
1787
1762
|
|
|
1788
1763
|
### Model Capabilities
|
|
1789
1764
|
|
|
1790
|
-
| Model | Chat Completions
|
|
1791
|
-
| ------------------------------- |
|
|
1792
|
-
| `openai.gpt-oss-20b` | <Check
|
|
1793
|
-
| `openai.gpt-oss-120b` | <Check
|
|
1794
|
-
| `openai.gpt-oss-safeguard-20b` | <Check
|
|
1795
|
-
| `openai.gpt-oss-safeguard-120b` | <Check
|
|
1765
|
+
| Model | Chat Completions | Responses API |
|
|
1766
|
+
| ------------------------------- | ---------------- | ------------- |
|
|
1767
|
+
| `openai.gpt-oss-20b` | <Check /> | <Check /> |
|
|
1768
|
+
| `openai.gpt-oss-120b` | <Check /> | <Check /> |
|
|
1769
|
+
| `openai.gpt-oss-safeguard-20b` | <Check /> | <Cross /> |
|
|
1770
|
+
| `openai.gpt-oss-safeguard-120b` | <Check /> | <Cross /> |
|
|
1796
1771
|
|
|
1797
1772
|
<Note>
|
|
1798
1773
|
The Bedrock Mantle provider uses the OpenAI-compatible API format. Models
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-sdk/amazon-bedrock",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.15",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -44,10 +44,10 @@
|
|
|
44
44
|
"@smithy/eventstream-codec": "^4.3.3",
|
|
45
45
|
"@smithy/util-utf8": "^4.3.3",
|
|
46
46
|
"aws4fetch": "^1.0.20",
|
|
47
|
-
"@ai-sdk/anthropic": "4.0.
|
|
48
|
-
"@ai-sdk/openai": "4.0.
|
|
49
|
-
"@ai-sdk/provider": "4.0.
|
|
50
|
-
"@ai-sdk/provider-utils": "5.0.
|
|
47
|
+
"@ai-sdk/anthropic": "4.0.11",
|
|
48
|
+
"@ai-sdk/openai": "4.0.10",
|
|
49
|
+
"@ai-sdk/provider": "4.0.3",
|
|
50
|
+
"@ai-sdk/provider-utils": "5.0.7"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@types/node": "22.19.19",
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import {
|
|
2
|
+
lazySchema,
|
|
3
|
+
zodSchema,
|
|
4
|
+
type InferSchema,
|
|
5
|
+
} from '@ai-sdk/provider-utils';
|
|
6
|
+
import { z } from 'zod/v4';
|
|
7
|
+
|
|
8
|
+
export const amazonBedrockImageModelOptionsSchema = lazySchema(() =>
|
|
9
|
+
zodSchema(
|
|
10
|
+
z.object({
|
|
11
|
+
quality: z.enum(['standard', 'premium']).optional(),
|
|
12
|
+
negativeText: z.string().optional(),
|
|
13
|
+
cfgScale: z.number().optional(),
|
|
14
|
+
style: z
|
|
15
|
+
.enum([
|
|
16
|
+
'3D_ANIMATED_FAMILY_FILM',
|
|
17
|
+
'DESIGN_SKETCH',
|
|
18
|
+
'FLAT_VECTOR_ILLUSTRATION',
|
|
19
|
+
'GRAPHIC_NOVEL_ILLUSTRATION',
|
|
20
|
+
'MAXIMALISM',
|
|
21
|
+
'MIDCENTURY_RETRO',
|
|
22
|
+
'PHOTOREALISM',
|
|
23
|
+
'SOFT_DIGITAL_PAINTING',
|
|
24
|
+
])
|
|
25
|
+
.optional(),
|
|
26
|
+
taskType: z
|
|
27
|
+
.enum([
|
|
28
|
+
'TEXT_IMAGE',
|
|
29
|
+
'IMAGE_VARIATION',
|
|
30
|
+
'INPAINTING',
|
|
31
|
+
'OUTPAINTING',
|
|
32
|
+
'BACKGROUND_REMOVAL',
|
|
33
|
+
])
|
|
34
|
+
.optional(),
|
|
35
|
+
maskPrompt: z.string().optional(),
|
|
36
|
+
outPaintingMode: z.enum(['DEFAULT', 'PRECISE']).optional(),
|
|
37
|
+
similarityStrength: z.number().optional(),
|
|
38
|
+
}),
|
|
39
|
+
),
|
|
40
|
+
);
|
|
41
|
+
|
|
42
|
+
export type AmazonBedrockImageModelOptions = InferSchema<
|
|
43
|
+
typeof amazonBedrockImageModelOptionsSchema
|
|
44
|
+
>;
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
convertUint8ArrayToBase64,
|
|
9
9
|
createJsonErrorResponseHandler,
|
|
10
10
|
createJsonResponseHandler,
|
|
11
|
+
parseProviderOptions,
|
|
11
12
|
postJsonToApi,
|
|
12
13
|
resolve,
|
|
13
14
|
serializeModelOptions,
|
|
@@ -20,6 +21,7 @@ import {
|
|
|
20
21
|
modelMaxImagesPerCall,
|
|
21
22
|
type AmazonBedrockImageModelId,
|
|
22
23
|
} from './amazon-bedrock-image-settings';
|
|
24
|
+
import { amazonBedrockImageModelOptionsSchema } from './amazon-bedrock-image-model-options';
|
|
23
25
|
import { AmazonBedrockErrorSchema } from './amazon-bedrock-error';
|
|
24
26
|
import { z } from 'zod/v4';
|
|
25
27
|
|
|
@@ -85,8 +87,18 @@ export class AmazonBedrockImageModel implements ImageModelV4 {
|
|
|
85
87
|
|
|
86
88
|
// Prefer the new `amazonBedrock` providerOptions key; fall back to the
|
|
87
89
|
// legacy `bedrock` key for backward compatibility.
|
|
88
|
-
const amazonBedrockOptions =
|
|
89
|
-
|
|
90
|
+
const amazonBedrockOptions =
|
|
91
|
+
(await parseProviderOptions({
|
|
92
|
+
provider: 'amazonBedrock',
|
|
93
|
+
providerOptions,
|
|
94
|
+
schema: amazonBedrockImageModelOptionsSchema,
|
|
95
|
+
})) ??
|
|
96
|
+
(await parseProviderOptions({
|
|
97
|
+
provider: 'bedrock',
|
|
98
|
+
providerOptions,
|
|
99
|
+
schema: amazonBedrockImageModelOptionsSchema,
|
|
100
|
+
})) ??
|
|
101
|
+
{};
|
|
90
102
|
|
|
91
103
|
// Build image generation config (common to most modes)
|
|
92
104
|
const imageGenerationConfig = {
|
package/src/index.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export type { AnthropicProviderOptions } from '@ai-sdk/anthropic';
|
|
2
2
|
|
|
3
3
|
export type { AmazonBedrockEmbeddingModelOptions } from './amazon-bedrock-embedding-model-options';
|
|
4
|
+
export type { AmazonBedrockImageModelOptions } from './amazon-bedrock-image-model-options';
|
|
4
5
|
export type {
|
|
5
6
|
AmazonBedrockLanguageModelChatOptions,
|
|
6
7
|
/** @deprecated Use `AmazonBedrockLanguageModelChatOptions` instead. */
|