AI 网关配置
为您的 MLflow AI 网关配置提供商、端点和高级设置。
提供商配置
使用这些 YAML 示例为不同的 LLM 提供商配置端点
- OpenAI
- Azure OpenAI
- Anthropic
- Gemini
- AWS Bedrock
- Cohere
- MosaicAI
- Databricks
- MLflow 模型
yaml
endpoints:
- name: gpt4-chat
endpoint_type: llm/v1/chat
model:
provider: openai
name: gpt-4
config:
openai_api_key: $OPENAI_API_KEY
openai_api_base: https://api.openai.com/v1 # Optional
openai_organization: your_org_id # Optional
yaml
endpoints:
- name: azure-chat
endpoint_type: llm/v1/chat
model:
provider: azuread
name: gpt-35-turbo
config:
openai_api_key: $AZURE_OPENAI_API_KEY
openai_api_base: https://your-resource.openai.azure.com/
openai_api_version: "2023-05-15"
openai_deployment_name: your-deployment-name
yaml
endpoints:
- name: claude-chat
endpoint_type: llm/v1/chat
model:
provider: anthropic
name: claude-2
config:
anthropic_api_key: $ANTHROPIC_API_KEY
yaml
endpoints:
- name: gemini-chat
endpoint_type: llm/v1/chat
model:
provider: gemini
name: gemini-2.5-flash
config:
gemini_api_key: $GEMINI_API_KEY
yaml
endpoints:
- name: bedrock-chat
endpoint_type: llm/v1/chat
model:
provider: bedrock
name: anthropic.claude-instant-v1
config:
aws_config:
aws_access_key_id: $AWS_ACCESS_KEY_ID
aws_secret_access_key: $AWS_SECRET_ACCESS_KEY
aws_region: us-east-1
yaml
endpoints:
- name: cohere-completions
endpoint_type: llm/v1/completions
model:
provider: cohere
name: command
config:
cohere_api_key: $COHERE_API_KEY
- name: cohere-embeddings
endpoint_type: llm/v1/embeddings
model:
provider: cohere
name: embed-english-v2.0
config:
cohere_api_key: $COHERE_API_KEY
yaml
endpoints:
- name: mosaicai-chat
endpoint_type: llm/v1/chat
model:
provider: mosaicai
name: llama2-70b-chat
config:
mosaicai_api_key: $MOSAICAI_API_KEY
Databricks Foundation Models APIs 与 OpenAI Chat Completions API 兼容,因此您可以在 AI 网关中使用 openai 提供商。在 name 字段中指定端点名称(例如 databricks-claude-sonnet-4),并将主机和令牌分别设置为 OpenAI API 密钥和基本 URL。
yaml
endpoints:
- name: databricks-chat
endpoint_type: llm/v1/chat
model:
provider: openai
name: databricks-claude-sonnet-4
config:
openai_api_key: $DATABRICKS_TOKEN
openai_api_base: https://your-workspace.cloud.databricks.com/serving-endpoints/ # Replace with your Databricks workspace URL
yaml
endpoints:
- name: custom-model
endpoint_type: llm/v1/chat
model:
provider: mlflow-model-serving
name: my-model
config:
model_server_url: http://:5001
注意
MosaicML PaLM 和 Cohere 提供商已弃用,将在 MLflow 的未来版本中移除。
环境变量
出于安全原因,将 API 密钥存储为环境变量
bash
# OpenAI
export OPENAI_API_KEY=sk-...
# Azure OpenAI
export AZURE_OPENAI_API_KEY=your-azure-key
export AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/
# Anthropic
export ANTHROPIC_API_KEY=sk-ant-...
# AWS Bedrock
export AWS_ACCESS_KEY_ID=AKIA...
export AWS_SECRET_ACCESS_KEY=...
export AWS_REGION=us-east-1
# Cohere
export COHERE_API_KEY=...
高级配置
速率限制
为每个端点配置速率限制
yaml
endpoints:
- name: rate-limited-chat
endpoint_type: llm/v1/chat
model:
provider: openai
name: gpt-3.5-turbo
config:
openai_api_key: $OPENAI_API_KEY
limit:
renewal_period: minute
calls: 100 # max calls per renewal period
模型参数
设置默认模型参数
yaml
endpoints:
- name: configured-chat
endpoint_type: llm/v1/chat
model:
provider: openai
name: gpt-3.5-turbo
config:
openai_api_key: $OPENAI_API_KEY
temperature: 0.7
max_tokens: 1000
top_p: 0.9
多个端点
为不同的用例配置多个端点
yaml
endpoints:
# Fast, cost-effective endpoint
- name: fast-chat
endpoint_type: llm/v1/chat
model:
provider: openai
name: gpt-3.5-turbo
config:
openai_api_key: $OPENAI_API_KEY
# High-quality endpoint
- name: quality-chat
endpoint_type: llm/v1/chat
model:
provider: openai
name: gpt-4
config:
openai_api_key: $OPENAI_API_KEY
# Embeddings endpoint
- name: embeddings
endpoint_type: llm/v1/embeddings
model:
provider: openai
name: text-embedding-ada-002
config:
openai_api_key: $OPENAI_API_KEY
流量路由
添加 routes 配置以将传入流量拆分到多个端点
yaml
endpoints:
- name: chat1
endpoint_type: llm/v1/chat
model:
provider: openai
name: gpt-5
config:
openai_api_key: $OPENAI_API_KEY
- name: chat2
endpoint_type: llm/v1/chat
model:
provider: openai
name: gpt-4.1
config:
openai_api_key: $OPENAI_API_KEY
routes:
- name: chat-route
task_type: llm/v1/chat
destinations:
- name: chat1
traffic_percentage: 80
- name: chat2
traffic_percentage: 20
routing_strategy: TRAFFIC_SPLIT
目前,MLflow 仅支持 TRAFFIC_SPLIT 策略,该策略根据配置的百分比随机路由传入请求。
动态配置更新
AI 网关支持在不重启服务器的情况下热重载配置。只需更新您的 config.yaml 文件,更改就会自动检测到。
安全最佳实践
API 密钥管理
- 切勿将 API 密钥提交到版本控制系统
- 将所有敏感凭据存储在环境变量中
- 定期轮换密钥并更新环境变量
- 为开发和生产使用单独的密钥
网络安全
- 在生产环境中使用 HTTPS 并配备适当的 TLS 证书
- 实施身份验证和授权层
- 配置防火墙以限制对网关的访问
- 监控和记录所有网关请求以进行审计跟踪
配置安全
yaml
# Secure configuration example
endpoints:
- name: production-chat
endpoint_type: llm/v1/chat
model:
provider: openai
name: gpt-4
config:
openai_api_key: $OPENAI_API_KEY # From environment
limit:
renewal_period: minute
calls: 1000
后续步骤
提供商已配置完毕,接下来学习如何使用和集成您的网关