text-bison
, text-unicorn
) dioptimalkan untuk berbagai tugas natural language seperti analisis sentimen, ekstraksi entity, dan pembuatan konten. Jenis konten yang dapat dibuat oleh
model PaLM 2 untuk Teks mencakup ringkasan dokumen, jawaban atas
pertanyaan, dan label yang mengklasifikasikan konten.
Model PaLM 2 untuk Teks ideal untuk tugas yang dapat diselesaikan dengan satu respons API, tanpa perlu percakapan berkelanjutan. Untuk tugas teks yang memerlukan interaksi dua arah, gunakan Generative AI di Vertex AI API untuk chat.
Untuk mengeksplorasi model di konsol, pilih kartu model PaLM 2 for Text di
Model Garden.
Pergi ke Model Garden
Kasus penggunaan
Rangkum: Membuat versi dokumen yang lebih pendek yang menyertakan informasi terkait dari teks aslinya. Misalnya, Anda mungkin ingin meringkas bab dari buku teks. Atau, Anda dapat membuat deskripsi produk singkat dari paragraf panjang yang menjelaskan produk secara mendetail.
Penjawaban pertanyaan: Memberikan jawaban atas pertanyaan dalam teks. Misalnya, Anda dapat mengotomatiskan pembuatan dokumen Pertanyaan Umum (FAQ) dari konten pusat informasi.
Klasifikasi: Menetapkan label ke teks yang disediakan. Misalnya, label mungkin diterapkan pada teks yang menjelaskan seberapa benar tata bahasa teks tersebut.
Analisis sentimen: Ini adalah bentuk klasifikasi yang mengidentifikasi sentimen teks. Sentimen diubah menjadi label yang diterapkan ke teks. Misalnya, sentimen teks mungkin berupa polaritas seperti positif atau negatif, atau sentimen seperti kemarahan atau kebahagiaan.
Ekstraksi entitas: Mengekstrak informasi dari teks. Misalnya, Anda dapat mengekstrak nama film dari teks sebuah artikel.
Untuk mengetahui informasi selengkapnya tentang cara mendesain perintah teks, lihat Mendesain perintah teks.
Permintaan HTTP
POST https://us-central1-aiplatform.googleapis.com/v1/projects/{PROJECT_ID}/locations/us-central1/publishers/google/models/text-bison:predict
Lihat metode predict
untuk informasi selengkapnya.
Versi model
Untuk menggunakan versi model terbaru, tentukan nama model tanpa nomor versi, misalnya text-bison
.
Untuk menggunakan versi model stabil, tentukan nomor versi model, misalnya text-bison@002
. Setiap versi stabil tersedia selama enam bulan setelah tanggal rilis versi stabil berikutnya.
Tabel berikut berisi versi model stabil yang tersedia:
model teks-bison | Tanggal rilis | Tanggal penghentian |
---|---|---|
teks-bison@002 | 6 Desember 2023 | 9 Oktober 2024 |
text-bison@001 | 7 Juni 2023 | 6 Juli 2024 |
model teks-unicorn | Tanggal rilis | Tanggal penghentian |
---|---|---|
teks-unicorn@001 | 30 November 2023 | Paling lambat 30 November 2024 |
Untuk mengetahui informasi selengkapnya, baca Versi dan siklus proses model.
Isi permintaan
{
"instances": [
{
"prompt": string
}
],
"parameters": {
"temperature": number,
"maxOutputTokens": integer,
"topK": integer,
"topP": number,
"groundingConfig": string,
"stopSequences": [ string ],
"candidateCount": integer,
"logprobs": integer,
"presencePenalty": float,
"frequencyPenalty": float,
"echo": boolean,
"seed": integer
}
}
Gunakan parameter berikut untuk model teks text-bison
.
Untuk mengetahui informasi selengkapnya, lihat Mendesain perintah teks.
Parameter | Deskripsi | Nilai yang dapat diterima |
---|---|---|
|
Input teks untuk menghasilkan respons model. Perintah dapat mencakup field preamble, pertanyaan, saran, instruksi, atau contoh. | Text |
|
Suhu digunakan untuk pengambilan sampel selama pembuatan respons, yang terjadi saat topP
dan topK diterapkan. Suhu mengontrol tingkat keacakan dalam pemilihan token.
Suhu yang lebih rendah cocok untuk perintah yang memerlukan respons yang kurang terbuka atau kreatif, sedangkan
suhu yang lebih tinggi dapat memberikan hasil yang lebih beragam atau kreatif. Suhu 0
berarti token probabilitas tertinggi selalu dipilih. Dalam hal ini, respons untuk permintaan
tertentu sebagian besar deterministik, tetapi sedikit variasi masih dapat dilakukan.
Jika model menampilkan respons yang terlalu umum, terlalu pendek, atau model memberikan respons penggantian, coba tingkatkan suhu. |
|
|
Jumlah maksimum token yang dapat dibuat dalam respons. Token terdiri dari sekitar empat karakter. 100 token setara dengan sekitar 60-80 kata.
Tentukan nilai yang lebih rendah untuk respons yang lebih pendek dan nilai yang lebih tinggi untuk respons yang berpotensi lebih lama. |
|
|
Top-K mengubah cara model memilih token untuk output. Top-K
1 berarti token yang dipilih berikutnya adalah yang paling mungkin di antara semua
token dalam kosakata model (juga disebut decoding greedy), sedangkan top-K
3 berarti token berikutnya dipilih di antara tiga token yang paling
mungkin dengan menggunakan suhu.
Untuk setiap langkah pemilihan token, token top-K dengan probabilitas tertinggi akan diambil sampelnya. Kemudian token akan difilter lebih lanjut berdasarkan top-P dengan token akhir yang dipilih menggunakan pengambilan sampel suhu. Tentukan nilai yang lebih rendah untuk respons acak yang lebih sedikit dan nilai yang lebih tinggi untuk respons acak yang lebih banyak. |
|
|
Top-P mengubah cara model memilih token untuk output. Token dipilih
dari yang paling mungkin (lihat top-K) hingga yang paling tidak mungkin sampai jumlah probabilitasnya
sama dengan nilai top-P. Misalnya, jika token A, B, dan C memiliki probabilitas
0,3, 0,2, dan 0,1 dengan nilai top-P 0.5 , model akan
memilih A atau B sebagai token berikutnya dengan menggunakan suhu dan mengecualikan
C sebagai kandidat.
Tentukan nilai yang lebih rendah untuk respons acak yang lebih sedikit dan nilai yang lebih tinggi untuk respons acak yang lebih banyak. |
|
|
Menentukan daftar string yang memberi tahu model untuk berhenti menghasilkan teks jika salah satu
string ditemukan dalam respons. Jika string muncul beberapa kali dalam respons, respons akan dipotong di tempatnya pertama kali ditemukan.
String peka huruf besar/kecil.
Misalnya, jika respons berikut adalah respons yang ditampilkan saat stopSequences tidak ditentukan:
public
static string reverse(string myString)
Kemudian respons yang ditampilkan dengan stopSequences ditetapkan ke ["Str",
"reverse"] adalah:
public static string
|
|
|
Grounding memungkinkan Anda mereferensikan data tertentu saat menggunakan model bahasa. Saat Anda menempatkan model, model dapat mereferensikan data internal, rahasia, dan spesifik dari repositori Anda serta menyertakan data dalam responsnya. Hanya penyimpanan data dari Vertex AI Search yang didukung. |
Jalur harus mengikuti format: |
|
Jumlah variasi respons yang akan ditampilkan. |
|
|
Menampilkan token kandidat logprobs teratas yang kemungkinan besar beserta probabilitas lognya pada setiap langkah pembuatan. Token yang dipilih dan probabilitas lognya di setiap langkah akan selalu ditampilkan. Token yang dipilih mungkin termasuk atau tidak termasuk dalam kandidat logprobs teratas.
|
|
|
Nilai positif akan berdampak terhadap token yang berulang kali muncul dalam teks yang dihasilkan, sehingga mengurangi kemungkinan pengulangan konten. Nilai yang dapat diterima adalah -2.0 —2.0 .
|
|
|
Nilai positif akan merugikan token yang sudah muncul dalam teks yang dihasilkan, sehingga meningkatkan kemungkinan menghasilkan konten yang lebih beragam. Nilai yang dapat diterima adalah
-2.0 —2.0 .
|
|
|
Jika true (benar), perintah akan diulangi dalam teks yang dihasilkan. |
|
|
Decoder menghasilkan derau acak dengan generator angka acak semu, derau suhu * ditambahkan
ke logits sebelum pengambilan sampel. Generator angka acak semu (prng) mengambil seed sebagai input, dan
menghasilkan output yang sama dengan seed yang sama.
Jika seed tidak ditetapkan, seed yang digunakan dalam decoder tidak akan bersifat determenistik, sehingga derau acak yang dihasilkan tidak akan deterministik. Jika seed ditetapkan, derau acak yang dihasilkan akan bersifat deterministik. |
|
Permintaan sampel
REST
Untuk menguji prompt teks menggunakan Vertex AI API, kirim permintaan POST ke endpoint model penayang.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
Metode HTTP dan URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/text-bison:predict
Isi JSON permintaan:
{ "instances": [ { "prompt": "Give me ten interview questions for the role of program manager."} ], "parameters": { "temperature": 0.2, "maxOutputTokens": 256, "topK": 40, "topP": 0.95, "logprobs": 2 } }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/text-bison:predict"
PowerShell
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/text-bison:predict" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip seperti contoh respons.
Python
Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Python API.
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Node.js Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Java Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Isi respons
{
"predictions":[
{
"content": string,
"citationMetadata": {
"citations": [
{
"startIndex": integer,
"endIndex": integer,
"url": string,
"title": string,
"license": string,
"publicationDate": string
}
]
},
"logprobs": {
"tokenLogProbs": [ float ],
"tokens": [ string ],
"topLogProbs": [ { map<string, float> } ]
},
"safetyAttributes": {
"categories": [ string ],
"blocked": boolean,
"scores": [ float ],
"errors": [ int ]
}
}
],
"metadata": {
"tokenMetadata": {
"input_token_count": {
"total_tokens": integer,
"total_billable_characters": integer
},
"output_token_count": {
"total_tokens": integer,
"total_billable_characters": integer
}
}
}
}
Elemen respons | Deskripsi |
---|---|
content |
Hasil yang dihasilkan dari teks input. |
categories |
Nama tampilan kategori Atribut Keamanan terkait dengan konten yang dibuat. Urutan cocok dengan Skor. |
scores |
Skor keyakinan setiap kategori, nilai yang lebih tinggi berarti keyakinan yang lebih tinggi. |
blocked |
Flag yang menunjukkan apakah input atau output model diblokir. |
errors |
Kode error yang mengidentifikasi alasan input atau output diblokir. Untuk mengetahui daftar kode error, lihat Atribut dan filter keamanan. |
startIndex |
Indeks dalam output prediksi tempat kutipan dimulai (inklusif). Harus >= 0 dan < end_index. |
endIndex |
Indeks dalam output prediksi tempat kutipan berakhir (eksklusif). Harus > start_index dan < len(output). |
url |
URL yang terkait dengan kutipan ini. Jika ada, URL ini akan ditautkan ke halaman web sumber kutipan ini. URL yang memungkinkan mencakup situs berita, repositori GitHub, dll. |
title |
Judul yang terkait dengan kutipan ini. Jika ada, judul tersebut merujuk pada judul sumber kutipan ini. Judul yang memungkinkan mencakup judul berita, judul buku, dll. |
license |
Lisensi yang terkait dengan kutipan ini. Jika ada, lisensi tersebut merujuk pada lisensi sumber kutipan ini. Lisensi yang memungkinkan mencakup lisensi kode, misalnya, lisensi mit. |
publicationDate |
Tanggal terbit yang terkait dengan kutipan ini. Jika ada, tanggal terbit tersebut mengacu pada tanggal sumber kutipan ini dipublikasikan. Format yang memungkinkan adalah YYYY, YYYY-MM, YYYY-MM-DD. |
input_token_count |
Jumlah token input. Ini adalah jumlah total token di seluruh perintah, awalan, dan akhiran. |
output_token_count |
Jumlah token output. Ini adalah jumlah total token dalam content di seluruh prediksi. |
tokens |
Token yang diambil sampelnya. |
tokenLogProbs |
Probabilitas log token yang diambil sampelnya. |
topLogProb |
Token kandidat yang paling mungkin dan probabilitas lognya di setiap langkah. |
logprobs |
Hasil parameter `logprobs`. Pemetaan 1-1 ke `kandidat`. |
Contoh respons
{
"predictions": [
{
"citationMetadata":{
"citations": [ ]
},
"safetyAttributes":{
"scores": [
0.1
],
"categories": [
"Finance"
],
"blocked": false
},
"content":"1. What is your experience with project management?\n2. What are your strengths and weaknesses as a project manager?\n3. How do you handle conflict and difficult situations?\n4. How do you communicate with stakeholders?\n5. How do you stay organized and on track?\n6. How do you manage your time effectively?\n7. What are your goals for your career?\n8. Why are you interested in this position?\n9. What are your salary expectations?\n10. What are your availability and start date?",
"logprobs": {
"tokenLogProbs": [
-0.1,
-0.2
],
"tokens": [
"vertex",
" rocks!"
],
"topLogProbs": [
{
"vertex": -0.1,
"hello": -0.2
},
{
" rocks!": -0.2,
" world!": -0.3
}
]
}
},
"metadata": {
"tokenMetadata": {
"outputTokenCount": {
"totalTokens": 153,
"totalBillableCharacters": 537
},
"inputTokenCount": {
"totalBillableCharacters": 54,
"totalTokens": 12
}
}
}
]
}
Streaming respons dari model AI Generatif
Parameternya sama untuk permintaan streaming dan non-streaming ke API.
Untuk melihat contoh permintaan dan respons kode menggunakan REST API, lihat Contoh menggunakan REST API.
Untuk melihat contoh permintaan dan respons kode menggunakan Vertex AI SDK untuk Python, lihat Contoh penggunaan Vertex AI SDK untuk Python.