Claude Code を AWS Bedrock (Sonnet4) で触ってみる
Anthropic が提供する AI コーディングアシスタント「Claude Code」を、AWS Bedrock 上の Sonnet4 モデルと連携させて試してみた。この記事では、その際の事前準備、セットアップ手順、基本的な使い方、そして使ってみた所感をまとめる。
はじめに
Claude Code は、ターミナル上で対話的にコード生成や説明、デバッグなどを行えるツールである。筆者の環境だと会社負担でBedrockを使えることもあり、バックエンドとして AWS Bedrock の claude-sonnet-4
モデルを利用する形でセットアップを行った。
参考にした情報
セットアップや試用にあたり、以下の情報を参考にした。
- Bedrockのモデルを使う例。Anthoropic APIとの提供機能の比較もある:AWSのBedrockでClaude 4とClaude Codeをセキュアに活用しよう!
- Bedrockを使うときの権限周りも書いてある:AI コーディングアシスタント Claude Code を Amazon Bedrock で試してみた
- Claude Code触ってみよう系のスライド:Claude Code のすすめ
- 公式チュートリアル:Claude Code チュートリアル
事前準備
1. AWS Bedrock でのモデルアクセス有効化
まず、AWS で Sonnet4 モデルへのアクセスを有効化した。
AWS マネジメントコンソールから Bedrock の「Model access」設定画面に移動し、Claude Sonnet 4
(anthropic.claude-sonnet-4-20250514-v1:0) などの利用したいモデルへのアクセスをリクエストし、有効化されていることを確認する。
2. Claude Code のインストール
次に、Claude Code 本体をインストールする。
Claude Code のすすめを参考にした。
3. 環境変数の設定
Claude Code を起動する前に、AWS Bedrock を利用するための環境変数を設定する。
ap-northeast-1
) の場合
東京リージョン (export AWS_ACCESS_KEY_ID='YOUR_AWS_ACCESS_KEY_ID'
export AWS_SECRET_ACCESS_KEY='YOUR_AWS_SECRET_ACCESS_KEY'
export AWS_REGION=ap-northeast-1
export ANTHROPIC_MODEL=apac.anthropic.claude-sonnet-4-20250514-v1:0
export CLAUDE_CODE_USE_BEDROCK=1
# 設定後、claude コマンドで起動
claude
us-east-1
) の場合
USリージョン (export AWS_ACCESS_KEY_ID='YOUR_AWS_ACCESS_KEY_ID'
export AWS_SECRET_ACCESS_KEY='YOUR_AWS_SECRET_ACCESS_KEY'
export AWS_REGION=us-east-1
export ANTHROPIC_MODEL=us.anthropic.claude-sonnet-4-20250514-v1:0
export CLAUDE_CODE_USE_BEDROCK=1
# 設定後、claude コマンドで起動
claude
ANTHROPIC_MODEL
のプレフィックス (apac.
や us.
) は、利用するリージョンに合わせて設定する必要があるらしい。
{
"env": {
"AWS_ACCESS_KEY_ID": "YOUR_AWS_ACCESS_KEY_ID",
"AWS_SECRET_ACCESS_KEY": "YOUR_AWS_SECRET_ACCESS_KEY",
"AWS_REGION": "us-east-1",
"ANTHROPIC_MODEL": "us.anthropic.claude-sonnet-4-20250514-v1:0",
"CLAUDE_CODE_USE_BEDROCK": "1"
}
}
セットアップ
環境変数を設定後、ターミナルで claude
コマンドを実行すると、初回セットアップが開始される。
- カラーモード選択: 好みのカラーモードを選ぶ。
-
Security Notes: 内容を確認し、エンターキーを押して進む。
-
ターミナルのセットアップ: 推奨されるものを選択した。
-
カレントディレクトリの信頼: カレントディレクトリ配下のファイルを Claude Code が読み取って良いか確認されるので、「Yes」を選択した。
基本的な使い方を試す
/init
コマンド
Claude Code を起動後、プロジェクトのルートで /init
コマンドを実行してみた。
これにより、プロジェクトの概要や構造を記述するマークダウンファイル (CLAUDE.md
) が自動生成される。
Python で "Hello, World!"
次に、簡単な Python コードの生成を試した。
「pythonでHello Worldを出力するコードを実装し、ターミナルで実行したいです」と指示したところ、コードは生成・実行された。
しかし、東京リージョン (ap-northeast-1
) の Bedrock モデルを利用している際に、以下の API エラーが頻発した。
API Error (429 Too many tokens, please wait before trying again.)
そこで、環境変数を US リージョン (us-east-1
) に切り替えて再度試したところ、エラーは発生せず、レスポンスも比較的早くなった。
2025年6月5日時点では、AWS Bedrock 上の Sonnet4 モデルを利用する場合、US リージョンの方が安定している可能性がある。
使ってみた所感
- ターミナルの日本語入力: ターミナル上で直接日本語を入力する際の挙動(予変換が入力欄の外に表示され、エンターを押すまで変換の様がわからない感じ)があまり好きではなかった
- Cursor との比較: Cursor と比較すると、Claude Code はより自動的にコマンド実行を行ってくれる気がした(まだ "Hello, World!" 程度しか試していないので確たることは言えない……)
-
/init
コマンドの有用性:/init
で生成されるマークダウンファイルは、プロジェクトの目的や構造、主要なファイルなどを自動で記述してくれるため、チーム開発時のドキュメント作成の初期段階で役立ちそう - 他の開発者の評価: 個人的にはまだ Cursor と比べて明確な優位性を体験できていないが、一部の開発者からは非常に高く評価されているようである(参考: 技術選定の審美眼(2025年版))。今後、より複雑なタスクで試していく中で、その真価を体験できるかもしれない。
まとめ
Claude Code を AWS Bedrock (Sonnet4) と連携させて試す初期設定と、簡単な動作確認を行った。
リージョンによる安定性の違いや、IDE 連携の注意点など、いくつか留意すべき点があったが、基本的なセットアップは比較的スムーズに行えた。
特に /init
コマンドによるプロジェクト概要の自動生成はかなりのクオリティなんじゃないかと感じた。
追記
実際に業務で使っているディレクトリで/init
をしてCLAUDE.mdを作成してみた。(業務なので詳細は伏せます)
正直全然ディレクトリルールもなくカオスな構成なのだが、だいたい認識あっていたし、主要なStreamlitのアプリ、SNowflakeでのデータベース構造、ウェアハウス、ロール情報、前処理やセマンティックモデルのファイルの位置、IPファンkitの概要、あたりが網羅されてた。
Discussion