Naar hoofdinhoud gaan

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.

Verwerk CometAPI-fouten door te bepalen of het request moet worden aangepast of opnieuw moet worden geprobeerd. Probeer 429, timeout-achtige fouten en tijdelijke serverfouten opnieuw met backoff; probeer ongeldige requests of authenticatiefouten niet opnieuw.

Probeer alleen retrybare fouten opnieuw

Status of signaalOpnieuw proberen?Actie
400NeeCorrigeer de request body of parameters.
401NeeCorrigeer de API-sleutel en de Authorization header.
403Meestal nietVerwijder niet-ondersteunde velden en controleer modeltoegang.
429JaProbeer opnieuw met exponentiële backoff en jitter.
500 with invalid_requestNeeCorrigeer de request-vorm.
500, 503, 504, 524JaProbeer opnieuw met backoff en bewaar de request ID.

Voeg backoff toe

Het volgende Python-voorbeeld probeert alleen retrybare fouten opnieuw:
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.")
De succesvolle response bevat de modeloutput:
{
  "choices": [
    {
      "message": {
        "role": "assistant",
        "content": "Hello."
      }
    }
  ],
  "usage": {
    "total_tokens": 9
  }
}

Log bruikbare context

De volgende JSON-vorm is veilig om op te slaan nadat je gebruikersgeheimen en grote bestanden hebt verwijderd:
{
  "method": "POST",
  "path": "/v1/chat/completions",
  "model": "your-model-id",
  "status": 429,
  "request_id": "request_id_from_error_message",
  "retryable": true
}

Veelvoorkomende fouten

FoutOplossing
401 opnieuw proberenStop met retries en roteer of herlaad de API-sleutel.
Ongeldige JSON opnieuw proberenValideer de request body voordat je nog een request verstuurt.
Geen request ID in logsLeg de exacte error body vast voordat je SDK die inpakt.
Direct opnieuw proberen na 429Voeg jitter toe en verlaag de concurrency.
Last modified on May 28, 2026