error.message のリクエスト ID を記録し、認証や設定の誤りは再送信前に修正してください。一時的な障害と確認できた場合だけ再試行します。
診断の前に
Model ID、Base URL、失敗した応答を用意します。BetterToken Dashboard で Key の状態と現在の残高を確認してください。まだモデルから応答を得ていない場合は、SDK のサンプルかツール設定ガイドから始めます。エラー応答を読む
BetterToken は API エラーを JSON 形式で返します。たとえば、Key を付けずにリクエストすると、次の応答が返る場合があります。error.message は error.code が空でも読んでください。メッセージ内のリクエスト ID は、失敗した試行の特定に役立ちます。Key なしで /v1/models にリクエストすると 401 が返ります。この操作では、モデルが応答を生成できるかは確認できません。
サポートに問い合わせる前に、以下を記録してください。
スクリーンショット、サポートへのメッセージ、共有ログに BetterToken API Key を含めないでください。
HTTP ステータスを確認する
以下は一般的な HTTP/API の意味と、リンク先の設定ガイドに基づく表です。BetterToken 固有のエラーコード一覧ではありません。実際の応答を読んでから対処を選んでください。
プロトコルや末尾のパスの誤りは Base URL の FAQ、キャッシュについてはキャッシュ課金の FAQを参照してください。
一時的な障害を再試行する
一時的な429 やサーバー障害と確認できた場合は、ランダムな揺らぎを加えた指数バックオフを上限付きで使います。Retry-After があれば従ってください。再試行の待機時間の上限を超える場合は、ループを止めてから待機します。SDK と自作ループの試行回数は合算されるため、自分で再試行を実装する場合は SDK の再試行を無効にします。
原因を修正せずに 400、401、403、残高不足、設定エラーを再試行しないでください。クライアントのタイムアウトやストリームの切断だけでは、処理前に失敗したとは判断できません。特に画像生成や同じ操作を繰り返す可能性がある処理では、まず Dashboard を確認します。
以下の例では、非ストリーミングの Chat Completions リクエストを最大四回試行します。HTTP 500、502、503 を再試行します。429 は一時的なレート制限と確認するまで再試行を無効にしています。タイムアウト、ネットワーク例外、504 では停止し、完了状況を確認できるようにします。一回あたりの再試行待機時間は最大 30 秒です。
リクエストを準備する
モデル広場から現在の Model ID をコピーし、二つのプレースホルダーを置き換えます。Chat Completions で利用可能なテキストモデルを使ってください。.mjs ファイルとして保存し、fetch と AbortSignal.timeout を利用できる Node.js のバージョンで実行してください。
- Python
- JavaScript

