stt-tts मोड का स्पीच-आउटपुट भाग है (talk.speak कॉल भी इसी
सिंथेसिस पथ का उपयोग करती हैं)। प्रोवाइडर-नेटिव realtime Talk सेशन
रीयलटाइम प्रोवाइडर के भीतर स्पीच सिंथेसाइज़ करते हैं; transcription सेशन कभी भी
असिस्टेंट का वॉइस उत्तर सिंथेसाइज़ नहीं करते।
तुरंत शुरू करें
1
प्रोवाइडर चुनें
OpenAI और ElevenLabs सबसे विश्वसनीय होस्टेड विकल्प हैं। Microsoft और
Local CLI किसी API कुंजी के बिना काम करते हैं। पूरी सूची के लिए
प्रोवाइडर मैट्रिक्स देखें।
2
API कुंजी सेट करें
अपने प्रोवाइडर के लिए एनवायरनमेंट वेरिएबल एक्सपोर्ट करें (उदाहरण के लिए
OPENAI_API_KEY,
ELEVENLABS_API_KEY)। Microsoft और Local CLI को किसी कुंजी की आवश्यकता नहीं है।3
कॉन्फ़िगरेशन में सक्षम करें
tts.auto: "always" और tts.provider सेट करें:4
चैट में आज़माएँ
/tts status वर्तमान स्थिति दिखाता है। /tts audio Hello from OpenClaw
एक बार का ऑडियो उत्तर भेजता है।Auto-TTS डिफ़ॉल्ट रूप से बंद है। जब
tts.provider सेट नहीं होता,
OpenClaw रजिस्ट्री के ऑटो-सिलेक्ट क्रम में पहला कॉन्फ़िगर किया गया प्रोवाइडर चुनता है।
बिल्ट-इन tts एजेंट टूल केवल स्पष्ट अभिप्राय के लिए है: सामान्य चैट
टेक्स्ट ही रहती है, जब तक उपयोगकर्ता ऑडियो न माँगे, /tts का उपयोग न करे,
या Auto-TTS/डायरेक्टिव स्पीच सक्षम न करे।समर्थित प्रोवाइडर
यदि कई प्रोवाइडर कॉन्फ़िगर किए गए हैं, तो चयनित प्रोवाइडर का पहले उपयोग किया जाता है और
अन्य फ़ॉलबैक विकल्प होते हैं। ऑटो-सारांश
summaryModel (या
agents.defaults.model.primary) का उपयोग करता है, इसलिए यदि आप सारांश सक्षम रखते हैं,
तो उस प्रोवाइडर का प्रमाणीकरण भी आवश्यक है।
कॉन्फ़िगरेशन
TTS कॉन्फ़िगरेशन~/.openclaw/openclaw.json में tts के अंतर्गत होता है। कोई
प्रीसेट चुनें और प्रोवाइडर ब्लॉक को अनुकूलित करें। नीचे दिखाए गए speakerVoice/speakerVoiceId
फ़ील्ड कैनोनिकल हैं; प्रत्येक प्रोवाइडर के अपने voice/voiceId/
voiceName फ़ील्ड नाम अब भी लेगेसी उपनामों के रूप में काम करते हैं।
- Azure Speech
- ElevenLabs
- Google Gemini
- Gradium
- Inworld
- Local CLI
- Microsoft (कुंजी आवश्यक नहीं)
- MiniMax
- OpenAI + ElevenLabs
- OpenRouter
- Volcengine
- xAI
- Xiaomi MiMo
mimo-v2.5-tts-voicedesign के लिए, speakerVoice को छोड़ दें और style को
वॉइस-डिज़ाइन प्रॉम्प्ट पर सेट करें। OpenClaw उस प्रॉम्प्ट को TTS user संदेश के रूप में
भेजता है और voicedesign मॉडल के लिए audio.voice नहीं भेजता।
प्रति-एजेंट वॉइस ओवरराइड
जब किसी एक एजेंट को अलग प्रोवाइडर, वॉइस, मॉडल, पर्सोना या auto-TTS मोड के साथ बोलना हो, तबagents.entries.*.tts का उपयोग करें। एजेंट ब्लॉक tts के ऊपर डीप-मर्ज होता है,
इसलिए प्रोवाइडर क्रेडेंशियल वैश्विक प्रोवाइडर कॉन्फ़िगरेशन में रह सकते हैं:
agents.entries.*.tts.persona सेट करें — यह केवल उस एजेंट के लिए वैश्विक tts.persona को ओवरराइड करता है।
स्वचालित उत्तरों, /tts audio, /tts status, और tts एजेंट टूल के लिए प्राथमिकता क्रम:
tts- सक्रिय
agents.entries.*.tts - चैनल ओवरराइड, जब चैनल
channels.<channel>.ttsका समर्थन करता है - खाता ओवरराइड, जब चैनल
channels.<channel>.accounts.<id>.ttsपास करता है - इस होस्ट के लिए स्थानीय
/ttsप्राथमिकताएँ - जब मॉडल-संचालित निर्देश सक्षम हों, तब इनलाइन
[[tts:...]]निर्देश
tts जैसी ही संरचना का उपयोग करते हैं और पिछली परतों पर डीप-मर्ज होते हैं, इसलिए साझा प्रदाता क्रेडेंशियल tts में रह सकते हैं, जबकि कोई चैनल या बॉट खाता केवल वक्ता की आवाज़, मॉडल, पर्सोना या स्वचालित मोड बदलता है:
पर्सोना
पर्सोना एक स्थिर वाचिक पहचान है, जिसे सभी प्रदाताओं पर नियतात्मक रूप से लागू किया जा सकता है। यह किसी एक प्रदाता को प्राथमिकता दे सकता है, प्रदाता-निरपेक्ष प्रॉम्प्ट अभिप्राय परिभाषित कर सकता है, और आवाज़ों, मॉडलों, प्रॉम्प्ट टेम्पलेटों, सीड तथा आवाज़ सेटिंग के लिए प्रदाता-विशिष्ट बाइंडिंग रख सकता है।न्यूनतम पर्सोना
पूर्ण पर्सोना (प्रदाता-विशिष्ट आकार निर्धारण)
पर्सोना निर्धारण
सक्रिय पर्सोना नियतात्मक रूप से चुना जाता है:/tts persona <id>स्थानीय प्राथमिकता, यदि सेट हो।tts.persona, यदि सेट हो।- कोई पर्सोना नहीं।
- प्रत्यक्ष ओवरराइड (CLI, gateway, Talk, अनुमत TTS निर्देश)।
/tts provider <id>स्थानीय प्राथमिकता।- सक्रिय पर्सोना का
provider। tts.provider।- रजिस्ट्री द्वारा स्वचालित चयन।
tts.providers.<id>tts.personas.<persona>.providers.<id>- विश्वसनीय अनुरोध ओवरराइड
- अनुमत मॉडल-उत्सर्जित TTS निर्देश ओवरराइड
कस्टम पर्सोना आकार निर्धारण
प्रदाता-निरपेक्षpersonas.<id>.prompt.* कॉन्फ़िगरेशन हटा दिया गया है। Doctor उन फ़ील्ड को हटाता है और वाक्-प्रदाता सीम की ओर इंगित करता है। अंतर्निर्मित प्रदाता सेटिंग को personas.<id>.providers.<provider> के अंतर्गत रखें (उदाहरण के लिए Google personaPrompt या OpenAI instructions)। कस्टम आकार निर्धारण के लिए, prepareSynthesis(ctx) के साथ एक वाक् प्रदाता Plugin लागू करें और synthesize() चलने से पहले समायोजित टेक्स्ट, प्रदाता कॉन्फ़िगरेशन या ओवरराइड लौटाएँ। इससे अभिव्यंजक प्रॉम्प्ट निर्माण उस प्रदाता कोड में रहता है, जहाँ अनुरोध का अर्थ ज्ञात होता है।
फ़ॉलबैक नीति
जब प्रयास किए जा रहे प्रदाता के लिए किसी पर्सोना की कोई बाइंडिंग नहीं होती, तबfallbackPolicy व्यवहार नियंत्रित करता है:
पूरा TTS अनुरोध केवल तभी विफल होता है, जब प्रयास किए गए सभी प्रदाता छोड़ दिए जाएँ या विफल हों।
Talk सत्र का प्रदाता चयन सत्र-सीमित होता है। Talk क्लाइंट को
talk.catalog से प्रदाता आईडी, मॉडल आईडी, आवाज़ आईडी और लोकेल चुनकर उन्हें Talk सत्र या हैंडऑफ़ अनुरोध के माध्यम से पास करना चाहिए। आवाज़ सत्र खोलने से tts या वैश्विक Talk प्रदाता डिफ़ॉल्ट में बदलाव नहीं होना चाहिए।
मॉडल-संचालित निर्देश
डिफ़ॉल्ट रूप से, सहायक एक उत्तर के लिए आवाज़, मॉडल या गति को ओवरराइड करने हेतु[[tts:...]] निर्देश उत्सर्जित कर सकता है, साथ ही उन अभिव्यंजक संकेतों के लिए वैकल्पिक [[tts:text]]...[[/tts:text]] ब्लॉक भी दे सकता है, जिन्हें केवल ऑडियो में दिखाई देना चाहिए:
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 को चालू नहीं करता)।/tts limit <chars>100–4096 स्वीकार करता है (4096 Telegram कैप्शन/संदेश की अधिकतम सीमा है); इस सीमा के बाहर के मान अस्वीकार कर दिए जाते हैं।limitऔरsummaryमुख्य कॉन्फ़िगरेशन में नहीं, बल्कि स्थानीय प्राथमिकताओं में संग्रहीत होते हैं।/tts statusमें नवीनतम प्रयास के लिए फ़ॉलबैक निदान शामिल होता है —Fallback: <primary> -> <used>,Attempts: ..., और प्रत्येक प्रयास का विवरण (provider:outcome(reasonCode) latency)।/statusTTS सक्षम होने पर सक्रिय TTS मोड के साथ कॉन्फ़िगर किया गया प्रदाता, मॉडल, आवाज़ और सैनिटाइज़ किया गया कस्टम एंडपॉइंट मेटाडेटा दिखाता है।
प्रति-उपयोगकर्ता प्राथमिकताएँ
स्लैश कमांड, TTS प्राथमिकता पथ में स्थानीय ओवरराइड लिखते हैं। डिफ़ॉल्ट~/.openclaw/settings/tts.json है; इसे OPENCLAW_TTS_PREFS से ओवरराइड करें। Doctor हटाए गए वैश्विक tts.prefsPath मान को साझा मशीन स्थिति में ले जाता है। उन्नत बहु-एजेंट सेटअप अब भी agents.entries.<id>.tts.prefsPath सेट कर सकते हैं, जब एजेंट जानबूझकर अलग-अलग प्राथमिकता स्टोर का उपयोग करते हैं।
ये उस होस्ट के लिए
tts और सक्रिय agents.entries.*.tts ब्लॉक से प्राप्त प्रभावी कॉन्फ़िगरेशन को ओवरराइड करते हैं।
आउटपुट प्रारूप
TTS आवाज़ डिलीवरी चैनल की क्षमताओं से संचालित होती है। चैनल Plugin बताते हैं कि आवाज़-शैली TTS को प्रदाताओं से नेटिवvoice-note लक्ष्य माँगना चाहिए या सामान्य audio-file संश्लेषण बनाए रखना चाहिए, और यह भी कि चैनल भेजने से पहले गैर-नेटिव आउटपुट को ट्रांसकोड करता है या नहीं।
प्रति-प्रदाता टिप्पणियाँ:
- Feishu / WhatsApp ट्रांसकोडिंग: जब कोई वॉइस-नोट उत्तर MP3/WebM/WAV/M4A या किसी अन्य संभावित ऑडियो फ़ाइल के रूप में आता है, तो चैनल Plugin मूल वॉइस संदेश भेजने से पहले उसे
ffmpeg(libopus, 64 kbps) के साथ 48 kHz Ogg/Opus में ट्रांसकोड करता है। WhatsApp परिणाम को Baileysaudioपेलोड के माध्यम सेptt: trueऔरaudio/ogg; codecs=opusके साथ भेजता है। ट्रांसकोड विफल होने पर: Feishu त्रुटि को संभालता है और मूल फ़ाइल को सामान्य अटैचमेंट के रूप में भेजता है; WhatsApp में कोई फ़ॉलबैक नहीं है, इसलिए असंगत PTT पेलोड पोस्ट होने के बजाय भेजने की प्रक्रिया ही विफल हो जाती है। - MiniMax: सामान्य ऑडियो अटैचमेंट के लिए MP3 (
speech-2.8-hdमॉडल, 32 kHz सैंपल दर); चैनल द्वारा घोषित वॉइस-नोट लक्ष्यों के लिएffmpegके साथ 48 kHz Opus में ट्रांसकोड किया जाता है। - Xiaomi MiMo: डिफ़ॉल्ट रूप से MP3, या कॉन्फ़िगर किए जाने पर WAV; चैनल द्वारा घोषित वॉइस-नोट लक्ष्यों के लिए
ffmpegके साथ 48 kHz Opus में ट्रांसकोड किया जाता है। - स्थानीय CLI: कॉन्फ़िगर किए गए
outputFormatका उपयोग करता है। वॉइस-नोट लक्ष्यों को Ogg/Opus में और टेलीफ़ोनी आउटपुट कोffmpegके साथ रॉ 16 kHz मोनो PCM में बदला जाता है। - Google Gemini: रॉ 24 kHz PCM लौटाता है। OpenClaw इसे ऑडियो अटैचमेंट के लिए WAV के रूप में रैप करता है, वॉइस-नोट लक्ष्यों के लिए 48 kHz Opus में ट्रांसकोड करता है और बातचीत/टेलीफ़ोनी के लिए सीधे PCM लौटाता है।
- Gradium: ऑडियो अटैचमेंट के लिए WAV, वॉइस-नोट लक्ष्यों के लिए Opus और टेलीफ़ोनी के लिए 8 kHz पर
ulaw_8000। - Inworld: सामान्य ऑडियो अटैचमेंट के लिए MP3, वॉइस-नोट लक्ष्यों के लिए मूल
OGG_OPUSऔर बातचीत/टेलीफ़ोनी के लिए 22050 Hz पर रॉPCM। - xAI: डिफ़ॉल्ट रूप से MP3; ऑडियो-फ़ाइल संश्लेषण बफ़र किए गए और स्ट्रीमिंग आउटपुट, दोनों के लिए
mp3,wav,pcm,mulawयाalawका उपयोग कर सकता है। वॉइस-नोट लक्ष्य स्ट्रीमिंग और बफ़र किए गए फ़ॉलबैक के लिए MP3 का उपयोग करते हैं, क्योंकि xAI केpcm,mulawऔरalawआउटपुट हेडर-रहित रॉ ऑडियो होते हैं। बफ़र किया गया संश्लेषण xAI के बैच REST/v1/ttsएंडपॉइंट का उपयोग करता है;textToSpeechStreamमूलwss://api.x.ai/v1/ttsका उपयोग करता है। यह रीयलटाइम वॉइस अनुबंध नहीं है। मूल Opus वॉइस-नोट प्रारूप समर्थित नहीं है। - Microsoft:
microsoft.outputFormat(डिफ़ॉल्टaudio-24khz-48kbitrate-mono-mp3) का उपयोग करता है।- बंडल किया गया ट्रांसपोर्ट एक
outputFormatस्वीकार करता है, लेकिन सेवा से सभी प्रारूप उपलब्ध नहीं हैं। - आउटपुट प्रारूप मान Microsoft Speech आउटपुट प्रारूपों (Ogg/WebM Opus सहित) का अनुसरण करते हैं।
- Telegram
sendVoiceOGG/MP3/M4A स्वीकार करता है; यदि सुनिश्चित Opus वॉइस संदेशों की आवश्यकता है, तो OpenAI/ElevenLabs का उपयोग करें। - यदि कॉन्फ़िगर किया गया Microsoft आउटपुट प्रारूप विफल हो जाता है, तो OpenClaw MP3 के साथ पुनः प्रयास करता है।
- जब कोई स्पष्ट वॉइस ओवरराइड सेट नहीं होता और डिफ़ॉल्ट अंग्रेज़ी वॉइस का उपयोग किया जाता है, तो उत्तर का टेक्स्ट CJK-प्रधान होने पर OpenClaw स्वतः चीनी न्यूरल वॉइस (
zh-CN-XiaoxiaoNeural,zh-CNलोकेल) पर स्विच हो जाता है।
- बंडल किया गया ट्रांसपोर्ट एक
स्वचालित TTS व्यवहार
जबtts.auto सक्षम होता है, तो OpenClaw:
- यदि उत्तर में पहले से संरचित मीडिया है, तो TTS छोड़ देता है।
- बहुत छोटे उत्तर (10 वर्णों से कम) छोड़ देता है।
- सारांश सक्षम होने पर लंबे उत्तरों का सारांश
summaryModel(याagents.defaults.model.primary) का उपयोग करके तैयार करता है। - जनरेट किए गए ऑडियो को उत्तर से जोड़ता है।
mode: "final"में, टेक्स्ट स्ट्रीम पूर्ण होने के बाद भी स्ट्रीम किए गए अंतिम उत्तरों के लिए केवल-ऑडियो TTS भेजता है; जनरेट किया गया मीडिया सामान्य उत्तर अटैचमेंट की तरह उसी चैनल मीडिया सामान्यीकरण से गुजरता है।
maxLength से अधिक है, तो OpenClaw कभी भी ऑडियो को पूरी तरह नहीं छोड़ता:
- सारांश चालू (डिफ़ॉल्ट) और सारांश मॉडल उपलब्ध है: टेक्स्ट को लगभग
maxLengthवर्णों में सारांशित करता है, फिर सारांश को संश्लेषित करता है। - सारांश बंद, सारांशीकरण विफल होता है, या सारांश मॉडल के लिए कोई API कुंजी उपलब्ध नहीं है:
टेक्स्ट को
maxLengthवर्णों तक काटता है और काटे गए टेक्स्ट को संश्लेषित करता है।
फ़ील्ड संदर्भ
शीर्ष-स्तरीय tts.*
शीर्ष-स्तरीय tts.*
"off" | "always" | "inbound" | "tagged"
स्वचालित TTS मोड।
inbound केवल आने वाले वॉइस संदेश के बाद ऑडियो भेजता है; tagged केवल तभी ऑडियो भेजता है जब उत्तर में [[tts:...]] निर्देश या [[tts:text]] ब्लॉक शामिल हो।boolean
अप्रचलित
पुराना टॉगल।
openclaw doctor --fix इसे auto में माइग्रेट करता है।"final" | "all"
डिफ़ॉल्ट:"final"
"all" में अंतिम उत्तरों के अतिरिक्त टूल/ब्लॉक उत्तर भी शामिल होते हैं।string
वाक् प्रदाता आईडी। सेट न होने पर OpenClaw रजिस्ट्री के स्वचालित-चयन क्रम में पहले कॉन्फ़िगर किए गए प्रदाता का उपयोग करता है। पुराने
provider: "edge" को openclaw doctor --fix द्वारा "microsoft" में पुनर्लिखा जाता है।string
personas से सक्रिय पर्सोना आईडी। लोअरकेस में सामान्यीकृत किया जाता है।object
स्थिर मौखिक पहचान। फ़ील्ड:
label, description, provider, fallbackPolicy, prompt, providers.<provider>। पर्सोना देखें।string
स्वचालित सारांश के लिए कम लागत वाला मॉडल; डिफ़ॉल्ट
agents.defaults.model.primary। provider/model या कॉन्फ़िगर किए गए मॉडल उपनाम को स्वीकार करता है।object
मॉडल को TTS निर्देश उत्सर्जित करने की अनुमति दें।
enabled का डिफ़ॉल्ट true; allowProvider का डिफ़ॉल्ट false है।object
वाक् प्रदाता आईडी द्वारा कुंजीबद्ध प्रदाता-स्वामित्व वाली सेटिंग। पुराने प्रत्यक्ष ब्लॉक (
tts.openai, .elevenlabs, .microsoft, .edge) openclaw doctor --fix द्वारा पुनर्लिखे जाते हैं; केवल tts.providers.<id> कमिट करें।number
डिफ़ॉल्ट:"4096"
TTS इनपुट वर्णों की कठोर सीमा। सीमा से अधिक होने पर
/tts audio, tts.convert और tts.speak विफल हो जाते हैं।number
डिफ़ॉल्ट:"30000"
मिलीसेकंड में अनुरोध टाइमआउट। सेट होने पर प्रति-कॉल
timeoutMs (एजेंट टूल, gateway) प्रभावी होता है; अन्यथा स्पष्ट रूप से कॉन्फ़िगर किया गया tts.timeoutMs किसी भी Plugin-निर्मित प्रदाता डिफ़ॉल्ट पर प्रभावी होता है।apiKey फ़ील्ड रॉ स्ट्रिंग या SecretRefs हो सकते हैं। ठंडे Gateway
स्टार्टअप के दौरान, अनुपलब्ध TTS SecretRef, Gateway को रोकने के बजाय अंतर्निहित TTS क्षमता को
कॉन्फ़िगर-अनुपलब्ध चिह्नित करता है। तब tts.speak, कारण SECRET_SURFACE_UNAVAILABLE के साथ
UNAVAILABLE लौटाता है और कोई प्रदाता अनुरोध
नहीं भेजा जाता। स्थिति और डॉक्टर निम्नीकृत TTS स्वामी तथा उसके कॉन्फ़िगरेशन पथ सूचीबद्ध करते हैं। स्पष्ट
रेफ़रेंस रनटाइम स्नैपशॉट में बने रहते हैं, ताकि परिवेश या प्रोफ़ाइल
क्रेडेंशियल चुपचाप किसी अन्य अकाउंट का चयन न कर सकें। रीलोड और कॉन्फ़िगरेशन-लेखन
प्रीफ़्लाइट स्वामी-सजग निम्नीकरण नीति लागू करते हैं: एक अपरिवर्तित पात्र TTS
स्वामी अपने अंतिम-ज्ञात-सही क्रेडेंशियल को पुराने रूप में रख सकता है, जबकि नई या बदली हुई
विफलता स्वस्थ स्वामियों को अवरुद्ध किए बिना ठंडी हो जाती है। संरचनात्मक रूप से अमान्य रेफ़रेंस
और हल किए गए मान अब भी स्टार्टअप को विफल करते हैं या अपडेट अस्वीकार करते हैं।Azure Speech
Azure Speech
string
परिवेश:
AZURE_SPEECH_KEY, AZURE_SPEECH_API_KEY, या SPEECH_KEY।string
Azure Speech क्षेत्र (उदा.
eastus)। परिवेश: AZURE_SPEECH_REGION या SPEECH_REGION।string
वैकल्पिक Azure Speech एंडपॉइंट ओवरराइड (उपनाम
baseUrl)।string
Azure वॉइस ShortName। डिफ़ॉल्ट
en-US-JennyNeural। पुराना उपनाम: voice।string
SSML भाषा कोड। डिफ़ॉल्ट
en-US।string
मानक ऑडियो के लिए Azure
X-Microsoft-OutputFormat। डिफ़ॉल्ट audio-24khz-48kbitrate-mono-mp3।string
वॉइस-नोट आउटपुट के लिए Azure
X-Microsoft-OutputFormat। डिफ़ॉल्ट ogg-24khz-16bit-mono-opus।ElevenLabs
ElevenLabs
string
ELEVENLABS_API_KEY या XI_API_KEY पर फ़ॉलबैक करता है।string
मॉडल आईडी। डिफ़ॉल्ट
eleven_multilingual_v2। पुराने आईडी eleven_turbo_v2_5/eleven_turbo_v2 मिलान करने वाले flash मॉडल में सामान्यीकृत किए जाते हैं।string
ElevenLabs वॉइस आईडी। डिफ़ॉल्ट
pMsXgVXv3BLzUgSXRplE। पुराना उपनाम: voiceId।object
stability, similarityBoost, style (प्रत्येक 0..1, डिफ़ॉल्ट 0.5/0.75/0), useSpeakerBoost (true|false, डिफ़ॉल्ट true), speed (0.5..2.0, डिफ़ॉल्ट 1.0)।"auto" | "on" | "off"
टेक्स्ट सामान्यीकरण मोड।
string
2-अक्षरीय ISO 639-1 (उदा.
en, de)।number
सर्वोत्तम-प्रयास नियतात्मकता के लिए पूर्णांक
0..4294967295।string
ElevenLabs API आधार URL को ओवरराइड करें।
Google Gemini
Google Gemini
string
GEMINI_API_KEY / GOOGLE_API_KEY पर फ़ॉलबैक करता है। छोड़े जाने पर, env फ़ॉलबैक से पहले TTS models.providers.google.apiKey का पुनः उपयोग कर सकता है।string
Gemini TTS मॉडल। डिफ़ॉल्ट
gemini-3.1-flash-tts-preview।string
Gemini की पहले से निर्मित वॉइस का नाम। डिफ़ॉल्ट
Kore। लेगेसी उपनाम: voiceName, voice।string
बोले जाने वाले टेक्स्ट से पहले जोड़ा गया प्राकृतिक-भाषा शैली प्रॉम्प्ट।
string
जब आपका प्रॉम्प्ट किसी नामित वक्ता का उपयोग करता है, तो बोले जाने वाले टेक्स्ट से पहले जोड़ा गया वैकल्पिक वक्ता लेबल।
"audio-profile-v1"
सक्रिय पर्सोना प्रॉम्प्ट फ़ील्ड को नियतात्मक Gemini TTS प्रॉम्प्ट संरचना में रैप करने के लिए इसे
audio-profile-v1 पर सेट करें।string
टेम्पलेट के निर्देशक के नोट्स में जोड़ा गया Google-विशिष्ट अतिरिक्त पर्सोना प्रॉम्प्ट टेक्स्ट।
string
केवल
https://generativelanguage.googleapis.com स्वीकार किया जाता है।Gradium
Gradium
Inworld
Inworld
स्थानीय CLI (tts-local-cli)
स्थानीय CLI (tts-local-cli)
string
CLI TTS के लिए स्थानीय एक्ज़िक्यूटेबल या कमांड स्ट्रिंग।
string[]
कमांड आर्ग्युमेंट।
{{Text}}, {{OutputPath}}, {{OutputDir}}, {{OutputBase}} प्लेसहोल्डर समर्थित हैं।"mp3" | "opus" | "wav"
अपेक्षित CLI आउटपुट फ़ॉर्मैट। ऑडियो अटैचमेंट के लिए डिफ़ॉल्ट
mp3।number
कमांड टाइमआउट मिलीसेकंड में। डिफ़ॉल्ट
120000।string
वैकल्पिक कमांड वर्किंग डायरेक्टरी।
Record<string, string>
कमांड के लिए वैकल्पिक एनवायरनमेंट ओवरराइड।
Microsoft (API कुंजी के बिना)
Microsoft (API कुंजी के बिना)
boolean
डिफ़ॉल्ट:"true"
Microsoft स्पीच के उपयोग की अनुमति दें।
string
Microsoft न्यूरल वॉइस का नाम (उदा.
en-US-MichelleNeural)। लेगेसी उपनाम: voice। यदि डिफ़ॉल्ट अंग्रेज़ी वॉइस प्रभावी है और उत्तर का टेक्स्ट मुख्यतः CJK है, तो OpenClaw स्वतः zh-CN-XiaoxiaoNeural पर स्विच करता है।string
भाषा कोड (उदा.
en-US)।string
Microsoft आउटपुट फ़ॉर्मैट। डिफ़ॉल्ट
audio-24khz-48kbitrate-mono-mp3। बंडल किए गए Edge-समर्थित ट्रांसपोर्ट में सभी फ़ॉर्मैट समर्थित नहीं हैं।string
प्रतिशत स्ट्रिंग (उदा.
+10%, -5%)।boolean
ऑडियो फ़ाइल के साथ JSON उपशीर्षक लिखें।
string
Microsoft स्पीच अनुरोधों के लिए प्रॉक्सी URL।
number
अनुरोध टाइमआउट ओवरराइड (ms)।
object
अप्रचलित
लेगेसी उपनाम। स्थायी कॉन्फ़िग को
providers.microsoft में पुनर्लिखने के लिए openclaw doctor --fix चलाएँ।MiniMax
MiniMax
string
MINIMAX_API_KEY पर फ़ॉलबैक करता है। MINIMAX_OAUTH_TOKEN, MINIMAX_CODE_PLAN_KEY, या MINIMAX_CODING_API_KEY के माध्यम से Token Plan प्रमाणीकरण।string
डिफ़ॉल्ट
https://api.minimax.io। Env: MINIMAX_API_HOST।string
डिफ़ॉल्ट
speech-2.8-hd। Env: MINIMAX_TTS_MODEL।string
डिफ़ॉल्ट
English_expressive_narrator। Env: MINIMAX_TTS_VOICE_ID। लेगेसी उपनाम: voiceId।number
0.5..2.0। डिफ़ॉल्ट 1.0।number
(0, 10]। डिफ़ॉल्ट 1.0।number
पूर्णांक
-12..12। डिफ़ॉल्ट 0। अनुरोध से पहले भिन्नात्मक मान काट दिए जाते हैं।OpenAI
OpenAI
string
OPENAI_API_KEY पर फ़ॉलबैक करता है।string
OpenAI TTS मॉडल id। डिफ़ॉल्ट
gpt-4o-mini-tts।string
वॉइस का नाम (उदा.
alloy, cedar)। डिफ़ॉल्ट coral। लेगेसी उपनाम: voice।string
स्पष्ट OpenAI
instructions फ़ील्ड। इसे सेट करने पर पर्सोना प्रॉम्प्ट फ़ील्ड स्वतः मैप नहीं किए जाते।Record<string, unknown>
जनरेट किए गए OpenAI TTS फ़ील्ड के बाद
/audio/speech अनुरोध बॉडी में मर्ज किए जाने वाले अतिरिक्त JSON फ़ील्ड। इसका उपयोग Kokoro जैसे OpenAI-संगत एंडपॉइंट के लिए करें, जिन्हें lang जैसी प्रदाता-विशिष्ट कुंजियों की आवश्यकता होती है; असुरक्षित प्रोटोटाइप कुंजियों को अनदेखा किया जाता है।string
OpenAI TTS एंडपॉइंट को ओवरराइड करें। समाधान क्रम: कॉन्फ़िग →
OPENAI_TTS_BASE_URL → https://api.openai.com/v1। गैर-डिफ़ॉल्ट मानों को OpenAI-संगत TTS एंडपॉइंट माना जाता है, इसलिए कस्टम मॉडल और वॉइस नाम स्वीकार किए जाते हैं, और speed की 0.25..4.0 रेंज जाँच हट जाती है।OpenRouter
OpenRouter
string
Env:
OPENROUTER_API_KEY। models.providers.openrouter.apiKey का पुनः उपयोग कर सकता है।string
डिफ़ॉल्ट
https://openrouter.ai/api/v1। लेगेसी https://openrouter.ai/v1 को सामान्यीकृत किया जाता है।string
डिफ़ॉल्ट
hexgrad/kokoro-82m। उपनाम: modelId।string
डिफ़ॉल्ट
af_alloy। लेगेसी उपनाम: voice, voiceId।"mp3" | "pcm"
डिफ़ॉल्ट
mp3।number
प्रदाता-नेटिव गति ओवरराइड।
Volcengine (BytePlus Seed Speech)
Volcengine (BytePlus Seed Speech)
string
Env:
VOLCENGINE_TTS_API_KEY या BYTEPLUS_SEED_SPEECH_API_KEY।string
डिफ़ॉल्ट
seed-tts-1.0। Env: VOLCENGINE_TTS_RESOURCE_ID। जब आपके प्रोजेक्ट के पास TTS 2.0 अधिकार हो, तो seed-tts-2.0 का उपयोग करें।string
ऐप कुंजी हेडर। डिफ़ॉल्ट
aGjiRDfUWi। Env: VOLCENGINE_TTS_APP_KEY।string
Seed Speech TTS HTTP एंडपॉइंट को ओवरराइड करें। Env:
VOLCENGINE_TTS_BASE_URL।string
वॉइस प्रकार। डिफ़ॉल्ट
en_female_anna_mars_bigtts। Env: VOLCENGINE_TTS_VOICE। लेगेसी उपनाम: voice।number
प्रदाता-नेटिव गति अनुपात,
0.2..3।string
प्रदाता-नेटिव भाव टैग।
string
अप्रचलित
लेगेसी Volcengine Speech Console फ़ील्ड। Env:
VOLCENGINE_TTS_APPID, VOLCENGINE_TTS_TOKEN, VOLCENGINE_TTS_CLUSTER (डिफ़ॉल्ट volcano_tts)।xAI
xAI
string
Env:
XAI_API_KEY।string
डिफ़ॉल्ट
https://api.x.ai/v1। Env: XAI_BASE_URL।string
डिफ़ॉल्ट
eve। प्रमाणीकरण के साथ, openclaw infer tts voices --provider xai वर्तमान अंतर्निहित कैटलॉग प्राप्त करता है; प्रमाणीकरण के बिना यह ऑफ़लाइन फ़ॉलबैक ara, eve, leo, rex, और sal सूचीबद्ध करता है। खाते की कस्टम वॉइस ID अंतर्निहित सूची में अनुपस्थित होने पर भी अग्रेषित की जाती हैं। लेगेसी उपनाम: voiceId।string
BCP-47 भाषा कोड या
auto। डिफ़ॉल्ट en।"mp3" | "wav" | "pcm" | "mulaw" | "alaw"
डिफ़ॉल्ट
mp3।number
प्रदाता-नेटिव गति ओवरराइड,
0.7..1.5।Xiaomi MiMo
Xiaomi MiMo
string
Env:
XIAOMI_API_KEY।string
डिफ़ॉल्ट
https://api.xiaomimimo.com/v1। Env: XIAOMI_BASE_URL।string
डिफ़ॉल्ट
mimo-v2.5-tts। Env: XIAOMI_TTS_MODEL। mimo-v2.5-tts-voicedesign भी समर्थित है।string
प्रीसेट-वॉइस मॉडल के लिए डिफ़ॉल्ट
mimo_default। Env: XIAOMI_TTS_VOICE। लेगेसी उपनाम: voice। mimo-v2.5-tts-voicedesign के लिए नहीं भेजा जाता।"mp3" | "wav"
डिफ़ॉल्ट
mp3। Env: XIAOMI_TTS_FORMAT।string
उपयोगकर्ता संदेश के रूप में भेजा गया वैकल्पिक प्राकृतिक-भाषा शैली निर्देश; इसे बोला नहीं जाता।
mimo-v2.5-tts-voicedesign के लिए, यह वॉइस-डिज़ाइन प्रॉम्प्ट है; छोड़े जाने पर OpenClaw एक डिफ़ॉल्ट प्रदान करता है।एजेंट टूल
tts टूल टेक्स्ट को स्पीच में बदलता है और उत्तर डिलीवरी के लिए
एक ऑडियो अटैचमेंट लौटाता है। Feishu, Matrix, Telegram और WhatsApp पर ऑडियो को
फ़ाइल अटैचमेंट के बजाय वॉइस संदेश के रूप में डिलीवर किया जाता है। इस पथ पर
ffmpeg उपलब्ध होने पर Feishu और WhatsApp गैर-Opus TTS आउटपुट को
ट्रांसकोड कर सकते हैं।
WhatsApp, Baileys के माध्यम से ऑडियो को PTT वॉइस नोट (audio के साथ
ptt: true) के रूप में भेजता है और दृश्यमान टेक्स्ट को PTT ऑडियो से अलग
भेजता है, क्योंकि क्लाइंट वॉइस नोट पर कैप्शन को एकसमान रूप से रेंडर नहीं करते।
टूल वैकल्पिक channel और timeoutMs फ़ील्ड स्वीकार करता है; timeoutMs
प्रति-कॉल प्रदाता अनुरोध टाइमआउट मिलीसेकंड में है। प्रति-कॉल मान
tts.timeoutMs को ओवरराइड करते हैं; कॉन्फ़िगर किए गए TTS टाइमआउट किसी भी Plugin-निर्मित
प्रदाता डिफ़ॉल्ट को ओवरराइड करते हैं।
Gateway RPC
सेवा लिंक
- OpenAI टेक्स्ट-टू-स्पीच मार्गदर्शिका
- OpenAI Audio API संदर्भ
- Azure Speech REST टेक्स्ट-टू-स्पीच
- Azure Speech प्रदाता
- ElevenLabs टेक्स्ट टू स्पीच
- ElevenLabs प्रमाणीकरण
- Gradium
- Inworld TTS API
- MiniMax T2A v2 API
- Volcengine TTS HTTP API
- Xiaomi MiMo वाक् संश्लेषण
- node-edge-tts
- Microsoft Speech आउटपुट प्रारूप
- xAI टेक्स्ट टू स्पीच