תיעוד 102
Claude Code ב-Amazon Bedrock
למדו איך להגדיר את Claude Code דרך Amazon Bedrock, כולל התקנה, הגדרת IAM ופתרון בעיות.
פורסים את Claude Code בכל הארגון? דברו עם המכירות על תוכניות ארגוניות, SSO וחיוב מרכזי.
#דרישות מוקדמות
לפני שמגדירים את Claude Code עם Amazon Bedrock, ודאו שיש לכם:
- חשבון AWS עם גישה מופעלת ל-Amazon Bedrock
- גישה למודלי Claude הרצויים (לדוגמה, Claude Sonnet 4.6) ב-Amazon Bedrock
- AWS CLI מותקן ומוגדר (אופציונלי, נדרש רק אם אין לכם מנגנון אחר לקבלת אישורים)
- הרשאות IAM מתאימות
כדי להתחבר עם אישורי Amazon Bedrock שלכם, עקבו אחרי התחברות עם Amazon Bedrock בהמשך. כדי לפרוס את Claude Code בצוות, השתמשו בשלבי ההגדרה הידנית וקבעו את גרסאות המודל לפני הפריסה.
#התחברות עם Bedrock
אם יש לכם אישורי AWS ואתם רוצים להתחיל להשתמש ב-Claude Code דרך Amazon Bedrock, אשף ההתחברות מלווה אתכם. את דרישות הצד של AWS משלימים פעם אחת לכל חשבון. האשף מטפל בצד של Claude Code.
1. הפעלת מודלים של Anthropic בחשבון AWS
במסוף Amazon Bedrock, פתחו את Model catalog, בחרו מודל של Anthropic, ושלחו את טופס מקרה השימוש. הגישה ניתנת מיד אחרי השליחה. ראו שליחת פרטי מקרה שימוש עבור AWS Organizations והגדרת IAM עבור ההרשאות שהתפקיד שלכם צריך.
2. הפעלת Claude Code ובחירת Amazon Bedrock
הריצו claude. בהנחיית ההתחברות, בחרו 3rd-party platform, ואז Amazon Bedrock. אם אתם כבר מחוברים ורואים את הנחיית הצ'אט במקום זאת, הריצו /setup-bedrock כדי לפתוח את האשף. עד ש-CLAUDE_CODE_USE_BEDROCK=1 מוגדר, Claude Code מסתיר את הפקודה מתפריט הפקודות. הקלידו אותה במלואה.
3. מעקב אחרי הנחיות האשף
בחרו איך אתם מאמתים מול AWS: פרופיל AWS שזוהה מתיקיית ~/.aws, מפתח API של Amazon Bedrock, מפתח גישה וסוד, או אישורים שכבר נמצאים בסביבה. האשף שואל את האזור, בודק אילו מודלי Claude החשבון יכול להפעיל, ומאפשר לקבע אותם. הוא שומר את התוצאה בבלוק env של קובץ הגדרות המשתמש, כך שאין צורך לייצא משתני סביבה בעצמכם.
אחרי ההתחברות, הריצו /setup-bedrock בכל עת כדי לפתוח מחדש את האשף ולשנות אישורים, אזור או קיבוע מודלים. שלב קיבוע המודל מתחיל מהמודלים המקובעים כרגע. האשף כותב אל ~/.claude/settings.json, או אל $CLAUDE_CONFIG_DIR/settings.json כש-CLAUDE_CONFIG_DIR מוגדר.
#הגדרה ידנית
כדי להגדיר את Amazon Bedrock דרך משתני סביבה במקום האשף, למשל ב-CI או בפריסה ארגונית מתוסרטת, עקבו אחרי השלבים הבאים.
#1. שליחת פרטי מקרה שימוש
לפני שמפעילים מודל של Anthropic בפעם הראשונה, שלחו פרטי מקרה שימוש. עושים זאת פעם אחת לכל חשבון AWS.
- ודאו שיש לכם את הרשאות IAM הנכונות שמתוארות בהמשך
- עברו אל מסוף Amazon Bedrock
- בחרו מודל של Anthropic מ-Model catalog
- מלאו את טופס מקרה השימוש. הגישה ניתנת מיד אחרי השליחה.
אם אתם משתמשים ב-AWS Organizations, אפשר לשלוח את הטופס פעם אחת מחשבון הניהול באמצעות ה-API PutUseCaseForModelAccess. הקריאה הזו דורשת את הרשאת IAM bedrock:PutUseCaseForModelAccess. האישור מתרחב לחשבונות ילד באופן אוטומטי.
#2. הגדרת אישורי AWS
Claude Code משתמש בשרשרת אישורי ברירת המחדל של AWS SDK. אם המכונה כבר מספקת אישורים לשרשרת הזו, למשל פרופיל מופע של Amazon EC2 או אישורי משימה של Amazon ECS, דלגו אל שלב 3.
AWS מזהיר מפני שימוש במפתחות גישה של משתמש IAM כשמפתחים תוכנה ייעודית או עובדים עם נתונים אמיתיים. הגדירו את האישורים באחת מהשיטות האלה:
aws configure: שמירת מפתח גישה של משתמש IAM בפרופיל בתיקיית~/.aws- משתני סביבה של מפתח גישה: הגדרת מפתח גישה, או אישורים זמניים עם אסימון סשן, במעטפת הנוכחית בלבד
- פרופיל SSO: התחברות דרך IAM Identity Center בדפדפן וקבלת אישורים זמניים. השתמשו בשיטה הזו אם אתם ניגשים לחשבון AWS דרך IAM Identity Center.
- אישורי AWS Management Console: התחברות דרך הדפדפן עם אישורי AWS Management Console וקבלת אישורים זמניים. AWS ממליצה על השיטה הזו אם אתם ניגשים לחשבון AWS כמשתמש root, כמשתמש IAM, או דרך federation עם IAM.
- מפתח API של Amazon Bedrock: אימות עם אסימון bearer שעובד רק עבור Amazon Bedrock, במקום אישורי AWS
#שימוש ב-aws configure
הריצו aws configure והזינו את מזהה מפתח הגישה, מפתח הגישה הסודי ואזור ברירת המחדל כשמתבקשים:
aws configureAWS CLI שומר את המפתח בפרופיל default ב-~/.aws/credentials, ומשם שרשרת האישורים קוראת אותו.
#ייצוא מפתח גישה
ייצאו את מפתח הגישה כמשתני סביבה. AWS_SESSION_TOKEN נדרש רק עם אישורים זמניים, אז השמיטו את השורה הזו אם מפתח הגישה שייך למשתמש IAM:
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#שימוש בפרופיל SSO
צרו פרופיל עם aws configure sso אם אין לכם אחד. אחר כך התחברו אל IAM Identity Center והגדירו AWS_PROFILE כדי ששרשרת האישורים תשתמש בפרופיל הזה. החליפו את your-profile-name בשם פרופיל AWS שלכם לפני הרצת הפקודות האלה.
aws sso login --profile=your-profile-name
export AWS_PROFILE=your-profile-nameClaude Code מבקש אישורי תפקיד מאזור IAM Identity Center ששמו מופיע ב-sso_region של הפרופיל, והוא לא חייב להתאים לאזור שבו מריצים את Amazon Bedrock.
#שימוש באישורי AWS Management Console
הפקודה aws login דורשת AWS CLI 2.32.0 או גרסה חדשה יותר. למדיניות IAM שהזהות שלכם צריכה, ראו את הוראות AWS עבור aws login.
הריצו את הפקודה כדי להתחבר דרך הדפדפן עם אישורי AWS Management Console:
aws loginהסשן תקף עד 12 שעות, ואחריהן מריצים שוב aws login.
#שימוש במפתח API של Amazon Bedrock
מפתח API של Amazon Bedrock הוא אסימון bearer שמאמת את הבקשות במקום אישורי AWS. AWS מנפיקה שני סוגי מפתחות:
- מפתחות לטווח קצר: נמשכים עד 12 שעות. AWS מעדיפה אותם על פני מפתחות לטווח ארוך בסביבות ייצור.
- מפתחות לטווח ארוך: נמשכים עד תאריך תפוגה שאתם קובעים. AWS ממליצה עליהם רק לחקירה.
ייצאו את המפתח כ-AWS_BEARER_TOKEN_BEDROCK:
export AWS_BEARER_TOKEN_BEDROCK=your-bedrock-api-keyכש-AWS_BEARER_TOKEN_BEDROCK מוגדר, Claude Code מאמת עם המפתח ולא פותר את שרשרת האישורים, גם אם קיימים אישורי AWS אחרים. למידע נוסף על מפתחות API של Amazon Bedrock.
#שמירת אישורים במטמון וזמן קצוב לפתרון
Claude Code פותר את שרשרת ספקי האישורים המוגדרת כברירת מחדל של AWS פעם אחת ושומר את האישורים שנפתרו בזיכרון. הוא עושה בהם שימוש חוזר עד חמש דקות לפני שהם פגים, או למשך שעה אחת כשאין להם תפוגה, כך שפרופיל שמגובה ב-SSO מבקש אישורים מ-IAM Identity Center בערך פעם אחת לכל משך חיי האישור. שגיאת אישור מה-API מנקה את המטמון, והניסיון החוזר פותר אישורים חדשים.
המטמון מכסה כל שיטת אישורים שמופיעה בתחילת השלב הזה, חוץ ממפתח API של Amazon Bedrock, שלא משתמש בשרשרת הספקים. כדי לפתור את השרשרת בכל בקשה במקום זאת, הגדירו CLAUDE_CODE_SKIP_AWS_CRED_CACHE=1.
הפתרון שממלא את המטמון נפסק אחרי 60 שניות. אם שלב בשרשרת נתקע, למשל עוזר credential_process שמחכה לקלט שהוא לא יכול לקבל, הבקשה נכשלת עם AWS default-chain credential resolve timed out. אם השרשרת מריצה התחברות אינטראקטיבית שבאמת צריכה יותר זמן, כמו SSO מבוסס דפדפן עם MFA דרך מעטפת כמו aws-vault, העלו את המגבלה באלפיות שנייה עם CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS. כש-CLAUDE_CODE_SKIP_AWS_CRED_CACHE=1 מוגדר, כל בקשת API פותרת את השרשרת בלי המגבלה הזו.
חוץ מהמקרה שבו מאמתים עם מפתח API של Amazon Bedrock, אשף ההגדרה מחיל את אותה מגבלה על כל קריאת AWS שהוא מבצע בזמן אימות האישורים, ועל חיפוש האישורים לפני כל בדיקת מודל. במהלך אימות האישורים, בדיקה שחורגת מהמגבלה נכשלת עם Timed out after 60s waiting for AWS.
#הגדרת אישורים מתקדמת
Claude Code תומך ברענון אישורים אוטומטי עבור AWS SSO וספקי זהות ארגוניים. הוסיפו את ההגדרות האלה לקובץ ההגדרות של Claude Code (ראו Settings למיקומי הקבצים).
לשתי ההגדרות האלה יש תנאי הפעלה שונים:
awsAuthRefresh: רץ רק כש-Claude Code מזהה שאישורי AWS פגו, בין אם מקומית לפי חותמת הזמן שלהם ובין אם כשה-API מחזיר שגיאת אישור, ואז מנסה שוב את הבקשה עם אישורים מרעננים.awsCredentialExport: רץ בתחילת הסשן ובכל טעינה מחדש של אישורים, גם כשהאישורים בשרשרת ספקי האישורים המוגדרת כברירת מחדל של AWS עדיין תקפים. השתמשו בזה כשחשבון Amazon Bedrock דורש אישורים בין חשבונות ששונים מאלה ששרשרת הספקים המוגדרת כברירת מחדל הייתה פותרת.
לפני הרצת הפקודה awsAuthRefresh, Claude Code מבצע קריאת STS GetCallerIdentity כדי לאשר שהאישורים באמת פגו, ומדלג על הפקודה כשהם עדיין עובדים. Claude Code שולח את הבדיקה הזו דרך הגדרת הפרוקסי, ומכבד את HTTPS_PROXY ואת NO_PROXY. לפני v2.1.239, Claude Code שלח את הבדיקה הזו ישירות ונתקע בהפעלה ברשתות שמאפשרות יציאה רק דרך פרוקסי.
#דוגמת הגדרה
{
"awsAuthRefresh": "aws sso login --profile myprofile",
"env": {
"AWS_PROFILE": "myprofile"
}
}#הסבר הגדרות התצורה
awsAuthRefresh: השתמשו בזה לפקודות שמשנות את תיקיית .aws, כמו עדכון אישורים, מטמון SSO או קובצי תצורה. הפלט של הפקודה מוצג למשתמש, אבל קלט אינטראקטיבי לא נתמך. זה עובד היטב לזרימות SSO מבוססות דפדפן, שבהן ה-CLI מציג כתובת או קוד ואתם משלימים את האימות בדפדפן.
awsCredentialExport: השתמשו בזה רק אם אי אפשר לשנות את .aws וחייבים להחזיר אישורים ישירות. הפלט נלכד בשקט ולא מוצג למשתמש. הפקודה חייבת להפיק JSON בפורמט הזה:
{
"Credentials": {
"AccessKeyId": "value",
"SecretAccessKey": "value",
"SessionToken": "value",
"Expiration": "2026-01-01T00:00:00Z"
}
}הפלט השטוח מ-aws configure export-credentials --format process מתקבל גם הוא, עם אותם מפתחות ברמה העליונה במקום מקוננים תחת Credentials.
Expiration הוא אופציונלי. כשהפקודה מחזירה Expiration תקין בפורמט ISO 8601, Claude Code שומר את האישורים במטמון עד חמש דקות לפני הזמן הזה. בלעדיו, האישורים נשמרים במטמון לשעה אחת.
כשמגדירים awsCredentialExport בלי awsAuthRefresh, Claude Code משתמש באישורים שיוצאו ישירות ולא פותר מחדש את שרשרת ספקי האישורים המוגדרת כברירת מחדל של AWS בהפעלה.
#3. הגדרת Claude Code
הגדירו את משתני הסביבה הבאים כדי להפעיל את Amazon Bedrock:
# Enable Bedrock integration
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1 # optional if your AWS profile already sets a region
# Optional: Override the AWS region for the small/fast model (Bedrock and Mantle).
# On Bedrock, has no effect without ANTHROPIC_DEFAULT_HAIKU_MODEL
# or the deprecated ANTHROPIC_SMALL_FAST_MODEL set.
export ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION=us-west-2
# Optional: Override the Bedrock endpoint URL for custom endpoints or gateways
# export ANTHROPIC_BEDROCK_BASE_URL=https://bedrock-runtime.us-east-1.amazonaws.comכשמפעילים את Amazon Bedrock עבור Claude Code, שימו לב לדברים הבאים:
צריך להגדיר
AWS_REGIONרק כדי לעקוף את האזור של פרופיל AWS, או כשלפרופיל אין אזור. Claude Code פותר את האזור בסדר הזה:AWS_REGIONAWS_DEFAULT_REGION- ה-
regionשמוגדר בפרופיל AWS הפעיל, שנקרא קודם מקובץ האישורים המשותף של AWS ואחר כך מקובץ התצורה המשותף, בהתאם לקדימות של AWS SDK us-east-1
אם ערך מאחד מהמקורות האלה לא בצורת שם אזור, Claude Code מתייחס אליו כלא מוגדר וממשיך בסדר. לדוגמה, Claude Code מתייחס לערך שמכיל לוכסן, נקודה או רווח כלא מוגדר.
הפרופיל הפעיל הוא
AWS_PROFILEאם הוא מוגדר, אחרתdefault. הגדירוAWS_SHARED_CREDENTIALS_FILEאוAWS_CONFIG_FILEכדי להצביע על נתיבי קבצים שאינם ברירת המחדל.הריצו
/statusכדי לראות את האזור שנפתר. כשהאזור הגיע מקובצי התצורה של AWS או מברירת המחדל, Claude Code גם מציין את המקור בפלט של/status.כשמשתמשים ב-Amazon Bedrock, הפקודה
/logoutלא זמינה כי האימות מטופל דרך אישורי AWS.כלי WebSearch לא זמין ב-Amazon Bedrock. ראו התנהגות כלי WebSearch.
אפשר להשתמש בקובצי הגדרות למשתני סביבה כמו
AWS_PROFILEשלא רוצים שידלפו לתהליכים אחרים. ראו Settings למידע נוסף.
#4. קיבוע גרסאות מודל
[!WARNING]
קבעו גרסאות מודל ספציפיות כשפורסים למספר משתמשים. בלי קיבוע, כינויי מודל כמו
sonnetו-opusנפתרים לברירת המחדל המובנית של Claude Code עבור Amazon Bedrock, שעשויה לפגר אחרי המהדורה החדשה ביותר וייתכן שעדיין אינה זמינה בחשבון שלכם. Claude Code עובר לגיבוי למודל מוקדם יותר או מרמה נמוכה יותר בהפעלה כשברירת המחדל אינה זמינה, אבל קיבוע מאפשר לכם לשלוט מתי המשתמשים שלכם עוברים למודל חדש.
הגדירו את משתני הסביבה האלה למזהי מודל ספציפיים של Amazon Bedrock.
בלי ANTHROPIC_DEFAULT_OPUS_MODEL, הכינוי opus ב-Amazon Bedrock נפתר ל-Opus 5.5, ובלי ANTHROPIC_DEFAULT_SONNET_MODEL, הכינוי sonnet נפתר ל-Sonnet 4.5. הדוגמה הזו מקבעת כל כינוי לגרסה ספציפית:
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'המזהים האלה משתמשים בקידומת פרופיל הסקה חוצה אזורים us.. אם אתם משתמשים בקידומת אזור אחרת או בפרופילי הסקה של יישום, התאימו בהתאם. באזורי AWS GovCloud, השתמשו בקידומת us-gov..
כדי לשמור על מודלי ברירת המחדל המובנים ולשנות רק את הקידומת המועדפת שלהם, הגדירו את ANTHROPIC_BEDROCK_REGION_PREFIX במקום קיבוע. ההבדל נראה במה שהכינוי opus נפתר אליו:
| אתם מגדירים | הכינוי opus נפתר אל |
|---|---|
ANTHROPIC_DEFAULT_OPUS_MODEL='us.anthropic.claude-opus-4-8' | us.anthropic.claude-opus-4-8, המזהה המדויק שקיבעתם |
ANTHROPIC_BEDROCK_REGION_PREFIX=eu | eu.anthropic.claude-opus-5-5, ברירת המחדל המובנית עם הקידומת המועדפת שלכם |
למזהי מודל נוכחיים וישנים, ראו סקירת מודלים. לרשימה המלאה של משתני סביבה לקיבוע, ראו הגדרת מודל.
Claude Code משתמש במודלי ברירת המחדל האלה כשלא מוגדרים משתני קיבוע:
| סוג מודל | מודל ברירת מחדל |
|---|---|
| מודל ראשי | Opus 5.5, לדוגמה us.anthropic.claude-opus-5-5 באזור us-* |
| מודל קטן/מהיר | Sonnet 4.5, לדוגמה us.anthropic.claude-sonnet-4-5-20250929-v1:0 באזור us-* |
לפני v2.1.280, המודל הראשי ב-Amazon Bedrock היה כברירת מחדל Opus 5, והכינוי opus נפתר ל-Opus 5 החל מ-v2.1.219.
משימות רקע כמו יצירת כותרת סשן משתמשות במודל הקטן/המהיר, בדרך כלל מודל מסוג Haiku. ב-Amazon Bedrock, Claude Code משתמש במודל Sonnet ברירת המחדל למשימות רקע כי ייתכן ש-Haiku אינו מופעל בכל חשבון או אזור. שתי בחירות משנות איזה מודל מריץ אותן:
- כשאתם בוחרים מודל ראשי עם
--model,ANTHROPIC_MODEL, או ההגדרהmodel, משימות רקע משתמשות במודל הזה. כש-Claude Code מתחיל את הסשן על המודל שהגדרתם עםANTHROPIC_DEFAULT_MODEL, משימות רקע משתמשות גם במודל הזה. הגדרתANTHROPIC_DEFAULT_OPUS_MODELבליANTHROPIC_DEFAULT_SONNET_MODELנחשבת גם היא לבחירה, כי מודל Sonnet המובנה עשוי שלא להיות מופעל בחשבון שמכוון את ה-Opus שלו בעצמו. - כדי להשתמש ב-Haiku למשימות רקע, הגדירו את
ANTHROPIC_DEFAULT_HAIKU_MODELלמזהה מודל שזמין בחשבון שלכם.
[!WARNING]
למודלי Opus יש מחיר גבוה יותר לטוקן מאשר למודלי Sonnet, כך שאם לא תקבעו מודל ראשי, תחויבו בתעריף Opus. כדי להשתמש ב-Sonnet 4.5 כמודל הראשי, הגדירו את
ANTHROPIC_MODELלמזהה המודל המלא שלו. פריסה שמכוונת את ברירת המחדל עםANTHROPIC_DEFAULT_SONNET_MODELואינה מגדירה אתANTHROPIC_DEFAULT_OPUS_MODELשומרת על מודל Sonnet המכוון שלה כברירת המחדל.
כדי להתאים מודלים עוד, השתמשו באחת מהשיטות האלה:
# שימוש במזהה פרופיל הסקה
export ANTHROPIC_MODEL='us.anthropic.claude-sonnet-4-6'
export ANTHROPIC_DEFAULT_HAIKU_MODEL='us.anthropic.claude-haiku-4-5-20251001-v1:0'
# שימוש ב-ARN של פרופיל הסקה של יישום
export ANTHROPIC_MODEL='arn:aws:bedrock:us-east-2:your-account-id:application-inference-profile/your-model-id'
# אופציונלי: השבתת שמירת פרומפט במטמון אם צריך
# export DISABLE_PROMPT_CACHING=1
# אופציונלי: בקשת TTL של מטמון פרומפט לשעה אחת במקום ברירת המחדל של 5 דקות
# export ENABLE_PROMPT_CACHING_1H=1TTL של מטמון לשעה אחת מחויב בתעריף גבוה יותר מברירת המחדל של 5 דקות. ראו משך חיי המטמון. כדי להגדיר TTL שונים לשיחה הראשית ולבקשות ש-Claude Code שולח מחוץ לה, בחרו את ה-TTL בעצמכם.
[!NOTE]
שמירת פרומפט במטמון עשויה שלא להיות זמינה בכל אזורי Amazon Bedrock. אם ספירות טוקני המטמון נשארות באפס, בדקו מודלים, אזורים ומגבלות נתמכים בתיעוד של Amazon Bedrock.
#מיפוי כל גרסת מודל לפרופיל הסקה
משתני הסביבה ANTHROPIC_DEFAULT_*_MODEL מגדירים פרופיל הסקה אחד לכל משפחת מודלים. אם הארגון שלכם צריך לחשוף כמה גרסאות של אותה משפחה בבורר /model, כל אחת מנותבת ל-ARN של פרופיל הסקה של יישום משלה, השתמשו בהגדרה modelOverrides בקובץ ההגדרות במקום זאת.
הדוגמה הזו ממפה ארבע גרסאות Opus ל-ARN נפרדים כדי שמשתמשים יוכלו לעבור ביניהן בלי לעקוף את פרופילי ההסקה של הארגון:
{
"modelOverrides": {
"claude-opus-4-7": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-47-prod",
"claude-opus-4-6": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-46-prod",
"claude-opus-4-5-20251101": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-45-prod",
"claude-opus-4-1-20250805": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-41-prod"
}
}כשמשתמש בוחר אחת מהגרסאות האלה ב-/model, Claude Code קורא ל-Amazon Bedrock עם ה-ARN הממופה. אותו מיפוי חל כשאתם מעבירים את מזהה המודל של Anthropic ישירות דרך --model או ANTHROPIC_MODEL. גרסאות בלי עקיפה עוברות לגיבוי אל מזהה המודל המובנה של Amazon Bedrock או אל כל פרופיל הסקה תואם שמתגלה בהפעלה. לפני v2.1.200, ערכי --model ו-ANTHROPIC_MODEL הגיעו ל-Amazon Bedrock כפי שהם בלי לעבור דרך מפת העקיפות. ראו עקיפת מזהי מודל לפי גרסה לפרטים על האופן שבו עקיפות פועלות יחד עם availableModels והגדרות מודל אחרות.
#בדיקות מודל בהפעלה
כש-Claude Code מופעל עם Amazon Bedrock מוגדר, הוא מוודא שהמודלים שהוא מתכוון להשתמש בהם נגישים בחשבון שלכם.
ייתכן שקיבעתם גרסת מודל ישנה יותר מברירת המחדל הנוכחית של Claude Code. אם החשבון שלכם יכול להפעיל את הגרסה החדשה יותר, Claude Code מבקש מכם לעדכן את הקיבוע. קבלה כותבת את מזהה המודל החדש לקובץ הגדרות המשתמש ומפעילה מחדש את Claude Code. דחייה נזכרת עד שינוי גרסת ברירת המחדל הבא.
Claude Code לא בודק ולא מבקש עבור הקיבועים האלה:
- קיבוע בבלוק
envשל הגדרות מנוהלות - קיבוע שמצביע ל-ARN של פרופיל הסקה של יישום, כי המנהל שלכם מנהל אותו
אם בקשת העדכון עדיין מופיעה עבור קיבוע בהגדרות מנוהלות, עדכנו את Claude Code ל-v2.1.314 או חדש יותר. לפני v2.1.314, הקיבוע המנוהל נשאר בתוקף אחרי שקיבלתם, כך שהבקשה חזרה בהפעלה הבאה.
אם לא קיבעתם מודל וברירת המחדל הנוכחית אינה זמינה בחשבון שלכם, Claude Code עובר לגיבוי לסשן הנוכחי ומציג הודעה. הוא מנסה קודם גרסאות מוקדמות יותר של מודל ברירת המחדל, וכשברירת המחדל היא מודל Opus ואין גרסת Opus זמינה, הוא עובר לגיבוי אל מודל Sonnet ברירת המחדל. הגיבוי אינו נשמר. הפעילו את המודל החדש יותר בחשבון Amazon Bedrock שלכם או קבעו גרסה כדי להפוך את הבחירה לקבועה.
#התחלת סשן על מודל ספציפי
כשאתם מתחילים את הסשן על גרסת Sonnet או Opus ספציפית, לדוגמה עם --model, ANTHROPIC_MODEL, או ההגדרה model, הגרסה הזו פועלת כברירת המחדל המקובעת של הסשן עבור הכינוי sonnet או opus התואם. Claude Code מדלג על בדיקת הזמינות של ברירת המחדל המובנית שהמודל שלכם מחליף ומתחיל על המודל שהגדרתם, בלי הודעת גיבוי.
אלה לא פועלים כקיבועים כשאתם מתחילים סשן עליהם:
- כינוי מודל כמו
opus - מזהה מודל ש-Claude Code לא מזהה, כמו ARN של פרופיל הסקה של יישום
#סירובי מודל שנזכרים
כשבדיקות המודל בהפעלה מוצאות מודל שהחשבון שלכם לא יכול להפעיל, Claude Code יכול לזכור את הסירוב במכונה הזו עד יום. אחרי שעברו עשר דקות מהבדיקה האחרונה, Claude Code בודק שוב בהפעלה סירוב שנזכר של מודל ברירת מחדל נוכחי. ברירת מחדל שהמנהל שלכם מפעיל מחדש חוזרת אז. כדי לכבות את הזיכרון, הגדירו CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY=1.
#כשהארגון שלכם אוכף רשימת מודלים מותרים
אם אתם מגדירים enforceAvailableModels בהגדרות מנוהלות, בדיקות המודל בהפעלה משתמשות רק במודלים שרשימת availableModels שלכם מתירה. זה חל על Amazon Bedrock Invoke API ודורש Claude Code v2.1.287 או חדש יותר. רשימה בלי enforceAvailableModels לא מגבילה את הבדיקות האלה.
הבדיקות משוות כל רשומה למזהה פרופיל ההסקה שהן היו שולחות, כולל קידומת האזור שלו, אז כתבו את הרשימה במזהים האלה. הדוגמה הזו מתירה את Opus 4.8 ואת Sonnet 4.5 לפריסה שהמודלים שלה נפתרים לפרופילים us.:
{
"availableModels": ["us.anthropic.claude-opus-4-8", "us.anthropic.claude-sonnet-4-5-20250929-v1:0"],
"enforceAvailableModels": true
}לכינויים, קידומות גרסה ורשומות modelOverrides, ראו קיבוע מודלים לפריסות צד שלישי.
#כשמודל מושבת באמצע סשן
אם החשבון שלכם מאבד גישה למודל שהסשן רץ עליו, לדוגמה כי מנהל משבית אותו בחשבון Amazon Bedrock שלכם, Claude Code מעביר את הסשן למודל אחר במקום להכשיל כל בקשה, ומציג Switched to <fallback> because <model> is not available. הוא מנסה את אותם מודלים כמו הגיבוי בהפעלה: קודם גרסאות מוקדמות יותר של אותה רמה, ולסשן Opus בלי גרסת Opus זמינה, את מודל Sonnet ברירת המחדל.
המעבר חל רק על רמה שלא קיבעתם, אותו תנאי כמו הגיבוי בהפעלה. סשן על גרסה ספציפית שבחרתם, או על ARN של פרופיל הסקה של יישום, שומר על המודל שלו, ובלי שרשרת מודלי גיבוי, הבקשה נכשלת. במצב אוטומטי, Claude Code עובר רק למודל שמצב אוטומטי תומך בו ב-Amazon Bedrock. אם אף אחד מהמודלים האלה אינו זמין גם הוא, הבקשה נכשלת עם AWS authentication failed ורמז להפעיל את המודל.
שרשרת מודלי גיבוי שאתם מגדירים מחליפה את מעבר הרמה: בסירובים האלה Claude Code עובר לגיבוי שהגדרתם. כדי שבקשות שנדחו ייכשלו במקום לעבור, הגדירו CLAUDE_CODE_DISABLE_MODEL_ACCESS_FALLBACK=1. שרשרת גיבוי שהגדרתם עדיין עוברת בסירובים האלה. הסירו גם את השרשרת אם אתם רוצים שכל בקשה שנדחתה תיכשל.
#קידומות של פרופילי הסקה חוצי אזורים
ב-Invoke API של Amazon Bedrock, Claude Code פותר את מודלי ברירת המחדל המובנים שלו למזהי פרופיל הסקה חוצה אזורים. כדי לנתב גרסאות מודל דרך פרופילי ההסקה שלכם, ראו מיפוי כל גרסת מודל לפרופיל הסקה. הטבלה הזו מציגה את הקידומת ש-Claude Code מעדיף לכל אזור AWS שנפתר:
| אזור AWS | קידומת |
|---|---|
us-gov-* (AWS GovCloud) | us-gov. |
us-* | us. |
eu-* | eu. |
ap-* | apac. |
| כל שאר האזורים | global. |
הגדירו את ANTHROPIC_BEDROCK_REGION_PREFIX כדי לבחור את הקידומת ש-Claude Code מנסה ראשונה. כש-Claude Code יכול לבדוק זמינות פרופיל ולא מוצא פרופיל תואם למודל, הוא עובר לגיבוי כמתואר בסדר הפתרון למטה. ערכים תקינים הם us, eu, apac, jp, au ו-global. לדוגמה, הגדירו אותו ל-global כשבחשבון שלכם מופעלים פרופילים global. אבל Claude Code היה גוזר קידומת לפי אזור גאוגרפי מאזור ה-AWS שלכם. נדרש Claude Code v2.1.224 או חדש יותר.
הדוגמה הזו מנתבת את מודלי ברירת המחדל דרך פרופילים global.:
export ANTHROPIC_BEDROCK_REGION_PREFIX=global
# באזור us-*, המודל הראשי נפתר עכשיו אל
# global.anthropic.claude-opus-5-5 במקום us.anthropic.claude-opus-5-5הקידומת המועדפת היא העדפה, לא ערובה, בין אם היא מגיעה מהאזור שלכם ובין אם מהמשתנה. האופן שבו Claude Code מיישם אותה תלוי בשאלה אם הוא יכול לבדוק זמינות פרופיל בחשבון שלכם:
- כש-Claude Code יכול לפרט את פרופילי ההסקה בחשבון שלכם, הוא פותר כל מודל בסדר הזה:
- הפרופיל עם הקידומת המועדפת שלכם.
- כל פרופיל תואם, למודל שאין לו פרופיל עם הקידומת הזו.
- מזהה המודל המובנה עם הקידומת המועדפת שלכם, למודל שאין לו שום פרופיל תואם. Claude Code מיישם את המזהה הזה בלי לבדוק זמינות בשלב הזה. בדיקות המודל בהפעלה עדיין מכסות את מודלי ברירת המחדל של הסשן.
- כשגילוי פרופילים אינו זמין, Claude Code מיישם את הקידומת בלי לבדוק זמינות. אם בחשבון שלכם אין פרופילי הסקה עם הקידומת הזו מופעלים, הבקשות נכשלות עם שגיאת 400.
Claude Code לא משכתב מזהי פרופיל הסקה או ARN של Amazon Bedrock שאתם מגדירים בעצמכם, או ערכי modelOverrides. מזהי מודל בפורמט Anthropic נפתרים דרך אותו מיפוי כמו בורר /model. Claude Code גם מתעלם מהמשתנה בשני מקרים:
- באזורי AWS GovCloud, Claude Code תמיד משתמש ב-
us-gov., הקידומת היחידה שמנתבת בתוך מחיצת GovCloud. - כשאתם מגדירים ערך שאינו אחד מהערכים התקינים, Claude Code עובר לגיבוי אל הקידומת המועדפת שנגזרת מהאזור.
#הגדרת IAM
צרו מדיניות IAM עם ההרשאות הנדרשות ל-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/*"
]
},
{
"Sid": "AllowMarketplaceSubscription",
"Effect": "Allow",
"Action": [
"aws-marketplace:ViewSubscriptions",
"aws-marketplace:Subscribe"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:CalledViaLast": "bedrock.amazonaws.com"
}
}
}
]
}להרשאות מגבילות יותר, אפשר להגביל את Resource ל-ARN ספציפיים של פרופילי הסקה.
bedrock:GetInferenceProfile מאפשר ל-Claude Code לפתור ARN של פרופיל הסקה של יישום למודל היסוד שעומד מאחוריו, וזה משמש לבחירת צורת הבקשה הנכונה למודל הזה.
אם לטוקן חסרה ההרשאה הזו, Claude Code מתאושש אוטומטית על ידי ניסיון חוזר אחד עם הצורה החלופית, כך שהבקשות עדיין מצליחות אבל כל מודל חדש מוסיף הלוך ושוב נוסף. מתן ההרשאה מונע את הניסיון החוזר. זה חל לרוב על פריסות AWS_BEARER_TOKEN_BEDROCK, שבהן מדיניות הטוקן בדרך כלל צרה יותר מתפקיד IAM מלא.
לפרטים, ראו תיעוד IAM של Amazon Bedrock.
[!NOTE]
צרו חשבון AWS ייעודי ל-Claude Code כדי לפשט מעקב עלויות ובקרת גישה.
#חלון הקשר של 1M טוקנים
מודלי Fable, וגם Sonnet 5 ואילך, וגם Opus 4.7 ואילך, רצים עם חלון ההקשר של 1M טוקנים כברירת מחדל ב-Amazon Bedrock, גם ב-Invoke API וגם בנקודת הקצה Mantle, בלי צורך בסיומת [1m]. ARN של פרופיל הסקה של אפליקציה מקבל את חלון ה-1M כאשר רשומת modelOverrides ממפה את המודל שלה אליו. כדי לשמור על חלון של 200K, הגדירו את CLAUDE_CODE_DISABLE_1M_CONTEXT=1.
Opus 4.6 ו-Sonnet 4.6 ב-Invoke API מגיעים לחלון של 1M כאשר בוחרים את וריאנט ה-[1m] שלהם. אשף ההגדרה מציע אפשרות של הקשר 1M כאשר הוא מצמיד מודלים. כדי להפעיל זאת עבור מודל שמצמידים ידנית, הוסיפו [1m] למזהה המודל. ראו הצמדת מודלים לפריסות של צד שלישי לפרטים, כולל איך להשתמש בחלון של 1M בלי לשנות את ההצמדה.
לפני v2.1.287, מודלי Fable וגם Opus 4.7 ואילך רצו עם חלון של 200K כברירת מחדל ב-Invoke API, והגיעו שם לחלון של 1M באמצעות סיומת [1m].
#רמות שירות
רמות השירות של Amazon Bedrock מאפשרות לאזן עלות מול השהיה. הגדירו את ANTHROPIC_BEDROCK_SERVICE_TIER ל-default, ל-flex או ל-priority:
export ANTHROPIC_BEDROCK_SERVICE_TIER=priorityClaude Code שולח את זה ככותרת X-Amzn-Bedrock-Service-Tier בכל בקשת Invoke API מסשן שבו המשתנה מוגדר, מלבד בדיקות הגישה למודל שלו. להגדרה אין השפעה על בקשות לנקודת הקצה Mantle או דרך Claude apps gateway. זמינות הרמות משתנה לפי מודל ואזור. קיבולת שמורה משתמשת ב-ARN של provisioned throughput כמזהה המודל, במקום בהגדרה הזו.
כדי לכסות סשנים ברקע שמתחילים מטרמינל, הגדירו את ANTHROPIC_BEDROCK_SERVICE_TIER בבלוק env של ההגדרות. הסשנים האלה מקבלים את הערך שאתם מייצאים רק כאשר המעטפת שהפעילה את ה-supervisor ייצאה אותו.
#AWS Guardrails
Amazon Bedrock Guardrails מאפשרים ליישם סינון תוכן עבור Claude Code. צרו Guardrail במסוף Amazon Bedrock ופרסמו גרסה. הפעילו Cross-Region inference ב-Guardrail אם אתם משתמשים בפרופילי הסקה בין אזורים.
כדי להחיל את ה-Guardrail דרך Claude apps gateway, עקבו אחרי החלת guardrail של Amazon Bedrock. בלי Claude apps gateway, הוסיפו את כותרות ה-Guardrail לקובץ ההגדרות.
דוגמה להגדרת קובץ הגדרות:
{
"env": {
"ANTHROPIC_CUSTOM_HEADERS": "X-Amzn-Bedrock-GuardrailIdentifier: your-guardrail-id\nX-Amzn-Bedrock-GuardrailVersion: 1"
}
}כאשר ה-guardrail חוסם תשובה באמצע הדרך, הטקסט שהוזרם עד כה נשאר, והתשובה מסתיימת בהודעה שהוגדרה ב-guardrail עבור תשובות חסומות.
#שימוש בנקודת הקצה Mantle
Mantle היא נקודת קצה של Amazon Bedrock שמגישה מודלי Claude דרך הצורה המקורית של Anthropic API, במקום דרך Amazon Bedrock Invoke API. היא משתמשת באותם אישורי AWS ובאותה הגדרת awsAuthRefresh.
ל-Mantle יש פעולות IAM משלה תחת הקידומת bedrock-mantle:, ולכן פעולות bedrock: בהגדרת IAM אינן מכסות אותה. העניקו לזהות ה-IAM את bedrock-mantle:CreateInference להסקה ואת bedrock-mantle:CountTokens לספירת טוקנים. ראו ביצוע בקשות הסקה וספירת טוקנים בתיעוד AWS, ואת ההפניה להרשאות שירות לכל פעולת Mantle.
#הפעלת Mantle
כאשר אישורי AWS כבר מוגדרים, הגדירו את CLAUDE_CODE_USE_MANTLE ואת אזור ה-AWS:
export CLAUDE_CODE_USE_MANTLE=1
export AWS_REGION=us-east-1Claude Code בונה את כתובת נקודת הקצה מאזור ה-AWS, שנפתר לפי אותה קדימות כמו Amazon Bedrock למעלה. כדי לעקוף את הכתובת עבור נקודת קצה או שער מותאמים, הגדירו את ANTHROPIC_BEDROCK_MANTLE_BASE_URL.
הריצו את /status בתוך Claude Code כדי לאשר. שורת הספק מציגה Amazon Bedrock (Mantle) כאשר Mantle פעיל.
#בחירת מודל Mantle
Mantle משתמשת במזהי מודל עם הקידומת anthropic. ובלי סיומת גרסה, לדוגמה anthropic.claude-sonnet-5 או anthropic.claude-haiku-4-5. המודלים הזמינים לחשבון תלויים במה שהארגון קיבל. מזהי מודל נוספים מופיעים בחומרי הקליטה מ-AWS. פנו לצוות חשבון ה-AWS כדי לבקש גישה למודלים ברשימת ההיתר.
הגדירו את המודל עם הדגל --model או עם /model בתוך Claude Code:
claude --model anthropic.claude-haiku-4-5#הרצת Mantle לצד ה-Invoke API
ייתכן שהמודלים הזמינים לכם ב-Mantle אינם כוללים כל מודל שאתם משתמשים בו כיום. הגדרת CLAUDE_CODE_USE_BEDROCK וגם CLAUDE_CODE_USE_MANTLE מאפשרת ל-Claude Code לקרוא לשתי נקודות הקצה מאותו סשן. מזהי מודל שתואמים לפורמט Mantle מנותבים ל-Mantle, וכל שאר מזהי המודל הולכים ל-Amazon Bedrock Invoke API.
export CLAUDE_CODE_USE_BEDROCK=1
export CLAUDE_CODE_USE_MANTLE=1כדי להציג מודל Mantle בבורר /model, ציינו את המזהה שלו ב-availableModels בקובץ ההגדרות. ההגדרה הזו גם מגבילה את הבורר לרשומות שצוינו. ציון anthropic.claude-haiku-4-5 מסיר את כינוי haiku החשוף מהבורר, ולכן ציינו גם קידומות גרסה או מזהים מלאים לגרסאות שאתם רוצים להשאיר ניתנות לבחירה. מזהה Mantle וכינוי haiku מפוענחים לאותה משפחת מודלים, ולכן המיזוג שומר רק את הרשומה הספציפית יותר. ראו התנהגות המיזוג:
{
"availableModels": ["opus", "sonnet", "claude-haiku-4-5", "anthropic.claude-haiku-4-5"]
}רשומות עם הקידומת anthropic. מתווספות כאפשרויות בורר מותאמות, ואלה שתואמות לפורמט Mantle מנותבות ל-Mantle. החליפו את anthropic.claude-haiku-4-5 במזהה המודל שהחשבון קיבל. ראו הגבלת בחירת מודל לגבי האופן שבו availableModels פועל יחד עם הגדרות מודל אחרות.
כאשר שני הספקים פעילים, /status מציג Amazon Bedrock + Amazon Bedrock (Mantle).
#ניתוב Mantle דרך שער
אם הארגון מנתב תעבורת מודלים דרך LLM gateway מרכזי שמזריק אישורי AWS בצד השרת, השביתו אימות בצד הלקוח כדי ש-Claude Code ישלח בקשות בלי חתימות SigV4 או כותרות x-api-key:
export CLAUDE_CODE_USE_MANTLE=1
export CLAUDE_CODE_SKIP_MANTLE_AUTH=1
export ANTHROPIC_BEDROCK_MANTLE_BASE_URL=https://your-gateway.example.com#משתני סביבה של Mantle
המשתנים האלה ייחודיים לנקודת הקצה Mantle. ראו משתני סביבה לרשימה המלאה.
| משתנה | מטרה |
|---|---|
CLAUDE_CODE_USE_MANTLE | הפעלת נקודת הקצה Mantle. הגדירו ל-1 או ל-true. |
ANTHROPIC_BEDROCK_MANTLE_BASE_URL | עקיפת כתובת נקודת הקצה Mantle המוגדרת כברירת מחדל |
CLAUDE_CODE_SKIP_MANTLE_AUTH | דילוג על אימות בצד הלקוח עבור הגדרות proxy |
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION | עקיפת אזור AWS עבור המודל מקבוצת Haiku (משותף עם Amazon Bedrock) |
#פתרון בעיות
#לולאת אימות עם SSO ופרוקסי ארגוניים
אם כרטיסיות התחברות בדפדפן ממשיכות להיפתח כאשר משתמשים ב-AWS SSO, הסירו את ההגדרה awsAuthRefresh מקובץ ההגדרות.
הלולאה יכולה להתרחש כאשר VPN ארגוני או פרוקסי לבדיקת TLS קוטעים את זרימת ה-SSO בדפדפן. Claude Code מתייחס לחיבור שנקטע ככשל אימות. כאשר בקשה מאוחרת יותר מוצאת שהאישורים עדיין פגי תוקף, Claude Code מריץ שוב את awsAuthRefresh, וזה פותח כרטיסייה נוספת.
אם סביבת הרשת מפריעה לזרימות SSO אוטומטיות מבוססות דפדפן, השתמשו ב-aws sso login ידנית לפני הפעלת Claude Code, במקום להסתמך על awsAuthRefresh.
#שגיאות אישור מאחורי פרוקסי שבודק TLS
Claude Code מחיל את הגדרת מאגר אישורי ה-CA על הבקשות שלו ל-AWS, ובכלל זה:
- גילוי מודלים
- ספירת טוקנים
- קריאות האישורים של תפקידי STS ו-SSO שפותרות את אישורי ה-AWS
- אימות האישורים ובדיקות המודל של אשף ההגדרה
לבקשות האלה, אישור שורש ארגוני במאגר האמון של מערכת ההפעלה או בחבילת NODE_EXTRA_CA_CERTS אינו דורש הגדרה ייעודית ל-Amazon Bedrock.
לפני v2.1.260, Claude Code החיל את הגדרת ה-CA על הבקשות האלה רק כאשר הן עברו דרך פרוקסי מוגדר, ובחיבור ישיר הן סמכו רק על מאגר האישורים של ברירת המחדל של סביבת הריצה.
לפני v2.1.261, חיפוש האישורים מאחורי בדיקות המודל של אשף ההגדרה עם האפשרות Use credentials already in my environment עדיין סמך רק על מאגר האישורים של ברירת המחדל של סביבת הריצה. מאחורי פרוקסי שבודק TLS, שאישור השורש שלו נמצא רק במאגר מערכת ההפעלה, הבקשות המושפעות נכשלו עם unable to get local issuer certificate, או שהאשף הציג מודלים כ-unreachable, בזמן שבקשות ההסקה הצליחו. עדכנו ל-v2.1.261 או לגרסה מאוחרת יותר.
#בעיות אזור
אם נתקלים בבעיות אזור:
- בדקו זמינות מודל:
aws bedrock list-inference-profiles --region your-region - עברו לאזור נתמך:
export AWS_REGION=us-east-1 - שקלו להשתמש בפרופילי הסקה לגישה בין אזורים
אם מתקבלת השגיאה "on-demand throughput isn't supported":
- ציינו את המודל כמזהה של פרופיל הסקה
#שגיאות הזרמה מאחורי שער או פרוקסי
Amazon Bedrock מזרים תשובות InvokeModelWithResponseStream בפורמט event-stream בינארי עם הכותרת Content-Type: application/vnd.amazon.eventstream. שער או פרוקסי בין Claude Code ל-Amazon Bedrock חייבים להעביר את גוף התשובה ואת הכותרות שלו, כולל Content-Type, כפי ש-Amazon Bedrock שלח אותם.
אם השער משכתב את Content-Type לערך אחר, Claude Code דוחה את התשובה עם שגיאה שמתחילה ב-Bedrock streaming response has content-type, ומציינת את הערך שהתקבל. השכתוב הנפוץ הוא text/event-stream, מאינטגרציה שפולטת מחדש את הזרם כ-server-sent events. לגבי המשתנה CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD שהודעת השגיאה מציינת, ראו לתשובת ההזרמה של Bedrock יש content-type לא צפוי.
אם השער משמיט את הכותרת או משאיר אותה ריקה, Claude Code מניח שהגוף הוא זרם האירועים של Amazon Bedrock ומפענח אותו, ולכן גוף שהשער העביר בלי שינוי ממשיך להיות מוזרם.
אם שער שמשמיט את הכותרת גם פולט מחדש את הזרם כ-server-sent events, Claude Code אינו יכול לפענח את הגוף ונופל לנתיב איטי יותר בלי הזרמה בכל תור: כל תשובה מופיעה רק כשהיא שלמה, במקום להיות מוזרמת פנימה. במקרה זה, הגדירו את CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT=1 כדי ש-Claude Code יקרא את הגוף כ-server-sent events.
כדי לתקן את השגיאה או את הנפילה, הגדירו את השער כך שיעביר את גוף התשובה של InvokeModelWithResponseStream ואת כותרת Content-Type שלו בלי שינוי.
שער שממיר את הזרם ל-server-sent events כבר אינו מגיש את Amazon Bedrock API. אם הוא גם מקבל בקשות Anthropic Messages API, התחברו אליו כ-LLM gateway עם ANTHROPIC_BASE_URL במקום CLAUDE_CODE_USE_BEDROCK.
#ספירות אפס של טוקנים ב-/context
הפקודה /context סופרת טוקנים לכל קבוצת כלים על ידי שליחת סכמות הכלים ל-API של count-tokens ב-Amazon Bedrock. בגרסאות Claude Code שלפני v2.1.196, Amazon Bedrock דחה את הבקשה כי הסכמות נשאו שדות ש-API ה-count-tokens אינו מקבל, ולכן כל קבוצת כלים הציגה 0 טוקנים. שורות אחרות בפירוט, כמו הודעות וקבצי זיכרון, אינן מושפעות.
עדכנו ל-v2.1.196 או לגרסה מאוחרת יותר.
#שגיאות נקודת הקצה Mantle
אם /status אינו מציג Amazon Bedrock (Mantle) אחרי שהגדרתם את CLAUDE_CODE_USE_MANTLE, המשתנה אינו מגיע לתהליך. ודאו שהוא מיוצא במעטפת שבה הפעלתם את claude, או הגדירו אותו בבלוק env של קובץ ההגדרות.
המשמעות של 403 מנקודת הקצה Mantle תלויה בכך שהשגיאה מציינת פעולת IAM:
- אם השגיאה מציינת פעולת
bedrock-mantle:, העניקו לזהות ה-IAM את הפעולה הזו. - אם השגיאה אינה מציינת פעולה והאישורים תקינים, לחשבון ה-AWS לא הוענקה גישה למודל שביקשתם. פנו לצוות חשבון ה-AWS כדי לבקש גישה.
400 שמציין את מזהה המודל אומר שהמודל הזה אינו מוגש ב-Mantle. ל-Mantle יש מערך מודלים משלה, נפרד מהקטלוג הרגיל של Amazon Bedrock, ולכן מזהי פרופיל הסקה כמו us.anthropic.claude-sonnet-4-6 אינם עובדים. השתמשו במזהה בפורמט Mantle, או הפעילו את שתי נקודות הקצה כדי ש-Claude Code ישלח מזהי פרופיל הסקה ל-Invoke API.