Claude Code บน Amazon Bedrock
เรียนรู้การกำหนดค่า Claude Code ผ่าน Amazon Bedrock รวมถึงการตั้งค่า, IAM configuration และการแก้ไขปัญหา
ข้อกำหนดเบื้องต้น
ก่อนกำหนดค่า Claude Code กับ Bedrock ตรวจสอบให้มี:
- AWS account ที่เปิดใช้งาน Bedrock access แล้ว
- สิทธิ์เข้าถึงโมเดล Claude ที่ต้องการ (เช่น Claude Sonnet 4.6) ใน Bedrock
- AWS CLI ติดตั้งและกำหนดค่าแล้ว (ไม่บังคับ)
- IAM permissions ที่เหมาะสม
ลงชื่อเข้าใช้กับ Bedrock
ถ้าคุณมี AWS credentials และต้องการเริ่มใช้ Claude Code ผ่าน Bedrock ตัวช่วย login จะพาคุณผ่านขั้นตอน:
- เปิดใช้งานโมเดล Anthropic ใน AWS account: ใน Amazon Bedrock console เปิด Model catalog เลือกโมเดล Anthropic และส่งแบบฟอร์ม
- เริ่ม Claude Code และเลือก Bedrock: รัน
claudeที่ login prompt เลือก 3rd-party platform แล้ว Amazon Bedrock - ทำตาม prompt: เลือกวิธี authenticate กับ AWS
หลังจากลงชื่อเข้าใช้แล้ว รัน /setup-bedrock ได้ตลอดเวลาเพื่อเปิด wizard อีกครั้ง
การตั้งค่าด้วยตนเอง
1. ส่งรายละเอียดกรณีการใช้งาน
ผู้ใช้ครั้งแรกต้องส่งรายละเอียดก่อน invoke โมเดล ทำครั้งเดียวต่อ AWS account
2. กำหนดค่า AWS Credentials
Claude Code ใช้ default AWS SDK credential chain กำหนด credentials ด้วยวิธีเหล่านี้:
ตัวเลือก A: AWS CLI configuration
aws configure
ตัวเลือก B: ตัวแปรสภาพแวดล้อม (access key)
export AWS_ACCESS_KEY_ID=your-access-key-id
export AWS_SECRET_ACCESS_KEY=your-secret-access-key
export AWS_SESSION_TOKEN=your-session-token
ตัวเลือก C: ตัวแปรสภาพแวดล้อม (SSO profile)
aws sso login --profile=<your-profile-name>
export AWS_PROFILE=your-profile-name
ตัวเลือก D: Bedrock API keys
export AWS_BEARER_TOKEN_BEDROCK=your-bedrock-api-key
3. กำหนดค่า Claude Code
ตั้งตัวแปรสภาพแวดล้อมต่อไปนี้เพื่อเปิดใช้ Bedrock:
# เปิดใช้งาน Bedrock integration
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1 # ไม่บังคับถ้า AWS profile ตั้ง region แล้ว
# ไม่บังคับ: override endpoint URL สำหรับ custom endpoints
# export ANTHROPIC_BEDROCK_BASE_URL=https://bedrock-runtime.us-east-1.amazonaws.com
4. ปักหมุดเวอร์ชันโมเดล
ปักหมุดเวอร์ชันโมเดลเฉพาะเมื่อ deploy ให้ผู้ใช้หลายคน โดยไม่มีการปักหมุด model alias เช่น sonnet และ opus จะแก้ไขเป็น default ที่สร้างไว้ใน Claude Code สำหรับ Bedrock
ตั้งตัวแปรสภาพแวดล้อมเหล่านี้เป็น Bedrock model ID เฉพาะ:
export ANTHROPIC_DEFAULT_OPUS_MODEL='us.anthropic.claude-opus-4-8'
export ANTHROPIC_DEFAULT_SONNET_MODEL='us.anthropic.claude-sonnet-4-6'
export ANTHROPIC_DEFAULT_HAIKU_MODEL='us.anthropic.claude-haiku-4-5-20251001-v1:0'
Claude Code ใช้โมเดลเริ่มต้นเหล่านี้เมื่อไม่มีการตั้งค่าการปักหมุด:
| ประเภทโมเดล | ค่าเริ่มต้น |
|---|---|
| โมเดลหลัก | us.anthropic.claude-sonnet-4-5-20250929-v1:0 |
| โมเดลขนาดเล็ก/เร็ว | เหมือนกับโมเดลหลัก |
IAM Configuration
สร้าง IAM policy ด้วย permissions ที่จำเป็นสำหรับ Claude Code:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowModelAndInferenceProfileAccess",
"Effect": "Allow",
"Action": [
"bedrock:InvokeModel",
"bedrock:InvokeModelWithResponseStream",
"bedrock:ListInferenceProfiles",
"bedrock:GetInferenceProfile"
],
"Resource": [
"arn:aws:bedrock:*:*:inference-profile/*",
"arn:aws:bedrock:*:*:application-inference-profile/*",
"arn:aws:bedrock:*:*:foundation-model/*"
]
}
]
}
การใช้งาน Mantle Endpoint
Mantle เป็น Amazon Bedrock endpoint ที่ให้บริการโมเดล Claude ผ่าน native Anthropic API shape แทน Bedrock Invoke API
Mantle ต้องใช้ Claude Code v2.1.94 หรือใหม่กว่า รัน claude --version เพื่อตรวจสอบ
เปิดใช้ Mantle:
export CLAUDE_CODE_USE_MANTLE=1
export AWS_REGION=us-east-1
การแก้ไขปัญหา
ปัญหาภูมิภาค
หากพบปัญหาเกี่ยวกับภูมิภาค:
- ตรวจสอบความพร้อมใช้งานของโมเดล:
aws bedrock list-inference-profiles --region your-region - สลับไปยังภูมิภาคที่รองรับ:
export AWS_REGION=us-east-1
ลูปการ Authentication กับ SSO และ Proxy องค์กร
หากแท็บเบราว์เซอร์เปิดซ้ำๆ เมื่อใช้ AWS SSO ลบการตั้งค่า awsAuthRefresh จาก settings file ของคุณ