Bỏ qua để đến nội dung

Claude Code trên Microsoft Foundry

Bài viết được dịch tự động từ bài viết gốc, chưa được kiểm tra lại bởi con người. Chỉ những bài viết có dấu tick xanh cạnh tiêu đề là đã được kiểm tra.

Microsoft Foundry là một provider bên thứ ba khác mà Claude Code hỗ trợ, bên cạnh Amazon Bedrock và Google Cloud’s Agent Platform.

  • Azure subscription có quyền truy cập Microsoft Foundry.
  • Quyền RBAC để tạo resource và deployment trên Microsoft Foundry.
  • Azure CLI đã cài đặt (tùy chọn - chỉ cần nếu bạn không có cách khác để lấy credentials).
  1. Vào Microsoft Foundry portal, tạo resource mới, ghi lại tên resource.
  2. Tạo deployment cho các model Claude (Opus, Sonnet, Haiku), ghi lại tên deployment cho từng model - bạn sẽ dùng các tên này ở bước 4.

Khi cấu hình một deployment, bạn cũng chọn hosting option (chạy trên Azure hay trên hạ tầng Anthropic), quyết định inference chạy ở đâu.

Claude Code hỗ trợ ba cách xác thực với Microsoft Foundry:

Cách A: API key

Vào resource trong Microsoft Foundry portal → mục Endpoints and keys → copy API Key:

Terminal window
export ANTHROPIC_FOUNDRY_API_KEY=your-azure-api-key

Cách B: Microsoft Entra ID

Khi không đặt ANTHROPIC_FOUNDRY_API_KEY lẫn ANTHROPIC_FOUNDRY_AUTH_TOKEN, Claude Code tự dùng default credential chain của Azure SDK. Cách phổ biến ở local là:

Terminal window
az login

Cách C: Bearer token (yêu cầu Claude Code v2.1.203 trở lên)

Claude Code gửi giá trị ANTHROPIC_FOUNDRY_AUTH_TOKEN trên mỗi request dưới dạng header Authorization: Bearer. Dùng cách này khi một tiến trình khác (host application hoặc script đăng nhập) đã lấy sẵn access token cho bạn:

Terminal window
export ANTHROPIC_FOUNDRY_AUTH_TOKEN=your-entra-access-token

ANTHROPIC_FOUNDRY_AUTH_TOKEN có độ ưu tiên cao hơn ANTHROPIC_FOUNDRY_API_KEY và cao hơn default credential chain.

Terminal window
# Bật tích hợp Microsoft Foundry
export CLAUDE_CODE_USE_FOUNDRY=1
# Tên resource Azure (thay {resource} bằng tên resource của bạn)
export ANTHROPIC_FOUNDRY_RESOURCE={resource}
# Hoặc cung cấp base URL đầy đủ:
# export ANTHROPIC_FOUNDRY_BASE_URL=https://{resource}.services.ai.azure.com/anthropic

Đặt các biến model khớp với tên deployment đã tạo ở bước 1:

Terminal window
export ANTHROPIC_DEFAULT_OPUS_MODEL='claude-opus-4-8'
export ANTHROPIC_DEFAULT_SONNET_MODEL='claude-sonnet-5'
export ANTHROPIC_DEFAULT_HAIKU_MODEL='claude-haiku-4-5'

Tác vụ nền (như đặt tiêu đề session) dùng model small/fast, thường là Haiku. Trên Microsoft Foundry, Claude Code mặc định dùng primary model cho việc này vì không phải tài khoản nào cũng có deployment Haiku. Để dùng Haiku cho tác vụ nền, đặt ANTHROPIC_DEFAULT_HAIKU_MODEL thành deployment Haiku khả dụng trong tài khoản bạn.

Prompt caching được bật tự động. Để yêu cầu TTL cache 1 giờ thay vì mặc định 5 phút (tính phí cao hơn cho cache write):

Terminal window
export ENABLE_PROMPT_CACHING_1H=1
Terminal window
claude

Claude Code đọc CLAUDE_CODE_USE_FOUNDRY và các biến khác từ môi trường, kết nối tới Azure resource ngay ở prompt đầu tiên. Khác với Amazon Bedrock và Google Cloud’s Agent Platform, Microsoft Foundry không có wizard thiết lập tương tác - các biến môi trường ở bước 3 và 4 là đường duy nhất để cấu hình.

Xác minh bằng /status: dòng API provider hiển thị Microsoft Foundry, kèm tên resource hoặc base URL đã cấu hình.

Các role mặc định Azure AI UserCognitive Services User đã bao gồm mọi quyền cần thiết để gọi model Claude.

Để hạn chế hơn, tạo custom role với:

{
"permissions": [
{
"dataActions": [
"Microsoft.CognitiveServices/accounts/providers/*"
]
}
]
}

Lỗi “Failed to get token from azureADTokenProvider: ChainedTokenCredential authentication failed”: cấu hình Entra ID trong môi trường, hoặc đặt ANTHROPIC_FOUNDRY_API_KEY.

Request lỗi kết nối liên tục ở prompt đầu tiên: kiểm tra ANTHROPIC_FOUNDRY_RESOURCE đã đặt đúng tên resource thật, không phải placeholder. Claude Code dựng endpoint URL từ giá trị này, nên tên sai sẽ trỏ tới host không tồn tại.