Skip to main content

端点

描述

返回 Shannon 中当前配置的所有模型,按提供商组织。此端点直接查询 Python LLM 服务,并反映 config/models.yaml 中定义的模型。

认证

必需: 否(内部服务端点) 对于生产部署,访问应仅限于内部网络。

请求

查询参数

请求头

内部访问无需请求头。

响应

成功响应

状态码: 200 OK 响应体:

响应结构

响应按提供商组织,每个提供商返回一个模型对象数组:

示例

列出所有模型

按层级过滤

Python 示例

模型层级

模型根据能力和成本组织成三个层级:

小型层级(目标工作负载的 50%)

快速、成本优化的基础任务模型:
  • OpenAI: gpt-5-nano-2025-08-07
  • Anthropic: claude-haiku-4-5-20251001
  • xAI: grok-3-mini
  • Google: gemini-2.5-flash-lite
  • DeepSeek: deepseek-chat

中型层级(目标工作负载的 40%)

平衡能力/成本的模型:
  • OpenAI: gpt-5-mini-2025-08-07
  • Anthropic: claude-sonnet-4-5-20250929
  • xAI: grok-4-fast-non-reasoning
  • Google: gemini-2.5-flash
  • Meta: llama-4-scout

大型层级(目标工作负载的 10%)

用于复杂任务的重度推理模型:
  • OpenAI: gpt-4.1-2025-04-14, gpt-5-pro-2025-10-06
  • Anthropic: claude-opus-4-1-20250805
  • Google: gemini-2.5-pro
  • DeepSeek: deepseek-r1
  • xAI: grok-4-fast-reasoning

配置源

模型在 config/models.yamlmodel_catalog 下定义:
定价集中在 pricing.models 下:

使用场景

1. 发现可用模型
2. 检查定价
3. 验证 API 密钥配置
4. 构建模型选择器 UI

注意事项

  • 静态配置: 模型从 config/models.yaml 加载,不是从提供商 API 动态发现
  • 热重载: 对 models.yaml 的更改需要重启服务才能生效
  • 空提供商: 如果提供商返回 [],请检查 .env 中是否设置了 API 密钥
  • 定价集中化: 所有成本来自 YAML 中的 pricing 部分,确保 Go/Rust/Python 服务之间的一致性
  • 内部端点: /providers/models 端点位于 LLM 服务(端口 8000)上。如需外部访问,请使用网关的 OpenAI 兼容 /v1/models 端点(端口 8080)— 参见 OpenAI 兼容 API

环境变量

使用环境变量覆盖模型选择:
查看完整列表,请参阅配置指南

故障排除

提供商数组为空
  • 验证 API 密钥已设置:OPENAI_API_KEYANTHROPIC_API_KEY
  • 检查 config/models.yamlmodel_catalog.<provider> 下有条目
缺少模型
  • 确保 MODELS_CONFIG_PATH 指向正确的文件
  • 验证 YAML 语法有效
  • 检查模型 ID 是否有拼写错误
定价不正确
  • 定价来自 pricing.models.<provider> 部分
  • 更新 config/models.yaml 并重启服务
  • 验证 Go/Rust 服务也读取相同的配置文件

相关文档

模型选择指南

层级路由和回退工作原理

配置

环境变量和配置文件

提交任务

使用 model_tier 或 model_override

集中定价

定价架构详情