名称: sag 描述: ElevenLabs 文本到语音,带有类似Mac风格的说用户体验。 主页: https://sag.sh 元数据: { “otto”: { “表情”: “🗣️”, “要求”: { “二进制文件”: [“sag”], “环境变量”: [“ELEVENLABS_API_KEY”] }, “主要环境变量”: “ELEVENLABS_API_KEY”, “安装”: [ { “id”: “brew”, “类型”: “brew”, “公式”: “steipete/tap/sag”, “二进制文件”: [“sag”], “标签”: “安装 sag (brew)”, }, ], }, }
sag
使用 sag 进行 ElevenLabs TTS 并本地播放。
API 密钥 (必需)
ELEVENLABS_API_KEY(首选)SAG_API_KEY也支持命令行界面
快速开始
sag "Hello there"sag speak -v "Roger" "Hello"sag voicessag prompting(模型特定提示)
模型说明
- 默认:
eleven_v3(表达性强) - 稳定:
eleven_multilingual_v2 - 快速:
eleven_flash_v2_5
发音和交付规则
- 第一修正: 重新拼写 (例如 “key-note”), 添加连字符, 调整大小写。
- 数字/单位/URLs:
--normalize auto(或off如果损害名称)。 - 语言偏好:
--lang en|de|fr|...以指导标准化。 - v3: SSML
<break>不支持; 使用[pause],[short pause],[long pause]。 - v2/v2.5: SSML
<break time="1.5s" />支持;<phoneme>在sag中未暴露。
v3 音频标签 (放在行首)
[whispers],[shouts],[sings][laughs],[starts laughing],[sighs],[exhales][sarcastic],[curious],[excited],[crying],[mischievously]- 示例:
sag "[whispers] keep this quiet. [short pause] ok?"
语音默认
ELEVENLABS_VOICE_ID或SAG_VOICE_ID在长时间输出前确认语音和说话者。
聊天语音回复
当用户要求"语音"回复时 (例如, “疯狂科学家声音”, “用语音解释”), 生成音频并发送:
# 生成音频文件
sag -v Agent -o /tmp/voice-reply.mp3 "你的消息在这里"
# 然后在回复中包含:
# MEDIA:/tmp/voice-reply.mp3
语音角色提示:
- 疯狂科学家: 使用
[excited]标签, 戏剧性暂停[short pause], 变化强度 - 平静: 使用
[whispers]或较慢的节奏 - 戏剧性: 谨慎使用
[sings]或[shouts]
默认语音: lj2rcrvANS3gaWWnczSX (或仅 -v Agent)