Langsung ke konten utama

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.

Tangani error CometAPI dengan menentukan apakah request perlu diperbaiki atau di-retry. Retry 429, kegagalan kelas timeout, dan kegagalan server sementara dengan backoff; jangan retry request yang malformed atau kegagalan autentikasi.

Retry hanya kegagalan yang bisa di-retry

Status atau sinyalCoba lagi?Tindakan
400TidakPerbaiki body request atau parameter.
401TidakPerbaiki API key dan header Authorization.
403Biasanya tidakHapus field yang tidak didukung dan verifikasi akses model.
429YaRetry dengan exponential backoff dan jitter.
500 dengan invalid_requestTidakPerbaiki bentuk request.
500, 503, 504, 524YaRetry dengan backoff dan simpan request ID.

Tambahkan backoff

Contoh Python berikut hanya me-retry kegagalan yang bisa di-retry:
import os
import random
import time
from openai import APIError, OpenAI, RateLimitError

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

for attempt in range(5):
    try:
        response = client.chat.completions.create(
            model="your-model-id",
            messages=[{"role": "user", "content": "Say hello."}],
        )
        print(response.choices[0].message.content)
        break
    except RateLimitError:
        delay = min(30, 2**attempt) + random.random()
        time.sleep(delay)
    except APIError as error:
        status_code = getattr(error, "status_code", None)
        if status_code in {500, 503, 504, 524}:
            delay = min(30, 2**attempt) + random.random()
            time.sleep(delay)
            continue
        raise
else:
    raise RuntimeError("The request failed after retries.")
Respons yang berhasil mencakup output model:
{
  "choices": [
    {
      "message": {
        "role": "assistant",
        "content": "Hello."
      }
    }
  ],
  "usage": {
    "total_tokens": 9
  }
}

Catat konteks yang berguna

Bentuk JSON berikut aman untuk disimpan setelah Anda menghapus rahasia pengguna dan file berukuran besar:
{
  "method": "POST",
  "path": "/v1/chat/completions",
  "model": "your-model-id",
  "status": 429,
  "request_id": "request_id_from_error_message",
  "retryable": true
}

Error umum

KesalahanPerbaikan
Retry 401Hentikan retry lalu rotasi atau muat ulang API key.
Retry JSON yang tidak validValidasi body request sebelum mengirim request lain.
Tidak ada request ID di logTangkap body error yang tepat sebelum SDK Anda membungkusnya.
Retry langsung setelah 429Tambahkan jitter dan kurangi concurrency.

Tautan terkait

Last modified on May 28, 2026