Mulai sekarangMulai gratis

Menghindari batasan tingkat dengan percobaan ulang

Anda telah membuat sebuah fungsi untuk menjalankan Chat Completions dengan pesan khusus, tetapi Anda menyadari bahwa fungsi tersebut terkadang gagal karena batasan tingkat permintaan. Anda memutuskan untuk menggunakan dekorator @retry dari pustaka tenacity untuk menghindari kesalahan jika memungkinkan.

Latihan ini merupakan bagian dari kursus

Mengembangkan Sistem AI dengan OpenAI API

Lihat Kursus

Instruksi latihan

"- Impor pustaka tenacity beserta fungsi yang diperlukan: retry, wait_random_exponential, dan stop_after_attempt.

  • Buat klien API OpenAI.
  • Lengkapi dekorator retry dengan parameter yang diperlukan untuk memulai percobaan ulang pada interval 5 detik, hingga 40 detik, dan berhenti setelah 4 percobaan.

Jika latihan mengalami time out, pastikan nilai interval dan jumlah percobaan sesuai persis seperti yang disebutkan di atas."

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# 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."}))
Edit dan Jalankan Kode