跳转至

ElevenLabs

OpenClaw 使用 ElevenLabs 进行文本转语音、使用 Scribe v2 进行批量语音转文本,以及使用 Scribe v2 Realtime 进行流式 STT。该插件已捆绑并默认启用;无需执行 plugins install 步骤。

功能 OpenClaw 接口 默认
文本转语音 tts / talk eleven_multilingual_v2
批量语音转文本 tools.media.audio scribe_v2
流式语音转文本 Voice Call 流式或 Google Meet realtime.transcriptionProvider scribe_v2_realtime

身份验证

在环境中设置 ELEVENLABS_API_KEY。为兼容现有 ElevenLabs 工具,也接受 XI_API_KEY。

export ELEVENLABS_API_KEY="..."

文本转语音

{
  tts: {
    providers: {
      elevenlabs: {
        apiKey: "${ELEVENLABS_API_KEY}",
        voiceId: "pMsXgVXv3BLzUgSXRplE",
        modelId: "eleven_multilingual_v2",
      },
    },
  },
}

将 modelId 设置为 eleven_v3 以使用 ElevenLabs v3 TTS。OpenClaw 对现有安装保留 eleven_multilingual_v2 作为默认值。

当 ElevenLabs 是所选的 voice.tts/tts 提供商时,Discord 语音频道会使用 ElevenLabs 的流式 TTS 端点:播放将从返回的音频流开始,而不是等待 OpenClaw 先下载整个音频文件。对于接受该参数的模型,latencyTier 会映射到 ElevenLabs 的 optimize_streaming_latency 查询参数;对于拒绝该参数的 eleven_v3,OpenClaw 会省略该参数。

语音转文本

对传入的音频附件和短录音语音片段使用 Scribe v2:

{
  tools: {
    media: {
      models: [{ provider: "elevenlabs", model: "scribe_v2", capabilities: ["audio"] }],
      audio: {
        enabled: true,
      },
    },
  },
}

OpenClaw 会将 multipart 音频发送到 ElevenLabs /v1/speech-to-text,并附带 model_id: "scribe_v2"。如果存在语言提示,则映射到 language_code。

流式 STT

捆绑的 elevenlabs 插件会为 Voice Call 和 Google Meet 代理模式注册 Scribe v2 Realtime 流式转录。

设置 配置路径 默认
API 密钥 plugins.entries.voice-call.config.streaming.providers.elevenlabs.apiKey 回退到 ELEVENLABS_API_KEY / XI_API_KEY
模型 ...elevenlabs.modelId scribe_v2_realtime
音频格式 ...elevenlabs.audioFormat ulaw_8000
采样率 ...elevenlabs.sampleRate 8000
提交策略 ...elevenlabs.commitStrategy vad
语言 ...elevenlabs.languageCode (未设置)
{
  plugins: {
    entries: {
      "voice-call": {
        config: {
          streaming: {
            enabled: true,
            provider: "elevenlabs",
            providers: {
              elevenlabs: {
                apiKey: "${ELEVENLABS_API_KEY}",
                audioFormat: "ulaw_8000",
                commitStrategy: "vad",
                languageCode: "en",
              },
            },
          },
        },
      },
    },
  },
}

Note

Voice Call 接收的 Twilio 媒体为 8 kHz G.711 u-law。ElevenLabs 实时提供商默认使用 ulaw_8000,因此电话帧可以在不转码的情况下转发。

对于 Google Meet 代理模式,将 plugins.entries.google-meet.config.realtime.transcriptionProvider 设置为 "elevenlabs",并在 plugins.entries.google-meet.config.realtime.providers.elevenlabs 下配置相同的提供商块。

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/openclaw