1> ## Documentation Index
2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt
3> Use this file to discover all available pages before exploring further.
4
5# Amazon Bedrock 上の Claude Code
6
7> Amazon Bedrock を通じた Claude Code の設定方法(セットアップ、IAM 設定、トラブルシューティングを含む)について学習します。
8
9export const ContactSalesCard = ({surface}) => {
10 const utm = content => `utm_source=claude_code&utm_medium=docs&utm_content=${surface}_${content}`;
11 const iconArrowRight = (size = 13) => <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2.5" strokeLinecap="round" strokeLinejoin="round" aria-hidden="true">
12 <line x1="5" y1="12" x2="19" y2="12" />
13 <polyline points="12 5 19 12 12 19" />
14 </svg>;
15 const STYLES = `
16.cc-cs {
17 --cs-slate: #141413;
18 --cs-clay: #d97757;
19 --cs-clay-deep: #c6613f;
20 --cs-gray-000: #ffffff;
21 --cs-gray-700: #3d3d3a;
22 --cs-border-default: rgba(31, 30, 29, 0.15);
23 font-family: inherit;
24}
25.dark .cc-cs {
26 --cs-slate: #f0eee6;
27 --cs-gray-000: #262624;
28 --cs-gray-700: #bfbdb4;
29 --cs-border-default: rgba(240, 238, 230, 0.14);
30}
31.cc-cs-card {
32 display: flex; align-items: center; justify-content: space-between;
33 gap: 16px; padding: 14px 16px; margin: 0;
34 background: var(--cs-gray-000); border: 0.5px solid var(--cs-border-default);
35 border-radius: 8px; flex-wrap: wrap;
36}
37.cc-cs-text { font-size: 13px; color: var(--cs-gray-700); line-height: 1.5; flex: 1; min-width: 240px; }
38.cc-cs-text strong { font-weight: 550; color: var(--cs-slate); }
39.cc-cs-actions { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
40.cc-cs-btn-clay {
41 display: inline-flex; align-items: center; gap: 8px;
42 background: var(--cs-clay-deep); color: #fff; border: none;
43 border-radius: 8px; padding: 8px 14px;
44 font-size: 13px; font-weight: 500;
45 transition: background-color 0.15s; white-space: nowrap;
46}
47.cc-cs-btn-clay:hover { background: var(--cs-clay); }
48.cc-cs-btn-ghost {
49 display: inline-flex; align-items: center; gap: 8px;
50 background: transparent; color: var(--cs-gray-700);
51 border: 0.5px solid var(--cs-border-default);
52 border-radius: 8px; padding: 8px 14px;
53 font-size: 13px; font-weight: 500;
54}
55.cc-cs-btn-ghost:hover { background: rgba(0, 0, 0, 0.04); }
56.dark .cc-cs-btn-ghost:hover { background: rgba(255, 255, 255, 0.04); }
57@media (max-width: 720px) {
58 .cc-cs-actions { width: 100%; }
59}
60`;
61 return <div className="cc-cs not-prose">
62 <style>{STYLES}</style>
63 <div className="cc-cs-card">
64 <div className="cc-cs-text">
65 <strong>Deploying Claude Code across your organization?</strong> Talk to sales about enterprise plans, SSO, and centralized billing.
66 </div>
67 <div className="cc-cs-actions">
68 <a href={`https://claude.com/pricing?${utm('view_plans')}#plans-business`} className="cc-cs-btn-ghost">
69 View plans
70 </a>
71 <a href={`https://claude.com/contact-sales?${utm('contact_sales')}`} className="cc-cs-btn-clay">
72 Contact sales {iconArrowRight()}
73 </a>
74 </div>
75 </div>
76 </div>;
77};
78
79export const Experiment = ({flag, treatment, children}) => {
80 const VID_KEY = 'exp_vid';
81 const CONSENT_COUNTRIES = new Set(['AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE', 'RE', 'GP', 'MQ', 'GF', 'YT', 'BL', 'MF', 'PM', 'WF', 'PF', 'NC', 'AW', 'CW', 'SX', 'FO', 'GL', 'AX', 'GB', 'UK', 'AI', 'BM', 'IO', 'VG', 'KY', 'FK', 'GI', 'MS', 'PN', 'SH', 'TC', 'GG', 'JE', 'IM', 'CA', 'BR', 'IN']);
82 const fnv1a = s => {
83 let h = 0x811c9dc5;
84 for (let i = 0; i < s.length; i++) {
85 h ^= s.charCodeAt(i);
86 h += (h << 1) + (h << 4) + (h << 7) + (h << 8) + (h << 24);
87 }
88 return h >>> 0;
89 };
90 const bucket = (seed, vid) => fnv1a(fnv1a(seed + vid) + '') % 10000 < 5000 ? 'control' : 'treatment';
91 const [decision] = useState(() => {
92 const params = new URLSearchParams(location.search);
93 const preBucketed = document.documentElement.dataset['gb_' + flag.replace(/-/g, '_')];
94 const force = params.get('gb-force');
95 if (force) {
96 for (const p of force.split(',')) {
97 const [k, v] = p.split(':');
98 if (k === flag) return {
99 variant: v || 'treatment',
100 track: false
101 };
102 }
103 }
104 if (navigator.globalPrivacyControl) {
105 return {
106 variant: 'control',
107 track: false
108 };
109 }
110 const prefsMatch = document.cookie.match(/(?:^|; )anthropic-consent-preferences=([^;]+)/);
111 if (prefsMatch) {
112 try {
113 if (JSON.parse(decodeURIComponent(prefsMatch[1])).analytics !== true) {
114 return {
115 variant: 'control',
116 track: false
117 };
118 }
119 } catch {
120 return {
121 variant: 'control',
122 track: false
123 };
124 }
125 } else {
126 const country = params.get('country')?.toUpperCase() || (document.cookie.match(/(?:^|; )cf_geo=([A-Z]{2})/) || [])[1];
127 if (!country || CONSENT_COUNTRIES.has(country)) {
128 return {
129 variant: 'control',
130 track: false
131 };
132 }
133 }
134 let vid;
135 try {
136 const ajsMatch = document.cookie.match(/(?:^|; )ajs_anonymous_id=([^;]+)/);
137 if (ajsMatch) {
138 vid = decodeURIComponent(ajsMatch[1]).replace(/^"|"$/g, '');
139 } else {
140 vid = localStorage.getItem(VID_KEY);
141 if (!vid) {
142 vid = crypto.randomUUID();
143 }
144 document.cookie = `ajs_anonymous_id=${vid}; domain=.claude.com; path=/; Secure; SameSite=Lax; max-age=31536000`;
145 }
146 try {
147 localStorage.setItem(VID_KEY, vid);
148 } catch {}
149 } catch {
150 return {
151 variant: 'control',
152 track: false
153 };
154 }
155 const variant = preBucketed === '1' ? 'treatment' : preBucketed === '0' ? 'control' : bucket(flag, vid);
156 return {
157 variant,
158 track: true,
159 vid
160 };
161 });
162 useEffect(() => {
163 if (!decision.track) return;
164 fetch('https://api.anthropic.com/api/event_logging/v2/batch', {
165 method: 'POST',
166 headers: {
167 'Content-Type': 'application/json',
168 'x-service-name': 'claude_code_docs'
169 },
170 body: JSON.stringify({
171 events: [{
172 event_type: 'GrowthbookExperimentEvent',
173 event_data: {
174 device_id: decision.vid,
175 anonymous_id: decision.vid,
176 timestamp: new Date().toISOString(),
177 experiment_id: flag,
178 variation_id: decision.variant === 'treatment' ? 1 : 0,
179 environment: 'production'
180 }
181 }]
182 }),
183 keepalive: true
184 }).catch(() => {});
185 }, []);
186 return decision.variant === 'treatment' ? treatment : children;
187};
188
189<Experiment flag="docs-contact-sales-cta" treatment={<ContactSalesCard surface="bedrock" />} />
190
191## 前提条件
192
193Claude Code を Bedrock で設定する前に、以下を確認してください。
194
195* Bedrock アクセスが有効になっている AWS アカウント
196* Bedrock で目的の Claude モデル(例:Claude Sonnet 4.6)へのアクセス
197* AWS CLI がインストールされ、設定されていること(オプション - 認証情報を取得する別のメカニズムがない場合のみ必要)
198* 適切な IAM 権限
199
200Bedrock 認証情報を使用してサインインするには、以下の [Bedrock でサインイン](#bedrock-でサインイン)に従ってください。チーム全体に Claude Code をデプロイするには、[手動セットアップ](#手動でセットアップ)の手順を使用し、ロールアウト前に[モデルバージョンをピン留め](#4-モデルバージョンをピン留め)してください。
201
202## Bedrock でサインイン
203
204AWS 認証情報を持っていて、Bedrock を通じて Claude Code の使用を開始したい場合、ログインウィザードがそれをガイドします。AWS 側の前提条件はアカウントごとに 1 回完了します。ウィザードは Claude Code 側を処理します。
205
206<Steps>
207 <Step title="AWS アカウントで Anthropic モデルを有効にする">
208 [Amazon Bedrock コンソール](https://console.aws.amazon.com/bedrock/)で、モデルカタログを開き、Anthropic モデルを選択して、ユースケースフォームを送信します。送信直後にアクセスが付与されます。AWS Organizations については[ユースケースの詳細を送信](#1-ユースケースの詳細を送信)を、権限については [IAM 設定](#iam-設定)を参照してください。
209 </Step>
210
211 <Step title="Claude Code を開始して Bedrock を選択する">
212 `claude` を実行します。ログインプロンプトで、**3rd-party platform**、次に **Amazon Bedrock** を選択します。
213 </Step>
214
215 <Step title="ウィザードプロンプトに従う">
216 AWS に認証する方法を選択します。`~/.aws` ディレクトリから検出された AWS プロファイル、Bedrock API キー、アクセスキーとシークレット、または環境内に既にある認証情報です。ウィザードはリージョンを取得し、アカウントが呼び出せる Claude モデルを確認し、それらをピン留めできます。結果は [user settings file](/ja/settings) の `env` ブロックに保存されるため、環境変数を自分でエクスポートする必要はありません。
217 </Step>
218</Steps>
219
220サインイン後、いつでも `/setup-bedrock` を実行してウィザードを再度開き、認証情報、リージョン、またはモデルピンを変更できます。
221
222## 手動でセットアップ
223
224ウィザードの代わりに環境変数を通じて Bedrock を設定するには、例えば CI またはスクリプト化されたエンタープライズロールアウトで、以下の手順に従ってください。
225
226### 1. ユースケースの詳細を送信
227
228Anthropic モデルの初回ユーザーは、モデルを呼び出す前にユースケースの詳細を送信する必要があります。これはアカウントごとに 1 回行われます。
229
2301. 以下で説明する適切な IAM 権限があることを確認してください
2312. [Amazon Bedrock コンソール](https://console.aws.amazon.com/bedrock/)に移動します
2323. **モデルカタログ**から Anthropic モデルを選択します
2334. ユースケースフォームを完成させます。送信直後にアクセスが付与されます。
234
235AWS Organizations を使用する場合、[`PutUseCaseForModelAccess` API](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_PutUseCaseForModelAccess.html) を使用して管理アカウントからフォームを 1 回送信できます。この呼び出しには `bedrock:PutUseCaseForModelAccess` IAM 権限が必要です。承認は子アカウントに自動的に拡張されます。
236
237### 2. AWS 認証情報を設定
238
239Claude Code は、デフォルトの AWS SDK 認証情報チェーンを使用します。以下のいずれかの方法を使用して認証情報を設定してください。
240
241**オプション A:AWS CLI 設定**
242
243```bash theme={null}
244aws configure
245```
246
247**オプション B:環境変数(アクセスキー)**
248
249```bash theme={null}
250export AWS_ACCESS_KEY_ID=your-access-key-id
251export AWS_SECRET_ACCESS_KEY=your-secret-access-key
252export AWS_SESSION_TOKEN=your-session-token
253```
254
255**オプション C:環境変数(SSO プロファイル)**
256
257```bash theme={null}
258aws sso login --profile=<your-profile-name>
259
260export AWS_PROFILE=your-profile-name
261```
262
263**オプション D:AWS Management Console 認証情報**
264
265```bash theme={null}
266aws login
267```
268
269`aws login` について[詳しく学習](https://docs.aws.amazon.com/signin/latest/userguide/command-line-sign-in.html)してください。
270
271**オプション E:Bedrock API キー**
272
273```bash theme={null}
274export AWS_BEARER_TOKEN_BEDROCK=your-bedrock-api-key
275```
276
277Bedrock API キーは、完全な AWS 認証情報を必要としない、より簡単な認証方法を提供します。[Bedrock API キーについて詳しく学習](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)してください。
278
279#### 高度な認証情報設定
280
281Claude Code は、AWS SSO および企業 ID プロバイダーの自動認証情報更新をサポートしています。これらの設定を Claude Code 設定ファイルに追加してください(ファイルの場所については [Settings](/ja/settings) を参照)。
282
283Claude Code が AWS 認証情報の有効期限が切れていることを検出した場合(ローカルのタイムスタンプに基づくか、Bedrock が認証情報エラーを返した場合)、設定された `awsAuthRefresh` および/または `awsCredentialExport` コマンドを自動的に実行して、リクエストを再試行する前に新しい認証情報を取得します。
284
285##### 設定例
286
287```json theme={null}
288{
289 "awsAuthRefresh": "aws sso login --profile myprofile",
290 "env": {
291 "AWS_PROFILE": "myprofile"
292 }
293}
294```
295
296##### 設定の説明
297
298**`awsAuthRefresh`**:`.aws` ディレクトリを変更するコマンド(認証情報、SSO キャッシュ、または設定ファイルの更新など)に使用します。コマンドの出力はユーザーに表示されますが、対話的な入力はサポートされていません。これは、CLI が URL またはコードを表示し、ブラウザで認証を完了するブラウザベースの SSO フローに適しています。
299
300**`awsCredentialExport`**:`.aws` を変更できず、認証情報を直接返す必要がある場合にのみ使用します。出力はサイレントにキャプチャされ、ユーザーに表示されません。コマンドは次の形式で JSON を出力する必要があります。
301
302```json theme={null}
303{
304 "Credentials": {
305 "AccessKeyId": "value",
306 "SecretAccessKey": "value",
307 "SessionToken": "value"
308 }
309}
310```
311
312### 3. Claude Code を設定
313
314Bedrock を有効にするために、以下の環境変数を設定します。
315
316```bash theme={null}
317# Bedrock 統合を有効にする
318export CLAUDE_CODE_USE_BEDROCK=1
319export AWS_REGION=us-east-1 # または希望するリージョン
320
321# オプション:小型/高速モデル(Haiku)のリージョンをオーバーライド
322# Bedrock Mantle にも適用されます。
323export ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION=us-west-2
324
325# オプション:カスタムエンドポイントまたはゲートウェイ用に Bedrock エンドポイント URL をオーバーライド
326# export ANTHROPIC_BEDROCK_BASE_URL=https://bedrock-runtime.us-east-1.amazonaws.com
327```
328
329Claude Code で Bedrock を有効にする場合は、以下に注意してください。
330
331* `AWS_REGION` は必須の環境変数です。Claude Code はこの設定について `.aws` 設定ファイルから読み込みません。
332* Bedrock を使用する場合、`/login` および `/logout` コマンドは無効になります。認証は AWS 認証情報を通じて処理されるためです。
333* 他のプロセスに漏らしたくない `AWS_PROFILE` などの環境変数に設定ファイルを使用できます。詳細については [Settings](/ja/settings) を参照してください。
334
335### 4. モデルバージョンをピン留め
336
337<Warning>
338 複数のユーザーにデプロイする場合は、特定のモデルバージョンをピン留めしてください。ピン留めなしでは、`sonnet` や `opus` などのモデルエイリアスは最新バージョンに解決されます。これは、Anthropic がアップデートをリリースしたときに、Bedrock アカウントでまだ利用できない可能性があります。Claude Code は、最新が利用できない場合、スタートアップで[前のバージョンにフォールバック](#スタートアップモデルチェック)しますが、ピン留めするとユーザーが新しいモデルに移行するタイミングを制御できます。
339</Warning>
340
341これらの環境変数を特定の Bedrock モデル ID に設定します。
342
343`ANTHROPIC_DEFAULT_OPUS_MODEL` なしでは、Bedrock の `opus` エイリアスは Opus 4.6 に解決されます。最新モデルを使用するには、Opus 4.7 ID に設定します。
344
345```bash theme={null}
346export ANTHROPIC_DEFAULT_OPUS_MODEL='us.anthropic.claude-opus-4-7'
347export ANTHROPIC_DEFAULT_SONNET_MODEL='us.anthropic.claude-sonnet-4-6'
348export ANTHROPIC_DEFAULT_HAIKU_MODEL='us.anthropic.claude-haiku-4-5-20251001-v1:0'
349```
350
351これらの変数は、クロスリージョン推論プロファイル ID(`us.` プレフィックス付き)を使用します。別のリージョンプレフィックスまたはアプリケーション推論プロファイルを使用する場合は、それに応じて調整してください。現在および従来のモデル ID については、[Models overview](https://platform.claude.com/docs/en/about-claude/models/overview) を参照してください。環境変数の完全なリストについては、[Model configuration](/ja/model-config#pin-models-for-third-party-deployments) を参照してください。
352
353ピン留め変数が設定されていない場合、Claude Code はこれらのデフォルトモデルを使用します。
354
355| モデルタイプ | デフォルト値 |
356| :------- | :--------------------------------------------- |
357| プライマリモデル | `us.anthropic.claude-sonnet-4-5-20250929-v1:0` |
358| 小型/高速モデル | `us.anthropic.claude-haiku-4-5-20251001-v1:0` |
359
360モデルをさらにカスタマイズするには、以下のいずれかの方法を使用します。
361
362```bash theme={null}
363# 推論プロファイル ID を使用
364export ANTHROPIC_MODEL='global.anthropic.claude-sonnet-4-6'
365export ANTHROPIC_DEFAULT_HAIKU_MODEL='us.anthropic.claude-haiku-4-5-20251001-v1:0'
366
367# アプリケーション推論プロファイル ARN を使用
368export ANTHROPIC_MODEL='arn:aws:bedrock:us-east-2:your-account-id:application-inference-profile/your-model-id'
369
370# オプション:必要に応じてプロンプトキャッシングを無効にする
371export DISABLE_PROMPT_CACHING=1
372
373# オプション:デフォルトの 5 分の代わりに 1 時間のプロンプトキャッシュ TTL をリクエスト
374export ENABLE_PROMPT_CACHING_1H=1
375```
376
377<Note>[プロンプトキャッシング](https://platform.claude.com/docs/en/build-with-claude/prompt-caching)は、すべてのリージョンで利用できない場合があります。1 時間の TTL でのキャッシュ書き込みは、5 分の書き込みよりも高いレートで課金されます。</Note>
378
379#### 各モデルバージョンを推論プロファイルにマップ
380
381`ANTHROPIC_DEFAULT_*_MODEL` 環境変数は、モデルファミリーごとに 1 つの推論プロファイルを設定します。組織が同じファミリーの複数のバージョンを `/model` ピッカーで公開し、それぞれを独自のアプリケーション推論プロファイル ARN にルーティングする必要がある場合は、代わりに [settings file](/ja/settings#settings-files) の `modelOverrides` 設定を使用してください。
382
383この例は、4 つの Opus バージョンを異なる ARN にマップするため、ユーザーは組織の推論プロファイルをバイパスすることなく、それらを切り替えることができます。
384
385```json theme={null}
386{
387 "modelOverrides": {
388 "claude-opus-4-7": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-47-prod",
389 "claude-opus-4-6": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-46-prod",
390 "claude-opus-4-5-20251101": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-45-prod",
391 "claude-opus-4-1-20250805": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-41-prod"
392 }
393}
394```
395
396ユーザーが `/model` でこれらのバージョンのいずれかを選択すると、Claude Code はマップされた ARN で Bedrock を呼び出します。オーバーライドのないバージョンは、組み込みの Bedrock モデル ID またはスタートアップで検出された一致する推論プロファイルにフォールバックします。オーバーライドが `availableModels` および他のモデル設定とどのように相互作用するかについては、[Override model IDs per version](/ja/model-config#override-model-ids-per-version) を参照してください。
397
398## スタートアップモデルチェック
399
400Claude Code が Bedrock で設定されて起動すると、使用するモデルがアカウントでアクセス可能であることを確認します。このチェックには Claude Code v2.1.94 以降が必要です。
401
402現在の Claude Code デフォルトより古いモデルバージョンをピン留めしていて、アカウントが新しいバージョンを呼び出せる場合、Claude Code はピンを更新するよう促します。受け入れると、新しいモデル ID が [user settings file](/ja/settings) に書き込まれ、Claude Code が再起動されます。拒否すると、次のデフォルトバージョン変更まで記憶されます。[アプリケーション推論プロファイル ARN](#各モデルバージョンを推論プロファイルにマップ)を指す PIN は、管理者によって管理されるため、スキップされます。
403
404モデルをピン留めしていなくて、現在のデフォルトがアカウントで利用できない場合、Claude Code は現在のセッションで前のバージョンにフォールバックし、通知を表示します。フォールバックは永続化されません。Bedrock アカウントで新しいモデルを有効にするか、[バージョンをピン留め](#4-モデルバージョンをピン留め)して選択を永続化してください。
405
406## IAM 設定
407
408Claude Code に必要な権限を持つ IAM ポリシーを作成します。
409
410```json theme={null}
411{
412 "Version": "2012-10-17",
413 "Statement": [
414 {
415 "Sid": "AllowModelAndInferenceProfileAccess",
416 "Effect": "Allow",
417 "Action": [
418 "bedrock:InvokeModel",
419 "bedrock:InvokeModelWithResponseStream",
420 "bedrock:ListInferenceProfiles",
421 "bedrock:GetInferenceProfile"
422 ],
423 "Resource": [
424 "arn:aws:bedrock:*:*:inference-profile/*",
425 "arn:aws:bedrock:*:*:application-inference-profile/*",
426 "arn:aws:bedrock:*:*:foundation-model/*"
427 ]
428 },
429 {
430 "Sid": "AllowMarketplaceSubscription",
431 "Effect": "Allow",
432 "Action": [
433 "aws-marketplace:ViewSubscriptions",
434 "aws-marketplace:Subscribe"
435 ],
436 "Resource": "*",
437 "Condition": {
438 "StringEquals": {
439 "aws:CalledViaLast": "bedrock.amazonaws.com"
440 }
441 }
442 }
443 ]
444}
445```
446
447より制限的な権限の場合は、リソースを特定の推論プロファイル ARN に制限できます。
448
449`bedrock:GetInferenceProfile` により、Claude Code は[アプリケーション推論プロファイル ARN](#map-each-model-version-to-an-inference-profile) をそのバッキング基盤モデルに解決でき、そのモデルに対して正しいリクエスト形状を選択するために使用されます。
450
451トークンにこの権限がない場合、Claude Code は代替形状で 1 回再試行することで自動的に復旧するため、リクエストは成功しますが、新しいモデルが追加されるたびに追加のラウンドトリップが発生します。権限を付与することで再試行を回避できます。これは `AWS_BEARER_TOKEN_BEDROCK` デプロイメントに最も頻繁に適用され、トークンのポリシーは通常、完全な IAM ロールよりも狭くなります。
452
453詳細については、[Bedrock IAM documentation](https://docs.aws.amazon.com/bedrock/latest/userguide/security-iam.html) を参照してください。
454
455<Note>
456 コスト追跡とアクセス制御を簡素化するために、Claude Code 用の専用 AWS アカウントを作成してください。
457</Note>
458
459## 1M トークンコンテキストウィンドウ
460
461Claude Opus 4.7、Opus 4.6、および Sonnet 4.6 は、Amazon Bedrock で [1M トークンコンテキストウィンドウ](https://platform.claude.com/docs/en/build-with-claude/context-windows#1m-token-context-window)をサポートしています。Claude Code は、1M モデルバリアントを選択すると、拡張コンテキストウィンドウを自動的に有効にします。
462
463[セットアップウィザード](#bedrock-でサインイン)は、モデルをピン留めするときに 1M コンテキストオプションを提供します。手動でピン留めされたモデルの代わりに有効にするには、モデル ID に `[1m]` を追加します。詳細については、[Pin models for third-party deployments](/ja/model-config#pin-models-for-third-party-deployments) を参照してください。
464
465## AWS Guardrails
466
467[Amazon Bedrock Guardrails](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html) を使用すると、Claude Code のコンテンツフィルタリングを実装できます。[Amazon Bedrock コンソール](https://console.aws.amazon.com/bedrock/)で Guardrail を作成し、バージョンを公開してから、Guardrail ヘッダーを [settings file](/ja/settings) に追加します。クロスリージョン推論プロファイルを使用している場合は、Guardrail でクロスリージョン推論を有効にしてください。
468
469設定例:
470
471```json theme={null}
472{
473 "env": {
474 "ANTHROPIC_CUSTOM_HEADERS": "X-Amzn-Bedrock-GuardrailIdentifier: your-guardrail-id\nX-Amzn-Bedrock-GuardrailVersion: 1"
475 }
476}
477```
478
479## Mantle エンドポイントを使用
480
481Mantle は、Bedrock Invoke API ではなく、ネイティブ Anthropic API シェイプを通じて Claude モデルを提供する Amazon Bedrock エンドポイントです。同じ AWS 認証情報、IAM 権限、および `awsAuthRefresh` 設定を使用します。このページで前述したものです。
482
483<Note>
484 Mantle には Claude Code v2.1.94 以降が必要です。確認するには `claude --version` を実行してください。
485</Note>
486
487### Mantle を有効にする
488
489AWS 認証情報が既に設定されている場合、`CLAUDE_CODE_USE_MANTLE` を設定して、リクエストを Mantle エンドポイントにルーティングします。
490
491```bash theme={null}
492export CLAUDE_CODE_USE_MANTLE=1
493export AWS_REGION=us-east-1
494```
495
496Claude Code は `AWS_REGION` からエンドポイント URL を構築します。カスタムエンドポイントまたはゲートウェイの場合、`ANTHROPIC_BEDROCK_MANTLE_BASE_URL` を設定してオーバーライドします。
497
498Claude Code 内で `/status` を実行して確認します。Mantle がアクティブな場合、プロバイダー行は `Amazon Bedrock (Mantle)` を表示します。
499
500### Mantle モデルを選択
501
502Mantle は `anthropic.` で始まり、バージョンサフィックスのないモデル ID を使用します。例えば `anthropic.claude-haiku-4-5`。アカウントで利用可能なモデルは、組織に付与されたものに依存します。追加のモデル ID は AWS からのオンボーディング資料に記載されています。AWS アカウントチームに連絡して、許可リストされたモデルへのアクセスをリクエストしてください。
503
504`--model` フラグまたは Claude Code 内の `/model` でモデルを設定します。
505
506```bash theme={null}
507claude --model anthropic.claude-haiku-4-5
508```
509
510### Mantle を Invoke API と並行して実行
511
512Mantle で利用可能なモデルは、今日使用するすべてのモデルを含まない場合があります。`CLAUDE_CODE_USE_BEDROCK` と `CLAUDE_CODE_USE_MANTLE` の両方を設定すると、Claude Code は同じセッションから両方のエンドポイントを呼び出せます。Mantle 形式に一致するモデル ID は Mantle にルーティングされ、他のすべてのモデル ID は Bedrock Invoke API に移動します。
513
514```bash theme={null}
515export CLAUDE_CODE_USE_BEDROCK=1
516export CLAUDE_CODE_USE_MANTLE=1
517```
518
519Mantle モデルを `/model` ピッカーに表示するには、[settings file](/ja/settings) の `availableModels` にその ID をリストします。この設定はピッカーをリストされたエントリに制限するため、保持したいすべてのエイリアスを含めます。
520
521```json theme={null}
522{
523 "availableModels": ["opus", "sonnet", "haiku", "anthropic.claude-haiku-4-5"]
524}
525```
526
527`anthropic.` プレフィックス付きのエントリはカスタムピッカーオプションとして追加され、Mantle にルーティングされます。`anthropic.claude-haiku-4-5` をアカウントに付与されたモデル ID に置き換えます。`availableModels` が他のモデル設定とどのように相互作用するかについては、[Restrict model selection](/ja/model-config#restrict-model-selection) を参照してください。
528
529両方のプロバイダーがアクティブな場合、`/status` は `Amazon Bedrock + Amazon Bedrock (Mantle)` を表示します。
530
531### Mantle をゲートウェイ経由でルーティング
532
533組織がモデルトラフィックを集中化された [LLM gateway](/ja/llm-gateway) を通じてルーティングし、AWS 認証情報をサーバー側に注入する場合、クライアント側認証を無効にして、Claude Code が SigV4 署名または `x-api-key` ヘッダーなしでリクエストを送信するようにします。
534
535```bash theme={null}
536export CLAUDE_CODE_USE_MANTLE=1
537export CLAUDE_CODE_SKIP_MANTLE_AUTH=1
538export ANTHROPIC_BEDROCK_MANTLE_BASE_URL=https://your-gateway.example.com
539```
540
541### Mantle 環境変数
542
543これらの変数は Mantle エンドポイントに固有です。完全なリストについては、[Environment variables](/ja/env-vars) を参照してください。
544
545| 変数 | 目的 |
546| :-------------------------------------- | :------------------------------------------- |
547| `CLAUDE_CODE_USE_MANTLE` | Mantle エンドポイントを有効にします。`1` または `true` に設定します。 |
548| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | デフォルト Mantle エンドポイント URL をオーバーライド |
549| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | プロキシセットアップのクライアント側認証をスキップ |
550| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Haiku クラスモデルの AWS リージョンをオーバーライド(Bedrock と共有) |
551
552## トラブルシューティング
553
554### SSO と企業プロキシでの認証ループ
555
556AWS SSO を使用する場合にブラウザタブが繰り返し生成される場合は、[settings file](/ja/settings) から `awsAuthRefresh` 設定を削除してください。これは、企業 VPN または TLS 検査プロキシが SSO ブラウザフローを中断した場合に発生する可能性があります。Claude Code は中断された接続を認証失敗として扱い、`awsAuthRefresh` を再実行し、無限ループします。
557
558ネットワーク環境が自動ブラウザベースの SSO フローに干渉する場合は、`awsAuthRefresh` に依存する代わりに、Claude Code を開始する前に手動で `aws sso login` を使用してください。
559
560### リージョンの問題
561
562リージョンの問題が発生した場合:
563
564* モデルの可用性を確認:`aws bedrock list-inference-profiles --region your-region`
565* サポートされているリージョンに切り替え:`export AWS_REGION=us-east-1`
566* クロスリージョンアクセスに推論プロファイルの使用を検討
567
568「on-demand throughput isn't supported」エラーが表示される場合:
569
570* モデルを [inference profile](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-support.html) ID として指定します
571
572Claude Code は Bedrock [Invoke API](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html) を使用し、Converse API はサポートしていません。
573
574### Mantle エンドポイントエラー
575
576`CLAUDE_CODE_USE_MANTLE` を設定した後、`/status` が `Amazon Bedrock (Mantle)` を表示しない場合、変数がプロセスに到達していません。Claude Code を起動したシェルでエクスポートされているか、[settings file](/ja/settings) の `env` ブロックで設定されていることを確認してください。
577
578有効な認証情報を持つ Mantle エンドポイントからの `403` は、AWS アカウントがリクエストしたモデルへのアクセスを許可されていないことを意味します。AWS アカウントチームに連絡してアクセスをリクエストしてください。
579
580モデル ID を名前付ける `400` は、そのモデルが Mantle で提供されていないことを意味します。Mantle は標準 Bedrock カタログとは別の独自のモデルラインアップを持っているため、`us.anthropic.claude-sonnet-4-6` などの推論プロファイル ID は機能しません。Mantle 形式の ID を使用するか、[両方のエンドポイントを有効にして](#mantle-を-invoke-api-と並行して実行)、Claude Code が各リクエストをモデルが利用可能なエンドポイントにルーティングするようにしてください。
581
582## 追加リソース
583
584* [Bedrock documentation](https://docs.aws.amazon.com/bedrock/)
585* [Bedrock pricing](https://aws.amazon.com/bedrock/pricing/)
586* [Bedrock inference profiles](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-support.html)
587* [Bedrock token burndown and quotas](https://docs.aws.amazon.com/bedrock/latest/userguide/quotas-token-burndown.html)
588* [Claude Code on Amazon Bedrock: Quick Setup Guide](https://community.aws/content/2tXkZKrZzlrlu0KfH8gST5Dkppq/claude-code-on-amazon-bedrock-quick-setup-guide)
589* [Claude Code Monitoring Implementation (Bedrock)](https://github.com/aws-solutions-library-samples/guidance-for-claude-code-with-amazon-bedrock/blob/main/assets/docs/MONITORING.md)