Fehler 401: was tun, wenn gemini-3.5-flash fehlschlägt
Ein 401 bedeutet, dass die Authentifizierung fehlgeschlagen ist: Die Anfrage enthält keinen API-Key, oder der Key ist ungültig, gelöscht oder abgelaufen.
401 Unauthorized bedeutet, dass die Anfrage keine gültigen Zugangsdaten enthält. Das Gateway konnte den Aufrufer nicht identifizieren, daher erreicht die Anfrage das Upstream-Modell nie. Die Prüfung von Authorization-Header und Key-Status ist der einzige Weg.
gemini-3.5-flash wird von Google bereitgestellt. Alles auf dieser Seite — Ursachen, Lösungen und gemessene Daten — basiert auf dem tatsächlichen Laufzeitverhalten dieses Modells auf der Gatewayschicht.
An diesem Gateway ist die häufigste Ursache: Der Authorization-Header fehlt. Empfohlene erste Maßnahme: Senden Sie den Header als Authorization: Bearer gefolgt von Ihrem Key.
Häufige Ursachen
- Der Authorization-Header fehlt
- Der Key ist falsch geschrieben oder enthält Leerzeichen
- Der Key wurde auf der Tokens-Seite gelöscht oder deaktiviert
- Versehentlich wurde ein Key einer anderen Plattform verwendet
So beheben Sie es
- Senden Sie den Header als Authorization: Bearer gefolgt von Ihrem Key
- Erzeugen Sie auf der Tokens-Seite einen neuen Key
- Prüfen Sie, dass Sie keinen Key eines anderen Dienstes verwenden
- Verifizieren Sie den Key mit einer minimalen curl-Anfrage
Wiederholung mit exponentiellem Backoff
Der folgende Code wiederholt den Aufruf, wenn gemini-3.5-flash 401 liefert: bis zu 5 Versuche, mit wachsender Wartezeit und zufälligem Jitter, damit parallele Anfragen nicht gleichzeitig wiederholen. Base-URL und API-Key werden aus Umgebungsvariablen gelesen — nicht hart codieren.
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 = 'gemini-3.5-flash'
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"}]))Wichtige Daten zu diesem Modell
| TPS | 1669.89 |
|---|---|
| Durchschn. Latenz | 3330 ms |
| Erfolgsrate | 100% |
| API-Endpunkt | https://api.airai.cc/v1 |
| OpenAI-kompatibel | OpenAI-compatible |
| Anbieter | |
|---|---|
| Kontext | 1M |
| Funktionen | Reasoning, Tools, Files, Vision, Audio |
| API-Formate | openai, openai-response, openai-response-compact, anthropic, gemini, openai-alpha-search |
| Abrechnungsformel | p * 1.5 + cr * 0.15 + ai * 1.5 + c * 9 |
Häufige Fragen
Hängt 401 bei gemini-3.5-flash von Region oder Knoten ab?
Behalten Sie die Request-ID und den rohen Antworttext, sonst lässt sich nichts zuordnen. Tritt es nur in Produktion auf, ist es meist eine Umgebungsdifferenz, kein Modellfehler. Die gemessene Erfolgsrate beträgt 100%, die meisten Fehler zeigen sich als 401. Die Erfolgsrate 100% wird über Knoten gemittelt, ein schwacher Knoten drückt den Gesamtwert. Reproduzieren Sie es zuerst in der Testumgebung mit demselben Request-Body.
Wie nutze ich den Retry-After-Header in der Antwort?
Business-Code muss meist nicht geändert werden, nur der Aufruftakt. Ein Retry ist der wirksamste erste Schritt. Die gemessene Erfolgsrate liegt bei 100%, der erste Retry bringt meist den größten Nutzen. Setzen Sie die Obergrenze auf 3–5 Versuche und ergänzen Sie Jitter. Wiederholbare Fehler mit exponentiellem Backoff, der Rest sofort als Fehler zurückgeben.
Kann 401 zu Datenverlust führen?
Dieser Fehler hängt nicht mit der Modellfähigkeit zusammen, er liegt auf Gateway-Ebene. Meist ist es ein kurzzeitiges Problem, das von selbst verschwindet. Bei einer Erfolgsrate von 100% ist ein gelegentliches 401 normale Streuung. Besteht der Fehler mehrere Minuten, kontaktieren Sie den Plattform-Support zum Upstream-Status. Klären Sie zuerst Account-Ebene oder Modell-Ebene; beides wird völlig unterschiedlich behandelt.
Lässt sich 401 bei gemini-3.5-flash durch ein anderes Modell umgehen?
Halten Sie zusätzlich ein Ausweichmodell bereit. Ein Fallback in der Architektur ist verlässlicher als jede Fehlermeldung einzeln zu flicken. Dieses Modell von Google hat mehrere Upstream-Knoten, zwischen denen das Gateway wechseln kann. Halten Sie ein leichteres Ersatzmodell bereit, damit der Hauptfluss nicht abbricht. Legen Sie den Modellnamen in die Konfiguration, dann braucht ein Upstream-Wechsel keine Codeänderung.
Weitere Fehler bei diesem Modell
- gemini-3.5-flash: Fehler 429 — Ursachen und Lösungen
- gemini-3.5-flash: Fehler timeout — Ursachen und Lösungen
- gemini-3.5-flash: Fehler 500 — Ursachen und Lösungen
- gemini-3.5-flash: Fehler 502 — Ursachen und Lösungen
- gemini-3.5-flash: Fehler 503 — Ursachen und Lösungen
- gemini-3.5-flash: Fehler 504 — Ursachen und Lösungen
- gemini-3.5-flash: Fehler 403 — Ursachen und Lösungen
- gemini-3.5-flash: Fehler 400 — Ursachen und Lösungen
Andere Modelle mit demselben Fehler
- gpt-5
- claude-opus-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
Daten aktualisiert: 2026-10-10 08:15