本指南将引导您完成在 Python、TypeScript 或使用直接 HTTP 请求中设置和调用 Claude in Foundry API 的过程。当您可以访问 Foundry 中的 Claude 时,您将通过 Microsoft Marketplace 使用您的 Azure 订阅为 Claude 使用付费,这样您可以访问 Claude 的最新功能,同时通过 Azure 订阅管理成本。
区域可用性:在推出时,Claude 在 Foundry 资源中作为全球标准部署类型可用,美国数据区即将推出。Microsoft Marketplace 中 Claude 的定价使用 Anthropic 的标准 API 定价。访问我们的定价页面了解详情。
在此预览平台集成中,Claude 模型在 Anthropic 的基础设施上运行。这是一个通过 Azure 进行计费和访问的商业集成。作为 Microsoft 的独立处理者,通过 Microsoft Foundry 使用 Claude 的客户受 Anthropic 的数据使用条款约束。Anthropic 继续提供其业界领先的安全和数据承诺,包括零数据保留可用性。
在开始之前,请确保您拥有:
Anthropic 的客户端 SDK 通过特定于平台的包支持 Foundry。
# Python
pip install -U "anthropic"
# Typescript
npm install @anthropic-ai/foundry-sdkFoundry 使用两级层次结构:资源包含您的安全和计费配置,而部署是您通过 API 调用的模型实例。您首先需要创建一个 Foundry 资源,然后在其中创建一个或多个 Claude 部署。
创建一个 Foundry 资源,这是在 Azure 中使用和管理服务所必需的。您可以按照这些说明创建一个 Foundry 资源。或者,您可以首先创建一个 Foundry 项目,这涉及创建一个 Foundry 资源。
要配置您的资源:
{resource}(例如,https://{resource}.services.ai.azure.com/anthropic/v1/*)创建资源后,部署 Claude 模型以使其可用于 API 调用:
claude-sonnet-4-5)my-claude-deployment)。部署名称在创建后无法更改。您选择的部署名称成为您在 API 请求的 model 参数中传递的值。您可以创建同一模型的多个部署,使用不同的名称来管理单独的配置或速率限制。
Claude on Foundry 支持两种身份验证方法:API 密钥和 Entra ID 令牌。两种方法都使用格式为 https://{resource}.services.ai.azure.com/anthropic/v1/* 的 Azure 托管端点。
配置 Foundry Claude 资源后,您可以从 Foundry 门户获取 API 密钥:
api-key 或 x-api-key 标头,或将其提供给 SDKPython 和 TypeScript SDK 需要 API 密钥以及资源名称或基础 URL。如果定义了以下环境变量,SDK 将自动从其中读取:
ANTHROPIC_FOUNDRY_API_KEY - 您的 API 密钥ANTHROPIC_FOUNDRY_RESOURCE - 您的资源名称(例如,example-resource)ANTHROPIC_FOUNDRY_BASE_URL - 资源名称的替代方案;完整的基础 URL(例如,https://example-resource.services.ai.azure.com/anthropic/)resource 和 base_url 参数是互斥的。提供资源名称(SDK 使用它将 URL 构造为 https://{resource}.services.ai.azure.com/anthropic/)或直接提供完整的基础 URL。
使用 API 密钥的示例:
import os
from anthropic import AnthropicFoundry
client = AnthropicFoundry(
api_key=os.environ.get("ANTHROPIC_FOUNDRY_API_KEY"),
resource='example-resource', # your resource name
)
message = client.messages.create(
model="claude-sonnet-4-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello!"}]
)
print(message.content)保护您的 API 密钥安全。永远不要将其提交到版本控制或公开分享。任何有权访问您的 API 密钥的人都可以通过您的 Foundry 资源向 Claude 发出请求。
为了增强安全性和集中式访问管理,您可以使用 Entra ID(以前称为 Azure Active Directory)令牌:
Authorization: Bearer {TOKEN} 标头中使用令牌使用 Entra ID 的示例:
import os
from anthropic import AnthropicFoundry
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
# Get Azure Entra ID token using token provider pattern
token_provider = get_bearer_token_provider(
DefaultAzureCredential(),
"https://cognitiveservices.azure.com/.default"
)
# Create client with Entra ID authentication
client = AnthropicFoundry(
resource='example-resource', # your resource name
azure_ad_token_provider=token_provider # Use token provider for Entra ID auth
)
# Make request
message = client.messages.create(
model="claude-sonnet-4-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello!"}]
)
print(message.content)Azure Entra ID 身份验证允许您使用 Azure RBAC 管理访问,与您组织的身份管理集成,并避免手动管理 API 密钥。
Foundry 在 HTTP 响应标头中包含请求标识符,用于调试和跟踪。联系支持时,请提供 request-id 和 apim-request-id 值,以帮助团队快速定位和调查您在 Anthropic 和 Azure 系统中的请求。
Claude on Foundry 支持 Claude 的大多数强大功能。您可以在此处找到当前支持的所有功能。
/v1/organizations/* 端点)/v1/models)/v1/messages/batches)来自 Claude on Foundry 的 API 响应遵循标准 Anthropic API 响应格式。这包括响应体中的 usage 对象,它提供了有关您的请求的详细令牌消耗信息。usage 对象在所有平台上都是一致的(第一方 API、Foundry、Amazon Bedrock 和 Google Vertex AI)。
有关特定于 Foundry 的响应标头的详情,请参阅关联请求 ID 部分。
以下 Claude 模型可通过 Foundry 获得。最新一代模型(Sonnet 4.5、Opus 4.1 和 Haiku 4.5)提供最先进的功能:
| 模型 | 默认部署名称 |
|---|---|
| Claude Opus 4.5 | claude-opus-4-5 |
| Claude Sonnet 4.5 | claude-sonnet-4-5 |
| Claude Opus 4.1 | claude-opus-4-1 |
| Claude Haiku 4.5 | claude-haiku-4-5 |
默认情况下,部署名称与上面显示的模型 ID 匹配。但是,您可以在 Foundry 门户中创建具有不同名称的自定义部署,以管理不同的配置、版本或速率限制。在您的 API 请求中使用部署名称(不一定是模型 ID)。
Azure 通过标准 Azure 模式为您的 Claude 使用提供全面的监控和日志记录功能:
Anthropic 建议至少在 30 天滚动基础上记录您的活动,以了解使用模式并调查任何潜在问题。
Azure 的日志记录服务在您的 Azure 订阅中配置。启用日志记录不会向 Microsoft 或 Anthropic 提供对您内容的访问权限,超出计费和服务运营所需的范围。
错误:401 Unauthorized 或 Invalid API key
错误:403 Forbidden
错误:429 Too Many Requests
Foundry 在响应中不包括 Anthropic 的标准速率限制标头(anthropic-ratelimit-tokens-limit、anthropic-ratelimit-tokens-remaining、anthropic-ratelimit-tokens-reset、anthropic-ratelimit-input-tokens-limit、anthropic-ratelimit-input-tokens-remaining、anthropic-ratelimit-input-tokens-reset、anthropic-ratelimit-output-tokens-limit、anthropic-ratelimit-output-tokens-remaining 和 anthropic-ratelimit-output-tokens-reset)。改为通过 Azure 的监控工具管理速率限制。
错误:Model not found 或 Deployment not found
claude-sonnet-4-5)。错误:Invalid model parameter