Azure OpenAI
Azure OpenAI 服务提供了强大的 AI 能力,可以通过 OpenAI 兼容的 API 来访问 GPT 模型。
支持的模型
- gpt-4o - 最新的 GPT-4 优化版本
- gpt-4 - GPT-4 标准版
- gpt-4-32k - 长上下文版本
- gpt-35-turbo - GPT-3.5 Turbo
- gpt-35-turbo-16k - 长上下文版本
配置方法
基础配置
在 config.yaml 或 ~/.bytebuddy/config.yaml 中配置:
yaml
models:
- name: "azure-gpt-4"
provider: "azure"
model: "gpt-4"
apiKey: "${AZURE_OPENAI_API_KEY}"
apiBase: "https://your-resource.openai.azure.com/"
roles: ["chat", "edit"]
env:
deploymentName: "gpt-4-deployment"
apiVersion: "2024-02-15-preview"
defaultCompletionOptions:
temperature: 0.7
maxTokens: 4000多模型配置
yaml
models:
- name: "azure-gpt-4"
provider: "azure"
model: "gpt-4"
apiKey: "${AZURE_OPENAI_API_KEY}"
apiBase: "https://your-resource.openai.azure.com/"
roles: ["chat", "edit"]
env:
deploymentName: "gpt4-deployment"
apiVersion: "2024-02-15-preview"
defaultCompletionOptions:
temperature: 0.7
maxTokens: 4000
- name: "azure-gpt-35-turbo"
provider: "azure"
model: "gpt-35-turbo"
apiKey: "${AZURE_OPENAI_API_KEY}"
apiBase: "https://your-resource.openai.azure.com/"
roles: ["chat"]
env:
deploymentName: "gpt35-turbo-deployment"
apiVersion: "2024-02-15-preview"
defaultCompletionOptions:
temperature: 0.5
maxTokens: 4000配置字段说明
必需字段
- name: 模型配置的唯一标识符
- provider: 设置为
"azure" - model: 模型名称(如
gpt-4、gpt-35-turbo) - apiKey: Azure OpenAI API 密钥
- apiBase: Azure OpenAI 资源端点
环境变量配置 (env)
Azure 需要通过 env 字段配置特定参数:
- deploymentName: 部署名称(在 Azure 门户中创建)
- apiVersion: API 版本(推荐
2024-02-15-preview) - resourceName: 资源名称(可选)
可选字段
- roles: 模型角色 [
chat,edit,apply,autocomplete] - defaultCompletionOptions:
temperature: 控制输出的随机性(0-2)maxTokens: 最大令牌数topP: 核采样参数frequencyPenalty: 频率惩罚presencePenalty: 存在惩罚
- requestOptions:
timeout: 请求超时时间(毫秒)verifySsl: 是否验证 SSL 证书
环境变量配置
bash
# ~/.bashrc 或 ~/.zshrc
export AZURE_OPENAI_API_KEY="your-azure-api-key"获取 API 密钥
- 登录 Azure 门户
- 创建或找到您的 Azure OpenAI 资源
- 在"密钥和终结点"部分获取 API 密钥和端点
- 在"部署"部分创建模型部署
- 记录部署名称用于配置
使用场景配置
代码开发
yaml
models:
- name: "code-assistant"
provider: "azure"
model: "gpt-4"
apiKey: "${AZURE_OPENAI_API_KEY}"
apiBase: "https://your-resource.openai.azure.com/"
roles: ["chat", "edit"]
env:
deploymentName: "gpt4-deployment"
apiVersion: "2024-02-15-preview"
defaultCompletionOptions:
temperature: 0.1
maxTokens: 2000快速对话
yaml
models:
- name: "quick-chat"
provider: "azure"
model: "gpt-35-turbo"
apiKey: "${AZURE_OPENAI_API_KEY}"
apiBase: "https://your-resource.openai.azure.com/"
roles: ["chat"]
env:
deploymentName: "gpt35-deployment"
apiVersion: "2024-02-15-preview"
defaultCompletionOptions:
temperature: 0.7
maxTokens: 2000故障排除
常见错误
- 401 Unauthorized: 检查 API 密钥是否正确
- 404 Not Found: 验证部署名称、资源端点和 API 版本
- 429 Too Many Requests: 达到速率限制,等待后重试
- DeploymentNotFound: 检查
deploymentName是否正确
调试步骤
- 验证 API 密钥和端点 URL
- 确认部署名称在 Azure 门户中存在
- 检查 API 版本是否支持
- 确认配额和速率限制
最佳实践
1. 安全性
- 使用环境变量存储 API 密钥
- 定期轮换 API 密钥
- 使用 Azure Key Vault 管理密钥
2. 性能优化
- 根据任务选择合适的模型
- 设置合理的
maxTokens限制 - 使用流式响应提升用户体验
3. 成本控制
- 监控使用量和成本
- 为不同用途配置不同的部署
- 使用 GPT-3.5 Turbo 处理简单任务
4. 配置管理
- 为不同环境使用不同的部署
- 配置适当的速率限制
- 实施重试逻辑处理临时错误