跳到主要内容

Models

概述

ToProuter AI 提供了兼容 OpenAI 格式的模型列表 API,支持获取平台上所有可用的 AI 模型信息。该 API 遵循 OpenAI 标准格式,便于开发者快速集成。

基础信息

  • 基础 URL: https://api.toprouter.ai
  • API 版本: v1
  • 协议: HTTPS
  • 数据格式: JSON

接口详情

获取模型列表

获取平台上所有可用的 AI 模型列表。

请求信息

GET /api/openai/v1/models

请求头

Content-Type: application/json
Authorization: Bearer YOUR_API_KEY

请求参数

无需请求参数。

响应格式

成功响应 (200 OK)
{
"data": [
{
"id": "模型唯一标识符",
"object": "model",
"created": 1759201305,
"owned_by": "topai",
"permission": [],
"root": "模型根名称",
"parent": null
}
]
}
响应字段说明
字段名类型说明
dataarray模型信息数组
data[].idstring模型的唯一标识符,用于 API 调用时指定模型
data[].createdinteger模型创建时间戳(Unix 时间戳)
data[].owned_bystring模型所有者,固定为 "topai"
data[].permissionarray模型权限列表(当前为空数组)
data[].rootstring模型根名称,通常与 id 相同
data[].parentnull父模型(当前均为 null)

可用模型列表

支持的模型可在模型列表查看。

Claude 系列模型

模型 ID模型类型说明
claude-opus-4-1-20250805Claude Opus 4.1Claude 最新旗舰模型
claude-sonnet-4-5-20250929Claude Sonnet 4.5Claude 高性能模型
claude-opus-4-20250514Claude Opus 4Claude Opus 系列
claude-sonnet-4-20250514Claude Sonnet 4Claude Sonnet 系列
claude-3-7-sonnetClaude 3.7 SonnetClaude 3.7 系列
claude-3-5-haikuClaude 3.5 HaikuClaude 轻量级模型
claude-3-5-sonnet-v2Claude 3.5 Sonnet V2Claude 3.5 改进版
claude-3-5-sonnetClaude 3.5 SonnetClaude 3.5 标准版
claude-3-haikuClaude 3 HaikuClaude 3 轻量级模型
claude-haiku-4-5-20251001-v1Claude Haiku 4.5Claude 最新轻量级模型

GPT 系列模型

模型 ID模型类型说明
gpt-oss-120bGPT OSS 120B大型开源 GPT 模型
gpt-oss-20bGPT OSS 20B中型开源 GPT 模型

使用示例

cURL 示例

curl -X GET "https://api.toprouter.ai/api/openai/v1/models" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"

Python 示例

import requests
import json

def get_models():
url = "https://api.toprouter.ai/api/openai/v1/models"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}

response = requests.get(url, headers=headers)

if response.status_code == 200:
models = response.json()
print("可用模型列表:")
for model in models['data']:
print(f"- {model['id']}")
return models
else:
print(f"请求失败: {response.status_code}")
return None

# 使用示例
models = get_models()

JavaScript/Node.js 示例

const axios = require('axios');

async function getModels() {
try {
const response = await axios.get('https://api.toprouter.ai/api/openai/v1/models', {
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
}
});

console.log('可用模型列表:');
response.data.data.forEach(model => {
console.log(`- ${model.id}`);
});

return response.data;
} catch (error) {
console.error('请求失败:', error.response?.status || error.message);
return null;
}
}

// 使用示例
getModels();

使用 OpenAI SDK

from openai import OpenAI

# 初始化客户端,使用自定义 base_url
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.toprouter.ai/api/openai/v1"
)

# 获取模型列表
models = client.models.list()

print("可用模型列表:")
for model in models.data:
print(f"- {model.id}")

最佳实践

1. API 密钥管理

  • 将 API 密钥存储在环境变量中,不要硬编码在代码中
  • 定期轮换 API 密钥
  • 限制 API 密钥的访问权限

2. 请求优化

  • 实现请求重试机制,处理临时网络错误
  • 使用合适的超时设置
  • 缓存模型列表结果,避免频繁请求

3. 错误处理

  • 实现完整的错误处理逻辑
  • 记录错误日志用于调试
  • 为用户提供友好的错误提示

技术支持

如有问题或需要技术支持,请联系: