Error 504: apa yang harus dilakukan saat claude-opus-5 gagal
Kode 504 berarti gateway kehabisan waktu menunggu model hulu: permintaan sudah dikirim, tetapi hulu tidak merespons dalam batas waktu gateway.
504 Gateway Timeout berarti gateway berhenti menunggu respons upstream. Permintaan sudah diteruskan, tetapi tidak ada hasil yang kembali dalam batas gateway. Memperpendek output, mengaktifkan streaming, atau menurunkan max_tokens biasanya menyelesaikannya.
claude-opus-5 disediakan oleh Anthropic. Semua di halaman ini — penyebab, solusi, dan data terukur — disusun dari perilaku runtime nyata model ini di lapisan gateway.
Di gateway ini, pemicu yang paling umum adalah: Hulu memerlukan waktu lebih lama dari batas gateway. Tindakan pertama yang disarankan: Beralih ke keluaran streaming.
Penyebab umum
- Hulu memerlukan waktu lebih lama dari batas gateway
- Konteks panjang menambah waktu inferensi
- Node hulu macet
- Permintaan non-streaming dengan keluaran sangat panjang
Cara mengatasi
- Beralih ke keluaran streaming
- Perpendek konteks dan turunkan max_tokens
- Coba lagi setelah menunggu sebentar
- Gunakan model dengan inferensi lebih cepat
Contoh percobaan ulang dengan exponential backoff
Kode di bawah mencoba ulang ketika claude-opus-5 mengembalikan 504, maksimal 5 kali, dengan waktu tunggu yang meningkat plus jitter acak agar permintaan paralel tidak mengulang bersamaan. Baca base URL dan API key dari environment variable, jangan hardcode.
import os, time, random
import requests
BASE = os.getenv("OPENAI_BASE_URL") # e.g. https://<your-gateway>/v1
KEY = os.getenv("OPENAI_API_KEY")
MODEL = 'claude-opus-5'
def chat(messages, retries=5):
"""Retry with exponential backoff + jitter."""
for i in range(retries):
try:
r = requests.post(
BASE + "/chat/completions",
headers={"Authorization": "Bearer " + KEY},
json={"model": MODEL, "messages": messages, "stream": True},
timeout=60,
)
if r.status_code == 429 or r.status_code >= 500:
time.sleep(min(2 ** i + random.uniform(0, 1), 30))
continue
r.raise_for_status()
return r.json()
except requests.exceptions.Timeout:
time.sleep(min(2 ** i + random.uniform(0, 1), 30))
raise RuntimeError("gave up after " + str(retries) + " retries")
print(chat([{"role": "user", "content": "hello"}]))Data penting model ini
| Endpoint API | https://api.airai.cc/v1 |
|---|---|
| Kompatibel OpenAI | OpenAI-compatible |
| Vendor | Anthropic |
|---|---|
| Konteks | 1M |
| Kemampuan | Reasoning, Tools, Files, Vision |
| Format API | openai, openai-response, openai-response-compact, anthropic, gemini, openai-alpha-search |
| Rumus penagihan | p * 5 + cr * 0.5 + cc * 6.25 + cc1h * 10 + c * 25 |
FAQ
Berapa lama timeout sebaiknya dipasang?
Variabel sebenarnya di sini adalah konkurensi dan timeout, bukan modelnya. Konteks 1M berarti input panjang menambah latensi token pertama secara nyata. Tambahkan lapisan cache agar permintaan berulang tidak semuanya sampai ke model. Ratakan lonjakan dengan batch atau antrean — lebih stabil daripada menaikkan konkurensi mendadak.
Saat claude-opus-5 mengembalikan 504, field mana di body yang perlu diperiksa?
Simpan request ID dan isi respons mentahnya, kalau tidak tidak ada yang bisa dilacak. Jika hanya terjadi di produksi, biasanya itu perbedaan lingkungan, bukan modelnya. Model ini dilayani oleh Anthropic, sehingga status upstream mengikuti pengumuman penyedia. Catat request ID pada setiap kegagalan — lebih berguna daripada kode status. Reproduksi dulu di lingkungan pengujian dengan request body yang sama.
Apakah 504 terkait kemampuan model itu sendiri?
Error ini tidak terkait kemampuan model, melainkan level gateway. Biasanya bersifat sementara dan pulih sendiri. Tag kapabilitas model ini adalah Reasoning, Tools, Files, Vision. Jika berlangsung beberapa menit, hubungi dukungan platform untuk memastikan status upstream. Tentukan dulu apakah ini level akun atau level model; penanganannya benar-benar berbeda.
Apakah 504 terkait cara penagihan claude-opus-5?
Tidak ada tagihan, hanya output yang benar-benar dihasilkan yang dihitung. Hanya output yang sudah dihasilkan yang ditagihkan; bagian yang gagal tidak. Dengan penagihan p * 5 + cr * 0.5 + cc * 6.25 + cc1h * 10 + c * 25, biaya output panjang sebagian besar dari token output. Periksa saldo dan batas laju di konsol dulu, baru periksa kodenya. Saat memperkirakan biaya dari p * 5 + cr * 0.5 + cc * 6.25 + cc1h * 10 + c * 25, sertakan juga anggaran percobaan ulang.
Error lain pada model ini
- claude-opus-5: error 429 — penyebab dan solusi
- claude-opus-5: error timeout — penyebab dan solusi
- claude-opus-5: error 500 — penyebab dan solusi
- claude-opus-5: error 502 — penyebab dan solusi
- claude-opus-5: error 503 — penyebab dan solusi
- claude-opus-5: error 401 — penyebab dan solusi
- claude-opus-5: error 403 — penyebab dan solusi
- claude-opus-5: error 400 — penyebab dan solusi
Model lain dengan error yang sama
- gpt-5
- gemini-2.5-pro
- deepseek-v4-pro
- grok-4.3
- llama-3.3-70b-instruct
- qvq-max
- qwq-32b
- glm-5
- MiniMax-M3
- kimi-k3
- hy3
- doubao-seed-evolving
- mimo-v2.5
- gpt-4o
- claude-opus-4-6
- gemini-2.5-flash
Data diperbarui: 2026-10-10 15:45