Mengintegrasikan Alat Pemanggilan Fungsi
Anda telah membuat alat konversi zona waktu menggunakan fungsi convert_timezone() dan mendefinisikannya dalam format alat OpenAI. Sekarang Anda perlu menerapkan alur kerja pemanggilan fungsi secara lengkap. Objek client sudah diinisialisikan, dan daftar tools berisi definisi alat konversi zona waktu Anda. Fungsi convert_timezone() juga siap digunakan.
Sebuah daftar messages telah dimulai yang memuat masukan pengguna yang memerlukan informasi zona waktu dari alat convert_timezone Anda.
Latihan ini adalah bagian dari kursus
Bekerja dengan OpenAI Responses API
Petunjuk latihan
- Lakukan loop pada item keluaran respons dari permintaan Responses pertama untuk memeriksa apakah berisi
'function_call'ke'convert_timezone'; lalu panggilconvert_timezone()pada argumen yang di-unpack dari item tersebut, dan simpan hasilnya dalamtimezone_result. - Tambahkan sebuah pesan bertipe
'function_call_output'ke daftar messages yang memuat hasil dariconvert_timezone(). - Buat permintaan Responses final dengan messages yang berisi hasil fungsi dan, sekali lagi, meneruskan daftar
tools.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
messages = [{"role": "user", "content": "What time is 2:30pm on January 20th in New York in Tokyo time?"}]
response = client.responses.create(model="gpt-5-mini", input=messages, tools=tools)
messages += response.output
# Process function calls and execute the timezone conversion
for item in response.output:
if item.type == "____":
if item.name == "____":
timezone_result = ____(**json.loads(item.arguments))
# Append function output to messages
messages.append({"type": "____", "call_id": item.call_id, "output": json.dumps({"convert_timezone": ____})})
# Make second API request with function results
response = client.responses.create(model="gpt-5-mini", input=____, tools=____)
print(response.output_text)