Migrasi dari Text Completions
Migrasi dari Text Completions ke Messages
Saat melakukan migrasi dari Text Completions ke Messages, pertimbangkan perubahan-perubahan berikut.
Input dan output
Perubahan terbesar antara Text Completions dan Messages adalah cara Anda menentukan input model dan menerima output dari model.
Dengan Text Completions, input berupa string mentah:
Dengan Messages, Anda menentukan daftar pesan input alih-alih prompt mentah:
Setiap pesan input memiliki role
dan content
.
Nama peran
API Text Completions mengharapkan giliran \n\nHuman:
dan \n\nAssistant:
yang bergantian, tetapi API Messages mengharapkan peran user
dan assistant
. Anda mungkin melihat dokumentasi yang merujuk ke giliran “human” atau “user”. Ini merujuk ke peran yang sama, dan akan menjadi “user” ke depannya.
Dengan Text Completions, teks yang dihasilkan model dikembalikan dalam nilai completion
dari respons:
Dengan Messages, respons adalah nilai content
, yang merupakan daftar blok konten:
Memasukkan kata-kata ke dalam mulut Claude
Dengan Text Completions, Anda dapat mengisi terlebih dahulu bagian dari respons Claude:
Dengan Messages, Anda dapat mencapai hasil yang sama dengan membuat pesan input terakhir memiliki peran assistant
:
Saat melakukan ini, content
respons akan melanjutkan dari content
pesan input terakhir:
System prompt
Dengan Text Completions, system prompt ditentukan dengan menambahkan teks sebelum giliran \n\nHuman:
pertama:
Dengan Messages, Anda menentukan system prompt dengan parameter system
:
Nama model
API Messages mengharuskan Anda menentukan versi model lengkap (misalnya claude-3-opus-20240229
).
Sebelumnya kami mendukung penentuan hanya nomor versi utama (misalnya claude-2
), yang menghasilkan peningkatan otomatis ke versi minor. Namun, kami tidak lagi merekomendasikan pola integrasi ini, dan Messages tidak mendukungnya.
Alasan berhenti
Text Completions selalu memiliki stop_reason
berupa:
"stop_sequence"
: Model mengakhiri gilirannya secara alami, atau salah satu urutan stop kustom Anda dihasilkan."max_tokens"
: Model menghasilkanmax_tokens
konten yang Anda tentukan, atau mencapai maksimum absolutnya.
Messages memiliki stop_reason
dengan salah satu nilai berikut:
"end_turn"
: Giliran percakapan berakhir secara alami."stop_sequence"
: Salah satu urutan stop kustom yang Anda tentukan dihasilkan."max_tokens"
: (tidak berubah)
Menentukan max tokens
- Text Completions: parameter
max_tokens_to_sample
. Tidak ada validasi, tetapi nilai dibatasi per model. - Messages: parameter
max_tokens
. Jika melewatkan nilai yang lebih tinggi dari yang didukung model, mengembalikan error validasi.
Format streaming
Saat menggunakan "stream": true
dengan Text Completions, respons mencakup event server-sent completion
, ping
, dan error
. Lihat Text Completions streaming untuk detailnya.
Messages dapat berisi beberapa blok konten dengan berbagai tipe, sehingga format streamingnya agak lebih kompleks. Lihat Messages streaming untuk detailnya.
Was this page helpful?