Halaman ini menjelaskan cara beralih dari model Gemini TTS sebelumnya, seperti
gemini-3.1-flash-tts-preview, gemini-2.5-flash-tts, gemini-2.5-pro-tts,
dan gemini-2.5-flash-lite-preview-tts, ke
Gemini 3.8 Flash TTS
(gemini-3.8-flash-tts) dan
Gemini 3.8 Flash-Lite TTS
(gemini-3.8-flash-lite-tts). Model sebelumnya didokumentasikan di
Gemini-TTS dalam Google Cloud
dokumentasi Text-to-Speech.
Memilih model pengganti
- Gemini 3.8 Flash-Lite TTS adalah pengganti yang direkomendasikan untuk
gemini-3.1-flash-tts-preview. Pilih opsi ini untuk produksi volume tinggi, agen suara, fitur baca lisan, dan ucapan satu speaker sehari-hari. - Gemini 3.8 Flash TTS adalah model unggulan. Pilih opsi ini jika kesetiaan suara, nuansa akting, dialog multi-pembicara, atau cakupan dialek adalah hal yang paling penting, seperti untuk buku audio dan narasi studio.
Kedua model menggunakan skema permintaan yang sama, sehingga Anda dapat beralih di antara keduanya dengan mengubah ID model. Untuk perbandingan, lihat Kapan harus menggunakan model yang mana.
Ringkasan perubahan
| Area | Model Gemini TTS sebelumnya | Model TTS Gemini 3.8 |
|---|---|---|
| API | Cloud Text-to-Speech API atau Gemini Enterprise API | Khusus Gemini Enterprise API (generateContent dan streamGenerateContent) |
| Lokasi | global dan endpoint regional |
global saja |
| Arah gaya | Ditulis ke dalam teks ("Say the following in a curious way: ...") atau kolom Cloud Text-to-Speech prompt |
speech_metadata.style di setiap bagian |
| Dialog multi-penutur | Awalan pembicara dalam satu blok teks, atau Cloud Text-to-Speech multiSpeakerMarkup |
Satu bagian per belokan dengan speech_metadata.speaker |
| Tag vokal inline | Tanda kurung siku, seperti [sigh] |
Tanda kurung sudut, seperti <sigh> |
| Pilihan suara | prebuiltVoiceConfig.voiceName |
voiceConfig.voice, yang juga menerima ID suara yang dirancang dan kunci replikasi suara. prebuiltVoiceConfig.voiceName masih berfungsi untuk suara bawaan. |
| Suara kustom | Audio referensi inline di replicatedVoiceConfig |
Desain suara dan replikasi suara melalui Voices API |
| Output default (Gemini Enterprise API) | PCM 16-bit mentah, 24 kHz, mono | Permintaan unary: file WAV lengkap (PCM 16-bit, 24 kHz, mono). Permintaan streaming: PCM 16-bit mentah, tidak berubah. Anda dapat meminta encoding lain dengan responseFormat. |
temperature, topP, topK |
Diabaikan | Ditolak karena error INVALID_ARGUMENT |
Memperbarui permintaan Anda
- Memindahkan petunjuk gaya ke dalam
speech_metadata.style: Model Gemini 3.8 TTS membacatextsebagai transkrip kata demi kata, sehingga petunjuk yang ditulis dalam teks dapat dibacakan secara lisan. Masukkan arahan akting, intonasi, prosodi, dan kecepatan yang berkelanjutan ke dalamspeech_metadata.style. - Gunakan satu bagian per giliran dialog: Untuk dialog multi-pembicara, teruskan setiap
giliran sebagai
partterpisah, dan tetapkanspeech_metadata.speakerdi setiap giliran ke salah satu pembicara dimultiSpeakerVoiceConfig. - Ganti tag kurung siku dengan tag kurung sudut: Gunakan kurung sudut,
seperti
<sigh>,<laugh>, atau<short pause>, hanya untuk peristiwa vokal pada satu titik waktu. Tulis ketidaklancaran, seperti "ehm", langsung di transkrip. - Desain persona di awal: Ganti perintah "Profil Audio" atau "Catatan Sutradara" yang panjang dengan suara yang dibuat di
Desain suara,
dan biarkan
stylesingkat atau kosong. - Hapus parameter yang tidak didukung: Hapus
temperature,topP,topK,candidateCount, dansystemInstructiondari permintaan Anda. - Menangani output WAV dari permintaan unary: Permintaan unary kini menampilkan file WAV lengkap, bukan PCM mentah. Jika kode Anda menambahkan header WAV atau menggabungkan klip, hapus langkah header, atau tetapkan
generationConfig.responseFormatkeAUDIO_L16untuk mempertahankan output PCM mentah. - Membuat ulang suara yang direplikasi dengan Voices API: Audio referensi inline
di
replicatedVoiceConfigtidak didukung. Buat suara tersimpan atau kunci replikasi suara dengan Voices API, lalu teruskan divoiceConfig.voice. Untuk mengetahui detailnya, lihat Replikasi suara.
Untuk panduan selengkapnya tentang cara menulis perintah, lihat panduan perintah.
Contoh
Contoh berikut menunjukkan permintaan gemini-3.1-flash-tts-preview dan
permintaan TTS Gemini 3.8 yang setara.
Sebelum Gemini 3.8
from google import genai
from google.genai import types
client = genai.Client(enterprise=True, project="PROJECT_ID", location="global")
response = client.models.generate_content(
model="gemini-3.1-flash-tts-preview",
contents="Say the following in a curious way: OK, so... tell me about this [uhm] AI thing.",
config=types.GenerateContentConfig(
response_modalities=["AUDIO"],
speech_config=types.SpeechConfig(
language_code="en-US",
voice_config=types.VoiceConfig(
prebuilt_voice_config=types.PrebuiltVoiceConfig(voice_name="Kore")
),
),
),
)
Gemini 3.8 atau yang lebih baru
from google import genai
client = genai.Client(enterprise=True, project="PROJECT_ID", location="global")
response = client.models.generate_content(
model="gemini-3.8-flash-lite-tts",
contents=[{
"role": "user",
"parts": [{
"text": "OK, so... uhm, tell me about this AI thing.",
"speech_metadata": {"style": "curious"},
}],
}],
config={
"response_modalities": ["AUDIO"],
"speech_config": {
"language_code": "en-US",
"voice_config": {"voice": "Kore"},
},
},
)
Kedua respons menampilkan audio dalam
response.candidates[0].content.parts[0].inline_data.data. Model sebelumnya
menampilkan audio PCM 16-bit mentah (24 kHz, mono), dan model TTS Gemini 3.8
menampilkan file WAV lengkap.
Bermigrasi dari Cloud Text-to-Speech API
Jika Anda memanggil Gemini TTS melalui Cloud Text-to-Speech API
(texttospeech.googleapis.com), kirim permintaan Anda ke metode generateContent
di aiplatform.googleapis.com. Tabel berikut memetakan kolom permintaan Cloud Text-to-Speech ke kolom permintaan API Gemini Enterprise:
Cloud Text-to-Speech API (text:synthesize) |
Gemini Enterprise API (generateContent) |
|---|---|
input.text |
contents[].parts[].text |
input.prompt |
contents[].parts[].speechMetadata.style |
input.multiSpeakerMarkup.turns[] (speaker, text) |
Satu bagian per giliran, dengan text dan speechMetadata.speaker |
voice.modelName |
ID model di URL permintaan |
voice.name |
generationConfig.speechConfig.voiceConfig.voice |
voice.languageCode |
generationConfig.speechConfig.languageCode |
voice.multiSpeakerVoiceConfig.speakerVoiceConfigs[] (speakerAlias, speakerId) |
generationConfig.speechConfig.multiSpeakerVoiceConfig.speakerVoiceConfigs[] (speaker, voiceConfig.voice) |
audioConfig.audioEncoding: LINEAR16 |
generationConfig.responseFormat[].audio.mimeType: AUDIO_WAV (default untuk permintaan unary) |
audioConfig.audioEncoding: PCM |
AUDIO_L16 (default untuk permintaan streaming) |
audioConfig.audioEncoding: MULAW atau ALAW |
AUDIO_MULAW atau AUDIO_ALAW |
audioConfig.audioEncoding: MP3 atau OGG_OPUS |
Tidak didukung. Enkode audio di klien. |
audioConfig.sampleRateHertz |
Tidak didukung. Untuk frekuensi sampling output, lihat Format output audio. |
Cloud Text-to-Speech API menampilkan audio berenkode base64 dalam audioContent.
Gemini Enterprise API menampilkannya dalam
candidates[0].content.parts[0].inlineData.data.
Langkah berikutnya
- Coba contoh di Ringkasan Gemini TTS.
- Pelajari cara mengarahkan gaya dan suara vokal dalam panduan perintah.