Chuyển văn bản thành giọng nói (với Google Gemini)
POST /gemini/v1beta/models/{model}:generateContent
Tạo file âm thanh với endpoint pass through tới Google Gemini.
Chi tiết đầy đủ các tham số, tham khảo tài liệu Google Gemini.
Tham số đường dẫn (Path Parameters)
modelstringRequiredID của mô hình sẽ sử dụng. Ví dụ: gemini-2.5-flash-preview-tts.
Cấu trúc yêu cầu (Request Body)
contentsarrayRequiredNội dung của yêu cầu.
partsarrayRequiredMột danh sách các phần của nội dung.
textstringRequiredPrompt văn bản để chuyển thành giọng nói.
generationConfigobjectCấu hình cho việc sinh nội dung.
responseModalitiesarrayChỉ định ["AUDIO"] để yêu cầu trả về dữ liệu âm thanh.
speechConfigobjectCấu hình dành riêng cho việc sinh giọng nói.
voiceConfigobjectCấu hình cho giọng nói của một người nói.
prebuiltVoiceConfigobjectSử dụng một giọng nói được dựng sẵn.
voiceNamestringTên của giọng nói sẽ sử dụng. Ví dụ: Kore.
multiSpeakerVoiceConfigobjectCấu hình cho giọng nói của nhiều người nói.
speakerVoiceConfigsarrayMột danh sách các cấu hình giọng nói cho từng người nói.
speakerstringTên của người nói (phải khớp với tên trong prompt).
voiceConfigobjectCấu hình giọng nói cho người nói này.
Cấu trúc Phản hồi (Response Body)
Phản hồi thành công sẽ chứa dữ liệu âm thanh được mã hóa base64.
Đối tượng Candidate
candidatesarrayMột danh sách các ứng viên được tạo.
contentobjectNội dung của ứng viên.
partsarrayMột danh sách các phần của nội dung.
inlineDataobjectDữ liệu âm thanh dưới dạng base64.
mime_typestringLoại MIME của âm thanh, ví dụ: audio/L16;codec=pcm;rate=24000.
datastringDữ liệu âm thanh được mã hóa base64.
Ví dụ một người nói (Single-speaker)
curl 'https://api.thucchien.ai/gemini/v1beta/models/:generateContent' \-H 'x-goog-api-key: ' \-H 'Content-Type: application/json' \-d '{ "contents": [{ "parts": [ {"text": ""} ] }], "generationConfig": { "responseModalities": ["AUDIO"], "speechConfig": { "voiceConfig": { "prebuiltVoiceConfig": { "voiceName": "" } } } }}'{
"candidates": [
{
"content": {
"parts": [
{
"inlineData": {
"mime_type": "audio/L16;codec=pcm;rate=24000",
"data": "<base64_encoded_audio_data>"
}
}
],
"role": "model"
}
}
]
}
Ví dụ nhiều người nói (Multi-speaker)
curl 'https://api.thucchien.ai/gemini/v1beta/models/:generateContent' \-H 'x-goog-api-key: ' \-H 'Content-Type: application/json' \-d '{ "contents": [{ "parts": [ {"text": ""} ] }], "generationConfig": { "responseModalities": ["AUDIO"], "speechConfig": { "multiSpeakerVoiceConfig": { "speakerVoiceConfigs": [{ "speaker": "", "voiceConfig": { "prebuiltVoiceConfig": { "voiceName": "" } } }, { "speaker": "", "voiceConfig": { "prebuiltVoiceConfig": { "voiceName": "" } } }] } } }}'{
"candidates": [
{
"content": {
"parts": [
{
"inlineData": {
"mime_type": "audio/L16;codec=pcm;rate=24000",
"data": "<base64_encoded_audio_data>"
}
}
],
"role": "model"
}
}
]
}