Amazon Bedrock経由でのVercel AI SDKの利用方法

Amazon Bedrock経由でのVercel AI SDKの利用方法

2025.11.21

こんにちは、リテールアプリ共創部の戸田駿太です!

今回はアクセスキーを利用したAmazon Bedrock経由でのVercel AI SDKの利用方法についてシンプルに解説します。

はじめに

この記事では、以下の説明をします。

  • Amazon Bedrock用のAI SDKのセットアップ方法
  • IAMユーザーとアクセスキーの作成手順
  • 基本的なテキスト生成の実装
  • モデルの切り替え方法

前提条件

  • Node.js(v18以上推奨)
  • npm(またはpnpm、yarn、bun)が利用できること
  • AWSアカウントを持っていること

公式ドキュメント

https://ai-sdk.dev/providers/ai-sdk-providers/amazon-bedrock

セットアップ

パッケージのインストール

まず、AI SDKのコアパッケージとAmazon Bedrock用のAI SDKプロバイダーをインストールします。
今回はnpmを利用しますが、pnpm, yarn, bunなどのパッケージマネージャーでもインストールできます。

npm install ai @ai-sdk/amazon-bedrock

他のパッケージマネージャーを利用する場合のコマンド

認証設定

AWSアクセスキーとシークレットキーの作成

  1. IAMユーザーの作成
    • IAMダッシュボードに移動し、左側のナビゲーションメニューから「ユーザー」をクリックします。
    • 「ユーザーを作成」をクリックし、必要な情報を入力して新しいIAMユーザーを作成します。

CleanShot 2025-11-21 at 18.44.56@2x.png

CleanShot 2025-11-21 at 18.21.46@2x.png

ユーザーアカウントにはAmazonBedrockFullAccessポリシーをアタッチしてください。
もう少し厳密にしたい場合や他のポリシーをアタッチしたい場合は、実際の環境に合わせて調節してください。

CleanShot 2025-11-21 at 18.22.25@2x.png

CleanShot 2025-11-21 at 18.22.32@2x.png

これでIAMユーザーの作成は完了です。

  1. アクセスキーの作成

IAM → ユーザー → ユーザー名 → セキュリティ認証情報 → アクセスキーを作成 の順にクリックします。

CleanShot 2025-11-21 at 18.30.29@2x.png

今回はローカルコードを選択します。

CleanShot 2025-11-21 at 18.27.20@2x.png

この時点でシークレットアクセスキーをコピーすることができますが、必要な場合はCSVファイルをダウンロードすることもできます。

CleanShot 2025-11-21 at 18.28.06@2x.png

アクセスキーとシークレットキーの設定

アクセスキーとシークレットキーを環境変数として設定するために.envファイルに以下の行を追加します。
プロジェクトに.envファイルがない場合は作成してください。

AWS_ACCESS_KEY_ID=YOUR_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY=YOUR_SECRET_ACCESS_KEY
AWS_REGION=YOUR_REGION

YOUR_ACCESS_KEY_IDYOUR_SECRET_ACCESS_KEYYOUR_REGIONを実際の値に置き換えてください。

  • AWS_ACCESS_KEY_ID: 先ほど作成したアクセスキー
  • AWS_SECRET_ACCESS_KEY: 先ほど作成したシークレットキー
  • AWS_REGION: 使用したいリージョン(例:us-east-1ap-northeast-1など)

Next.jsなどのフレームワークは.envファイルを自動的にロードしてくれます。
自動的に.envの読み込みをしない場合は、dotenvなどのパッケージを使用して.envファイルを読み込む必要があります。
セキュリティ上、絶対に.envファイルをGitHubなどに公開しないように注意しましょう。
.gitignoreなどでファイルの公開を禁止するように設定してください。

プロバイダーインスタンスの作成

デフォルトインスタンスの使用

@ai-sdk/amazon-bedrockからデフォルトのプロバイダーインスタンスbedrockをインポートできます。

import { bedrock } from '@ai-sdk/amazon-bedrock';

先ほど設定した.envファイルの認証情報を自動的に読み取っているので、bedrock関数を呼び出すだけで利用できます。

基本的な使い方

テキスト生成

プロバイダーインスタンスを使用して、Bedrock APIを呼び出すモデルを作成できます。

import { bedrock } from '@ai-sdk/amazon-bedrock';
import { generateText } from 'ai';

const { text } = await generateText({
  model: bedrock('anthropic.claude-sonnet-4-5-20250929-v1:0'),// ここで必要なモデルのIDを選択
  prompt: 'プロンプト',
});

console.log(text);

モデルの切り替え方法

モデルのIDの確認

モデルのIDはAWSのコンソールから確認できます。

Amazon Bedrock → モデルカタログにアクセスすると、利用可能なモデルの一覧が確認できます。

CleanShot 2025-11-21 at 18.53.59@2x.png

使いたいモデルの詳細を確認すると、モデルのIDが確認できます。

CleanShot 2025-11-21 at 18.54.17@2x.png

モデルの切り替え

モデルの切り替えはbedrock関数の引数にモデルのIDを渡すだけです。

import { bedrock } from '@ai-sdk/amazon-bedrock';
import { generateText } from 'ai';

const { text } = await generateText({
  model: bedrock('anthropic.claude-haiku-4-5-20251001-v1:0'),// ここで必要なモデルのIDを選択
  prompt: 'プロンプト',
});

console.log(text);

まとめ

この記事では、Amazon Bedrock経由でVercelのAI SDKを利用する方法について説明しました。
AI SDKを使用することで、様々な基盤モデル・プロバイダーを統一されたAPIで簡単に利用できます。ぜひ試してみてください!

参考リンク

この記事をシェアする

FacebookHatena blogX

関連記事