Anda dapat menambahkan video ke permintaan Gemini untuk melakukan tugas yang melibatkan pemahaman konten video yang disertakan. Halaman ini menunjukkan cara menambahkan video ke permintaan Anda ke Gemini di Vertex AI menggunakan Konsol Google Cloud dan Vertex AI API.
Model yang didukung
Tabel berikut mencantumkan model yang mendukung pemahaman video:
Model | Detail modalitas video |
---|---|
Gemini 1.5 Flash Buka kartu model Gemini 1.5 Flash |
Durasi video maksimum:
Video maksimum per perintah: 10 |
Gemini 1.5 Pro Buka kartu model Gemini 1.5 Pro |
Durasi video maksimum:
Video maksimum per perintah: 10 |
Gemini 1.0 Pro Vision Buka kartu model Gemini 1.0 Pro Vision |
Durasi video maksimum: 2 menit Video maksimum per perintah: 1 Audio dalam video akan diabaikan. |
Untuk mengetahui daftar bahasa yang didukung oleh model Gemini, lihat informasi model model Google. Untuk mempelajari lebih lanjut cara mendesain perintah multimodal, lihat Mendesain perintah multimodal. Jika Anda mencari cara untuk menggunakan Gemini langsung dari aplikasi seluler dan web, lihat Vertex AI di Firebase SDK untuk aplikasi Android, Swift, web, dan Flutter.
Menambahkan video ke permintaan
Anda dapat menambahkan satu video atau beberapa video dalam permintaan ke Gemini dan video tersebut dapat menyertakan audio.
Video tunggal
Kode contoh di setiap tab berikut menunjukkan cara yang berbeda untuk mengidentifikasi apa yang ada dalam video. Contoh ini berfungsi dengan semua model multimodal Gemini.
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 API Vertex AI SDK untuk Python.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan parameter stream
di
generate_content
.
response = model.generate_content(contents=[...], stream = True)
Untuk respons non-streaming, hapus parameter, atau tetapkan parameter ke
False
.
Kode contoh
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di panduan memulai Vertex AI. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Vertex AI Java SDK untuk Gemini.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan metode
generateContentStream
.
public ResponseStream<GenerateContentResponse> generateContentStream(Content content)
Untuk respons non-streaming, gunakan
metode
generateContent
.
public GenerateContentResponse generateContent(Content content)
Kode contoh
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai AI Generatif menggunakan Node.js SDK. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Node.js SDK untuk Gemini.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan metode
generateContentStream
.
const streamingResp = await generativeModel.generateContentStream(request);
Untuk respons non-streaming, gunakan
metode
generateContent
.
const streamingResp = await generativeModel.generateContent(request);
Kode contoh
Go
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di panduan memulai Vertex AI. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Vertex AI Go SDK untuk Gemini.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan metode
GenerateContentStream
.
iter := model.GenerateContentStream(ctx, genai.Text("Tell me a story about a lumberjack and his giant ox. Keep it very short."))
Untuk respons non-streaming, gunakan metode GenerateContent
.
resp, err := model.GenerateContent(ctx, genai.Text("What is the average size of a swallow?"))
Kode contoh
C#
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C# di panduan memulai Vertex AI. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi C# Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan metode
StreamGenerateContent
.
public virtual PredictionServiceClient.StreamGenerateContentStream StreamGenerateContent(GenerateContentRequest request)
Untuk respons non-streaming, gunakan
metode
GenerateContentAsync
.
public virtual Task<GenerateContentResponse> GenerateContentAsync(GenerateContentRequest request)
Untuk mengetahui informasi selengkapnya tentang cara server melakukan streaming respons, lihat Streaming RPC.
Kode contoh
REST
Setelah menyiapkan lingkungan, Anda dapat menggunakan REST untuk menguji perintah teks. Contoh berikut mengirimkan permintaan ke endpoint model penayang.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
LOCATION
: Region untuk memproses permintaan. Masukkan wilayah yang didukung. Untuk mengetahui daftar lengkap region yang didukung, lihat Lokasi yang tersedia.Klik untuk meluaskan sebagian daftar region yang tersedia
us-central1
us-west4
northamerica-northeast1
us-east4
us-west1
asia-northeast3
asia-southeast1
asia-northeast1
PROJECT_ID
: Project ID Anda.FILE_URI
: URI atau URL file yang akan disertakan dalam perintah. Nilai yang dapat diterima mencakup hal berikut:- URI bucket Cloud Storage: Objek harus dapat dibaca secara publik atau berada di project Google Cloud yang sama dengan yang mengirim permintaan. Untuk
gemini-1.5-pro
dangemini-1.5-flash
, batas ukurannya adalah 2 GB. Untukgemini-1.0-pro-vision
, batas ukurannya adalah 20 MB. - URL HTTP: URL file harus dapat dibaca secara publik. Anda dapat menentukan satu file video, satu file audio, dan maksimal 10 file gambar per permintaan. File audio, file video, dan dokumen tidak boleh melebihi 15 MB.
- URL video YouTube: Video YouTube harus dimiliki oleh akun yang Anda gunakan untuk login ke konsol Google Cloud atau bersifat publik. Hanya satu URL video YouTube yang didukung per permintaan.
Saat menentukan
fileURI
, Anda juga harus menentukan jenis media (mimeType
) file. Jika Kontrol Layanan VPC diaktifkan, menentukan URL file media untukfileURI
tidak didukung.Jika tidak memiliki file video di Cloud Storage, Anda dapat menggunakan file berikut yang tersedia secara publik:
gs://cloud-samples-data/video/animals.mp4
dengan jenis mimevideo/mp4
. Untuk melihat video ini, buka file MP4 contoh.- URI bucket Cloud Storage: Objek harus dapat dibaca secara publik atau berada di project Google Cloud yang sama dengan yang mengirim permintaan. Untuk
MIME_TYPE
: Jenis media file yang ditentukan dalam kolomdata
ataufileUri
. Nilai yang dapat diterima mencakup hal berikut:Klik untuk meluaskan jenis MIME
application/pdf
audio/mpeg
audio/mp3
audio/wav
image/png
image/jpeg
image/webp
text/plain
video/mov
video/mpeg
video/mp4
video/mpg
video/avi
video/wmv
video/mpegps
video/flv
TEXT
: Petunjuk teks yang akan disertakan dalam perintah. Misalnya,What is in the video?
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "contents": { "role": "USER", "parts": [ { "fileData": { "fileUri": "FILE_URI", "mimeType": "MIME_TYPE" } }, { "text": "TEXT" } ] } } EOF
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/gemini-1.5-flash:generateContent"
PowerShell
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "contents": { "role": "USER", "parts": [ { "fileData": { "fileUri": "FILE_URI", "mimeType": "MIME_TYPE" } }, { "text": "TEXT" } ] } } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
$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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/gemini-1.5-flash:generateContent" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan berikut ini.
Perhatikan hal berikut di URL untuk contoh ini:- Gunakan metode
generateContent
untuk meminta respons ditampilkan setelah sepenuhnya dibuat. Untuk mengurangi persepsi latensi kepada audiens manusia, streaming respons saat dihasilkan menggunakan metodestreamGenerateContent
. - ID model multimodal terletak di akhir URL sebelum metode (misalnya,
gemini-1.5-flash
ataugemini-1.0-pro-vision
). Contoh ini juga dapat mendukung model lainnya.
Konsol
Untuk mengirim perintah multimodal menggunakan konsol Google Cloud, lakukan hal berikut:Di bagian Vertex AI pada konsol Google Cloud, buka halaman Vertex AI Studio.
Klik Open freeform.
Opsional: Konfigurasikan model dan parameter:
- Model: Pilih model.
- Region: Pilih region yang ingin Anda gunakan.
Suhu: Gunakan penggeser atau kotak teks untuk memasukkan nilai suhu.
Suhu digunakan untuk pengambilan sampel selama pembuatan respons, yang terjadi saat
topP
dantopK
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. Suhu0
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 pengganti, coba tingkatkan suhunya.
Batas token output: Gunakan penggeser atau kotak teks untuk memasukkan nilai untuk batas output maksimum.
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 singkat dan nilai yang lebih tinggi untuk respons yang berpotensi lebih panjang.
Tambahkan urutan perhentian: Opsional. Masukkan urutan perhentian, yang merupakan rangkaian karakter yang menyertakan spasi. Jika model menemukan urutan berhenti, pembuatan respons akan berhenti. Urutan perhentian tidak disertakan dalam respons, dan Anda dapat menambahkan hingga lima urutan perhentian.
Opsional: Untuk mengonfigurasi parameter lanjutan, klik Advanced dan konfigurasikan sebagai berikut:
Klik untuk meluaskan konfigurasi lanjutan
Top-K: Gunakan penggeser atau kotak teks untuk memasukkan nilai untuk top-K. (tidak didukung untuk Gemini 1.5).
Top-K mengubah cara model memilih token untuk output. Top-K1
berarti token yang dipilih berikutnya adalah yang paling mungkin di antara semua token dalam kosakata model (juga disebut decoding greedy), sedangkan top-K3
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: Gunakan penggeser atau kotak teks untuk memasukkan nilai untuk top-P.
Token dipilih dari yang paling mungkin hingga yang paling tidak mungkin sampai jumlah probabilitasnya sama dengan nilai top-P. Untuk hasil yang paling sedikit variabelnya, tetapkan top-P ke
0
. - Respons maksimum: Gunakan penggeser atau kotak teks untuk memasukkan nilai jumlah respons yang akan dihasilkan.
- Streaming respons: Aktifkan untuk mencetak respons saat dihasilkan.
- Nilai minimum filter keamanan: Pilih nilai minimum kemungkinan Anda melihat respons yang dapat berbahaya.
- Aktifkan Grounding: Grounding tidak didukung untuk perintah multimodal.
Klik Sisipkan Media, lalu pilih sumber untuk file Anda.
Upload
Pilih file yang ingin Anda upload, lalu klik Buka.
Melalui URL
Masukkan URL file yang ingin Anda gunakan, lalu klik Sisipkan.
YouTube
Masukkan URL video YouTube yang ingin Anda gunakan, lalu klik Sisipkan.
Anda dapat menggunakan video publik atau video yang dimiliki oleh akun yang Anda gunakan untuk login ke Konsol Google Cloud.
Cloud Storage
Pilih bucket, lalu file dari bucket yang ingin Anda impor, lalu klik Select.
Google Drive
- Pilih akun dan beri izin kepada Vertex AI Studio untuk mengakses akun Anda saat pertama kali Anda memilih opsi ini. Anda dapat mengupload beberapa file yang memiliki total ukuran hingga 10 MB. Satu file tidak boleh melebihi 7 MB.
- Klik file yang ingin Anda tambahkan.
Klik Pilih.
Thumbnail file akan ditampilkan di panel Prompt. Jumlah total token juga ditampilkan. Jika data perintah Anda melebihi batas token, token akan terpotong dan tidak disertakan dalam pemrosesan data Anda.
Masukkan perintah teks Anda di panel Prompt.
Opsional: Untuk melihat Token ID to text dan Token IDs, klik tokens count di panel Prompt.
Klik Kirim.
Opsional: Untuk menyimpan perintah Anda ke My prompts, klik
Save.Opsional: Untuk mendapatkan kode Python atau perintah curl untuk perintah Anda, klik
Get code.
Video dengan audio
Berikut ini cara meringkas file video dengan audio dan menampilkan bagian dengan stempel waktu. Contoh ini hanya berfungsi dengan Gemini 1.5 Pro.
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 API Vertex AI SDK untuk Python.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan parameter stream
di
generate_content
.
response = model.generate_content(contents=[...], stream = True)
Untuk respons non-streaming, hapus parameter, atau tetapkan parameter ke
False
.
Kode contoh
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di panduan memulai Vertex AI. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Vertex AI Java SDK untuk Gemini.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan metode
generateContentStream
.
public ResponseStream<GenerateContentResponse> generateContentStream(Content content)
Untuk respons non-streaming, gunakan
metode
generateContent
.
public GenerateContentResponse generateContent(Content content)
Kode contoh
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai AI Generatif menggunakan Node.js SDK. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Node.js SDK untuk Gemini.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan metode
generateContentStream
.
const streamingResp = await generativeModel.generateContentStream(request);
Untuk respons non-streaming, gunakan
metode
generateContent
.
const streamingResp = await generativeModel.generateContent(request);
Kode contoh
Go
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di panduan memulai Vertex AI. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Vertex AI Go SDK untuk Gemini.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan metode
GenerateContentStream
.
iter := model.GenerateContentStream(ctx, genai.Text("Tell me a story about a lumberjack and his giant ox. Keep it very short."))
Untuk respons non-streaming, gunakan metode GenerateContent
.
resp, err := model.GenerateContent(ctx, genai.Text("What is the average size of a swallow?"))
Kode contoh
C#
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C# di panduan memulai Vertex AI. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi C# Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan metode
StreamGenerateContent
.
public virtual PredictionServiceClient.StreamGenerateContentStream StreamGenerateContent(GenerateContentRequest request)
Untuk respons non-streaming, gunakan
metode
GenerateContentAsync
.
public virtual Task<GenerateContentResponse> GenerateContentAsync(GenerateContentRequest request)
Untuk mengetahui informasi selengkapnya tentang cara server melakukan streaming respons, lihat Streaming RPC.
Kode contoh
REST
Setelah menyiapkan lingkungan, Anda dapat menggunakan REST untuk menguji perintah teks. Contoh berikut mengirimkan permintaan ke endpoint model penayang.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
LOCATION
: Region untuk memproses permintaan. Masukkan wilayah yang didukung. Untuk mengetahui daftar lengkap region yang didukung, lihat Lokasi yang tersedia.Klik untuk meluaskan sebagian daftar region yang tersedia
us-central1
us-west4
northamerica-northeast1
us-east4
us-west1
asia-northeast3
asia-southeast1
asia-northeast1
PROJECT_ID
: Project ID Anda.FILE_URI
: URI atau URL file yang akan disertakan dalam perintah. Nilai yang dapat diterima mencakup hal berikut:- URI bucket Cloud Storage: Objek harus dapat dibaca secara publik atau berada di project Google Cloud yang sama dengan yang mengirim permintaan. Untuk
gemini-1.5-pro
dangemini-1.5-flash
, batas ukurannya adalah 2 GB. Untukgemini-1.0-pro-vision
, batas ukurannya adalah 20 MB. - URL HTTP: URL file harus dapat dibaca secara publik. Anda dapat menentukan satu file video, satu file audio, dan maksimal 10 file gambar per permintaan. File audio, file video, dan dokumen tidak boleh melebihi 15 MB.
- URL video YouTube: Video YouTube harus dimiliki oleh akun yang Anda gunakan untuk login ke konsol Google Cloud atau bersifat publik. Hanya satu URL video YouTube yang didukung per permintaan.
Saat menentukan
fileURI
, Anda juga harus menentukan jenis media (mimeType
) file. Jika Kontrol Layanan VPC diaktifkan, menentukan URL file media untukfileURI
tidak didukung.Jika tidak memiliki file video di Cloud Storage, Anda dapat menggunakan file berikut yang tersedia secara publik:
gs://cloud-samples-data/generative-ai/video/pixel8.mp4
dengan jenis mimevideo/mp4
. Untuk melihat video ini, buka file MP4 contoh.- URI bucket Cloud Storage: Objek harus dapat dibaca secara publik atau berada di project Google Cloud yang sama dengan yang mengirim permintaan. Untuk
MIME_TYPE
: Jenis media file yang ditentukan dalam kolomdata
ataufileUri
. Nilai yang dapat diterima mencakup hal berikut:Klik untuk meluaskan jenis MIME
application/pdf
audio/mpeg
audio/mp3
audio/wav
image/png
image/jpeg
image/webp
text/plain
video/mov
video/mpeg
video/mp4
video/mpg
video/avi
video/wmv
video/mpegps
video/flv
Petunjuk teks yang akan disertakan dalam perintah. Misalnya,TEXT
Provide a description of the video. The description should also contain anything important which people say in the video.
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "contents": { "role": "USER", "parts": [ { "fileData": { "fileUri": "FILE_URI", "mimeType": "MIME_TYPE" } }, { "text": "TEXT" } ] } } EOF
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/gemini-1.5-flash:generateContent"
PowerShell
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "contents": { "role": "USER", "parts": [ { "fileData": { "fileUri": "FILE_URI", "mimeType": "MIME_TYPE" } }, { "text": "TEXT" } ] } } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
$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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/gemini-1.5-flash:generateContent" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan berikut ini.
Perhatikan hal berikut di URL untuk contoh ini:- Gunakan metode
generateContent
untuk meminta respons ditampilkan setelah sepenuhnya dibuat. Untuk mengurangi persepsi latensi kepada audiens manusia, streaming respons saat dihasilkan menggunakan metodestreamGenerateContent
. - ID model multimodal terletak di akhir URL sebelum metode (misalnya,
gemini-1.5-flash
ataugemini-1.0-pro-vision
). Contoh ini juga dapat mendukung model lainnya.
Konsol
Untuk mengirim perintah multimodal menggunakan konsol Google Cloud, lakukan hal berikut:Di bagian Vertex AI pada konsol Google Cloud, buka halaman Vertex AI Studio.
Klik Open freeform.
Opsional: Konfigurasikan model dan parameter:
- Model: Pilih model.
- Region: Pilih region yang ingin Anda gunakan.
Suhu: Gunakan penggeser atau kotak teks untuk memasukkan nilai suhu.
Suhu digunakan untuk pengambilan sampel selama pembuatan respons, yang terjadi saat
topP
dantopK
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. Suhu0
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 pengganti, coba tingkatkan suhunya.
Batas token output: Gunakan penggeser atau kotak teks untuk memasukkan nilai untuk batas output maksimum.
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 singkat dan nilai yang lebih tinggi untuk respons yang berpotensi lebih panjang.
Tambahkan urutan perhentian: Opsional. Masukkan urutan perhentian, yang merupakan rangkaian karakter yang menyertakan spasi. Jika model menemukan urutan berhenti, pembuatan respons akan berhenti. Urutan perhentian tidak disertakan dalam respons, dan Anda dapat menambahkan hingga lima urutan perhentian.
Opsional: Untuk mengonfigurasi parameter lanjutan, klik Advanced dan konfigurasikan sebagai berikut:
Klik untuk meluaskan konfigurasi lanjutan
Top-K: Gunakan penggeser atau kotak teks untuk memasukkan nilai untuk top-K. (tidak didukung untuk Gemini 1.5).
Top-K mengubah cara model memilih token untuk output. Top-K1
berarti token yang dipilih berikutnya adalah yang paling mungkin di antara semua token dalam kosakata model (juga disebut decoding greedy), sedangkan top-K3
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: Gunakan penggeser atau kotak teks untuk memasukkan nilai untuk top-P.
Token dipilih dari yang paling mungkin hingga yang paling tidak mungkin sampai jumlah probabilitasnya sama dengan nilai top-P. Untuk hasil yang paling sedikit variabelnya, tetapkan top-P ke
0
. - Respons maksimum: Gunakan penggeser atau kotak teks untuk memasukkan nilai jumlah respons yang akan dihasilkan.
- Streaming respons: Aktifkan untuk mencetak respons saat dihasilkan.
- Nilai minimum filter keamanan: Pilih nilai minimum kemungkinan Anda melihat respons yang dapat berbahaya.
- Aktifkan Grounding: Grounding tidak didukung untuk perintah multimodal.
Klik Sisipkan Media, lalu pilih sumber untuk file Anda.
Upload
Pilih file yang ingin Anda upload, lalu klik Buka.
Melalui URL
Masukkan URL file yang ingin Anda gunakan, lalu klik Sisipkan.
YouTube
Masukkan URL video YouTube yang ingin Anda gunakan, lalu klik Sisipkan.
Anda dapat menggunakan video publik atau video yang dimiliki oleh akun yang Anda gunakan untuk login ke Konsol Google Cloud.
Cloud Storage
Pilih bucket, lalu file dari bucket yang ingin Anda impor, lalu klik Select.
Google Drive
- Pilih akun dan beri izin kepada Vertex AI Studio untuk mengakses akun Anda saat pertama kali Anda memilih opsi ini. Anda dapat mengupload beberapa file yang memiliki total ukuran hingga 10 MB. Satu file tidak boleh melebihi 7 MB.
- Klik file yang ingin Anda tambahkan.
Klik Pilih.
Thumbnail file akan ditampilkan di panel Prompt. Jumlah total token juga ditampilkan. Jika data perintah Anda melebihi batas token, token akan terpotong dan tidak disertakan dalam pemrosesan data Anda.
Masukkan perintah teks Anda di panel Prompt.
Opsional: Untuk melihat Token ID to text dan Token IDs, klik tokens count di panel Prompt.
Klik Kirim.
Opsional: Untuk menyimpan perintah Anda ke My prompts, klik
Save.Opsional: Untuk mendapatkan kode Python atau perintah curl untuk perintah Anda, klik
Get code.
Menetapkan parameter model opsional
Setiap model memiliki kumpulan parameter opsional yang dapat Anda tetapkan. Untuk mengetahui informasi selengkapnya, lihat Parameter pembuatan konten.
Persyaratan video
Model multimodal Gemini mendukung jenis MIME video berikut:
Jenis MIME video | Gemini 1.5 Flash | Gemini 1.5 Pro | Gemini 1.0 Pro Vision |
---|---|---|---|
FLV - video/x-flv |
|||
MOV - video/quicktime |
|||
MPEG - video/mpeg |
|||
MPEGPS - video/mpegps |
|||
MPG - video/mpg |
|||
MP4 - video/mp4 |
|||
WEBM - video/webm |
|||
WMV - video/wmv |
|||
3GPP - video/3gpp |
Berikut adalah jumlah maksimum file video yang diizinkan dalam permintaan perintah:
- Gemini 1.0 Pro Vision: 1 file video
- Gemini 1.5 Flash dan Gemini 1.5 Pro: 10 file video
Berikut cara penghitungan token untuk video:
- Semua model multimodal Gemini: Video diambil sampelnya dengan
1 frame per detik (fps) . Setiap frame video memiliki 258 token. - Gemini 1.5 Flash dan Gemini 1.5 Pro: Trek audio dienkode dengan frame video. Jalur audio juga dibagi menjadi
trunk 1 detik yang masing-masing terdiri dari 32 token. Token frame video dan audio diselingi bersama dengan stempel waktunya. Stempel waktu direpresentasikan sebagai 7 token.
Praktik terbaik
Saat menggunakan video, gunakan praktik terbaik dan informasi berikut untuk mendapatkan hasil terbaik:
- Jika perintah Anda berisi satu video, tempatkan video sebelum perintah teks.
- Jika Anda memerlukan pelokalan stempel waktu dalam video dengan audio, minta model
untuk membuat stempel waktu dalam format
MM:SS
dengan dua digit pertama mewakili menit dan dua digit terakhir mewakili detik. Gunakan format yang sama untuk pertanyaan yang menanyakan stempel waktu. Perhatikan hal berikut jika Anda menggunakan Gemini 1.0 Pro Vision:
- Gunakan tidak lebih dari satu video per perintah.
- Model ini hanya memproses informasi dalam dua menit pertama video.
- Model memproses video sebagai frame gambar yang tidak berurutan dari video. Audio tidak disertakan. Jika Anda melihat model melewatkan beberapa konten dari video, coba buat video lebih pendek sehingga model dapat menangkap lebih banyak konten video.
- Model tidak memproses informasi audio atau metadata stempel waktu. Oleh karena itu, model mungkin tidak berperforma baik dalam kasus penggunaan yang memerlukan input audio, seperti audio teks, atau informasi terkait waktu, seperti kecepatan atau ritme.
Batasan
Meskipun model multimodal Gemini sangat canggih dalam banyak kasus penggunaan multimodal, penting untuk memahami keterbatasan model:
- Moderasi konten: Model menolak memberikan jawaban pada video yang melanggar kebijakan keselamatan kami.
- Pengenalan suara non-ucapan: Model yang mendukung audio mungkin melakukan kesalahan saat mengenali suara yang bukan ucapan.
- Gerakan berkecepatan tinggi: Model mungkin melakukan kesalahan
dalam memahami gerakan berkecepatan tinggi dalam video karena kecepatan sampling
1 frame per detik (fps) yang tetap. - Tanda baca transkripsi: (jika menggunakan Gemini 1.5 Flash) Model mungkin menampilkan transkripsi yang tidak menyertakan tanda baca.
Langkah selanjutnya
- Mulai membangun dengan model multimodal Gemini - pelanggan baru mendapatkan kredit Google Cloud gratis senilai $300 untuk mempelajari hal-hal yang dapat mereka lakukan dengan Gemini.
- Pelajari cara mengirim permintaan dialog chat.
- Pelajari praktik terbaik responsible AI dan filter keamanan Vertex AI.