@_philschmid: https://x.com/_philschmid/status/2103145386542014788

X AI KOLs Timeline 模型

摘要

本指南介绍如何使用 Gemini 3.8 TTS 创建自定义语音,包括复刻您自己的声音或设计全新语音,并在语音基准测试中展现出顶尖性能。

https://t.co/su48pqXlEV
查看原文
查看缓存全文

缓存时间: 2026/09/24 22:31

为 Gemini 3.8 TTS 创建你自己的声音

原文链接:https://www.philschmid.de/gemini-3-8-tts
Gemini 3.8 Flash TTS 和 Flash-Lite TTS 现已在 Gemini API 和 AI Studio 中开放使用。
在 Hume 的语音设计基准测试中排名第一,并在六种语言的语音竞技场中位居榜首。
最大新功能是:你现在已经可以复制自己的声音,或通过一句话创造一个全新声音。
下方的指南将展示如何操作。阅读下文,或将此提示词分享给你的智能助手。

bash请阅读 https://www.philschmid.de/gemini-3-8-tts 并引导我为 Gemini 3.8 TTS 创建自定义声音。
首先检查我的环境设置(GEMINI_API_KEY、ffmpeg、gemini-skills),
帮助我录制两个音频片段,创建声音,并生成一句我可以试听的测试语音。

1. 录制两个音频片段
保持使用同一麦克风、同一房间、24kHz 单声道格式。
API 会对比两个录音,因此不要在录制过程中从耳机麦克风切换到笔记本内置麦克风。

bash# macOS 系统。“:0” 代表音频设备 0。要查找你的麦克风列表:

ffmpeg -f avfoundation -list_devices true -i “”

me.wav:录制 15-20 秒你日常说话的自然语音。可以描述你本周在构建什么。

请自然交谈,不要朗读。

ffmpeg -f avfoundation -i “:0” -ac 1 -ar 24000 -t 20 me.wav

consent.wav:请逐字朗读以下句子:

“I am the owner of this voice and I consent to Google using this voice to create a synthetic voice model.”

ffmpeg -f avfoundation -i “:0” -ac 1 -ar 24000 -t 8 consent.wav

Linux 系统请使用 -f alsa -i default。
macOS 系统首次运行时可能只弹出麦克风权限请求对话框,请允许权限后再次执行命令。
同意句必须是 25 个支持版本之一,并且需完全按照原文朗读。例如德语版本:
“Ich bin der Eigentümer dieser Stimme und bin damit einverstanden, dass Google diese Stimme zur Erstellung eines synthetischen Stimmmodells verwendet.”
参考音频片段可以使用任何语言。建议使用你希望该声音后续使用的语言进行录制。

2. 创建声音并生成语音

python# uv run –with “google-genai>=2.25.0”
import base64
from google import genai

client = genai.Client()

def b64(path):
return base64.b64encode(open(path, “rb”).read()).decode()

voice = client.voices.create(
store=True, # 声音将存储在你的项目中一年,返回 voice_… 格式的 ID
voice={
“model”: “gemini-3.8-flash-tts”,
“type”: “replicated”,
“display_name”: “Me”,
“replicated”: {
“source_audio”: {“mime_type”: “audio/wav”, “data”: b64(“me.wav”)},
“consent_audio”: {“mime_type”: “audio/wav”, “data”: b64(“consent.wav”)},
},
},
)
print(voice.id)

interaction = client.interactions.create(
model=“gemini-3.8-flash-tts”,
input=[{
“type”: “user_input”,
“content”: [{
“type”: “text”,
“text”: “Okay so… I did not record this. “
“Twenty seconds of audio and one consent sentence. That’s it.”,
“annotations”: [{“type”: “speech_metadata”, “style”: “casual, a bit amused”}],
}],
}],
response_format={“type”: “audio”},
generation_config={“speech_config”: [{“voice”: voice.id}]},
)

3.8 返回的是带有 RIFF 头的真 WAV 文件,无需额外 wave 模块封装

open(“me_synth.wav”, “wb”).write(base64.b64decode(interaction.output_audio.data))

有两个要点请注意:

  • 文本内容会被逐字朗读。
  • 整体语调(如 “casual, a bit amused”)需放在 speech_metadata.style 中,
    短促音效则用 **** 和 **** 插入文本内。
  • 声音 ID 可重复使用:在后续请求中直接传入即可,
    或通过 client.voices.list(type_=[“replicated”]) 再次查询。
  • 若不想在服务器端存储任何数据,设置 store=False 会返回一个加密的 voicekey_…
    由你自己保管。它同样可用于 speech_config 字段,但 7 天后会过期。

或通过一句话设计声音
无需录制。使用相同的调用方法,但使用不同的 voice 字典结构。
你还会获得 sample_audio 预览,可在合成前试听声音效果:

pythonvoice = client.voices.create(
store=True,
voice={
“model”: “gemini-3.8-flash-tts”,
“type”: “prompted”,
“display_name”: “Deadpan host”,
“gender”: “male”,
“language_code”: “en-US”,
“prompted”: {“input”: “A dry, deadpan podcast host in his 30s, low pitch, slight German accent.”},
},
)
open(“preview.wav”, “wb”).write(base64.b64decode(voice.sample_audio.data))

提示词的变更说明
如果你之前使用过 gemini-3.1-flash-tts-preview,请注意现有提示词可能需要调整。
请务必阅读提示词指南和迁移说明。简要要点如下:

  • 输入文本会被逐字朗读,写在文本内的指令也会被语音化输出。
  • 贯穿整句的语调(如 “whispering”、“out of breath”)需放在 speech_metadata.style 中,
    短促音效则用尖括号插在文本内。
  • 多说话人轮次需为每个轮次显式指定 speaker。
  • 过长的 “Audio Profile” 提示词现在可能导致声音漂移。
    建议先用 Voices API 设计角色,然后在请求中只发送简短的或空的 style 字符串。
  • 非流式(unary)响应现在返回真 WAV(audio/wav),
    因此请移除所有添加 WAV 头的代码。
    如需原始 PCM 数据,可将 response_format 设为 audio/l16。

相似文章

Gemini 3.8 文本转语音演练工具

Simon Willison's Blog

一个用于测试Google的Gemini 3.8文本转语音API的交互式演练工具,使用户能够使用各种声音创作和预览多说话者音频对话。

Gemini 3.1 Flash TTS

Simon Willison's Blog

Google 发布了 Gemini 3.1 Flash TTS,这是一个新的文本转语音模型,可通过 Gemini API 访问,支持基于提示的高级控制,以实现详细的语音方向、口音和说话风格。该模型能够生成复杂的音频,包括多说话人对话和特定角色的语音表演。

Gemini 3.8 文本转语音模型发布

Google DeepMind Blog

Google 推出 Gemini 3.8 Flash TTS 与 Gemini 3.8 Flash-Lite TTS,这些新的文本转语音模型可让创作者和开发者生成富有表现力且可定制的音频。