LoslegenKostenlos loslegen

Vermeidung von Ratenbegrenzungen mit Wiederholungsversuch

Du hast eine Funktion erstellt, um Chat Completions mit einer benutzerdefinierten Nachricht auszuführen, hast aber festgestellt, dass sie manchmal aufgrund von Ratenbegrenzungen fehlschlägt. Du entscheidest dich, den @retry-Decorator aus der tenacity-Bibliothek zu verwenden, um Fehler nach Möglichkeit zu vermeiden.

Diese Übung ist Teil des Kurses

Entwicklung von KI-Systemen mit der OpenAI-API

Kurs anzeigen

Anleitung zur Übung

"- Importieren Sie die Bibliothek tenacity mit den benötigten Funktionen: retry, wait_random_exponential und stop_after_attempt.

  • Erstellen Sie einen OpenAI API-Client.
  • Vervollständigen Sie die Retry-Decoratoren mit den Parametern, die erforderlich sind, um das erneute Versuchen in einem Intervall von 5 Sekunden zu beginnen, bis zu 40 Sekunden, und nach 4 Versuchen zu stoppen.

Wenn die Übung ein Timeout verursacht, stellen Sie sicher, dass die Intervall- und Versuchswerte genau mit den oben angegebenen übereinstimmen."

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Import the tenacity library
from ____ import ____

client = OpenAI(api_key="")

# Add the appropriate parameters to the decorator
@retry(____, ____)
def get_response(model, message):
    response = client.chat.completions.create(
      model=model,
      messages=[message]
    )
    return response.choices[0].message.content
print(get_response("gpt-4o-mini", {"role": "user", "content": "List ten holiday destinations."}))
Code bearbeiten und ausführen