Przejdź do głównej treści

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.

Dodaj fallback modelu, utrzymując w aplikacji małą uporządkowaną listę model ID i próbując następnego modelu tylko wtedy, gdy błąd nadaje się do retry lub jest specyficzny dla modelu. Nie ponawiaj nieprawidłowo sformułowanych żądań; napraw błędy 400, 401 i invalid request errors, zanim wywołasz kolejny model.

Zaimplementuj uporządkowany fallback

Poniższy przykład w Pythonie próbuje model ID po kolei i zatrzymuje się przy błędach nienadających się do retry:
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.")
Pomyślna odpowiedź pochodzi z pierwszego modelu, który ukończy przetwarzanie:
{
  "model": "your-fallback-model-id",
  "choices": [
    {
      "message": {
        "role": "assistant",
        "content": "CometAPI gives developers one API surface for multiple model providers."
      }
    }
  ]
}

Wybierz modele fallback

Poniższe żądanie wyświetla dostępne model ID, które możesz ocenić pod kątem fallback:
curl https://api.cometapi.com/api/models
Odpowiedź zawiera rekordy modeli:
{
  "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"
    }
  ]
}

Typowe błędy

BłądPoprawka
Fallback ukrywa nieprawidłowe żądaniaNie stosuj fallback dla błędów 400, 401 ani invalid request errors.
Modele mają różne formaty wyjścioweZnormalizuj odpowiedź w aplikacji przed zwróceniem jej użytkownikom.
Fallback zwiększa kosztOszacuj koszt dla każdego modelu przed dodaniem go do listy fallback.
Zbyt wiele równoległych fallbackówPróbuj fallbacków sekwencyjnie, chyba że Twój produkt wymaga równoległego wyścigu.

Powiązane linki

Last modified on May 28, 2026