Responses API atau Chat Completions
Bandingkan bentuk permintaan, streaming, alat, dan kompatibilitas penyedia sebelum memilih Responses API atau Chat Completions.
Responses API dan Chat Completions sama-sama mengirim input ke model bahasa, tetapi menyusun input, output, alat, dan streaming dengan cara berbeda. Pilihan harus didasarkan pada kontrak yang didukung bersama oleh klien dan model, bukan anggapan bahwa endpoint yang lebih baru otomatis berlaku untuk semua penyedia.
Aturan ringkasnya:
- Gunakan Responses API untuk agen pemrograman atau aplikasi yang sudah mengharapkan item bertipe, event alat, dan siklus streaming Responses.
- Gunakan Chat Completions untuk klien percakapan yang kompatibel secara luas dan keluarga penyedia yang mengekspos format OpenAI melalui passthrough Chat Completions.
Selalu periksa format yang didukung model di Model & Harga.
Perbandingan protokol
| Pertanyaan | Responses API | Chat Completions |
|---|---|---|
| Input utama | input dan item input bertipe | Array messages |
| Bentuk output | Item output dan event bertipe | Pilihan pesan asisten dan delta |
| Streaming | Aliran event Responses | Aliran potongan Chat Completions |
| Aktivitas alat | Item panggilan dan hasil alat bertipe | Panggilan alat pada pesan asisten |
| Paling sesuai | Agen, alat pemrograman, dan aplikasi native Responses | Klien percakapan dan penyedia kompatibel OpenAI yang luas |
| Portabilitas model | Hanya model yang diverifikasi untuk Responses | Hanya model yang diverifikasi untuk Chat Completions |
Tabel ini menjelaskan kontrak di jaringan. Tabel tersebut tidak berarti Modelflare mengubah semua fitur penyedia dari satu format ke format lain.
Kapan Responses API lebih sesuai
Pilih /v1/responses jika klien memperlakukan satu eksekusi model sebagai rangkaian item bertipe, bukan satu pesan asisten. Pola ini umum pada agen pemrograman yang perlu membedakan teks terlihat, ringkasan penalaran, argumen fungsi, input alat khusus, dan event lain.
Contoh permintaan minimal:
curl -sS https://modelflare.dev/v1/responses \
-H "Authorization: Bearer $MODELFLARE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.6-sol",
"input": "Sebutkan tiga pemeriksaan sebelum migrasi API.",
"stream": true
}'
Validasi streaming Responses dari ujung ke ujung. Klien yang dapat membuka koneksi tetapi hanya memahami potongan Chat Completions bisa terhubung dengan sukses namun gagal menampilkan hasil yang berguna.
Kapan Chat Completions lebih aman
Pilih /v1/chat/completions jika aplikasi dibangun di sekitar pesan system, user, assistant, dan tool, atau jika keluarga penyedia mendokumentasikan endpoint Chat Completions yang kompatibel dengan OpenAI.
curl -sS https://modelflare.dev/v1/chat/completions \
-H "Authorization: Bearer $MODELFLARE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "YOUR_CHAT_MODEL",
"messages": [
{"role": "system", "content": "Jawab dengan ringkas."},
{"role": "user", "content": "Apa yang harus diperiksa oleh pemeriksaan kesehatan API?"}
],
"stream": true
}'
Untuk keluarga non-OpenAI, Modelflare dapat meneruskan Chat Completions tanpa transformasi agar kolom khusus seperti kontrol penalaran atau pencarian sampai ke penyedia tanpa perubahan. Jaminan yang terukur ini lebih tepat daripada menyatakan kompatibilitas Responses secara universal.
Jangan memilih hanya dari nama model
Tiga hal berikut harus diperiksa secara terpisah:
- Kunci API dapat mengakses model. Akses bergantung pada kunci dan grup yang tersedia.
- Model mendukung endpoint. Muncul di /v1/models tidak berarti model mendukung kedua format.
- Klien memahami aliran. Event Responses dan potongan Chat Completions adalah kontrak klien yang berbeda.
Jika salah satunya gagal, mengganti jalur saja dapat mengubah kesalahan kompatibilitas yang jelas menjadi respons kosong atau hanya tampil sebagian.
Migrasi alat dan keluaran terstruktur
Sebelum memindahkan integrasi nyata:
- bandingkan skema definisi alat;
- periksa cara ID panggilan dan hasil alat dikembalikan;
- pertahankan nilai opsional eksplisit seperti 0 atau false;
- identifikasi kolom khusus yang harus diteruskan tanpa perubahan;
- uji respons yang hanya berisi panggilan alat tanpa teks terlihat;
- pastikan cara klien mendeteksi penyelesaian dan penggunaan.
Teks yang mirip dari prompt yang sama bukan bukti protokol yang cukup. Pengujian harus mencakup fitur yang benar-benar digunakan aplikasi.
Alur pemilihan praktis
- Pilih model dan grup di Model & Harga.
- Pastikan format API yang didukung.
- Ikuti panduan khusus klien di Dokumentasi Modelflare, jika tersedia.
- Kirim satu permintaan non-streaming.
- Kirim satu permintaan streaming.
- Jalankan alat atau keluaran terstruktur.
- Tinjau status, waktu, token, dan biaya di log penggunaan.
Responses API bukan pengganti universal untuk Chat Completions, dan Chat Completions belum usang. Format yang tepat adalah format yang didukung bersama oleh klien, model terpilih, dan kontrak penyedia upstream.