跳到主要内容

AI 网关配置

为您的 MLflow AI 网关配置提供商、端点和高级设置。

提供商配置

使用这些 YAML 示例为不同的 LLM 提供商配置端点

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
注意

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 密钥管理

  1. 切勿将 API 密钥提交到版本控制系统
  2. 将所有敏感凭据存储在环境变量中
  3. 定期轮换密钥并更新环境变量
  4. 为开发和生产使用单独的密钥

网络安全

  1. 在生产环境中使用 HTTPS 并配备适当的 TLS 证书
  2. 实施身份验证和授权层
  3. 配置防火墙以限制对网关的访问
  4. 监控和记录所有网关请求以进行审计跟踪

配置安全

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

后续步骤

提供商已配置完毕,接下来学习如何使用和集成您的网关