ElevenLabs Provider
기준일: 2026-07-26
난이도: 중급
공식 기준: ElevenLabs
개요
이 페이지는 OpenClaw ElevenLabs provider의 인증, 모델 ref, 온보딩 플래그, 설정 키를 공식 문서 기준으로 정리합니다.
공식 요약: Use ElevenLabs speech, Scribe STT, and realtime transcription with OpenClaw
model ref는 보통 provider/model 형식입니다. API key·endpoint·model id는 아래 원문 값을 그대로 쓰세요. 임의로 키나 엔드포인트를 만들지 마세요.
빠른 참조
| Capability | OpenClaw surface | Default |
|---|---|---|
| Text-to-speech | tts / talk |
eleven_multilingual_v2 |
| Batch speech-to-text | tools.media.audio |
scribe_v2 |
| Streaming speech-to-text | Voice Call streaming or Google Meet realtime.transcriptionProvider |
scribe_v2_realtime |
공식 문서 기반 상세
아래는 공식 providers/elevenlabs 문서를 Mintlify 컴포넌트만 정리하고 공통 제목을 한국어로 맞춘 내용입니다. 설정 키, env, model ref, CLI 플래그는 원문 그대로 유지합니다.
OpenClaw uses ElevenLabs for text-to-speech, batch speech-to-text with Scribe
v2, and streaming STT with Scribe v2 Realtime. The plugin is bundled and
enabled by default; no plugins install step is needed.
| Capability | OpenClaw surface | Default |
|---|---|---|
| Text-to-speech | tts / talk |
eleven_multilingual_v2 |
| Batch speech-to-text | tools.media.audio |
scribe_v2 |
| Streaming speech-to-text | Voice Call streaming or Google Meet realtime.transcriptionProvider |
scribe_v2_realtime |
인증
Set ELEVENLABS_API_KEY in the environment. XI_API_KEY is also accepted for
compatibility with existing ElevenLabs tooling.
export ELEVENLABS_API_KEY="..."
Text-to-speech
{
tts: {
providers: {
elevenlabs: {
apiKey: "${ELEVENLABS_API_KEY}",
voiceId: "pMsXgVXv3BLzUgSXRplE",
modelId: "eleven_multilingual_v2",
},
},
},
}
Set modelId to eleven_v3 to use ElevenLabs v3 TTS. OpenClaw keeps
eleven_multilingual_v2 as the default for existing installs.
Discord voice channels use ElevenLabs' streaming TTS endpoint when ElevenLabs
is the selected voice.tts/tts provider: playback starts from the
returned audio stream instead of waiting for OpenClaw to download the whole
audio file first. latencyTier maps to ElevenLabs' optimize_streaming_latency
query parameter for models that accept it; OpenClaw omits that parameter for
eleven_v3, which rejects it.
Speech-to-text
Use Scribe v2 for inbound audio attachments and short recorded voice segments:
{
tools: {
media: {
audio: {
enabled: true,
models: [{ provider: "elevenlabs", model: "scribe_v2" }],
},
},
},
}
OpenClaw sends multipart audio to ElevenLabs /v1/speech-to-text with
model_id: "scribe_v2". Language hints map to language_code when present.
Streaming STT
The bundled elevenlabs plugin registers Scribe v2 Realtime for Voice Call and
Google Meet agent-mode streaming transcription.
| Setting | Config path | Default |
|---|---|---|
| API key | plugins.entries.voice-call.config.streaming.providers.elevenlabs.apiKey |
Falls back to ELEVENLABS_API_KEY / XI_API_KEY |
| Model | ...elevenlabs.modelId |
scribe_v2_realtime |
| Audio format | ...elevenlabs.audioFormat |
ulaw_8000 |
| Sample rate | ...elevenlabs.sampleRate |
8000 |
| Commit strategy | ...elevenlabs.commitStrategy |
vad |
| Language | ...elevenlabs.languageCode |
(unset) |
{
plugins: {
entries: {
"voice-call": {
config: {
streaming: {
enabled: true,
provider: "elevenlabs",
providers: {
elevenlabs: {
apiKey: "${ELEVENLABS_API_KEY}",
audioFormat: "ulaw_8000",
commitStrategy: "vad",
languageCode: "en",
},
},
},
},
},
},
},
}
Voice Call receives Twilio media as 8 kHz G.711 u-law. The ElevenLabs realtime provider defaults to
ulaw_8000, so telephony frames can be forwarded without transcoding.
For Google Meet agent mode, set
plugins.entries.google-meet.config.realtime.transcriptionProvider to
"elevenlabs" and configure the same provider block under
plugins.entries.google-meet.config.realtime.providers.elevenlabs.
관련 문서
검증 체크리스트
-
openclaw models list --provider elevenlabs로 모델이 보이는지 확인 - 기본 model alias를
agents.defaults.model.primary에 설정했는지 확인 - API key / OAuth / 로컬 런타임 인증 경로를 공식 문서와 대조했는지 확인
- failover 시 데이터가 다른 provider로 이동할 수 있는지 검토