Dizajni i zërit ju lejon të krijoni një personazh vokal krejt të ri dhe të vazhdueshëm nga një përshkrim në gjuhë natyrale duke përdorur pikën fundore të Gemini API Voices ( POST /v1beta/voices ). Në vend që të kufizoheni vetëm në zëra të parapërgatitur ose në regjistrimin e audios referuese, mund të përshkruani moshën e një personazhi, timbrin vokal, theksin dhe transmetimin bazë, dhe të merrni një ID voice_... të ripërdorshëm të ruajtur në projektin tuaj.
Mënyra më e shpejtë për të dizajnuar, provuar dhe përsëritur zërat e personalizuar është me studion interaktive të Dizajnit të Zërit në Google AI Studio . Mund të gjeneroni personazhe të personalizuara nga udhëzimet me tekst, t'i testoni ato me skripte shembullore dhe të kopjoni ID-në voice_... që rezulton direkt në kodin e aplikacionit tuaj.
Si Gemini 3.8 Flash TTS ( gemini-3.8-flash-tts ) ashtu edhe Gemini 3.8 Flash-Lite TTS ( gemini-3.8-flash-lite-tts ) mbështesin dizajnin me zë.
Krijoni një zë të dizajnuar
Përdorni SDK-në Google GenAI ( google-genai 2.25.0+ / @google/genai 2.24.0+) ose REST API për të krijuar një zë të personalizuar nga një përshkrim teksti. Për zërat "prompted" , si voices.create ( CreateVoice ) ashtu edhe voices.get ( GetVoice ) kthejnë një fushë sample_audio vetëm për dalje ( mime_type: "audio/wav" , data të koduara në base64) në mënyrë që të mund ta dëgjoni menjëherë zërin e gjeneruar:
Python
import base64
from google import genai
client = genai.Client()
# 1. Design a custom voice persona from natural language
created_voice = client.voices.create(
store=True,
voice={
"model": "gemini-3.8-flash-tts",
"type": "prompted",
"display_name": "Warm British Astronomer",
"gender": "male",
"language_code": "en-GB",
"prompted": {
"input": (
"A warm, thoughtful astronomer in his late 60s with a gentle"
" British accent, speaking with quiet wonder."
)
},
},
)
print(f"Created voice ID: {created_voice.id}")
# Save the generated sample_audio preview (audio/wav) returned by CreateVoice
if created_voice.sample_audio and created_voice.sample_audio.data:
with open("voice_preview.wav", "wb") as f:
f.write(base64.b64decode(created_voice.sample_audio.data))
JavaScript
import * as fs from "node:fs";
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI();
// 1. Design a custom voice persona from natural language
const createdVoice = await ai.voices.create({
store: true,
voice: {
model: "gemini-3.8-flash-tts",
type: "prompted",
display_name: "Warm British Astronomer",
gender: "male",
language_code: "en-GB",
prompted: {
input:
"A warm, thoughtful astronomer in his late 60s with a gentle British accent, speaking with quiet wonder.",
},
},
});
console.log(`Created voice ID: ${createdVoice.id}`);
// Save the generated sample_audio preview (audio/wav) returned by CreateVoice
if (createdVoice.sample_audio?.data) {
fs.writeFileSync(
"voice_preview.wav",
Buffer.from(createdVoice.sample_audio.data, "base64")
);
}
PUSHTIM
curl "https://generativelanguage.googleapis.com/v1beta/voices" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-X POST \
-d '{
"store": true,
"voice": {
"model": "gemini-3.8-flash-tts",
"type": "prompted",
"display_name": "Warm British Astronomer",
"gender": "male",
"language_code": "en-GB",
"prompted": {
"input": "A warm, thoughtful astronomer in his late 60s with a gentle British accent, speaking with quiet wonder."
}
}
}' | tee created_voice.json | jq -r '.sample_audio.data' | base64 --decode > voice_preview.wav
Si funksionon dizajni i zërit
- Krijo një zë të nxitur: Thirr
voices.create(POST /v1beta/voices) metype="prompted"dhestore=True. - Merrni një pamje paraprake të përhershme
voice_iddhesample_audio: API gjeneron identitetin vokal, e ruan atë në projektin tuaj dhe kthen një ID të përhershëm (për shembull,voice_abc123...) së bashku mesample_audio(mime_type: "audio/wav",datatë enkoduara në base64) që përmban pamjen paraprake audio të gjeneruar për zërin. - Sintetizoni të folurit: Kaloni
voice_idkudo që pranohet një emër zëri në kërkesat tuaja të sintezës.
Sintetizoni fjalimin me zërin tuaj të dizajnuar
Pasi të keni krijuar një zë, kaloni id në e tij ( voice_... ) te Interactions API për të gjeneruar të folur:
Python
import base64
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="gemini-3.8-flash-tts",
input=[{
"type": "user_input",
"content": [{
"type": "text",
"text": (
"Look out past the rings of Saturn. Those faint photons left"
" their source millions of years ago."
),
"annotations": [{
"type": "speech_metadata",
"style": "reflective and awe-inspired",
}],
}],
}],
response_format={"type": "audio"},
generation_config={
"speech_config": [
{"voice": created_voice.id},
]
},
)
with open("designed_voice.wav", "wb") as f:
f.write(base64.b64decode(interaction.output_audio.data))
JavaScript
import * as fs from "node:fs";
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI();
const interaction = await ai.interactions.create({
model: "gemini-3.8-flash-tts",
input: [{
type: "user_input",
content: [{
type: "text",
text: "Look out past the rings of Saturn. Those faint photons left their source millions of years ago.",
annotations: [{
type: "speech_metadata",
style: "reflective and awe-inspired",
}],
}],
}],
response_format: { type: "audio" },
generation_config: {
speech_config: [
{ voice: createdVoice.id },
],
},
});
fs.writeFileSync("designed_voice.wav", Buffer.from(interaction.output_audio.data, "base64"));
PUSHTIM
curl "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-X POST \
-d '{
"model": "gemini-3.8-flash-tts",
"input": [{
"type": "user_input",
"content": [{
"type": "text",
"text": "Look out past the rings of Saturn. Those faint photons left their source millions of years ago.",
"annotations": [{
"type": "speech_metadata",
"style": "reflective and awe-inspired"
}]
}]
}],
"response_format": {"type": "audio"},
"generation_config": {
"speech_config": [
{"voice": "voice_YOUR_DESIGNED_VOICE_ID"}
]
}
}'
Menaxho zërat e tu
Ju mund të listoni, filtroni, inspektoni dhe fshini zërat tuaj të ruajtur në çdo kohë duke përdorur API-në e Zërave (shihni Biblioteka e Zërit e Zgjeruar dhe filtrimi për të gjithë parametrat e filtrit).
- Limitet e ruajtjes dhe TTL: Zërat me status (
store=True, të ndarë midis zërave të nxitur dhe të replikuar) kanë një limit prej 200 zërash për projekt dhe një TTL (kohëzgjatje jetese) 1-vjeçare . sample_audiodisponueshmëria:voices.create()(CreateVoice) dhevoices.get()(GetVoice) popullojnësample_audio(mime_type: "audio/wav",datatë enkoduara në base64) për zërat"prompted". Për ta mbajtur listën të lehtë,voices.list()(ListVoices) lë jashtësample_audio(dhesample_audionuk është i caktuar për zërat"replicated"dhe"prebuilt").
Python
from google import genai
client = genai.Client()
# List stored prompted voices in your project filtered by language
response = client.voices.list(
type_=["prompted"],
language_code=["en-US", "en-GB"],
)
for voice in response.voices or []:
print(voice.id, voice.display_name, voice.type)
# Retrieve a specific voice by ID
voice_details = client.voices.get(id=created_voice.id)
# Delete a stored custom voice
client.voices.delete(id=created_voice.id)
JavaScript
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI();
// List stored prompted voices in your project filtered by language
const response = await ai.voices.list({
type: ["prompted"],
language_code: ["en-US", "en-GB"],
});
for (const voice of response.voices ?? []) {
console.log(voice.id, voice.display_name, voice.type);
}
// Retrieve a specific voice by ID
const voiceDetails = await ai.voices.get(createdVoice.id);
// Delete a stored custom voice
await ai.voices.delete(createdVoice.id);
PUSHTIM
# List stored prompted voices filtered by language
curl -G "https://generativelanguage.googleapis.com/v1beta/voices" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
--data-urlencode "type=prompted" \
--data-urlencode "language_code=en-US" \
--data-urlencode "language_code=en-GB"
# Retrieve a specific voice by ID
curl "https://generativelanguage.googleapis.com/v1beta/voices/voice_YOUR_DESIGNED_VOICE_ID" \
-H "x-goog-api-key: $GEMINI_API_KEY"
# Delete a stored custom voice
curl -X DELETE "https://generativelanguage.googleapis.com/v1beta/voices/voice_YOUR_DESIGNED_VOICE_ID" \
-H "x-goog-api-key: $GEMINI_API_KEY"
Nxitja e praktikave më të mira për dizajnin e zërit
- Vendosni tipare të përhershme vokale në dizajnin e zërit, jo
style: Përcaktoni karakteristika të pandryshueshme - të tilla si mosha, gjinia, timbri, tekstura vokale dhe theksi rajonal - kur krijoni zërin nëvoices.create. krijoni. - Rezervoni
speech_metadata.stylepër emocione situacionale: Pasi të keni krijuar zërin tuaj të personalizuar, përdorni sugjerime të shkurtrastyle(për shembull,"whispered urgently"ose"cheerful and energetic") për të drejtuar veprimet kthesë pas kthese pa ndryshuar identitetin thelbësor të folësit. - Ji specifik dhe konciz: Një përshkrim i qartë prej 1-2 fjalish (si p.sh. "Një spikere sportive e qartë dhe energjike në të 30-at me një theks të lehtë të Midwest" ) prodhon rezultate më të pastra dhe më të qëndrueshme sesa paragrafët kontradiktues ose tepër të gjatë.
Çfarë vjen më pas
- Mësoni si të replikoni zërin e një folësi ekzistues në Replikimi i zërit .
- Eksploroni stilimin sipas radhës, etiketat e integruara dhe dialogun me shumë folës në udhëzuesin Tekst-në-fjalë .