AI 网关设置
通过这份分步设置指南,快速启动并运行您的 MLflow AI 网关。
安装
AI 网关需要 MLflow 并包含用于服务器功能的额外依赖项。`[gateway]` 额外功能包括 FastAPI、Uvicorn 和其他服务组件。
pip install 'mlflow[gateway]'
环境设置
将您的 API 密钥存储为环境变量,以确保它们安全并与您的配置文件分离。网关在连接到提供商时会读取这些变量。
# 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: chat
endpoint_type: llm/v1/chat
model:
provider: openai
name: gpt-3.5-turbo
config:
openai_api_key: $OPENAI_API_KEY
endpoints:
- name: chat
endpoint_type: llm/v1/chat
model:
provider: openai
name: gpt-3.5-turbo
config:
openai_api_key: $OPENAI_API_KEY
- name: completions
endpoint_type: llm/v1/completions
model:
provider: openai
name: gpt-3.5-turbo-instruct
config:
openai_api_key: $OPENAI_API_KEY
- name: embeddings
endpoint_type: llm/v1/embeddings
model:
provider: openai
name: text-embedding-ada-002
config:
openai_api_key: $OPENAI_API_KEY
启动网关服务器
MLflow CLI 提供了一个简单的命令来启动网关服务器。服务器将验证您的配置文件并为所有已定义的提供商启动端点。
基本启动
这会以默认设置在 localhost 端口 5000 上启动服务器。
mlflow gateway start --config-path config.yaml
服务器默认将在 `https://:5000` 上启动。
自定义配置
对于生产环境或特定的网络要求,请自定义主机、端口和工作进程。
mlflow gateway start \
--config-path config.yaml \
--port 8080 \
--host 0.0.0.0 \
--workers 4
命令行选项
选项 | 描述 | 默认值 |
---|---|---|
--config-path | YAML 配置文件的路径 | 必需 |
--port | 服务器的端口号 | 5000 |
--host | 要绑定的主机地址 | 127.0.0.1 |
--workers | 工作进程数 | 1 |
验证
检查服务器状态
通过简单的 HTTP 健康检查验证网关是否正在运行且健康。
# Check if server is responding
curl https://:5000/health
查看 API 文档
网关使用 FastAPI 内置的 Swagger UI 自动生成交互式 API 文档。
https://:5000/docs
测试简单请求
发送测试请求以验证您的端点配置是否正常工作。
curl -X POST https://:5000/gateway/chat/invocations \
-H "Content-Type: application/json" \
-d '{
"messages": [{"role": "user", "content": "Hello!"}]
}'
故障排除
常见问题
缺少 API 密钥
Error: Provider 'openai' requires 'openai_api_key' configuration
解决方案:确保在启动服务器之前设置了环境变量。
端口冲突
Error: Port 5000 is already in use
解决方案:使用 `—port` 指定不同的端口,或者停止冲突的进程。
配置错误
Error: Invalid configuration file
解决方案:检查 YAML 语法和必填字段。配置在服务器启动时会进行验证。
验证
配置在服务器启动时会自动验证。任何错误都将显示有用的消息,以指导您解决问题。
后续步骤
一旦您的网关运行起来,请学习如何配置提供商和端点。