stt-tts الخاص بـ Talk. جلسات Talk
realtime الأصلية لدى المزود تُنشئ الكلام داخل مزود الوقت الفعلي بدلًا
من استدعاء مسار TTS هذا، بينما لا تُنشئ جلسات transcription استجابة
صوتية للمساعد.
البدء السريع
Pick a provider
OpenAI وElevenLabs هما أكثر الخيارات المستضافة موثوقية. يعمل Microsoft و
Local CLI دون مفتاح API. راجع مصفوفة المزودين
للاطلاع على القائمة الكاملة.
Set the API key
صدّر متغير البيئة لمزودك (على سبيل المثال
OPENAI_API_KEY،
ELEVENLABS_API_KEY). لا يحتاج Microsoft وLocal CLI إلى مفتاح.ميزة Auto-TTS متوقفة افتراضيًا. عندما لا يكون
messages.tts.provider معيّنًا،
يختار OpenClaw أول مزود مكوّن وفق ترتيب الاختيار التلقائي في السجل.
أداة الوكيل المضمنة tts مخصصة للنية الصريحة فقط: تبقى المحادثة العادية
نصية ما لم يطلب المستخدم صوتًا، أو يستخدم /tts، أو يفعّل الكلام عبر
Auto-TTS/التوجيه.المزودون المدعومون
| المزود | المصادقة | ملاحظات |
|---|---|---|
| Azure Speech | AZURE_SPEECH_KEY + AZURE_SPEECH_REGION (أيضًا AZURE_SPEECH_API_KEY, SPEECH_KEY, SPEECH_REGION) | إخراج ملاحظات صوتية Ogg/Opus أصلية واتصالات هاتفية. |
| DeepInfra | DEEPINFRA_API_KEY | TTS متوافق مع OpenAI. الافتراضي هو hexgrad/Kokoro-82M. |
| ElevenLabs | ELEVENLABS_API_KEY أو XI_API_KEY | استنساخ الصوت، متعدد اللغات، حتمي عبر seed؛ يُبث لتشغيل الصوت في Discord. |
| Google Gemini | GEMINI_API_KEY أو GOOGLE_API_KEY | TTS دفعي عبر Gemini API؛ واعٍ بالشخصية عبر promptTemplate: "audio-profile-v1". |
| Gradium | GRADIUM_API_KEY | إخراج ملاحظات صوتية واتصالات هاتفية. |
| Inworld | INWORLD_API_KEY | Streaming TTS API. ملاحظات صوتية Opus أصلية واتصالات هاتفية PCM. |
| Local CLI | لا شيء | يشغّل أمر TTS محليًا مكوّنًا. |
| Microsoft | لا شيء | TTS عصبي عام من Edge عبر node-edge-tts. أفضل جهد، بلا SLA. |
| MiniMax | MINIMAX_API_KEY (أو خطة الرموز: MINIMAX_OAUTH_TOKEN, MINIMAX_CODE_PLAN_KEY, MINIMAX_CODING_API_KEY) | T2A v2 API. الافتراضي هو speech-2.8-hd. |
| OpenAI | OPENAI_API_KEY | يُستخدم أيضًا للتلخيص التلقائي؛ يدعم instructions الخاصة بالشخصية. |
| OpenRouter | OPENROUTER_API_KEY (يمكنه إعادة استخدام models.providers.openrouter.apiKey) | النموذج الافتراضي hexgrad/kokoro-82m. |
| Volcengine | VOLCENGINE_TTS_API_KEY أو BYTEPLUS_SEED_SPEECH_API_KEY (AppID/رمز قديم: VOLCENGINE_TTS_APPID/_TOKEN) | BytePlus Seed Speech HTTP API. |
| Vydra | VYDRA_API_KEY | مزود مشترك للصور والفيديو والكلام. |
| xAI | XAI_API_KEY | TTS دفعي من xAI. الملاحظة الصوتية Opus الأصلية غير مدعومة. |
| Xiaomi MiMo | XIAOMI_API_KEY | MiMo TTS عبر إكمالات محادثة Xiaomi. |
summaryModel (أو
agents.defaults.model.primary)، لذلك يجب أيضًا مصادقة ذلك المزود إذا
أبقيت الملخصات مفعّلة.
التكوين
يوجد تكوين TTS ضمنmessages.tts في ~/.openclaw/openclaw.json. اختر
إعدادًا مسبقًا وعدّل كتلة المزود:
- Azure Speech
- ElevenLabs
- Google Gemini
- Gradium
- Inworld
- Local CLI
- Microsoft (no key)
- MiniMax
- OpenAI + ElevenLabs
- OpenRouter
- Volcengine
- xAI
- Xiaomi MiMo
mimo-v2.5-tts-voicedesign، احذف speakerVoice واضبط
style على مطالبة تصميم الصوت. يرسل OpenClaw تلك المطالبة كرسالة TTS
user ولا يرسل audio.voice لنموذج voicedesign.
تجاوزات الصوت لكل وكيل
استخدمagents.list[].tts عندما يجب أن يتحدث وكيل واحد بموفر أو
صوت أو نموذج أو شخصية أو وضع TTS تلقائي مختلف. تدمج كتلة الوكيل بعمق فوق
messages.tts، لذلك يمكن أن تبقى بيانات اعتماد الموفر في إعدادات الموفر العامة:
agents.list[].tts.persona بجانب إعدادات
الموفر — فهي تتجاوز messages.tts.persona العامة لذلك الوكيل فقط.
ترتيب الأولوية للردود التلقائية، و/tts audio، و/tts status، وأداة الوكيل
tts:
messages.ttsagents.list[].ttsالنشطة- تجاوز القناة، عندما تدعم القناة
channels.<channel>.tts - تجاوز الحساب، عندما تمرر القناة
channels.<channel>.accounts.<id>.tts - تفضيلات
/ttsالمحلية لهذا المضيف - توجيهات
[[tts:...]]المضمنة عندما تكون تجاوزات النموذج مفعلة
messages.tts وتدمج بعمق
فوق الطبقات السابقة، لذلك يمكن أن تبقى بيانات اعتماد الموفر المشتركة في
messages.tts بينما تغير قناة أو حساب بوت صوت المتحدث أو النموذج أو الشخصية
أو الوضع التلقائي فقط:
الشخصيات
الشخصية هي هوية منطوقة ثابتة يمكن تطبيقها بشكل حتمي عبر الموفرين. يمكنها تفضيل موفر واحد، وتعريف نية مطالبة محايدة للموفر، وحمل ربطات خاصة بالموفر للأصوات والنماذج وقوالب المطالبات والبذور وإعدادات الصوت.شخصية مبسطة
شخصية كاملة (مطالبة محايدة للموفر)
حلّ الشخصية
تُحدد الشخصية النشطة بشكل حتمي:- تفضيل
/tts persona <id>المحلي، إذا كان مضبوطًا. messages.tts.persona، إذا كان مضبوطًا.- بلا شخصية.
- التجاوزات المباشرة (CLI، وGateway، وTalk، وتوجيهات TTS المسموح بها).
- تفضيل
/tts provider <id>المحلي. providerالخاص بالشخصية النشطة.messages.tts.provider.- الاختيار التلقائي من السجل.
messages.tts.providers.<id>messages.tts.personas.<persona>.providers.<id>- تجاوزات الطلب الموثوق بها
- تجاوزات توجيهات TTS التي يصدرها النموذج والمسموح بها
كيف تستخدم الموفرات مطالبات الشخصية
حقول مطالبة الشخصية (profile، وscene، وsampleContext، وstyle، وaccent،
وpacing، وconstraints) محايدة للموفر. يقرر كل موفر كيفية
استخدامها:
Google Gemini
Google Gemini
يلف حقول مطالبة الشخصية في بنية مطالبة Gemini TTS فقط عندما
تضبط إعدادات موفر Google الفعالة
promptTemplate: "audio-profile-v1"
أو personaPrompt. ما زالت حقول audioProfile وspeakerName الأقدم
تسبق النص كنص مطالبة خاص بـ Google. تُحفظ وسوم الصوت المضمنة مثل
[whispers] أو [laughs] داخل كتلة [[tts:text]]
داخل نص Gemini؛ لا ينشئ OpenClaw هذه الوسوم.OpenAI
OpenAI
يطابق حقول مطالبة الشخصية إلى حقل الطلب
instructions فقط عندما
لا تكون هناك instructions صريحة مهيأة لـ OpenAI. تفوز instructions
الصريحة دائمًا.الموفرون الآخرون
الموفرون الآخرون
يستخدمون فقط ربطات الشخصية الخاصة بالموفر تحت
personas.<id>.providers.<provider>. تُتجاهل حقول مطالبة الشخصية
ما لم ينفذ الموفر تعيين مطالبات شخصية خاصًا به.سياسة الرجوع
يتحكمfallbackPolicy في السلوك عندما لا تملك الشخصية أي ربط للموفر
الذي تجري محاولة استخدامه:
| السياسة | السلوك |
|---|---|
preserve-persona | الافتراضي. تبقى حقول المطالبة المحايدة للموفر متاحة؛ قد يستخدمها الموفر أو يتجاهلها. |
provider-defaults | تُحذف الشخصية من تحضير المطالبة لتلك المحاولة؛ يستخدم الموفر افتراضاته المحايدة بينما يستمر الرجوع إلى موفرين آخرين. |
fail | تخطَّ محاولة ذلك الموفر مع reasonCode: "not_configured" وpersonaBinding: "missing". تبقى موفرات الرجوع قيد المحاولة. |
talk.catalog وتمريرها عبر جلسة Talk أو طلب التسليم. يجب ألا يؤدي فتح
جلسة صوتية إلى تعديل messages.tts أو افتراضات موفر Talk العامة.
التوجيهات المدفوعة بالنموذج
افتراضيًا، يمكن للمساعد إصدار توجيهات[[tts:...]] لتجاوز
الصوت أو النموذج أو السرعة لرد واحد، بالإضافة إلى كتلة اختيارية
[[tts:text]]...[[/tts:text]] للإشارات التعبيرية التي يجب أن تظهر في
الصوت فقط:
messages.tts.auto هو "tagged"، تكون التوجيهات مطلوبة
لتشغيل الصوت. يزيل تسليم الكتل المتدفقة التوجيهات من النص المرئي قبل أن
تراها القناة، حتى عندما تكون مقسمة عبر كتل متجاورة.
يُتجاهل provider=... ما لم يكن modelOverrides.allowProvider: true.
عندما يعلن رد provider=...، تُحلل المفاتيح الأخرى في ذلك التوجيه
بواسطة ذلك الموفر فقط؛ تُزال المفاتيح غير المدعومة ويُبلغ عنها كتحذيرات
توجيه TTS.
مفاتيح التوجيه المتاحة:
provider(معرف موفر مسجل؛ يتطلبallowProvider: true)speakerVoice/speakerVoiceId(أسماء مستعارة قديمة:voice، وvoiceName، وvoice_name، وgoogle_voice، وvoiceId)model/google_modelstability، وsimilarityBoost، وstyle، وspeed، وuseSpeakerBoostvol/volume(مستوى صوت MiniMax، 0–10)pitch(درجة صوت MiniMax عددية صحيحة، −12 إلى 12؛ تُقتطع القيم الكسرية)emotion(وسم عاطفة Volcengine)applyTextNormalization(auto|on|off)languageCode(ISO 639-1)seed
أوامر الشرطة المائلة
أمر واحد/tts. على Discord، يسجل OpenClaw أيضًا /voice لأن
/tts أمر مدمج في Discord — ما زال نص /tts ... يعمل.
تتطلب الأوامر مرسلًا مصرحًا له (تنطبق قواعد قائمة السماح/المالك) ويجب
تفعيل
commands.text أو تسجيل الأوامر الأصلية.- يكتب
/tts onتفضيل TTS المحلي إلىalways؛ ويكتبه/tts offإلىoff. - يكتب
/tts chat on|off|defaultتجاوزًا لوضع TTS التلقائي محصورًا بنطاق الجلسة للمحادثة الحالية. - يكتب
/tts persona <id>تفضيل الشخصية المحلي؛ ويمسحه/tts persona off. - يقرأ
/tts latestأحدث رد للمساعد من سجل الجلسة الحالية ويرسله كصوت مرة واحدة. يخزن فقط تجزئة ذلك الرد في إدخال الجلسة لمنع إرسال صوت مكرر. - ينشئ
/tts audioردًا صوتيًا لمرة واحدة (لا يبدل TTS إلى وضع التشغيل). - يُخزن
limitوsummaryفي التفضيلات المحلية، وليس في الإعدادات الرئيسية. - يتضمن
/tts statusتشخيصات الرجوع لأحدث محاولة —Fallback: <primary> -> <used>، وAttempts: ...، وتفاصيل كل محاولة (provider:outcome(reasonCode) latency). - يعرض
/statusوضع TTS النشط بالإضافة إلى الموفر والنموذج والصوت المهيأة وبيانات التعريف المنقحة لنقطة النهاية المخصصة عندما يكون TTS مفعلًا.
تفضيلات لكل مستخدم
تكتب أوامر الشرطة المائلة التجاوزات المحلية إلىprefsPath. القيمة الافتراضية هي
~/.openclaw/settings/tts.json؛ ويمكن تجاوزها بمتغير البيئة OPENCLAW_TTS_PREFS
أو messages.tts.prefsPath.
| الحقل المخزن | التأثير |
|---|---|
auto | تجاوز TTS التلقائي المحلي (always، وoff، …) |
provider | تجاوز الموفر الأساسي المحلي |
persona | تجاوز الشخصية المحلي |
maxLength | عتبة التلخيص (افتراضيًا 1500 حرفًا) |
summarize | مفتاح التلخيص (افتراضيًا true) |
messages.tts بالإضافة إلى كتلة
agents.list[].tts النشطة لذلك المضيف.
تنسيقات الإخراج (ثابتة)
يُدار تسليم صوت TTS حسب قدرات القناة. تعلن Plugins القنوات ما إذا كان TTS بنمط الصوت يجب أن يطلب من الموفرين هدفvoice-note أصليًا
أو يحافظ على إنشاء audio-file العادي ويضع علامة فقط على الإخراج المتوافق
مع التسليم الصوتي.
- القنوات القادرة على الملاحظات الصوتية: تفضّل ردود الملاحظات الصوتية Opus (
opus_48000_64من ElevenLabs، وopusمن OpenAI).- 48kHz / 64kbps هو توازن جيد لرسائل الصوت.
- Feishu / WhatsApp: عند إنتاج رد ملاحظة صوتية بصيغة MP3/WebM/WAV/M4A
أو ملف صوتي آخر محتمل، يحوّله Plugin القناة إلى 48kHz
Ogg/Opus باستخدام
ffmpegقبل إرسال رسالة الصوت الأصلية. يرسل WhatsApp النتيجة عبر حمولة Baileysaudioمعptt: trueوaudio/ogg; codecs=opus. إذا فشل التحويل، يتلقى Feishu الملف الأصلي كمرفق؛ ويفشل إرسال WhatsApp بدلًا من نشر حمولة PTT غير متوافقة. - القنوات الأخرى: MP3 (
mp3_44100_128من ElevenLabs، وmp3من OpenAI).- 44.1kHz / 128kbps هو التوازن الافتراضي لوضوح الكلام.
- MiniMax: MP3 (نموذج
speech-2.8-hd، ومعدل عينة 32kHz) لمرفقات الصوت العادية. بالنسبة إلى أهداف الملاحظات الصوتية التي تعلنها القناة، يحوّل OpenClaw ملف MiniMax MP3 إلى 48kHz Opus باستخدامffmpegقبل التسليم عندما تعلن القناة دعم التحويل. - Xiaomi MiMo: MP3 افتراضيًا، أو WAV عند تهيئته. بالنسبة إلى أهداف الملاحظات الصوتية التي تعلنها القناة، يحوّل OpenClaw مخرجات Xiaomi إلى 48kHz Opus باستخدام
ffmpegقبل التسليم عندما تعلن القناة دعم التحويل. - CLI المحلي: يستخدم
outputFormatالمهيأ. تُحوَّل أهداف الملاحظات الصوتية إلى Ogg/Opus، وتُحوَّل مخرجات الاتصالات الهاتفية إلى PCM خام أحادي 16 kHz باستخدامffmpeg. - Google Gemini: تعيد Gemini API TTS بيانات PCM خام بمعدل 24kHz. يغلّفها OpenClaw بصيغة WAV لمرفقات الصوت، ويحوّلها إلى 48kHz Opus لأهداف الملاحظات الصوتية، ويعيد PCM مباشرةً لـ Talk/الاتصالات الهاتفية.
- Gradium: WAV لمرفقات الصوت، وOpus لأهداف الملاحظات الصوتية، و
ulaw_8000عند 8 kHz للاتصالات الهاتفية. - Inworld: MP3 لمرفقات الصوت العادية، و
OGG_OPUSأصلي لأهداف الملاحظات الصوتية، وPCMخام عند 22050 Hz لـ Talk/الاتصالات الهاتفية. - xAI: MP3 افتراضيًا؛ يمكن أن تكون
responseFormatإحدى القيمmp3أوwavأوpcmأوmulawأوalaw. يستخدم OpenClaw نقطة نهاية TTS الدُفعية عبر REST من xAI ويعيد مرفقًا صوتيًا كاملًا؛ ولا يستخدم مسار هذا المزوّد WebSocket الخاص ببث TTS من xAI. لا يدعم هذا المسار تنسيق Opus الأصلي للملاحظات الصوتية. - Microsoft: يستخدم
microsoft.outputFormat(الافتراضيaudio-24khz-48kbitrate-mono-mp3).- يقبل النقل المضمّن
outputFormat، لكن ليست كل التنسيقات متاحة من الخدمة. - تتبع قيم تنسيق الإخراج تنسيقات إخراج Microsoft Speech (بما في ذلك Ogg/WebM Opus).
- يقبل Telegram
sendVoiceصيغ OGG/MP3/M4A؛ استخدم OpenAI/ElevenLabs إذا كنت تحتاج إلى رسائل صوتية Opus مضمونة. - إذا فشل تنسيق إخراج Microsoft المهيأ، يعيد OpenClaw المحاولة باستخدام MP3.
- يقبل النقل المضمّن
سلوك Auto-TTS
عند تفعيلmessages.tts.auto، يقوم OpenClaw بما يلي:
- يتجاوز TTS إذا كان الرد يحتوي بالفعل على وسائط منظمة.
- يتجاوز الردود القصيرة جدًا (أقل من 10 أحرف).
- يلخّص الردود الطويلة عند تفعيل الملخصات، باستخدام
summaryModel(أوagents.defaults.model.primary). - يرفق الصوت المُنشأ بالرد.
- في
mode: "final"، يظل يرسل TTS صوتيًا فقط للردود النهائية المتدفقة بعد اكتمال تدفق النص؛ تمر الوسائط المُنشأة عبر تطبيع وسائط القناة نفسه المستخدم مع مرفقات الرد العادية.
maxLength وكان التلخيص متوقفًا (أو لا يوجد مفتاح API لنموذج
التلخيص)، يتم تجاوز الصوت وإرسال الرد النصي العادي.
تنسيقات الإخراج حسب القناة
| الهدف | التنسيق |
|---|---|
| Feishu / Matrix / Telegram / WhatsApp | تفضّل ردود الملاحظات الصوتية Opus (opus_48000_64 من ElevenLabs، وopus من OpenAI). يوازن 48 kHz / 64 kbps بين الوضوح والحجم. |
| القنوات الأخرى | MP3 (mp3_44100_128 من ElevenLabs، وmp3 من OpenAI). الإعداد الافتراضي للكلام هو 44.1 kHz / 128 kbps. |
| المحادثة / الاتصالات الهاتفية | PCM الأصلي من المزوّد (Inworld 22050 Hz، وGoogle 24 kHz)، أو ulaw_8000 من Gradium للاتصالات الهاتفية. |
- تحويل ترميز Feishu / WhatsApp: عندما يصل رد ملاحظة صوتية بصيغة MP3/WebM/WAV/M4A، يحوّل Plugin القناة الترميز إلى Ogg/Opus بتردد 48 kHz باستخدام
ffmpeg. يرسل WhatsApp عبر Baileys معptt: trueوaudio/ogg; codecs=opus. إذا فشل التحويل: يعود Feishu إلى إرفاق الملف الأصلي؛ ويفشل إرسال WhatsApp بدلاً من نشر حمولة PTT غير متوافقة. - MiniMax / Xiaomi MiMo: MP3 افتراضيًا (32 kHz لـ MiniMax
speech-2.8-hd)؛ ويُحوَّل ترميزه إلى Opus بتردد 48 kHz لأهداف الملاحظات الصوتية عبرffmpeg. - CLI المحلي: يستخدم
outputFormatالمضبوط. تُحوَّل أهداف الملاحظات الصوتية إلى Ogg/Opus ومخرجات الاتصالات الهاتفية إلى PCM أحادي خام بتردد 16 kHz. - Google Gemini: يعيد PCM خامًا بتردد 24 kHz. يغلّفه OpenClaw كـ WAV للمرفقات، ويحوّل ترميزه إلى Opus بتردد 48 kHz لأهداف الملاحظات الصوتية، ويعيد PCM مباشرةً للمحادثة/الاتصالات الهاتفية.
- Inworld: مرفقات MP3، وملاحظة صوتية أصلية
OGG_OPUS، وPCMخام بتردد 22050 Hz للمحادثة/الاتصالات الهاتفية. - xAI: MP3 افتراضيًا؛ يمكن أن تكون
responseFormatهيmp3|wav|pcm|mulaw|alaw. يستخدم نقطة نهاية REST الدُفعية الخاصة بـ xAI — ولا يُستخدم WebSocket TTS للبث مطلقًا. تنسيق الملاحظات الصوتية الأصلي Opus غير مدعوم. - Microsoft: يستخدم
microsoft.outputFormat(الافتراضيaudio-24khz-48kbitrate-mono-mp3). يقبلsendVoiceفي Telegram صيغ OGG/MP3/M4A؛ استخدم OpenAI/ElevenLabs إذا كنت تحتاج إلى رسائل صوتية Opus مضمونة. إذا فشل تنسيق Microsoft المضبوط، يعيد OpenClaw المحاولة باستخدام MP3.
مرجع الحقول
رسائل المستوى الأعلى messages.tts.*
رسائل المستوى الأعلى messages.tts.*
وضع TTS التلقائي. يرسل
inbound الصوت فقط بعد رسالة صوتية واردة؛ ويرسل tagged الصوت فقط عندما يتضمن الرد توجيهات [[tts:...]] أو كتلة [[tts:text]].مفتاح تبديل قديم. يرحّل
openclaw doctor --fix هذا إلى auto.يتضمن
"all" ردود الأدوات/الكتل بالإضافة إلى الردود النهائية.معرّف مزوّد الكلام. عند عدم تعيينه، يستخدم OpenClaw أول مزوّد مضبوط في ترتيب الاختيار التلقائي للسجل. يُعاد كتابة
provider: "edge" القديم إلى "microsoft" بواسطة openclaw doctor --fix.معرّف الشخصية النشطة من
personas. يُطبّع إلى أحرف صغيرة.هوية منطوقة مستقرة. الحقول:
label وdescription وprovider وfallbackPolicy وprompt وproviders.<provider>. راجع الشخصيات.نموذج منخفض التكلفة للملخص التلقائي؛ يكون افتراضيًا
agents.defaults.model.primary. يقبل provider/model أو اسمًا مستعارًا لنموذج مضبوط.يسمح للنموذج بإصدار توجيهات TTS. تكون قيمة
enabled الافتراضية true؛ وتكون قيمة allowProvider الافتراضية false.إعدادات مملوكة للمزوّد ومفهرسة حسب معرّف مزوّد الكلام. يعيد
openclaw doctor --fix كتابة الكتل المباشرة القديمة (messages.tts.openai و.elevenlabs و.microsoft و.edge)؛ لا تثبّت إلا messages.tts.providers.<id>.حد صارم لعدد أحرف إدخال TTS. يفشل
/tts audio إذا تم تجاوزه.مهلة الطلب بالميلي ثانية.
يتجاوز مسار JSON المحلي للتفضيلات (المزوّد/الحد/الملخص). الافتراضي
~/.openclaw/settings/tts.json.Azure Speech
Azure Speech
Env:
AZURE_SPEECH_KEY أو AZURE_SPEECH_API_KEY أو SPEECH_KEY.منطقة Azure Speech (مثل
eastus). Env: AZURE_SPEECH_REGION أو SPEECH_REGION.تجاوز اختياري لنقطة نهاية Azure Speech (الاسم المستعار
baseUrl).ShortName لصوت Azure. الافتراضي
en-US-JennyNeural. الاسم المستعار القديم: voice.رمز لغة SSML. الافتراضي
en-US.قيمة Azure
X-Microsoft-OutputFormat للصوت القياسي. الافتراضي audio-24khz-48kbitrate-mono-mp3.قيمة Azure
X-Microsoft-OutputFormat لمخرجات الملاحظات الصوتية. الافتراضي ogg-24khz-16bit-mono-opus.ElevenLabs
ElevenLabs
يعود احتياطيًا إلى
ELEVENLABS_API_KEY أو XI_API_KEY.معرّف النموذج (مثل
eleven_multilingual_v2 وeleven_v3).معرّف صوت ElevenLabs. الاسم المستعار القديم:
voiceId.stability وsimilarityBoost وstyle (كل منها 0..1) وuseSpeakerBoost (true|false) وspeed (0.5..2.0، 1.0 = عادي).وضع تطبيع النص.
رمز ISO 639-1 مكوّن من حرفين (مثل
en وde).عدد صحيح
0..4294967295 لتحقيق حتمية بأفضل جهد.تجاوز عنوان URL الأساسي لواجهة ElevenLabs API.
Google Gemini
Google Gemini
يعود احتياطيًا إلى
GEMINI_API_KEY / GOOGLE_API_KEY. إذا حُذف، يمكن لـ TTS إعادة استخدام models.providers.google.apiKey قبل الرجوع الاحتياطي إلى Env.نموذج Gemini TTS. الافتراضي
gemini-3.1-flash-tts-preview.اسم صوت Gemini مسبق الإنشاء. الافتراضي
Kore. الأسماء المستعارة القديمة: voiceName وvoice.موجه أسلوب بلغة طبيعية يُضاف قبل النص المنطوق.
تسمية اختيارية للمتحدث تُضاف قبل النص المنطوق عندما يستخدم الموجه متحدثًا مسمى.
عيّنه إلى
audio-profile-v1 لتغليف حقول موجه الشخصية النشطة في بنية موجه Gemini TTS حتمية.نص موجه شخصية إضافي خاص بـ Google يُلحق بملاحظات المدير في القالب.
لا يُقبل إلا
https://generativelanguage.googleapis.com.Gradium
Gradium
Inworld
Inworld
Inworld الأساسي
البيئة:
INWORLD_API_KEY.القيمة الافتراضية
https://api.inworld.ai.القيمة الافتراضية
inworld-tts-1.5-max. أيضًا: inworld-tts-1.5-mini، inworld-tts-1-max، inworld-tts-1.القيمة الافتراضية
Sarah. الاسم البديل القديم: voiceId.درجة حرارة أخذ العينات
0..2.Local CLI (tts-local-cli)
Local CLI (tts-local-cli)
ملف تنفيذي محلي أو سلسلة أمر لتحويل النص إلى كلام عبر CLI.
وسائط الأمر. تدعم العناصر النائبة
{{Text}} و{{OutputPath}} و{{OutputDir}} و{{OutputBase}}.تنسيق مخرجات CLI المتوقع. القيمة الافتراضية
mp3 لمرفقات الصوت.مهلة الأمر بالمللي ثانية. القيمة الافتراضية
120000.دليل العمل الاختياري للأمر.
تجاوزات بيئية اختيارية للأمر.
Microsoft (no API key)
Microsoft (no API key)
السماح باستخدام الكلام من Microsoft.
اسم الصوت العصبي في Microsoft (مثل
en-US-MichelleNeural). الاسم البديل القديم: voice.رمز اللغة (مثل
en-US).تنسيق مخرجات Microsoft. القيمة الافتراضية
audio-24khz-48kbitrate-mono-mp3. لا يدعم النقل المضمن المستند إلى Edge جميع التنسيقات.سلاسل نسب مئوية (مثل
+10% و-5%).كتابة ترجمات JSON بجانب ملف الصوت.
عنوان URL للوكيل لطلبات الكلام من Microsoft.
تجاوز مهلة الطلب (مللي ثانية).
اسم بديل قديم. شغّل
openclaw doctor --fix لإعادة كتابة الإعدادات المحفوظة إلى providers.microsoft.MiniMax
MiniMax
يرجع إلى
MINIMAX_API_KEY. مصادقة Token Plan عبر MINIMAX_OAUTH_TOKEN أو MINIMAX_CODE_PLAN_KEY أو MINIMAX_CODING_API_KEY.القيمة الافتراضية
https://api.minimax.io. البيئة: MINIMAX_API_HOST.القيمة الافتراضية
speech-2.8-hd. البيئة: MINIMAX_TTS_MODEL.القيمة الافتراضية
English_expressive_narrator. البيئة: MINIMAX_TTS_VOICE_ID. الاسم البديل القديم: voiceId.0.5..2.0. القيمة الافتراضية 1.0.(0, 10]. القيمة الافتراضية 1.0.عدد صحيح
-12..12. القيمة الافتراضية 0. تُقتطع القيم الكسرية قبل الطلب.OpenAI
OpenAI
يرجع إلى
OPENAI_API_KEY.معرّف نموذج تحويل النص إلى كلام في OpenAI (مثل
gpt-4o-mini-tts).اسم الصوت (مثل
alloy وcedar). الاسم البديل القديم: voice.حقل
instructions صريح من OpenAI. عند تعيينه، لا تُربط حقول موجه الشخصية تلقائيًا.حقول JSON إضافية تُدمج في أجسام طلبات
/audio/speech بعد حقول تحويل النص إلى كلام المولدة من OpenAI. استخدم هذا لنقاط النهاية المتوافقة مع OpenAI مثل Kokoro التي تتطلب مفاتيح خاصة بالمزوّد مثل lang؛ يتم تجاهل مفاتيح النماذج الأولية غير الآمنة.تجاوز نقطة نهاية تحويل النص إلى كلام في OpenAI. ترتيب الحل: الإعدادات →
OPENAI_TTS_BASE_URL → https://api.openai.com/v1. تُعامل القيم غير الافتراضية كنقاط نهاية لتحويل النص إلى كلام متوافقة مع OpenAI، لذلك تُقبل أسماء النماذج والأصوات المخصصة.OpenRouter
OpenRouter
البيئة:
OPENROUTER_API_KEY. يمكن إعادة استخدام models.providers.openrouter.apiKey.القيمة الافتراضية
https://openrouter.ai/api/v1. يتم تطبيع https://openrouter.ai/v1 القديم.القيمة الافتراضية
hexgrad/kokoro-82m. الاسم البديل: modelId.القيمة الافتراضية
af_alloy. الأسماء البديلة القديمة: voice وvoiceId.القيمة الافتراضية
mp3.تجاوز السرعة الأصلي لدى المزوّد.
Volcengine (BytePlus Seed Speech)
Volcengine (BytePlus Seed Speech)
البيئة:
VOLCENGINE_TTS_API_KEY أو BYTEPLUS_SEED_SPEECH_API_KEY.القيمة الافتراضية
seed-tts-1.0. البيئة: VOLCENGINE_TTS_RESOURCE_ID. استخدم seed-tts-2.0 عندما يكون لمشروعك استحقاق TTS 2.0.ترويسة مفتاح التطبيق. القيمة الافتراضية
aGjiRDfUWi. البيئة: VOLCENGINE_TTS_APP_KEY.تجاوز نقطة نهاية HTTP لتحويل النص إلى كلام في Seed Speech. البيئة:
VOLCENGINE_TTS_BASE_URL.نوع الصوت. القيمة الافتراضية
en_female_anna_mars_bigtts. البيئة: VOLCENGINE_TTS_VOICE. الاسم البديل القديم: voice.نسبة السرعة الأصلية لدى المزوّد.
وسم العاطفة الأصلي لدى المزوّد.
حقول Volcengine Speech Console القديمة. البيئة:
VOLCENGINE_TTS_APPID وVOLCENGINE_TTS_TOKEN وVOLCENGINE_TTS_CLUSTER (القيمة الافتراضية volcano_tts).xAI
xAI
البيئة:
XAI_API_KEY.القيمة الافتراضية
https://api.x.ai/v1. البيئة: XAI_BASE_URL.القيمة الافتراضية
eve. الأصوات الحية: ara وeve وleo وrex وsal وuna. الاسم البديل القديم: voiceId.رمز لغة BCP-47 أو
auto. القيمة الافتراضية en.القيمة الافتراضية
mp3.تجاوز السرعة الأصلي لدى المزوّد.
Xiaomi MiMo
Xiaomi MiMo
البيئة:
XIAOMI_API_KEY.القيمة الافتراضية
https://api.xiaomimimo.com/v1. البيئة: XIAOMI_BASE_URL.القيمة الافتراضية
mimo-v2.5-tts. البيئة: XIAOMI_TTS_MODEL. يدعم أيضًا mimo-v2-tts وmimo-v2.5-tts-voicedesign.القيمة الافتراضية
mimo_default لنماذج الصوت المسبق الضبط. البيئة: XIAOMI_TTS_VOICE. الاسم البديل القديم: voice. لا يُرسل لـ mimo-v2.5-tts-voicedesign.القيمة الافتراضية
mp3. البيئة: XIAOMI_TTS_FORMAT.تعليمة نمط اختيارية بلغة طبيعية تُرسل كرسالة المستخدم؛ لا تُنطق. بالنسبة إلى
mimo-v2.5-tts-voicedesign، يكون هذا موجه تصميم الصوت؛ يوفّر OpenClaw قيمة افتراضية عند حذفه.أداة الوكيل
تحوّل أداةtts النص إلى كلام وتعيد مرفقًا صوتيًا لتسليم الرد.
في Feishu وMatrix وTelegram وWhatsApp، يُسلّم الصوت كرسالة صوتية بدلًا من مرفق ملف. يمكن لـ Feishu وWhatsApp تحويل مخرجات تحويل النص إلى كلام غير Opus في هذا المسار عندما يكون ffmpeg متاحًا.
يرسل WhatsApp الصوت عبر Baileys كملاحظة صوتية PTT (audio مع
ptt: true) ويرسل النص المرئي بشكل منفصل عن صوت PTT لأن
العملاء لا يعرضون التسميات التوضيحية على الملاحظات الصوتية بشكل متسق.
تقبل الأداة حقلي channel وtimeoutMs اختياريًا؛ timeoutMs هو
مهلة طلب المزوّد لكل استدعاء بالمللي ثانية. تتجاوز قيم كل استدعاء
messages.tts.timeoutMs؛ وتتجاوز مُهل تحويل النص إلى كلام المضبوطة أي
قيمة افتراضية للمزوّد كتبها Plugin.
Gateway RPC
| الطريقة | الغرض |
|---|---|
tts.status | قراءة حالة تحويل النص إلى كلام الحالية وآخر محاولة. |
tts.enable | تعيين تفضيل التشغيل التلقائي المحلي إلى always. |
tts.disable | تعيين تفضيل التشغيل التلقائي المحلي إلى off. |
tts.convert | تحويل نص لمرة واحدة → صوت. |
tts.setProvider | تعيين تفضيل المزوّد المحلي. |
tts.setPersona | تعيين تفضيل الشخصية المحلي. |
tts.providers | سرد المزوّدين المضبوطين وحالاتهم. |
روابط الخدمة
- دليل تحويل النص إلى كلام في OpenAI
- مرجع واجهة برمجة تطبيقات الصوت في OpenAI
- تحويل النص إلى كلام عبر REST في Azure Speech
- مزوّد Azure Speech
- تحويل النص إلى كلام في ElevenLabs
- مصادقة ElevenLabs
- Gradium
- واجهة برمجة تطبيقات تحويل النص إلى كلام في Inworld
- واجهة برمجة تطبيقات MiniMax T2A v2
- واجهة برمجة تطبيقات HTTP لتحويل النص إلى كلام في Volcengine
- تركيب الكلام في Xiaomi MiMo
- node-edge-tts
- تنسيقات مخرجات الكلام في Microsoft
- تحويل النص إلى كلام في xAI