Keluaran streaming Assistant API menyediakan hasil secara real-time dari Assistant dalam bentuk event stream yang berisi informasi status dan pesan percakapan dari runtime Assistant. Untuk memproses pesan-pesan tersebut, Anda perlu memahami objek message delta dan objek run step delta.
Message delta object
Event name: thread.message.deltaFragmen pesan yang dihasilkan oleh Large Language Model (LLM) selama eksekusi streaming.
Field name | Type | Description |
|---|---|---|
id | string | Identifier pesan. |
object | string | Jenis objek. Nilainya sama dengan nama event. Selalu bernilai `thread.message.delta`. |
delta | object | Objek fragmen pesan yang dihasilkan oleh LLM. |
delta.role | string | Peran yang menghasilkan pesan tersebut. Nilainya dapat berupa `user` atau `assistant`. |
delta.file_ids | array | Bidang ini tidak digunakan. |
delta.content | object | Objek konten pesan. |
delta.content.type | string | Jenis konten pesan. Selalu bernilai `text`. |
delta.content.text | object | Objek konten teks dalam pesan. |
delta.content.text.annotations | array | Bidang ini tidak digunakan. |
delta.content.text.value | string | Konten teks dalam pesan. |
Run step delta object
Event name: thread.run.step.deltaFragmen pesan yang dikembalikan oleh pemanggilan alat selama eksekusi streaming.
Field Name | Type | Description |
|---|---|---|
id | string | Identifier langkah eksekusi (run step). |
object | string | Jenis objek. Nilainya sama dengan nama event. Selalu bernilai `thread.run.step.delta`. |
delta | object | Objek fragmen pesan yang dikembalikan oleh pemanggilan alat. |
delta.step_details | object | Objek informasi detail langkah untuk fragmen tersebut. |
delta.step_details.type | string | Jenis detail langkah. Nilainya dapat berupa `message_creation` atau `tool_calls`. |
delta.step_details.message_creation | object | Detail pesan yang dibuat dalam langkah tersebut. |
delta.step_details.message_creation.type | string | Selalu bernilai `message_creation`. |
delta.step_details.message_creation.message_id | string | ID pesan yang dibuat dalam langkah ini. |
delta.step_details.tool_calls | array | Daftar detail untuk pemanggilan alat. |
delta.step_details.tool_calls.type | string | Jenis pemanggilan alat. Nilainya dapat berupa `code_interpreter`, `quark_search`, `text_to_image`, atau `calculator`. |
delta.step_details.tool_calls.code_interpreter | object | Objek pesan untuk code interpreter. |
delta.step_details.tool_calls.code_interpreter.arguments | string | Parameter input untuk code interpreter. Ini mencakup jenis kode dan kode lengkapnya. Dihasilkan oleh LLM. |
delta.step_details.tool_calls.code_interpreter.output | string | Parameter output dari code interpreter. Ini mencakup hasil eksekusi. Dihasilkan oleh code interpreter. |
delta.step_details.tool_calls.quark_search | object | Objek pesan untuk Quark Search. |
delta.step_details.tool_calls.quark_search.arguments | string | Parameter input untuk Quark Search. Ini mencakup pernyataan kueri yang ditulis ulang. Dihasilkan oleh LLM. |
delta.step_details.tool_calls.quark_search.output | string | Parameter output dari Quark Search. Ini mencakup penanda keberhasilan, kode kesalahan, pesan kesalahan, dan daftar hasil pencarian (judul, alamat, deskripsi, jenis, sumber pesan). Dihasilkan oleh Quark Search. |
delta.step_details.tool_calls.text_to_image | object | Objek pesan untuk text-to-image. |
delta.step_details.tool_calls.text_to_image.arguments | string | Parameter input untuk text-to-image. Ini mencakup nama model, gaya, ukuran gambar, jumlah gambar, petunjuk positif, dan prompt negatif. Dihasilkan oleh LLM. |
delta.step_details.tool_calls.text_to_image.output | string | Parameter output dari text-to-image. Ini mencakup ID permintaan, ID tugas, status tugas, waktu pengiriman, perkiraan waktu selesai, waktu akhir, hasil yang dihasilkan, jumlah gambar, penanda keberhasilan, dan penanda kegagalan. Dihasilkan oleh alat text-to-image. |
delta.step_details.tool_calls.calculator | object | Objek pesan untuk kalkulator. |
delta.step_details.tool_calls.calculator.arguments | string | Parameter input untuk kalkulator. Ini mencakup rumus input dan header permintaan. Dihasilkan oleh LLM. |
delta.step_details.tool_calls.calculator.output | string | Parameter output dari kalkulator. Ini mencakup rumus dan hasilnya. Dihasilkan oleh kalkulator. |
Assistant event stream
Event yang terjadi saat Anda menjalankan Assistant dalam mode streaming.
Pada Assistant API, event stream terdiri dari event dan data:
-
event: Server mengirimkan event ketika objek baru dibuat, status berubah, atau konten dialirkan. Contohnya, event dikirim saat run baru dibuat (thread.run.created) atau saat run selesai (thread.run.completed). -
data: Berisi data rinci terkait event tersebut. Contohnya, dapat berisi status, teks, pesan alat, atau kesalahan.
Event name | Data type | Description |
|---|---|---|
thread.created | thread | Terjadi saat thread baru dibuat. |
thread.run.created | run | Terjadi saat run baru dibuat. |
thread.run.queued | run | Terjadi saat run berpindah ke status `queued`. |
thread.run.in_progress | run | Terjadi saat run berpindah ke status `in_progress`. |
thread.run.requires_action | run | Terjadi saat run berpindah ke status `requires_action`. |
thread.run.completed | run | Terjadi saat run selesai. |
thread.run.failed | run | Terjadi saat run gagal. |
thread.run.cancelled | run | Terjadi saat run dibatalkan. |
thread.run.expired | run | Terjadi saat run kedaluwarsa. |
thread.run.step.created | run step | Terjadi saat langkah run dibuat. |
thread.run.step.in_progress | run step | Terjadi saat langkah run berpindah ke status `in_progress`. |
thread.run.step.delta | run step delta | Terjadi saat sebagian konten langkah run dialirkan. |
thread.run.step.completed | run step | Terjadi saat langkah run selesai. |
thread.run.step.failed | run step | Terjadi saat langkah run gagal. |
thread.run.step.cancelled | run step | Terjadi saat langkah run dibatalkan. |
thread.run.step.expired | run step | Terjadi saat langkah run kedaluwarsa. |
thread.message.created | message | Terjadi saat pesan dibuat. |
thread.message.in_progress | message | Terjadi saat pesan memasuki status `in_progress`. |
thread.message.delta | message delta | Terjadi saat sebagian konten pesan dialirkan. |
thread.message.completed | message | Terjadi saat pesan selesai. |
thread.message.incomplete | message | Terjadi saat pesan berakhir sebelum selesai sepenuhnya. |
error | error | Dipicu saat terjadi kesalahan. Hal ini dapat disebabkan oleh kesalahan server internal atau timeout. |
FAQ
- Jika Anda mengalami kesalahan eksekusi kode saat mengonfigurasi keluaran streaming, lihat Pesan kesalahan untuk memecahkan masalah tersebut.
- Untuk mempelajari cara mengonfigurasi keluaran streaming untuk Assistant API, lihat Panduan Cepat untuk keluaran streaming Assistant API.