跳转到主要内容

Documentation Index

Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt

Use this file to discover all available pages before exploring further.

通过在应用中维护一个小型的有序 model ID 列表,并且仅在失败可重试或为模型特定问题时尝试下一个模型,来实现模型回退。不要重试格式错误的请求;在调用另一个模型之前,先修复 400401 和无效请求错误。

实现有序回退

以下 Python 示例按顺序尝试 model ID,并在遇到不可重试的错误时停止:
import os
import time
from openai import OpenAI, APIError, RateLimitError

client = OpenAI(
    api_key=os.environ["COMETAPI_KEY"],
    base_url="https://api.cometapi.com/v1",
)

models = ["your-primary-model-id", "your-fallback-model-id"]

for model in models:
    try:
        completion = client.chat.completions.create(
            model=model,
            messages=[
                {
                    "role": "user",
                    "content": "Summarize CometAPI in one sentence.",
                }
            ],
        )
        print(completion.choices[0].message.content)
        break
    except RateLimitError:
        time.sleep(2)
        continue
    except APIError as error:
        status_code = getattr(error, "status_code", None)
        if status_code in {500, 503, 504, 524}:
            time.sleep(2)
            continue
        raise
else:
    raise RuntimeError("All configured model fallbacks failed.")
成功响应来自第一个完成请求的模型:
{
  "model": "your-fallback-model-id",
  "choices": [
    {
      "message": {
        "role": "assistant",
        "content": "CometAPI gives developers one API surface for multiple model providers."
      }
    }
  ]
}

选择回退模型

以下请求会列出可用的 model ID,供你评估并用于回退:
curl https://api.cometapi.com/api/models
响应包含模型记录:
{
  "success": true,
  "page": 0,
  "page_size": 0,
  "total": 301,
  "data": [
    {
      "id": "deepseek-v4-pro",
      "provider": "DeepSeek",
      "model_type": "text",
      "features": [
        "text-to-text"
      ],
      "pricing": {
        "currency": "USD / M Tokens",
        "input": 0.416,
        "output": 0.832,
        "per_request": null,
        "per_second": null
      },
      "api_doc_url": "https://apidoc.cometapi.com/api/text/chat"
    }
  ]
}

常见错误

错误修复方法
回退掩盖了无效请求不要在 400401 或无效请求错误时进行回退。
模型具有不同的输出格式在返回给用户之前,先在应用中标准化响应。
回退会增加成本在将每个模型添加到回退列表之前先估算成本。
并行回退过多除非你的产品需要并行竞速,否则按顺序尝试回退。

相关链接

Last modified on May 28, 2026