Skip to main content

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 จะพาคุณผ่านขั้นตอน:

  1. เปิดใช้งานโมเดล Anthropic ใน AWS account: ใน Amazon Bedrock console เปิด Model catalog เลือกโมเดล Anthropic และส่งแบบฟอร์ม
  2. เริ่ม Claude Code และเลือก Bedrock: รัน claude ที่ login prompt เลือก 3rd-party platform แล้ว Amazon Bedrock
  3. ทำตาม 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. ปักหมุดเวอร์ชันโมเดล

warning

ปักหมุดเวอร์ชันโมเดลเฉพาะเมื่อ 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

note

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 ของคุณ

แหล่งข้อมูลเพิ่มเติม