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 の小さな順序付きリストを保持し、失敗が再試行可能またはモデル固有の場合にのみ次のモデルを試すことで、model fallback を追加できます。リクエストが不正な場合は再試行しないでください。別のモデルを呼び出す前に、400、401、および無効なリクエストエラーを修正してください。
順序付き fallback を実装する
次の 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."
}
}
]
}
fallback モデルを選ぶ
次のリクエストでは、fallback 用に評価できる利用可能な 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"
}
]
}
よくあるエラー
| エラー | 修正方法 |
|---|
| fallback によって無効なリクエストが見えなくなる | 400、401、または無効なリクエストエラーでは fallback しないでください。 |
| モデルごとに出力形式が異なる | ユーザーに返す前に、アプリ内でレスポンスを正規化してください。 |
| fallback によってコストが増加する | fallback リストに追加する前に、各モデルのコストを見積もってください。 |
| 並列 fallback が多すぎる | プロダクトで並列実行が必要な場合を除き、fallback は順番に試してください。 |
関連リンク