跳到主要内容

渠道管理

概述

渠道管理是 LLM Gateway 的核心功能之一,允许您集中管理多个 LLM 提供商的 API 密钥、端点和配置。通过渠道管理,您可以:

  • 添加和配置多个 LLM 提供商(OpenAI、Claude、Gemini 等)
  • 设置渠道优先级和权重
  • 监控渠道健康状态和性能指标
  • 动态启用或禁用渠道
  • 配置渠道特定的请求参数和限制
🌐
多提供商支持
支持 OpenAI、Anthropic Claude、Google Gemini、Azure OpenAI 等主流 LLM 提供商
⚙️
灵活配置
为每个渠道独立配置 API 密钥、端点、模型映射和请求参数
💗
健康监控
实时监控渠道可用性、响应时间和成功率
📊
优先级控制
设置渠道优先级,智能路由系统将优先使用高优先级渠道

核心概念

渠道(Channel)

渠道代表一个 LLM 提供商的 API 访问配置。每个渠道包含:

  • 基础信息: 名称、类型、描述
  • 认证配置: API 密钥、访问令牌
  • 端点配置: API 基础 URL、自定义端点
  • 模型配置: 支持的模型列表、模型映射关系
  • 路由配置: 优先级、权重、分组
  • 限制配置: 速率限制、并发限制、配额

渠道类型

系统支持以下渠道类型:

类型提供商说明
OpenAIOpenAI官方 OpenAI API
AzureMicrosoft AzureAzure OpenAI Service
AnthropicAnthropicClaude 系列模型
GoogleGoogleGemini 系列模型
PaLMGooglePaLM 2 模型(已停用)
Baidu百度文心一言
Zhipu智谱 AIChatGLM 系列
Ali阿里云通义千问
其他自定义兼容 OpenAI API 的其他提供商

渠道状态

  • 启用(Enabled): 渠道正常工作,可接收请求
  • 禁用(Disabled): 渠道被手动禁用,不接收请求
  • 不健康(Unhealthy): 渠道响应异常,被健康检查器标记为不可用

优先级和权重

  • 优先级(Priority): 数值越大优先级越高,范围 0-1000,默认 0
  • 权重(Weight): 用于负载均衡策略,权重越大分配的请求越多,范围 1-100,默认 1

使用指南

添加新渠道

1

导航到渠道管理页面

登录 LLM Gateway 管理后台,点击主导航的“管理”,点击左侧菜单的"渠道"。

渠道管理页面
2

点击添加渠道按钮

在渠道列表页面,点击左下角的"添加新的渠道"按钮。

添加渠道按钮
3

填写渠道基础信息

在添加渠道表单中,填写以下基础信息:

  • 渠道名称: 为渠道设置一个便于识别的名称(如"DeepSeek")
  • 渠道类型: 从下拉列表中选择提供商类型,如DeepSeek
渠道基础信息表单
4

配置认证信息

根据所选的渠道类型,填写相应的认证信息:

OpenAI 渠道:

{
  "api_key": "sk-xxxxxxxxxxxxxxxxxxxxxxxx"
}

Azure OpenAI 渠道:

{
  "api_key": "your-azure-api-key",
  "api_version": "2024-02-15-preview",
  "resource_name": "your-resource-name"
}

Anthropic Claude 渠道:

{
  "api_key": "sk-ant-xxxxxxxxxxxxxxxxxxxxxxxx"
}
认证信息配置
5

设置端点配置(可选)

如果需要使用自定义端点,可以配置:

  • 基础 URL: 自定义 API 端点地址
  • 超时时间: 请求超时时间(秒),默认 60 秒

示例:

基础 URL: https://api.openai.com/v1
超时时间: 120
端点配置
6

配置模型列表

添加该渠道支持的模型:

  • 点击"添加模型"按钮
  • 输入模型 ID(如 gpt-4, gpt-3.5-turbo)
  • 可选设置模型别名和映射关系
  • 可以添加多个模型
模型配置
7

设置路由参数

配置渠道在智能路由中的参数:

  • 优先级: 0-1000,数值越大优先级越高
  • 权重: 1-100,用于负载均衡
  • 分组: 可选,将渠道分配到特定组
路由参数配置
8

保存渠道

检查所有配置无误后,点击"保存"按钮创建渠道。

信息

新创建的渠道默认为启用状态,可以在渠道列表中随时启用或禁用。

编辑现有渠道

1

在渠道列表中找到目标渠道

浏览渠道列表,或使用搜索功能快速定位。

渠道列表搜索
2

点击编辑按钮

在渠道行的操作列中,点击"编辑"图标。

3

修改配置

在编辑表单中修改需要更新的字段。所有字段都可以修改。

编辑渠道表单
4

保存更改

点击"保存"按钮应用更改。

注意

修改 API 密钥或端点配置可能会影响正在进行的请求,建议在低流量时段进行。

启用和禁用渠道

可以随时启用或禁用渠道,无需删除配置:

在渠道列表页面,每个渠道行都有一个开关按钮:

  1. 点击开关按钮切换渠道状态
  2. 系统会立即生效,禁用的渠道不会接收新请求
渠道启用/禁用开关

删除渠道

注意

删除渠道是不可逆操作,请谨慎操作。建议先禁用渠道观察一段时间,确认无影响后再删除。

1

选择要删除的渠道

在渠道列表中找到目标渠道。

2

点击删除按钮

在操作列中点击"删除"图标。

3

确认删除

在弹出的确认对话框中,确认删除操作。

删除确认对话框

测试渠道连接

在添加或编辑渠道后,可以测试渠道连接是否正常:

1

打开测试工具

在渠道详情页面或编辑页面,找到"测试连接"按钮。

测试连接按钮
2

选择测试模型

从该渠道支持的模型列表中选择一个模型进行测试。

3

发送测试请求

系统会发送一个简单的测试请求到该渠道:

{
  "model": "gpt-3.5-turbo",
  "messages": [
    {
      "role": "user",
      "content": "Hello, this is a test message."
    }
  ],
  "max_tokens": 10
}
4

查看测试结果

测试结果会显示:

  • 连接状态(成功/失败)
  • 响应时间
  • 错误信息(如果失败)
  • 返回的响应内容
测试结果显示

监控渠道健康状态

系统会自动监控所有启用渠道的健康状态:

💗
健康检查器
后台健康检查器每 30 秒检查一次所有启用渠道的可用性
⚠️
自动降级
连续失败超过阈值的渠道会被标记为不健康,智能路由会自动避开
🔄
自动恢复
不健康的渠道会持续被检查,恢复后自动重新启用
📈
实时指标
查看渠道的响应时间、成功率、错误率等实时指标

在渠道列表页面,健康状态通过图标和颜色标识:

  • 绿色对勾: 健康,正常工作
  • 黄色感叹号: 警告,响应时间较慢
  • 红色叉号: 不健康,连接失败或错误率高
渠道健康状态显示

点击渠道名称可以查看详细的健康指标:

渠道健康详情

查看渠道统计信息

每个渠道都有详细的统计信息:

  • 总请求数
  • 成功请求数
  • 失败请求数
  • Token 使用量
  • 估算成本
渠道使用统计

配置参考

渠道配置字段详解

基础字段
字段类型必填说明
idinteger自动渠道唯一标识符
namestring渠道名称,最长 100 字符
typeinteger渠道类型 ID
descriptionstring渠道描述,最长 500 字符
statusinteger状态: 1=启用, 2=禁用
created_timetimestamp自动创建时间
updated_timetimestamp自动最后更新时间
认证字段
字段类型必填说明
keystringAPI 密钥或访问令牌
secretstringAPI 密钥的密钥部分(如果需要)
otherstring其他认证信息,JSON 格式
端点字段
字段类型必填说明
base_urlstring自定义 API 基础 URL
timeoutinteger请求超时时间(秒),默认 60
proxystring代理服务器地址
模型字段
字段类型必填说明
modelsstring支持的模型列表,逗号分隔
model_mappingstring模型映射关系,JSON 格式
路由字段
字段类型必填说明
priorityinteger优先级,0-1000,默认 0
weightinteger权重,1-100,默认 1
groupstring渠道分组标识
限制字段
字段类型必填说明
rate_limitinteger每分钟请求数限制,0 表示不限制
max_concurrentinteger最大并发请求数,0 表示不限制
quotainteger总配额(token 数),0 表示不限制
used_quotainteger自动已使用配额

不同提供商的配置示例

{
"name": "OpenAI 官方",
"type": 1,
"key": "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"base_url": "https://api.openai.com/v1",
"models": "gpt-4,gpt-4-turbo,gpt-3.5-turbo,gpt-3.5-turbo-16k",
"priority": 100,
"weight": 10,
"timeout": 60
}

通过 API 管理渠道

除了使用 Web 界面,还可以通过 REST API 管理渠道:

获取渠道列表
curl -X GET https://your-gateway.com/api/channel/ \
-H "Authorization: Bearer YOUR_TOKEN"
获取单个渠道
curl -X GET https://your-gateway.com/api/channel/1 \
-H "Authorization: Bearer YOUR_TOKEN"
创建渠道
curl -X POST https://your-gateway.com/api/channel/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "OpenAI 主渠道",
"type": 1,
"key": "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"models": "gpt-4,gpt-3.5-turbo",
"priority": 100,
"weight": 10
}'
更新渠道
curl -X PUT https://your-gateway.com/api/channel/1 \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"priority": 95,
"weight": 8
}'
删除渠道
curl -X DELETE https://your-gateway.com/api/channel/1 \
-H "Authorization: Bearer YOUR_TOKEN"
测试渠道
curl -X POST https://your-gateway.com/api/channel/1/test \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-3.5-turbo"
}'

最佳实践

渠道规划建议

📚
主备渠道
为每个模型配置主渠道和备用渠道,确保高可用性
🌍
地域分布
配置不同地域的渠道,降低延迟,提高访问速度
💰
成本优化
配置多个渠道,利用智能路由的成本优化策略降低费用
📊
限额管理
为每个渠道设置配额限制,避免超支

优先级设置策略

合理设置渠道优先级可以优化路由效果:

  1. 性能优先场景:

    • 低延迟渠道: priority = 100
    • 中等延迟渠道: priority = 80
    • 高延迟渠道: priority = 60
  2. 成本优先场景:

    • 低成本渠道: priority = 100
    • 中等成本渠道: priority = 70
    • 高成本渠道: priority = 50
  3. 可靠性优先场景:

    • 高稳定性渠道: priority = 100
    • 一般稳定性渠道: priority = 80
    • 测试渠道: priority = 30
提示

在使用优先级路由策略时,系统会优先选择高优先级且健康的渠道。如果高优先级渠道不可用,会自动降级到低优先级渠道。

权重设置策略

权重主要用于负载均衡策略:

渠道 A: weight = 10 (处理 50% 请求)
渠道 B: weight = 6 (处理 30% 请求)
渠道 C: weight = 4 (处理 20% 请求)

推荐根据以下因素设置权重:

  • 渠道性能: 性能更好的渠道可以设置更高的权重
  • 配额限制: 配额充足的渠道可以设置更高的权重
  • 成本考量: 如果希望多用低成本渠道,可以给它们更高的权重

安全建议

注意

API 密钥是敏感信息,请妥善保管:

  • 环境隔离: 为生产环境和测试环境使用不同的 API 密钥
  • 定期轮换: 定期更换 API 密钥,降低泄露风险
  • 最小权限: 使用权限最小的 API 密钥
  • 监控异常: 监控渠道使用情况,发现异常及时处理
  • 访问控制: 限制可以管理渠道的用户和角色

性能优化建议

  1. 合理设置超时时间:

    • 快速模型(如 GPT-3.5): 30-60 秒
    • 慢速模型(如 GPT-4): 90-120 秒
    • 流式响应: 可以设置更长的超时时间
  2. 启用连接池:

    • 系统会自动管理连接池,无需额外配置
    • 高并发场景下,连接池可以显著提升性能
  3. 使用代理服务器:

    • 如果直接访问提供商 API 较慢,可以配置代理服务器
    • 支持 HTTP/HTTPS/SOCKS5 代理
  4. 监控和调优:

    • 定期查看渠道性能指标
    • 根据实际使用情况调整优先级和权重
    • 禁用或删除长期不健康的渠道

故障处理

渠道连接失败

可能原因:

  • API 密钥错误或过期
  • 网络连接问题
  • 提供商服务故障

解决方案:

  1. 验证 API 密钥是否正确
  2. 使用测试工具测试连接
  3. 检查网络连接和防火墙设置
  4. 查看提供商状态页面
  5. 尝试使用备用渠道
请求超时

可能原因:

  • 超时时间设置过短
  • 模型处理时间过长
  • 网络延迟高

解决方案:

  1. 增加超时时间配置
  2. 使用更快的模型
  3. 检查网络连接质量
  4. 考虑使用流式响应
配额不足

可能原因:

  • 渠道配额已用完
  • 提供商账户余额不足

解决方案:

  1. 增加渠道配额限制
  2. 充值提供商账户
  3. 启用其他渠道分担流量
  4. 使用成本优化策略
模型不可用

可能原因:

  • 模型 ID 配置错误
  • 提供商不支持该模型
  • 模型已下线

解决方案:

  1. 检查模型 ID 拼写
  2. 查看提供商文档确认支持的模型
  3. 更新到新的模型版本
  4. 配置模型映射关系

常见问题

如何配置多个 OpenAI 密钥实现负载均衡?

创建多个 OpenAI 渠道,每个使用不同的 API 密钥:

  1. 添加渠道 A: API 密钥 1,优先级 100,权重 10
  2. 添加渠道 B: API 密钥 2,优先级 100,权重 10
  3. 在请求时使用负载均衡路由策略

系统会自动在两个渠道之间分配请求,实现负载均衡。

渠道优先级和权重有什么区别?
  • 优先级: 用于优先级路由策略,优先选择高优先级渠道
  • 权重: 用于负载均衡路由策略,根据权重比例分配请求

不同的路由策略会使用不同的参数。可以同时配置两者,以支持多种路由策略。

如何处理渠道被标记为不健康?

渠道被标记为不健康通常是因为:

  1. 连续多次请求失败
  2. 响应时间持续过长
  3. 返回错误率过高

处理步骤:

  1. 查看渠道详情中的错误日志
  2. 使用测试工具测试连接
  3. 修复配置问题后,系统会自动恢复
  4. 如果问题持续,可以手动禁用该渠道
可以配置自定义的 LLM 提供商吗?

可以。如果提供商兼容 OpenAI API 格式:

  1. 选择渠道类型为"其他"或"自定义"
  2. 配置自定义的 base_url
  3. 填写 API 密钥
  4. 配置支持的模型列表

系统会使用 OpenAI 格式的请求与该提供商通信。

如何查看某个渠道的历史请求记录?

在访问日志页面:

  1. 使用渠道 ID 或渠道名称筛选
  2. 查看该渠道处理的所有请求
  3. 可以按时间、状态、模型等维度进一步筛选

参考: 访问日志文档

渠道配额和用户配额有什么关系?
  • 渠道配额: 限制单个渠道的最大使用量
  • 用户配额: 限制单个用户的最大使用量

请求会同时检查两个配额:

  • 如果渠道配额不足,会尝试使用其他渠道
  • 如果用户配额不足,请求会被拒绝
如何实现 A/B 测试不同的 LLM 提供商?

使用负载均衡策略和权重配置:

  1. 配置提供商 A: 权重 = 9 (90% 流量)
  2. 配置提供商 B: 权重 = 1 (10% 流量)
  3. 使用负载均衡路由策略
  4. 对比两个渠道的性能指标和成本
  5. 根据结果调整权重比例

相关页面