关于 elevenlabs-tts
通过 inference.sh 命令行运行 ElevenLabs 应用的文本转语音技能。涵盖多种模型、声音调节、对话生成和实时语音,适用于音频与旁白工作流。
主要功能
- 01多种 ElevenLabs 模型可选
- 02声音选择与调节参数
- 03为支持的模型添加音频标签
- 04生成多声音对话
- 05实时流式文本转语音
适用场景
- 01制作产品或视频旁白
- 02生成长篇叙述音频
- 03制作多角色声音对话
- 04边生成文本边转换为语音
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ midudev/ autoskills --skill elevenlabs-tts安装后在 Claude Code 中输入/elevenlabs-tts确认已加载。
详细介绍
安装 belt CLI 技能:
npx skills add belt-sh/cli
ElevenLabs 文本转语音
通过 inference.sh CLI,使用 22 种以上的声音生成高品质语音。每个 ElevenLabs 模型都是独立的应用,价格相同。

快速开始
需要 inference.sh CLI(
belt)。安装说明
belt login
# Generate speech with Eleven v4
belt app run elevenlabs/eleven-v4 --input '{"text": "Hello, welcome to our product demo.", "voice": "aria"}'
结果中包含生成文件的 audio URL。
选择应用
| 应用 | 模型 | 适用场景 | 文本上限 | 每 1K 字符价格 |
|---|---|---|---|---|
elevenlabs/eleven-v4 | Eleven v4 | 最新、表现力最强;支持 90 多种语言;支持音频标签 | 10,000 | $0.08 |
elevenlabs/eleven-v4-turbo | Eleven v4 Turbo | 延迟最低的 v4;实时语音 Agent | 10,000 | $0.04 |
elevenlabs/eleven-v3 | Eleven v3 | 上一代模型;支持 70 多种语言;支持音频标签 | 5,000 | $0.08 |
elevenlabs/eleven-multilingual-v2 | Eleven Multilingual v2 | 稳定的长篇旁白 | 10,000 | $0.08 |
elevenlabs/eleven-flash-v2-5 | Eleven Flash v2.5 | 速度最快、价格最低;适合长文本和高用量 | 40,000 | $0.04 |
- 每个应用都支持
run:输入完整文本,输出音频文件。 - 两个 v4 应用还支持
realtime:流式输入文本,并在撰写过程中流式返回语音(见实时语音)。 elevenlabs/eleven-v4和elevenlabs/eleven-v3还支持dialogue:一次生成多个声音(见对话)。- 使用
belt app pricing elevenlabs/eleven-v4查看当前价格。
elevenlabs/tts 是较旧的应用,需要将模型作为输入。它仍然可用;建议使用上面的按模型划分的应用。
声音库
女性声音
| 声音 | 风格 |
|---|---|
aria | 美式,口语化 |
alice | 英式,自信 |
bella | 美式,温暖 |
jessica | 美式,富有表现力 |
laura | 美式,专业 |
lily | 英式,柔和 |
sarah | 美式,友好 |
男性声音
| 声音 | 风格 |
|---|---|
george | 英式,权威 |
adam | 美式,低沉 |
bill | 美式,成熟 |
brian | 美式,口语化 |
callum | 跨大西洋口音,强烈 |
charlie | 澳大利亚式,自然 |
chris | 美式,随意 |
daniel | 英式,威严 |
eric | 美式,友好 |
harry | 美式,年轻 |
liam | 美式,清晰流畅 |
matilda | 美式,温暖 |
river | 美式,自信 |
roger | 美式,权威 |
will | 美式,明快 |
示例
基础语音
belt app run elevenlabs/eleven-v4 --input '{"text": "Welcome to our quarterly earnings presentation.", "voice": "george"}'
音频标签(v4 和 v3)
方括号中的标签会以相应方式演绎,而不会被朗读出来。这些标签是自由格式的指示,用于指定情绪、表达方式、口音和声音效果。
belt app run elevenlabs/eleven-v4 --input '{
"text": "[excited] We did it! [whispers] Nobody saw this coming. [laughs] What a day.",
"voice": "jessica"
}'
常见标签:[laughs]、[whispers]、[sighs]、[excited]、[sad]、[shouts]、[slow]、[fast]。其他模型会把标签朗读出来,因此请勿在这些模型中使用。
选择模型
# Long narration, stable delivery
belt app run elevenlabs/eleven-multilingual-v2 --input '{
"text": "Chapter one. It was a quiet morning in the harbour town.",
"voice": "daniel"
}'
# High volume at the lowest price
belt app run elevenlabs/eleven-flash-v2-5 --input '{
"text": "Your order has shipped and will arrive on Thursday.",
"voice": "sarah"
}'
声音调节
belt app run elevenlabs/eleven-v3 --input '{
"text": "Fine-tune the voice characteristics for your use case.",
"voice": "bella",
"stability": 0.3,
"similarity_boost": 0.9,
"style": 0.4
}'
| 参数 | 范围 | 效果 | 应用 |
|---|---|---|---|
stability | 0-1 | 值越高,声音越稳定;值越低,表现力越强 | 所有 |
similarity_boost | 0-1 | 值越高,越接近原声音色 | 所有 |
style | 0-1 | 值越高,风格表现越夸张 | v3、Multilingual v2、Flash v2.5 |
use_speaker_boost | true/false | 提升说话人声音的清晰度 | v3、Multilingual v2、Flash v2.5 |
Eleven v4 和 v4 Turbo 仅有两个设置项:stability 和 similarity_boost。使用音频标签塑造表达方式。
自定义声音
传入 voice_id,即可使用克隆或设计的声音(来自 elevenlabs/voice-clone 或 elevenlabs/voice-design)。该参数会覆盖 voice。
belt app run elevenlabs/eleven-v4 --input '{"text": "This is my own voice.", "voice_id": "YOUR_VOICE_ID"}'
输出格式
# High-quality MP3
belt app run elevenlabs/eleven-v4 --input '{
"text": "High quality audio output.",
"voice": "daniel",
"output_format": "mp3_44100_192"
}'
| 格式 | 描述 |
|---|---|
mp3_44100_128 | 44.1kHz、128kbps 的 MP3(默认) |
mp3_44100_192 | 44.1kHz、192kbps 的 MP3 |
pcm_16000 | 16kHz 的原始 PCM |
pcm_22050 | 22.05kHz 的原始 PCM |
pcm_24000 | 24kHz 的原始 PCM |
pcm_44100 | 44.1kHz 的原始 PCM |
其他语言
请用你希望朗读的语言撰写文本。
# Spanish
belt app run elevenlabs/eleven-v4 --input '{
"text": "Hola, bienvenidos a nuestra presentación.",
"voice": "aria"
}'
# French
belt app run elevenlabs/eleven-v4 --input '{
"text": "Bonjour, bienvenue à notre démonstration.",
"voice": "alice"
}'
对话
dialogue 会一气呵成地朗读一段对话,并返回一个文件。每一行都使用自己的声音。
belt app run elevenlabs/eleven-v4 --function dialogue --input '{
"segments": [
{"text": "[excited] Did you hear? The release went out last night.", "voice": "jessica"},
{"text": "[surprised] Already? I thought that was next week.", "voice": "george"},
{"text": "[laughs] Nope. Everything shipped.", "voice": "jessica"}
]
}'
最多可使用 10 种不同的声音。单段对话控制在约 2,000 个字符以内,并将较长的脚本拆分成多个场景。费用按应用的字符单价计算,统计所有行的字符数。
实时语音
elevenlabs/eleven-v4-turbo 和 elevenlabs/eleven-v4 上的 realtime 是一项实时功能:你可以在文本生成时流式发送文本(例如大模型的 token),并在文本仍在生成时收到语音。它通过 socket 运行,因此请从 SDK 或应用页面调用,而不要使用 belt app run。
# pip install "inferencesh[async]"
import asyncio
from inferencesh import async_inference
async def main():
client = async_inference(api_key="...")
task, session = await client.live({
"app": "elevenlabs/eleven-v4-turbo",
"function": "realtime",
"input": {"voice": "george"},
})
async def speak():
for piece in ["Hello there. ", "This is spoken ", "while it is being written. "]:
await session.send({"events": {"type": "text", "text": piece}})
await session.send({"events": {"type": "end"}}) # finish speaking, then end
asyncio.create_task(speak())
async for frame in session:
if isinstance(frame, bytes):
play(frame) # raw PCM, 16-bit mono, 24 kHz
else:
print(frame) # {"characters": 54, "seconds": 3.9}
asyncio.run(main())
发送的内容格式为 {"events": {...}}:
| 事件 | 含义 |
|---|---|
{"type": "text", "text": "..."} | 要朗读的文本。文本到达时分段发送。 |
{"type": "flush"} | 无需等待更多内容,立即朗读目前已发送的内容 |
{"type": "end"} | 不再发送文本:完成朗读,然后结束会话 |
- 收到约 40 个字符和 8 个单词后,语音便会开始。对于较短的句子,请发送
flush。 - 关闭 socket 会立即结束会话。如果想先听完剩余内容,请发送
end。 - 会话打开时会设置声音(
voice或voice_id)、stability和language_code。 - 如果在
idle_minutes(默认值为 2)指定的时间内没有文本,会话会自动结束。 - 费用按发送的字符数,依据应用的字符单价计算。
语音 + 视频工作流
# 1. Generate voiceover
belt app run elevenlabs/eleven-v4 --input '{
"text": "Introducing the future of AI-powered content creation.",
"voice": "george"
}' > voiceover.json
# 2. Create talking head video
belt app run bytedance/omnihuman-1-5 --input '{
"image": "https://portrait.jpg",
"audio": "<audio-url-from-step-1>"
}'
使用场景
- 配音:产品演示、讲解视频、广告
- 有声读物:使用一致的声音进行长篇朗读
- 播客:采用自然表达方式的 AI 主持人
- 在线学习:多种语言的课程旁白
- 无障碍访问:高质量的屏幕阅读器内容
- IVR:专业的电话系统消息
- 语音 Agent:使用
realtime在大模型回答生成时同步朗读 - 视频旁白:纪录片和社交媒体内容
相关技能
# ElevenLabs multi-speaker dialogue
npx skills add inference-sh/skills@elevenlabs-dialogue
# ElevenLabs voice changer
npx skills add inference-sh/skills@elevenlabs-voice-changer
# ElevenLabs sound effects
npx skills add inference-sh/skills@elevenlabs-sound-effects
# All TTS models (Kokoro, DIA, Chatterbox, Inworld TTS, and more)
npx skills add inference-sh/skills@text-to-speech
# Full platform skill (all apps)
npx skills add inference-sh/skills@infsh-cli
浏览所有音频应用:belt app list --category audio