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 پذیرفته می‌شود.

bash
export ELEVENLABS_API_KEY="..."

تبدیل متن به گفتار

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

برای استفاده از TTS نسخه 3 ElevenLabs، modelId را روی eleven_v3 تنظیم کنید. OpenClaw eleven_multilingual_v2 را برای نصب‌های موجود به‌عنوان پیش‌فرض نگه می‌دارد.

وقتی ElevenLabs ارائه‌دهنده انتخاب‌شده voice.tts/messages.tts باشد، کانال‌های صوتی Discord از endpoint جریانی TTS در ElevenLabs استفاده می‌کنند. پخش از جریان صوتی بازگردانده‌شده شروع می‌شود، به‌جای اینکه منتظر بماند OpenClaw ابتدا کل فایل صوتی را دانلود و بنویسد. latencyTier برای مدل‌هایی که آن را می‌پذیرند به پارامتر query با نام optimize_streaming_latency در ElevenLabs نگاشت می‌شود؛ OpenClaw این پارامتر را برای eleven_v3، که آن را رد می‌کند، حذف می‌کند.

تبدیل گفتار به متن

از Scribe v2 برای پیوست‌های صوتی ورودی و بخش‌های کوتاه صدای ضبط‌شده استفاده کنید:

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

OpenClaw صوت چندبخشی را با model_id: "scribe_v2" به /v1/speech-to-text در ElevenLabs می‌فرستد. راهنمایی‌های زبان، در صورت وجود، به 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
راهبرد commit ...elevenlabs.commitStrategy vad
زبان ...elevenlabs.languageCode (تنظیم‌نشده)
json5
{  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 پیکربندی کنید.

مرتبط

Was this useful?
On this page

On this page