Error 403: apa yang harus dilakukan saat hy3 gagal

Kode 403 berarti Anda sudah terautentikasi tetapi tidak diizinkan: kuncinya valid, namun tidak boleh memanggil model ini atau grup ini.

403 Forbidden berarti identitas dikenali tetapi akses ditolak. Bedanya dengan 401: 401 bertanya siapa Anda, 403 mengatakan Anda tidak punya izin. Biasanya model perlu ditambahkan ke daftar yang diizinkan atau grup yang terikat dengan key Anda.

hy3 disediakan oleh Tencent. 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: Kunci ini tidak diizinkan untuk model ini. Tindakan pertama yang disarankan: Tambahkan model ini ke daftar izin kunci di halaman Token.

Penyebab umum

  • Kunci ini tidak diizinkan untuk model ini
  • Model tidak ada di grup tempat kunci terikat
  • Kunci punya daftar IP yang diizinkan dan IP Anda saat ini tidak termasuk
  • Model sudah dihentikan atau butuh izin lebih tinggi

Cara mengatasi

  • Tambahkan model ini ke daftar izin kunci di halaman Token
  • Pastikan grup kunci mencakup model ini
  • Periksa pengaturan daftar IP yang diizinkan
  • Beralih ke model yang boleh Anda panggil

Contoh percobaan ulang dengan exponential backoff

Kode di bawah mencoba ulang ketika hy3 mengembalikan 403, 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 = 'hy3'


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 APIhttps://api.airai.cc/v1
Kompatibel OpenAIOpenAI-compatible
VendorTencent
Konteks256K
KemampuanReasoning, Tools, Open Weights
Format APIopenai, openai-response, openai-response-compact, anthropic, gemini, openai-alpha-search
Rumus penagihanp * 0 + cr * 0 + cc * 0 + c * 0

FAQ

Apakah mencoba ulang membuat permintaan dieksekusi dua kali?

Biasanya kode bisnis tidak perlu diubah, cukup atur ritme pemanggilan. Mencoba ulang adalah langkah pertama yang paling efektif. Dengan penagihan p * 0 + cr * 0 + cc * 0 + c * 0, permintaan yang gagal tidak dihitung dalam penggunaan. Tetapkan batas percobaan ulang ke 3–5 kali dan tambahkan jitter. Gunakan exponential backoff untuk error yang bisa diulang, dan kembalikan error segera untuk sisanya.

Apakah konteks panjang membuat 403 lebih mungkin terjadi?

Parameter permintaan harus diubah, mencoba ulang saja tidak membantu. Ini masalah konfigurasi sisi klien, sisi server tidak perlu diubah. Tag kemampuan adalah Reasoning, Tools, Open Weights, dan batas parameter mengikuti set kemampuan tersebut. Untuk error parameter, gagalkan langsung daripada menghabiskan percobaan ulang. Potong atau ringkas input yang panjang — ini menurunkan 403 secara nyata.

Bagaimana memantau 403 di produksi?

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 Tencent, 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.

Berapa tingkat konkurensi yang aman?

Variabel sebenarnya di sini adalah konkurensi dan timeout, bukan modelnya. Konteks 256K berarti input panjang menambah latensi token pertama secara nyata. Mulai dari konkurensi rendah, amati beberapa menit, lalu tingkatkan.

Error lain pada model ini

Model lain dengan error yang sama

Data diperbarui: 2026-10-10 08:15

Dukungan teknisDukungan langsung
Kembali ke atas