MulaiMulai sekarang secara gratis

Streaming dengan Pemanggilan Fungsi

Anda telah melihat banyak use case yang terbuka dengan LLM yang mendukung pemanggilan fungsi, yang memiliki tipe event tersendiri. Ini berguna untuk memberikan umpan balik waktu nyata kepada pengguna saat model bersiap memanggil sebuah tool, atau untuk pencatatan (logging) guna melacak penggunaan tool.

Fungsi convert_timezone() yang Anda definisikan sebelumnya untuk mengonversi datetime antar zona waktu, serta sebuah daftar tools yang memuat definisi fungsi untuk Responses API, telah disiapkan untuk Anda.

Latihan ini adalah bagian dari kursus

Bekerja dengan OpenAI Responses API

Lihat Kursus

Petunjuk latihan

  • Lengkapi context manager streaming dengan memanggil client.responses.create() menggunakan model "gpt-5-mini", prompt, dan daftar tools.
  • Di dalam loop, periksa apakah ada event "function_call_arguments.delta".
  • Tambahkan kondisi untuk memeriksa event "function_call_arguments.done".
  • Tambahkan kondisi terakhir untuk memeriksa apakah tipe event adalah "response.completed" dan cetak pesan penyelesaian terakhir.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

prompt = "What time is 2:30pm on January 20th in New York in Tokyo time?"

# Open the streaming connection and enable tool-calling
with ____ as stream:
    for event in stream:
        # Filter for function call arguments delta events
        if ____:
            print(f"\nTool args streaming: {event.delta}")
        # Filter for function call arguments complete events
        elif ____:
            print("Tool call args complete.")
        # Filter for response completed events
        elif ____:
            print("\n--- Completed ---")
Edit dan Jalankan Kode