תיעוד 80
פריסת שער LLM עבור הארגון שלך
פרוס מוצר שער (gateway) עבור Claude Code: הגדר אותו להעביר הלאה את מה ש-Claude Code שולח, הנפק פרטי אימות למפתחים, הפץ את ההגדרה באמצעות הגדרות מנוהלות (managed settings), ואמת את הפריסה.
דף זה מנחה מנהל מערכת בפריסת שער LLM עבור Claude Code. ההנחה היא שכבר פרסת מוצר שער שעומד בדרישות השער. פריסה או תפעול של מוצר ספציפי כלשהו אינם מכוסים כאן; פרוס את המוצר שלך בהתאם לתיעוד של הספק שלו.
[!NOTE]
- כדי לחבר את
Claude Codeבמחשב שלך לשער קיים, ראה חיבור Claude Code לשער LLM.- למידע על מה ש-
Claude Codeשולח לשער ומה יש להעביר הלאה, ראה את מדריך התאימות לשער.
#דרישות מוקדמות
כדי להשלים את הפריסה, תזדקק ל:
- שער שנפרס בתשתית שלך, שמגיש HTTPS בכתובת המדויקת שתפיץ למפתחים, לא בכתובת שמבצעת אליה הפניה מחדש (redirect), ומוגדר לנתב שמות מודלים של Claude לספק שלך.
- פרטי אימות של ספק שהשער יעביר הלאה:
- עבור ה-API של Anthropic: מפתח API מתוך Claude Console.
- עבור ספק ענן: פרטי אימות ענן עם גישה למודל. ראה את דרישות הקדם בדף של Amazon Bedrock, Google Cloud's Agent Platform, או Microsoft Foundry.
- דרך להעביר קובצי הגדרות למחשבי המפתחים, כגון MDM או ניהול תצורות (configuration management).
- אם עדיין אין לך דרך כזו, הדף כיצד הגדרות מגיעות למכשירים משווה בין האפשרויות.
#דרישות השער
לא משנה איזה מוצר מספק את השער, עליו:
- לקבל פורמט API נתמך: אחד הפורמטים המופיעים בטבלת פורמטי ה-API. שלבי הפריסה להלן מניחים שימוש ב-Anthropic Messages API בנתיב
POST /v1/messages, שרוב השערים מגישים. - להזרים תגובות (stream responses): להעביר אירועי שרת (server-sent events) כפי שהם מגיעים, כולל אותות שמירת חיבור (keep-alive pings), במקום לאגור במאגר (buffering) את התגובה כולה; הסעיף הזרמה מכסה מה נשבר עקב אגירה או הסרת פינגים.
- לנתב שמות מודלים של Claude: למפות כל שם שהמפתחים משתמשים בו למודל במעלה הזרם (upstream).
Claude Codeשולח שם מודל כגוןclaude-sonnet-4-6בכל בקשה; ברוב מוצרי השער המיפוי הוא רשימת מודלים או טבלת ניתוב בהגדרה הפנימית של השער. - להעביר כותרות וגוף בקשה ללא שינוי: להעביר את
anthropic-beta,anthropic-version, ואת גוף הבקשה בשני הכיוונים; טבלת העברת התכונות ממפה כל אחד מהם לתכונה שנשברת בלעדיו. - להחזיר שגיאות של מעלה הזרם ללא שינוי: מנגנון ההתאוששות האוטומטי של
Claude Codeמבצע התאמה על פי ניסוח השגיאה, ולכן עטיפת שגיאות במעטפת ייעודית של השער שוברת אותו, אלא אם הודעת המעטפת נושאת את אחד מאסימוניcapability_rejected:ששער אפליקציות Claude מחליף עבור ניסוח השגיאות של ספקי ענן. - להחריג את הנתיב מבדיקת גוף בקשה של WAF: הפניות של
Claude Codeנושאות קוד מקור ותגיות בסגנון XML שתואמות לכללי בדיקת גוף בקשה של cross-site-scripting; מערכת WAF המוצבת לפני השער תחזיר קוד403בהפעלות אמיתיות, בעוד שבקשות בדיקה קצרות יעברו בהצלחה.
באופן אופציונלי, הגש את הנתיב GET /v1/models כדי ש-Claude Code יוכל לאכלס את בורר המודלים מתוך השער שלך באמצעות גילוי מודלים.
#שלבי הפריסה
הפריסה כוללת חמישה שלבים, לכל אחד מהם נקודת ביקורת (checkpoint):
- ודא שהשער מנתב את המודלים שלך
- הנפק פרטי אימות לכל מפתח
- בדוק את Claude Code מול השער
- הפץ את כתובת ה-URL הבסיסית ואת פרטי האימות
- אימות ממחשב של מפתח
השלבים כוללים שלושה סוגים שונים של פרטי אימות, ונקודות הביקורת מציינות אותם באמצעות שומר מקום (placeholder) כדי שתוכל לדעת איזה מהם גרם לכשל כאשר משהו משתבש:
| פרטי אימות | מי מחזיק בהם | שומר מקום בנקודות ביקורת |
|---|---|---|
| פרטי אימות של הספק | השער, שמעביר אותם לספק במעלה הזרם | מוגדרים בשער; לעולם אינם מופיעים בפקודות לקוח |
| פרטי אימות ניהוליים של השער | אתה, אם מוצר השער שלך מנפיק כאלה עבור ממשק הניהול או הבדיקה שלו | <gateway-key> |
| מפתח מפתח (Developer key) | כל מפתח, מונפק על ידי השער בשלב הנפקת פרטי אימות למפתחים | <developer-key> |
#ודא שהשער מנתב את המודלים שלך
השער שלך כבר צריך להיות מוגדר עם פרטי האימות של הספק שלך, להאזין בכתובת ה-URL הבסיסית שלו, ולהעביר בקשות ל-API של הספק שלך. בדוק שהנתיב עובד מקצה לקצה באמצעות בקשה מינימלית, תוך החלפת שני ערכים מהפריסה שלך:
<gateway-key>הוא פרט אימות שמאפשר לך לקרוא לשער כעת: מפתח ניהולי, מפתח בדיקה, או מפתח המפתח שלך אם כבר הנפקת אחד לעצמך. לא לכל מוצר שער יש פרט אימות ניהולי נפרד; אם במוצר שלך אין, הנפק לעצמך תחילה מפתח מפתח בשלב הנפקת פרטי אימות למפתחים.modelהוא שם מודל Claude שהשער שלך מוגדר לנתב. הדוגמה משתמשת ב-claude-sonnet-4-6; החלף אותו בשם שהגדרת.
Bash או Zsh:
curl -X POST "https://llm-gateway.example.com/v1/messages" \
-H "Authorization: Bearer <gateway-key>" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'PowerShell:
Invoke-RestMethod -Method Post -Uri "https://llm-gateway.example.com/v1/messages" `
-Headers @{ "Authorization" = "Bearer <gateway-key>"; "anthropic-version" = "2023-06-01" } `
-ContentType "application/json" `
-Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'נקודת ביקורת: תגובת 200 עם שדה content פירושה שהשער הגיע לספק עם שם המודל הזה. קוד 404 פירושו שהשם הזה אינו מנותב בשער; קוד 401 מהספק פירושו שפרטי האימות של הספק המוגדרים בשער שגויים.
חזור על הבקשה פעם אחת עבור כל שם מודל של Claude בהגדרת הניתוב של השער שלך. שם שהשער אינו מנתב יחזיר 404 לכל מפתח שיבחר בו, לכן בדוק כל שם לפני הפריסה.
[!NOTE] הימנע מהגשת השער מאחורי הפניה מחדש (redirect). הפניה מחדש עלולה להשמיט את גוף הבקשה או להסיר את כותרת פרטי האימות בבקשות הסקה (inference), וגילוי מודלים מתייחס לכל הפניה מחדש כאל כשל כדי שפרטי האימות לא ידלפו ליעד ההפניה.
#הנפקת פרטי אימות למפתחים
כל מפתח זקוק למפתח שער משלו כדי לבצע אימות. צור פרט אימות לכל מפתח בשער, בהתאם לתיעוד ניהול פרטי האימות של המוצר שלך.
ודא שמפתח שהונפק זה עתה פועל מול השער באמצעות אותה בקשה כמו בסעיף ודא שהשער מנתב את המודלים שלך, תוך החלפת <gateway-key> ב-<developer-key> החדש:
Bash או Zsh:
curl -X POST "https://llm-gateway.example.com/v1/messages" \
-H "Authorization: Bearer <developer-key>" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'PowerShell:
Invoke-RestMethod -Method Post -Uri "https://llm-gateway.example.com/v1/messages" `
-Headers @{ "Authorization" = "Bearer <developer-key>"; "anthropic-version" = "2023-06-01" } `
-ContentType "application/json" `
-Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'נקודת ביקורת: תגובת 200 עם שדה content פירושה שמפתח המפתח מגיע לשער והשער מעביר אותו הלאה. קוד 401 כאן, כאשר השלב הקודם הצליח, פירושו שמפתח המפתח שגוי או שעדיין לא נכנס לתוקף בשער.
הנפקת מפתח אחד לכל מפתח במקום מפתח משותף היא מה שמאפשר שיוך שימוש לפי מפתח ותהליך עזיבה (offboarding) פרטני. משתנה הסביבה שמחזיק את המפתח תלוי בכותרת שהשער קורא. עבור שער שבודק פרטי אימות בכותרת Authorization: Bearer, מפתחים מגדירים את המפתח שלהם ב-ANTHROPIC_AUTH_TOKEN. עבור שער שקורא מפתחות מכותרת x-api-key, מפתחים מגדירים במקום זאת את ANTHROPIC_API_KEY; טבלת פרטי האימות מכסה את המיפוי.
#בדיקת Claude Code מול השער
הפעל בעצמך את Claude Code דרך השער לפני הפצת דבר כלשהו, תוך שימוש באותה תצורה שהפריסה תספק לכלל המערכות. הקלד פקודות אלו ישירות בטרמינל, לא בקובץ .env או בקובץ הגדרות; הן תקפות רק עבור הפעלת טרמינל זו, כך שסגירתו תחזיר את המחשב שלך לתצורתו הרגילה. השתמש ב-ANTHROPIC_API_KEY במקום ב-ANTHROPIC_AUTH_TOKEN אם השער שלך קורא את כותרת x-api-key:
Bash או Zsh:
export ANTHROPIC_BASE_URL=https://llm-gateway.example.com
export ANTHROPIC_AUTH_TOKEN="<developer-key>"PowerShell:
$env:ANTHROPIC_BASE_URL = "https://llm-gateway.example.com"
$env:ANTHROPIC_AUTH_TOKEN = "<developer-key>"לאחר מכן שלח פניה חד-פעמית דרך השער:
claude -p "Reply with one word: connected"נקודת ביקורת: הפניה מחזירה תגובה, והבקשה מופיעה ביומן השער כבקשת POST לנתיב /v1/messages עם סטטוס 200. Claude Code מצרף מחרוזת שאילתה כגון ?beta=true, לכן התאם לפי הנתיב, ולא לפי כתובת ה-URL המלאה. שתי הודעות שגיאה מצביעות על כיוונים שונים:
Not logged in: בדוק את יומן השער כדי להבדיל בין שני הגורמים. אם היומן ריק, שום פרט אימות לא הגיע להפעלה ושום בקשה לא יצאה מהמחשב; הרץ מחדש את פקודות ה-export במעטפת שממנה אתה בודק. אם מופיעה בקשה שנדחתה עםx-api-keyבגוף תגובת ה-401, השער מצפה למפתחות בכותרת זו; עבור ל-ANTHROPIC_API_KEY.Failed to authenticate. API Error: 401: פירושו שנשלח פרט אימות והוא נדחה, ויומן השער מראה היכן: שגיאת401המציינת אתapi.anthropic.comאו את נקודת הקצה של הספק שלך פירושה שהשער הגיע לספק במעלה הזרם אך פרטי האימות שלו נדחו, כך שמפתח המפתח היה תקין ופרטי האימות של הספק שמוחזקים בשער שגויים או מהווים שומר מקום.
כתובת URL בסיסית שגויה או בלתי נגישה יוצרת תסמין אחר: Claude Code מנסה להתחבר מחדש עם השהיה גדלה (backoff) ויכול להישאר ללא פלט במשך מספר דקות לפני דיווח על שגיאה. אם נראה שהפקודה נתקעת, בדוק את יומן השער במקום להמתין; היעדר בקשה נכנסת פירושו ש-ANTHROPIC_BASE_URL אינו מצביע על השער.
#הפצת ההגדרה
כל מחשב מפתח זקוק לכתובת השער ולפרט אימות. באפשרותך להפיץ אותם באופן מרכזי באמצעות הגדרות מנוהלות, כך שמפתחים לא יצטרכו להגדיר דבר, או למסור למפתחים את הערכים כדי שיגדירו אותם בעצמם.
#מה להפיץ
אותה קבוצת משתנים חלה בכל דרך שתבחר. רוב הפריסות זקוקות רק ל-ANTHROPIC_BASE_URL ולפרט אימות; כלול את השורות המותנות כאשר תצורת השער שלך דורשת זאת.
| משתנה או הגדרה | מה זה עושה | מתי לכלול |
|---|---|---|
ANTHROPIC_BASE_URL | שולח את בקשות ה-API של Claude Code לשער במקום ל-api.anthropic.com | תמיד |
apiKeyHelper, או פרט אימות ב-ANTHROPIC_AUTH_TOKEN או ב-ANTHROPIC_API_KEY | מאמת כל בקשה מול השער. ה-helper מריץ פקודה כדי לאחזר את המפתח; המשתנים מחזיקים מפתח סטטי, שנשלח כ-Authorization: Bearer ו-x-api-key בהתאמה | תמיד; אחד משלושתם |
ANTHROPIC_CUSTOM_HEADERS | מוסיף כותרות HTTP נוספות לכל בקשת API | השער שלך דורש כותרת דייר (tenant) או ניתוב בכל בקשה |
CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY | שואל את הנתיב /v1/models של השער בעת ההפעלה ומוסיף את השמות שהוחזרו לבורר /model | השער שלך מגיש את /v1/models ואתה רוצה שבורר המודלים של המפתחים יאוכלס מתוכו |
CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS | עוצר שליחה של כותרות ושדות גוף של יכולות טרום-הפצה (pre-release) על ידי Claude Code. הסעיף השבתת יכולות טרום-הפצה מכסה את ההיקף המדויק | השער שלך מעביר בקשות לספק מעלה זרם של Amazon Bedrock או Google Cloud's Agent Platform שדוחה שדות בטא. ראה דרישות השער |
CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS או CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK | משחזר את fast mode כאשר בדיקת הזמינות שלו, אשר פונה ישירות ל-api.anthropic.com במקום לעקוב אחר ANTHROPIC_BASE_URL, נכשלת, מיורטת או מדלגת בשל היעדר פרטי אימות של Anthropic | הארגון שלך משתמש ב-fast mode, ומפתחים מבצעים אימות באמצעות ANTHROPIC_AUTH_TOKEN בלבד, באמצעות מפתח שהונפק על ידי השער ב-ANTHROPIC_API_KEY או מתוך apiKeyHelper, או שהרשת שלך חוסמת או מיירטת בקשות ישירות ל-api.anthropic.com; הסעיף שימוש ב-fast mode מאחורי שרתי פרוקסי ושערי LLM מכסה איזה משני המשתנים מתאים לתצורה שלך |
ANTHROPIC_MODEL או ANTHROPIC_DEFAULT_HAIKU_MODEL | קובע איזה שם מודל Claude Code מבקש עבור ההפעלה הראשית ועבור תעבורת הרקע | השער שלך מנתב שמות מודלים שאינם תואמים לברירות המחדל של Claude Code, או שאתה מנתב פונקציונליות רקע למודל אחר. נתב הן את שמות הדריסה והן את מזהי המודלים המובנים ש-Claude Code מבקש כאשר לא מוגדרת דריסה, מכיוון שחלק מתת-קריאות הרקע מבקשות מזהה מובנה ללא קשר לדריסה; הסעיף תצורת מודלים מכסה באיזה מודל משתמש כל חלק בהפעלה |
ANTHROPIC_BEDROCK_BASE_URL, ANTHROPIC_VERTEX_BASE_URL, ANTHROPIC_FOUNDRY_BASE_URL, או ANTHROPIC_AWS_BASE_URL יחד עם המשתנים עבור אותו ספק | מכוון את Claude Code לשער באמצעות כתובת URL בסיסית ספציפית לספק. Amazon Bedrock ו-Google Cloud's Agent Platform עוברים בנוסף לפורמט הבקשות המקורי של ספקים אלה | השער שלך מוצב לפני Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, או Claude Platform on AWS; ראה פורמטי API |
#הפצה באמצעות הגדרות מנוהלות
העבר את המשתנים דרך בלוק env של קובץ הגדרות מנוהלות, שמועבר באמצעות MDM, מדיניות רישום (registry policy), או ניהול תצורות:
{
"env": {
"ANTHROPIC_BASE_URL": "https://llm-gateway.example.com"
},
"apiKeyHelper": "/usr/local/bin/get-gateway-key"
}הוסף את המשתנים המותנים מהטבלה לאותו בלוק env. הגדרה מנוהלת של ANTHROPIC_BASE_URL נאכפת ולא ניתן לדרוס אותה באמצעות פקודת export במעטפת של מפתח, מכיוון ש-Claude Code מחיל אותה מעל סביבת התהליך והגדרות בעלות עדיפות נמוכה יותר.
אל תכלול את forceLoginMethod או את forceLoginOrgUUID בהגדרות מנוהלות לצד פרטי אימות של שער. כל אחד מהמפתחות הללו, עם כל ערך שהוא, חוסם את ANTHROPIC_API_KEY, ANTHROPIC_AUTH_TOKEN, ו-apiKeyHelper בעת ההפעלה, כך שמפתחים יראו את ההודעה This machine's managed settings require a first-party login ולא יוכלו להמשיך.
הפצה של הגדרות מנוהלות על ידי שרת (Server-managed settings) דורשת חיבור ישיר אל api.anthropic.com, ולכן אינה מגיעה להפעלות המנותבות דרך שער. פריסות שער משתמשות בנתיב זה של הגדרות מנוהלות מבוססות-קובץ, אשר אוכף את אותם המפתחות.
עבור פרטי האימות, הפץ פקודת apiKeyHelper אחת בקובץ ההגדרות המנוהלות כפי שמוצג לעיל; הפקודה מאמתת מול מאגר הסודות שלך בתור המפתח המקומי, וכך כל מחשב מקבל מפתח משלו. לחלופין, העבר לכל מפתח את המפתח שלו דרך תהליך ניהול הסודות הקיים שלך והנחה אותם להגדיר את ANTHROPIC_AUTH_TOKEN בעצמם.
סביבות מסוימות דורשות הפצה נפרדת:
- אפליקציית שולחן העבודה (desktop app) קוראת את ניתוב השער מתצורת ההסקה של צד שלישי שלה, ולא מהגדרות מנוהלות; פרוס קובץ זה באמצעות MDM לצד הגדרות מנוהלות כך שגם הפעלות שולחן העבודה ינותבו דרך השער. ראה את תיעוד תצורת צד שלישי בשולחן העבודה ואת תיעוד שער בשולחן העבודה.
- מריצי CI (CI runners) זקוקים להגדרת
ANTHROPIC_BASE_URLופרטי האימות בסביבת המריץ. - WSL במחשבי Windows מנוהלים קורא את ההגדרות המנוהלות של Windows רק כאשר
wslInheritsWindowsSettingsמוגדר כ-true.
#מסירת הערכים למפתחים להגדרה עצמית
אם אין לך מנגנון הפצה של הגדרות מנוהלות, שלח לכל מפתח את מה שהוא צריך כדי לפעול לפי דף החיבור:
- כתובת ה-URL של השער.
- פרטי האימות האישיים שלו.
- באיזה משתנה להציב את פרטי האימות:
ANTHROPIC_AUTH_TOKENעבור שער המשתמש ב-bearer token, אוANTHROPIC_API_KEYעבור שער המשתמש ב-x-api-key. הודעה מראש למפתחים באיזה משתנה להשתמש חוסכת מהם את הניסוי והטעייה המתוארים בדף החיבור. - כל משתנה מותנה מתוך טבלת מה להפיץ, יחד עם ערכו.
הדף חיבור Claude Code לשער LLM מדריך את המפתחים בהגדרת כל אחד מהם.
נקודת ביקורת: במחשב של מפתח, הפקודה claude מתחילה הפעלה מבלי להציג את מסך ההתחברות, מכיוון שפרטי האימות שהופצו מספקים את האימות. לאחר מכן הרץ /status ופתח את הכרטיסייה Status: השורה Anthropic base URL מציגה את כתובת השער, ועבור הפצה מנוהלת השורה Setting sources כוללת הגדרות מנוהלות. מסך התחברות, או שורת Anthropic base URL חסרה, מעידים שההגדרה לא הגיעה למחשב.
#אימות הפריסה
ודא שהכל עובד ממחשב של מפתח, ולא ממארח השער, כדי שהבדיקה תכסה את נתיב הרשת שהמפתחים משתמשים בו. שלח בקשת הזרמה (streaming), הבודקת בו-זמנית את נקודת הקצה, את העברת ההזרמה ואת ניתוב המודל:
Bash או Zsh:
curl -N -X POST "https://llm-gateway.example.com/v1/messages" \
-H "Authorization: Bearer <developer-key>" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model": "claude-sonnet-4-6", "max_tokens": 16, "stream": true, "messages": [{"role": "user", "content": "count to 3"}]}'PowerShell:
$body = '{"model": "claude-sonnet-4-6", "max_tokens": 16, "stream": true, "messages": [{"role": "user", "content": "count to 3"}]}'
$body | curl.exe -N -X POST "https://llm-gateway.example.com/v1/messages" `
-H "Authorization: Bearer <developer-key>" `
-H "anthropic-version: 2023-06-01" `
-H "content-type: application/json" `
--data-binary '@-'אתה אמור לראות שורות data: מגיעות בהדרגה. קבלת התגובה כולה בבת אחת לאחר השהיה פירושה שהשער מבצע אגירה (buffering), מה שמעכב את Claude Code; קוד 404 פירושו ששם המודל אינו מנותב. חזור על הבדיקה עבור כל שם מודל.
לאחר מכן הפעל את claude ושלח הודעה. לכל תסמין בשלב זה יש גורם אחד:
- בקשת התחברות (login prompt) מעידה על פער בפרטי האימות. הרץ
/statusופתח את הכרטיסייה Status: כאשר השורהSetting sourcesאינה כוללת הגדרות מנוהלות, ההפצה לא הגיעה למחשב; כאשר היא כוללת אותן, פרטי האימות של המפתח לא הועברו, לכן הגדר אתANTHROPIC_AUTH_TOKENאו אתapiKeyHelper. - שגיאות מסוג
Failed to authenticateמעידות שהשער דוחה בקשות; היומן שלו מפרט איזה פרט אימות נכשל. דחייה שהשער רושם בעצמו ביומן מציינת את מפתח המפתח, בעוד ששגיאת401מ-api.anthropic.comאו מנקודת הקצה של הספק שלך פירושה שפרטי האימות של הספק שמוחזקים בשער נדחו. - בקשת אישור חד-פעמית עבור המפתח צפויה בשימוש ראשון כאשר השער מצפה למפתחות בכותרת
x-api-key, המוגדרת באמצעותANTHROPIC_API_KEY. עםANTHROPIC_AUTH_TOKEN, לא מופיעה בקשת אישור והמשתנה נכנס לתוקף באופן שקט; התחברות קודמת שמורה של claude.ai אינה פעילה באותה הפעלה.
אם הארגון שלך משתמש ב-fast mode, הרץ /fast גם כאן: בדיקת הזמינות פונה ישירות אל api.anthropic.com במקום לעקוב אחר כתובת ה-URL הבסיסית של השער, כך שהפעלה המנותבת דרך שער יכולה לדווח ש-fast mode אינו זמין או מושבת על אף שהסקה פועלת. הסעיף שימוש ב-fast mode מאחורי שרתי פרוקסי ושערי LLM ממפה כל הודעה למשתנה שמשחזר אותה, המופץ עם שאר ההגדרה.
לבסוף, בדוק ביומני השער את ההודעה ששלחת: פרטי האימות מזהים את המפתח, והכותרת x-claude-code-session-id מקבצת בקשות לפי הפעלה. אם תכונות נכשלות עם תסמיני פתרון הבעיות, השער מסיר כותרות או משכתב שגיאות; ראה את דרישות השער לעיל.
#תחזוקת השער
לאחר הפריסה, שלושה סוגי שינויים מגיעים לשער לאורך זמן. לכל אחד מהם יש תסמין שיש לעקוב אחריו ופעולה שיש לנקוט:
| שינוי | תסמין כאשר השער אינו מעודכן | פעולה |
|---|---|---|
גרסאות חדשות של Claude Code מוסיפות ערכי anthropic-beta ושדות בגוף הבקשה | מפתחים מדווחים על שגיאות 400 המציינות שדה חדש לאחר שהם מעדכנים את Claude Code; ראה העברת תכונות | העבר כותרות anthropic-* וגופי בקשות כלשונם (verbatim) במקום להשתמש ברשימת היתרים (allowlisting); בדוק גרסאות חדשות של Claude Code מול השער לפני שהן מגיעות למפתחים |
| מודלים חדשים של Claude הופכים לזמינים | מפתחים שבוחרים שם מודל חדש מקבלים 404; בורר /model אינו מציג אותו | הוסף את שם המודל להגדרת הניתוב של השער, ולאחר מכן הרץ שוב את בדיקת הניתוב. אם אתה מפיץ את ANTHROPIC_MODEL או את משתני מודל ברירת המחדל, עדכן את ההגדרות המנוהלות |
| פרטי אימות פגים או דורשים סבב החלפה (rotation) | כל בקשות המפתחים מתחילות להיכשל עם שגיאת 401 מספק מעלה הזרם | בצע החלפה של פרטי האימות של הספק בשער לפי לוח הזמנים שלו; מפתחות מפתחים מוחלפים בשער, ופקודת apiKeyHelper מטפלת בהחלפה ברמת המפתח הבודד ללא צורך בהפצה מחדש של הגדרות |
בעת קביעת מגבלות קצב (rate limits) לכל מפתח, קח בחשבון שהלקוח מנסה שוב כשלים חולפים, כולל תגובות 429, עד 10 פעמים עם השהיה גדלה (backoff), תוך כיבוד Retry-After. שמור את מדריך התאימות כמקור ייחוס למה שכל גרסה של Claude Code שולחת.
#משאבים קשורים
- חיבור Claude Code לשער LLM: שלבי ההגדרה הפונים למפתח, כולל תצורה לפי סביבה וטבלת פתרון בעיות שתוכל למסור למפתחים.
- מדריך תאימות לשער: המדריך למפעילי שערים, המכסה נקודות קצה, כותרות להעברה, ואת טבלת העברת התכונות.
- באיזה ערך Claude Code משתמש: כיצד משתלבות הגדרות מנוהלות, הגדרות פרויקט והגדרות משתמש.
- מנגנוני העברה: היכן ממוקם הקובץ המנוהל בכל פלטפורמה.
- הגדרת Claude Code עבור הארגון שלך: הפריסה הרחבה יותר ששער זה הוא חלק ממנה, כולל אכיפת מדיניות, נראות שימוש וטיפול בנתונים.