Providers

ElevenLabs

OpenClaw ใช้ ElevenLabs สำหรับการแปลงข้อความเป็นเสียง, การแปลงเสียงเป็นข้อความแบบแบตช์ด้วย Scribe v2 และ STT แบบสตรีมมิงด้วย Scribe v2 Realtime

ความสามารถ พื้นที่ใช้งานของ OpenClaw ค่าเริ่มต้น
การแปลงข้อความเป็นเสียง messages.tts / talk eleven_multilingual_v2
การแปลงเสียงเป็นข้อความแบบแบตช์ tools.media.audio scribe_v2
การแปลงเสียงเป็นข้อความแบบสตรีมมิง การสตรีม Voice Call หรือ Google Meet realtime.transcriptionProvider scribe_v2_realtime

การยืนยันตัวตน

ตั้งค่า ELEVENLABS_API_KEY ในสภาพแวดล้อม และยังยอมรับ XI_API_KEY เพื่อ ความเข้ากันได้กับเครื่องมือ ElevenLabs ที่มีอยู่

export ELEVENLABS_API_KEY="..."

การแปลงข้อความเป็นเสียง

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

ตั้งค่า modelId เป็น eleven_v3 เพื่อใช้ ElevenLabs v3 TTS โดย OpenClaw คง eleven_multilingual_v2 เป็นค่าเริ่มต้นสำหรับการติดตั้งที่มีอยู่

ช่องเสียง Discord ใช้ปลายทาง TTS แบบสตรีมมิงของ ElevenLabs เมื่อ ElevenLabs เป็น ผู้ให้บริการ voice.tts/messages.tts ที่เลือกไว้ การเล่นจะเริ่มจากสตรีมเสียง ที่ส่งกลับมาแทนการรอให้ OpenClaw ดาวน์โหลดและเขียนไฟล์เสียงทั้งหมดก่อน latencyTier จะจับคู่กับพารามิเตอร์คิวรี optimize_streaming_latency ของ ElevenLabs สำหรับโมเดลที่รองรับ OpenClaw จะละพารามิเตอร์นั้นสำหรับ eleven_v3 ซึ่งปฏิเสธพารามิเตอร์นี้

การแปลงเสียงเป็นข้อความ

ใช้ Scribe v2 สำหรับไฟล์แนบเสียงขาเข้าและส่วนเสียงพูดที่บันทึกไว้แบบสั้น:

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

OpenClaw ส่งเสียงแบบ multipart ไปยัง ElevenLabs /v1/speech-to-text พร้อม model_id: "scribe_v2" คำใบ้ภาษาจะจับคู่กับ language_code เมื่อมีอยู่

STT แบบสตรีมมิง

Plugin elevenlabs ที่รวมมาด้วยจะลงทะเบียน Scribe v2 Realtime สำหรับการถอดเสียงแบบสตรีมมิงของ Voice Call และ โหมดเอเจนต์ Google Meet

การตั้งค่า เส้นทางการกำหนดค่า ค่าเริ่มต้น
คีย์ 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",
              },
            },
          },
        },
      },
    },
  },
}

สำหรับโหมดเอเจนต์ Google Meet ให้ตั้งค่า plugins.entries.google-meet.config.realtime.transcriptionProvider เป็น "elevenlabs" และกำหนดค่าบล็อกผู้ให้บริการเดียวกันภายใต้ plugins.entries.google-meet.config.realtime.providers.elevenlabs

ที่เกี่ยวข้อง