stt-tts modunun konuşma çıktısı yarısıdır. Sağlayıcıya özgü
realtime Talk oturumları, bu TTS yolunu çağırmak yerine konuşmayı realtime
sağlayıcısının içinde sentezler; transcription oturumları ise bir
asistan sesli yanıtı sentezlemez.
Hızlı başlangıç
Pick a provider
OpenAI ve ElevenLabs en güvenilir barındırılan seçeneklerdir. Microsoft ve
Local CLI bir API anahtarı olmadan çalışır. Tam liste için
sağlayıcı matrisine bakın.
Set the API key
Sağlayıcınız için env var’ı dışa aktarın (örneğin
OPENAI_API_KEY,
ELEVENLABS_API_KEY). Microsoft ve Local CLI anahtar gerektirmez.Auto-TTS varsayılan olarak kapalıdır.
messages.tts.provider ayarlanmamışsa,
OpenClaw kayıt defterinin otomatik seçim sırasındaki ilk yapılandırılmış
sağlayıcıyı seçer. Yerleşik tts agent aracı yalnızca açık niyet içindir:
kullanıcı ses istemedikçe, /tts kullanmadıkça veya Auto-TTS/directive
konuşmayı etkinleştirmedikçe normal sohbet metin olarak kalır.Desteklenen sağlayıcılar
| Sağlayıcı | Kimlik doğrulama | Notlar |
|---|---|---|
| Azure Speech | AZURE_SPEECH_KEY + AZURE_SPEECH_REGION (ayrıca AZURE_SPEECH_API_KEY, SPEECH_KEY, SPEECH_REGION) | Yerel Ogg/Opus sesli not çıktısı ve telephony. |
| DeepInfra | DEEPINFRA_API_KEY | OpenAI uyumlu TTS. Varsayılan olarak hexgrad/Kokoro-82M. |
| ElevenLabs | ELEVENLABS_API_KEY veya XI_API_KEY | Ses klonlama, çok dilli, seed ile deterministik; Discord ses oynatma için akışlıdır. |
| Google Gemini | GEMINI_API_KEY veya GOOGLE_API_KEY | Gemini API toplu TTS; promptTemplate: "audio-profile-v1" ile persona farkındalığı. |
| Gradium | GRADIUM_API_KEY | Sesli not ve telephony çıktısı. |
| Inworld | INWORLD_API_KEY | Akışlı TTS API. Yerel Opus sesli not ve PCM telephony. |
| Local CLI | yok | Yapılandırılmış yerel bir TTS komutunu çalıştırır. |
| Microsoft | yok | node-edge-tts üzerinden genel Edge neural TTS. En iyi çaba, SLA yok. |
| MiniMax | MINIMAX_API_KEY (veya Token Plan: MINIMAX_OAUTH_TOKEN, MINIMAX_CODE_PLAN_KEY, MINIMAX_CODING_API_KEY) | T2A v2 API. Varsayılan olarak speech-2.8-hd. |
| OpenAI | OPENAI_API_KEY | Otomatik özet için de kullanılır; persona instructions desteği vardır. |
| OpenRouter | OPENROUTER_API_KEY (models.providers.openrouter.apiKey yeniden kullanılabilir) | Varsayılan model hexgrad/kokoro-82m. |
| Volcengine | VOLCENGINE_TTS_API_KEY veya BYTEPLUS_SEED_SPEECH_API_KEY (eski AppID/token: VOLCENGINE_TTS_APPID/_TOKEN) | BytePlus Seed Speech HTTP API. |
| Vydra | VYDRA_API_KEY | Paylaşılan görüntü, video ve konuşma sağlayıcısı. |
| xAI | XAI_API_KEY | xAI toplu TTS. Yerel Opus sesli not desteklenmez. |
| Xiaomi MiMo | XIAOMI_API_KEY | Xiaomi sohbet tamamlama üzerinden MiMo TTS. |
summaryModel (veya
agents.defaults.model.primary) kullanır; bu nedenle özetleri etkin tutarsanız
o sağlayıcının da kimliği doğrulanmış olmalıdır.
Yapılandırma
TTS config’i~/.openclaw/openclaw.json içinde messages.tts altında bulunur.
Bir preset seçin ve sağlayıcı bloğunu uyarlayın:
- 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 için speakerVoice değerini atlayın ve
style değerini ses tasarımı prompt’u olarak ayarlayın. OpenClaw bu prompt’u
TTS user mesajı olarak gönderir ve voicedesign modeli için audio.voice
göndermez.
Agent başına ses geçersiz kılmaları
agents.list[].tts değerini, bir ajanın farklı bir sağlayıcı, ses, model, persona veya otomatik TTS moduyla konuşması gerektiğinde kullanın. Ajan bloğu messages.tts üzerine derin birleştirme uygular, böylece sağlayıcı kimlik bilgileri global sağlayıcı yapılandırmasında kalabilir:
agents.list[].tts.persona ayarlayın; bu, yalnızca o ajan için global messages.tts.persona değerini geçersiz kılar.
Otomatik yanıtlar, /tts audio, /tts status ve tts ajan aracı için öncelik sırası:
messages.tts- etkin
agents.list[].tts - kanal
channels.<channel>.ttsdesteklediğinde kanal geçersiz kılması - kanal
channels.<channel>.accounts.<id>.ttsgeçirdiğinde hesap geçersiz kılması - bu ana makine için yerel
/ttstercihleri - model geçersiz kılmaları etkinleştirildiğinde satır içi
[[tts:...]]yönergeleri
messages.tts ile aynı şekli kullanır ve önceki katmanların üzerine derin birleştirilir; böylece paylaşılan sağlayıcı kimlik bilgileri messages.tts içinde kalabilirken bir kanal veya bot hesabı yalnızca konuşmacı sesini, modeli, persona değerini veya otomatik modu değiştirebilir:
Personalar
Bir persona, sağlayıcılar arasında deterministik olarak uygulanabilen kararlı bir sözlü kimliktir. Bir sağlayıcıyı tercih edebilir, sağlayıcıdan bağımsız istem amacını tanımlayabilir ve sesler, modeller, istem şablonları, tohumlar ve ses ayarları için sağlayıcıya özel bağlamalar taşıyabilir.Minimal persona
Tam persona (sağlayıcıdan bağımsız istem)
Persona çözümleme
Etkin persona deterministik olarak seçilir:- ayarlanmışsa
/tts persona <id>yerel tercihi. - ayarlanmışsa
messages.tts.persona. - Persona yok.
- Doğrudan geçersiz kılmalar (CLI, gateway, Talk, izin verilen TTS yönergeleri).
/tts provider <id>yerel tercihi.- Etkin personanın
providerdeğeri. messages.tts.provider.- Kayıt defteri otomatik seçimi.
messages.tts.providers.<id>messages.tts.personas.<persona>.providers.<id>- Güvenilir istek geçersiz kılmaları
- İzin verilen model tarafından yayımlanan TTS yönergesi geçersiz kılmaları
Sağlayıcılar persona istemlerini nasıl kullanır
Persona istem alanları (profile, scene, sampleContext, style, accent, pacing, constraints) sağlayıcıdan bağımsızdır. Her sağlayıcı bunları nasıl kullanacağına kendisi karar verir:
Google Gemini
Google Gemini
Persona istem alanlarını yalnızca etkili Google sağlayıcı yapılandırması
promptTemplate: "audio-profile-v1" veya personaPrompt ayarladığında bir Gemini TTS istem yapısına sarar. Eski audioProfile ve speakerName alanları hâlâ Google’a özel istem metni olarak başa eklenir. Bir [[tts:text]] bloğunun içindeki [whispers] veya [laughs] gibi satır içi ses etiketleri Gemini transkriptinin içinde korunur; OpenClaw bu etiketleri üretmez.OpenAI
OpenAI
Persona istem alanlarını yalnızca açık bir OpenAI
instructions yapılandırılmadığında isteğin instructions alanına eşler. Açık instructions her zaman önceliklidir.Diğer sağlayıcılar
Diğer sağlayıcılar
Yalnızca
personas.<id>.providers.<provider> altındaki sağlayıcıya özel persona bağlamalarını kullanır. Sağlayıcı kendi persona istemi eşlemesini uygulamadıkça persona istem alanları yok sayılır.Geri dönüş ilkesi
fallbackPolicy, bir personanın denenen sağlayıcı için bağlaması olmadığında davranışı denetler:
| İlke | Davranış |
|---|---|
preserve-persona | Varsayılan. Sağlayıcıdan bağımsız istem alanları kullanılabilir kalır; sağlayıcı bunları kullanabilir veya yok sayabilir. |
provider-defaults | Bu deneme için persona istem hazırlığından çıkarılır; diğer sağlayıcılara geri dönüş sürerken sağlayıcı kendi nötr varsayılanlarını kullanır. |
fail | Bu sağlayıcı denemesini reasonCode: "not_configured" ve personaBinding: "missing" ile atlar. Geri dönüş sağlayıcıları yine denenir. |
talk.catalog içinden seçmeli ve bunları Talk oturumu veya devir isteği üzerinden geçirmelidir. Bir ses oturumu açmak messages.tts veya global Talk sağlayıcı varsayılanlarını değiştirmemelidir.
Model odaklı yönergeler
Varsayılan olarak asistan, tek bir yanıt için sesi, modeli veya hızı geçersiz kılmak üzere[[tts:...]] yönergeleri ve yalnızca seste görünmesi gereken ifade ipuçları için isteğe bağlı bir [[tts:text]]...[[/tts:text]] bloğu yayabilir:
messages.tts.auto "tagged" olduğunda, sesi tetiklemek için yönergeler zorunludur. Akışlı blok teslimi, bitişik bloklara bölünmüş olsa bile kanal görmeden önce yönergeleri görünür metinden çıkarır.
modelOverrides.allowProvider: true olmadıkça provider=... yok sayılır. Bir yanıt provider=... bildirdiğinde, o yönergedeki diğer anahtarlar yalnızca o sağlayıcı tarafından ayrıştırılır; desteklenmeyen anahtarlar çıkarılır ve TTS yönergesi uyarıları olarak bildirilir.
Kullanılabilir yönerge anahtarları:
provider(kayıtlı sağlayıcı kimliği;allowProvider: truegerektirir)speakerVoice/speakerVoiceId(eski takma adlar:voice,voiceName,voice_name,google_voice,voiceId)model/google_modelstability,similarityBoost,style,speed,useSpeakerBoostvol/volume(MiniMax ses düzeyi, 0-10)pitch(MiniMax tam sayı perde, −12 ile 12; kesirli değerler kırpılır)emotion(Volcengine duygu etiketi)applyTextNormalization(auto|on|off)languageCode(ISO 639-1)seed
Eğik çizgi komutları
Tek komut/tts. Discord üzerinde OpenClaw ayrıca /voice kaydeder çünkü /tts yerleşik bir Discord komutudur; metin /tts ... yine çalışır.
Komutlar yetkili bir gönderici gerektirir (izin listesi/sahip kuralları geçerlidir) ve
commands.text ya da yerel komut kaydı etkin olmalıdır./tts on, yerel TTS tercihinialwaysolarak yazar;/tts offbunuoffolarak yazar./tts chat on|off|default, geçerli sohbet için oturum kapsamlı bir otomatik TTS geçersiz kılması yazar./tts persona <id>, yerel persona tercihini yazar;/tts persona offbunu temizler./tts latest, geçerli oturum transkriptinden en son asistan yanıtını okur ve bunu bir kez ses olarak gönderir. Yinelenen ses gönderimlerini bastırmak için oturum girdisinde yalnızca o yanıtın karmasını saklar./tts audio, tek seferlik bir sesli yanıt üretir (TTS’yi açmaz).limitvesummary, ana yapılandırmada değil yerel tercihlerde saklanır./tts status, en son deneme için geri dönüş tanılamalarını içerir:Fallback: <primary> -> <used>,Attempts: ...ve deneme başına ayrıntı (provider:outcome(reasonCode) latency)./status, TTS etkinleştirildiğinde etkin TTS modunu ve yapılandırılmış sağlayıcı, model, ses ve temizlenmiş özel uç nokta meta verilerini gösterir.
Kullanıcı başına tercihler
Eğik çizgi komutları yerel geçersiz kılmalarıprefsPath konumuna yazar. Varsayılan değer ~/.openclaw/settings/tts.json olur; OPENCLAW_TTS_PREFS ortam değişkeni veya messages.tts.prefsPath ile geçersiz kılın.
| Saklanan alan | Etki |
|---|---|
auto | Yerel otomatik TTS geçersiz kılması (always, off, …) |
provider | Yerel birincil sağlayıcı geçersiz kılması |
persona | Yerel persona geçersiz kılması |
maxLength | Özet eşiği (varsayılan 1500 karakter) |
summarize | Özet anahtarı (varsayılan true) |
messages.tts ve etkin agents.list[].tts bloğundan gelen etkili yapılandırmayı geçersiz kılar.
Çıktı biçimleri (sabit)
TTS ses teslimi kanal yeteneklerine göre yönlendirilir. Kanal Plugin’leri, ses tarzı TTS’nin sağlayıcılardan yerel birvoice-note hedefi istemesi mi yoksa normal audio-file sentezini koruyup yalnızca uyumlu çıktıyı ses teslimi için işaretlemesi mi gerektiğini bildirir.
- Sesli not destekli kanallar: sesli not yanıtları Opus’u tercih eder (ElevenLabs’ten
opus_48000_64, OpenAI’denopus).- 48kHz / 64kbps, sesli mesaj için iyi bir denge sağlar.
- Feishu / WhatsApp: bir sesli not yanıtı MP3/WebM/WAV/M4A
veya başka bir olası ses dosyası olarak üretildiğinde, kanal plugin’i yerel sesli mesajı göndermeden önce bunu
ffmpegile 48kHz Ogg/Opus biçimine dönüştürür. WhatsApp, sonucu Baileysaudioyükü üzerindenptt: trueveaudio/ogg; codecs=opusile gönderir. Dönüştürme başarısız olursa Feishu özgün dosyayı ek olarak alır; WhatsApp ise uyumsuz bir PTT yükü yayımlamak yerine gönderimi başarısız yapar. - Diğer kanallar: MP3 (ElevenLabs’ten
mp3_44100_128, OpenAI’denmp3).- 44.1kHz / 128kbps, konuşma netliği için varsayılan dengedir.
- MiniMax: normal ses ekleri için MP3 (
speech-2.8-hdmodeli, 32kHz örnekleme hızı). Kanalın duyurduğu sesli not hedefleri için, kanal dönüştürmeyi duyuruyorsa OpenClaw teslimden önce MiniMax MP3’ünüffmpegile 48kHz Opus’a dönüştürür. - Xiaomi MiMo: varsayılan olarak MP3 veya yapılandırıldığında WAV. Kanalın duyurduğu sesli not hedefleri için, kanal dönüştürmeyi duyuruyorsa OpenClaw teslimden önce Xiaomi çıktısını
ffmpegile 48kHz Opus’a dönüştürür. - Yerel CLI: yapılandırılmış
outputFormatdeğerini kullanır. Sesli not hedefleri Ogg/Opus’a dönüştürülür ve telefon çıktısıffmpegile ham 16 kHz mono PCM’ye dönüştürülür. - Google Gemini: Gemini API TTS ham 24kHz PCM döndürür. OpenClaw bunu ses ekleri için WAV olarak sarar, sesli not hedefleri için 48kHz Opus’a dönüştürür ve Talk/telefon için PCM’yi doğrudan döndürür.
- Gradium: ses ekleri için WAV, sesli not hedefleri için Opus ve telefon için 8 kHz’de
ulaw_8000. - Inworld: normal ses ekleri için MP3, sesli not hedefleri için yerel
OGG_OPUSve Talk/telefon için 22050 Hz’de hamPCM. - xAI: varsayılan olarak MP3;
responseFormatmp3,wav,pcm,mulawveyaalawolabilir. OpenClaw xAI’nin toplu REST TTS uç noktasını kullanır ve eksiksiz bir ses eki döndürür; xAI’nin akışlı TTS WebSocket’i bu sağlayıcı yolunda kullanılmaz. Yerel Opus sesli not biçimi bu yol tarafından desteklenmez. - Microsoft:
microsoft.outputFormatdeğerini kullanır (varsayılanaudio-24khz-48kbitrate-mono-mp3).- Paketlenmiş aktarım bir
outputFormatkabul eder, ancak tüm biçimler hizmetten kullanılabilir değildir. - Çıktı biçimi değerleri Microsoft Speech çıktı biçimlerini izler (Ogg/WebM Opus dahil).
- Telegram
sendVoiceOGG/MP3/M4A kabul eder; garantili Opus sesli mesajlara ihtiyacınız varsa OpenAI/ElevenLabs kullanın. - Yapılandırılmış Microsoft çıktı biçimi başarısız olursa OpenClaw MP3 ile yeniden dener.
- Paketlenmiş aktarım bir
Otomatik TTS davranışı
messages.tts.auto etkinleştirildiğinde OpenClaw:
- Yanıt zaten yapılandırılmış medya içeriyorsa TTS’yi atlar.
- Çok kısa yanıtları atlar (10 karakterin altında).
- Özetler etkinse uzun yanıtları
summaryModel(veyaagents.defaults.model.primary) kullanarak özetler. - Üretilen sesi yanıta ekler.
mode: "final"içinde, metin akışı tamamlandıktan sonra akışlı final yanıtları için yine yalnızca sesli TTS gönderir; üretilen medya, normal yanıt ekleriyle aynı kanal medya normalleştirmesinden geçer.
maxLength değerini aşarsa ve özet kapalıysa (veya özet modeli için API anahtarı yoksa),
ses atlanır ve normal metin yanıtı gönderilir.
Kanala göre çıktı biçimleri
| Hedef | Biçim |
|---|---|
| Feishu / Matrix / Telegram / WhatsApp | Sesli not yanıtları Opus’u tercih eder (ElevenLabs’ten opus_48000_64, OpenAI’den opus). 48 kHz / 64 kbps netlik ve boyutu dengeler. |
| Diğer kanallar | MP3 (ElevenLabs’ten mp3_44100_128, OpenAI’den mp3). Konuşma için varsayılan 44.1 kHz / 128 kbps. |
| Talk / telefon | Sağlayıcıya özgü PCM (Inworld 22050 Hz, Google 24 kHz) veya telefon için Gradium’dan ulaw_8000. |
- Feishu / WhatsApp dönüştürme: Bir sesli not yanıtı MP3/WebM/WAV/M4A olarak geldiğinde, kanal plugin’i
ffmpegile 48 kHz Ogg/Opus’a dönüştürür. WhatsApp, Baileys üzerindenptt: trueveaudio/ogg; codecs=opusile gönderir. Dönüştürme başarısız olursa: Feishu özgün dosyayı eklemeye geri döner; WhatsApp ise uyumsuz bir PTT yükü yayımlamak yerine gönderimi başarısız yapar. - MiniMax / Xiaomi MiMo: Varsayılan MP3 (MiniMax
speech-2.8-hdiçin 32 kHz);ffmpegaracılığıyla sesli not hedefleri için 48 kHz Opus’a dönüştürülür. - Yerel CLI: Yapılandırılmış
outputFormatdeğerini kullanır. Sesli not hedefleri Ogg/Opus’a, telefon çıktısı ham 16 kHz mono PCM’ye dönüştürülür. - Google Gemini: Ham 24 kHz PCM döndürür. OpenClaw ekler için WAV olarak sarar, sesli not hedefleri için 48 kHz Opus’a dönüştürür, Talk/telefon için PCM’yi doğrudan döndürür.
- Inworld: MP3 ekleri, yerel
OGG_OPUSsesli not, Talk/telefon için hamPCM22050 Hz. - xAI: Varsayılan olarak MP3;
responseFormatmp3|wav|pcm|mulaw|alawolabilir. xAI’nin toplu REST uç noktasını kullanır — akışlı WebSocket TTS kullanılmaz. Yerel Opus sesli not biçimi desteklenmez. - Microsoft:
microsoft.outputFormatdeğerini kullanır (varsayılanaudio-24khz-48kbitrate-mono-mp3). TelegramsendVoiceOGG/MP3/M4A kabul eder; garantili Opus sesli mesajlara ihtiyacınız varsa OpenAI/ElevenLabs kullanın. Yapılandırılmış Microsoft biçimi başarısız olursa OpenClaw MP3 ile yeniden dener.
Alan başvurusu
Top-level messages.tts.*
Top-level messages.tts.*
Otomatik TTS modu.
inbound yalnızca gelen bir sesli mesajdan sonra ses gönderir; tagged yalnızca yanıt [[tts:...]] yönergeleri veya bir [[tts:text]] bloğu içerdiğinde ses gönderir.Eski geçiş anahtarı.
openclaw doctor --fix bunu auto değerine taşır."all" final yanıtlara ek olarak araç/blok yanıtlarını da içerir.Konuşma sağlayıcısı kimliği. Ayarlanmadığında OpenClaw, kayıt otomatik seçim sırasındaki ilk yapılandırılmış sağlayıcıyı kullanır. Eski
provider: "edge", openclaw doctor --fix tarafından "microsoft" olarak yeniden yazılır.personas içinden etkin persona kimliği. Küçük harfe normalleştirilir.Kararlı konuşulan kimlik. Alanlar:
label, description, provider, fallbackPolicy, prompt, providers.<provider>. Bkz. Personalar.Otomatik özet için ucuz model; varsayılan
agents.defaults.model.primary. provider/model veya yapılandırılmış bir model takma adını kabul eder.Modelin TTS yönergeleri yaymasına izin verin.
enabled varsayılan olarak true; allowProvider varsayılan olarak false.Konuşma sağlayıcısı kimliğine göre anahtarlanmış sağlayıcıya ait ayarlar. Eski doğrudan bloklar (
messages.tts.openai, .elevenlabs, .microsoft, .edge) openclaw doctor --fix tarafından yeniden yazılır; yalnızca messages.tts.providers.<id> kaydedin.TTS giriş karakterleri için kesin üst sınır. Aşılırsa
/tts audio başarısız olur.Milisaniye cinsinden istek zaman aşımı.
Yerel tercih JSON yolunu geçersiz kılın (sağlayıcı/sınır/özet). Varsayılan
~/.openclaw/settings/tts.json.Azure Speech
Azure Speech
Ortam:
AZURE_SPEECH_KEY, AZURE_SPEECH_API_KEY veya SPEECH_KEY.Azure Speech bölgesi (ör.
eastus). Ortam: AZURE_SPEECH_REGION veya SPEECH_REGION.İsteğe bağlı Azure Speech uç noktası geçersiz kılması (
baseUrl takma adı).Azure ses ShortName. Varsayılan
en-US-JennyNeural. Eski takma ad: voice.SSML dil kodu. Varsayılan
en-US.Standart ses için Azure
X-Microsoft-OutputFormat. Varsayılan audio-24khz-48kbitrate-mono-mp3.Sesli not çıktısı için Azure
X-Microsoft-OutputFormat. Varsayılan ogg-24khz-16bit-mono-opus.ElevenLabs
ElevenLabs
ELEVENLABS_API_KEY veya XI_API_KEY değerine geri döner.Model kimliği (ör.
eleven_multilingual_v2, eleven_v3).ElevenLabs ses kimliği. Eski takma ad:
voiceId.stability, similarityBoost, style (her biri 0..1), useSpeakerBoost (true|false), speed (0.5..2.0, 1.0 = normal).Metin normalleştirme modu.
2 harfli ISO 639-1 (ör.
en, de).En iyi çaba düzeyinde determinizm için
0..4294967295 tam sayısı.ElevenLabs API temel URL’sini geçersiz kılın.
Google Gemini
Google Gemini
GEMINI_API_KEY / GOOGLE_API_KEY değerine geri döner. Atlanırsa TTS, ortam geri dönüşünden önce models.providers.google.apiKey değerini yeniden kullanabilir.Gemini TTS modeli. Varsayılan
gemini-3.1-flash-tts-preview.Gemini önceden oluşturulmuş ses adı. Varsayılan
Kore. Eski takma adlar: voiceName, voice.Konuşulan metinden önce eklenen doğal dil tarzı istem.
İsteminiz adlandırılmış bir konuşmacı kullandığında konuşulan metinden önce eklenen isteğe bağlı konuşmacı etiketi.
Etkin persona istem alanlarını deterministik bir Gemini TTS istem yapısına sarmak için
audio-profile-v1 olarak ayarlayın.Şablonun Director’s Notes bölümüne eklenen Google’a özel ek persona istem metni.
Yalnızca
https://generativelanguage.googleapis.com kabul edilir.Gradium
Gradium
Inworld
Inworld
Birincil Inworld
Ortam:
INWORLD_API_KEY.Varsayılan
https://api.inworld.ai.Varsayılan
inworld-tts-1.5-max. Ayrıca: inworld-tts-1.5-mini, inworld-tts-1-max, inworld-tts-1.Varsayılan
Sarah. Eski takma ad: voiceId.Örnekleme sıcaklığı
0..2.Local CLI (tts-local-cli)
Local CLI (tts-local-cli)
CLI TTS için yerel çalıştırılabilir dosya veya komut dizesi.
Komut bağımsız değişkenleri.
{{Text}}, {{OutputPath}}, {{OutputDir}}, {{OutputBase}} yer tutucularını destekler.Beklenen CLI çıktı biçimi. Ses ekleri için varsayılan
mp3.Milisaniye cinsinden komut zaman aşımı. Varsayılan
120000.İsteğe bağlı komut çalışma dizini.
Komut için isteğe bağlı ortam geçersiz kılmaları.
Microsoft (no API key)
Microsoft (no API key)
Microsoft konuşma kullanımına izin ver.
Microsoft neural voice adı (örn.
en-US-MichelleNeural). Eski takma ad: voice.Dil kodu (örn.
en-US).Microsoft çıktı biçimi. Varsayılan
audio-24khz-48kbitrate-mono-mp3. Tüm biçimler paketlenmiş Edge destekli aktarım tarafından desteklenmez.Yüzde dizeleri (örn.
+10%, -5%).Ses dosyasının yanına JSON altyazıları yaz.
Microsoft konuşma istekleri için proxy URL’si.
İstek zaman aşımı geçersiz kılması (ms).
Eski takma ad. Kalıcı yapılandırmayı
providers.microsoft olarak yeniden yazmak için openclaw doctor --fix çalıştırın.MiniMax
MiniMax
MINIMAX_API_KEY değerine geri döner. MINIMAX_OAUTH_TOKEN, MINIMAX_CODE_PLAN_KEY veya MINIMAX_CODING_API_KEY üzerinden Token Plan kimlik doğrulaması.Varsayılan
https://api.minimax.io. Ortam: MINIMAX_API_HOST.Varsayılan
speech-2.8-hd. Ortam: MINIMAX_TTS_MODEL.Varsayılan
English_expressive_narrator. Ortam: MINIMAX_TTS_VOICE_ID. Eski takma ad: voiceId.0.5..2.0. Varsayılan 1.0.(0, 10]. Varsayılan 1.0.Tam sayı
-12..12. Varsayılan 0. Kesirli değerler istekten önce kırpılır.OpenAI
OpenAI
OPENAI_API_KEY değerine geri döner.OpenAI TTS model kimliği (örn.
gpt-4o-mini-tts).Ses adı (örn.
alloy, cedar). Eski takma ad: voice.Açık OpenAI
instructions alanı. Ayarlandığında persona prompt alanları otomatik olarak eşlenmez.Oluşturulan OpenAI TTS alanlarından sonra
/audio/speech istek gövdelerine birleştirilen ek JSON alanları. Bunu, lang gibi sağlayıcıya özgü anahtarlar gerektiren Kokoro gibi OpenAI uyumlu uç noktalar için kullanın; güvenli olmayan prototype anahtarları yok sayılır.OpenAI TTS uç noktasını geçersiz kılın. Çözüm sırası: yapılandırma →
OPENAI_TTS_BASE_URL → https://api.openai.com/v1. Varsayılan olmayan değerler OpenAI uyumlu TTS uç noktaları olarak ele alınır; bu nedenle özel model ve ses adları kabul edilir.OpenRouter
OpenRouter
Ortam:
OPENROUTER_API_KEY. models.providers.openrouter.apiKey yeniden kullanılabilir.Varsayılan
https://openrouter.ai/api/v1. Eski https://openrouter.ai/v1 normalleştirilir.Varsayılan
hexgrad/kokoro-82m. Takma ad: modelId.Varsayılan
af_alloy. Eski takma adlar: voice, voiceId.Varsayılan
mp3.Sağlayıcıya özgü hız geçersiz kılması.
Volcengine (BytePlus Seed Speech)
Volcengine (BytePlus Seed Speech)
Ortam:
VOLCENGINE_TTS_API_KEY veya BYTEPLUS_SEED_SPEECH_API_KEY.Varsayılan
seed-tts-1.0. Ortam: VOLCENGINE_TTS_RESOURCE_ID. Projenizin TTS 2.0 yetkisi olduğunda seed-tts-2.0 kullanın.Uygulama anahtarı üst bilgisi. Varsayılan
aGjiRDfUWi. Ortam: VOLCENGINE_TTS_APP_KEY.Seed Speech TTS HTTP uç noktasını geçersiz kılın. Ortam:
VOLCENGINE_TTS_BASE_URL.Ses türü. Varsayılan
en_female_anna_mars_bigtts. Ortam: VOLCENGINE_TTS_VOICE. Eski takma ad: voice.Sağlayıcıya özgü hız oranı.
Sağlayıcıya özgü duygu etiketi.
Eski Volcengine Speech Console alanları. Ortam:
VOLCENGINE_TTS_APPID, VOLCENGINE_TTS_TOKEN, VOLCENGINE_TTS_CLUSTER (varsayılan volcano_tts).xAI
xAI
Ortam:
XAI_API_KEY.Varsayılan
https://api.x.ai/v1. Ortam: XAI_BASE_URL.Varsayılan
eve. Canlı sesler: ara, eve, leo, rex, sal, una. Eski takma ad: voiceId.BCP-47 dil kodu veya
auto. Varsayılan en.Varsayılan
mp3.Sağlayıcıya özgü hız geçersiz kılması.
Xiaomi MiMo
Xiaomi MiMo
Ortam:
XIAOMI_API_KEY.Varsayılan
https://api.xiaomimimo.com/v1. Ortam: XIAOMI_BASE_URL.Varsayılan
mimo-v2.5-tts. Ortam: XIAOMI_TTS_MODEL. mimo-v2-tts ve mimo-v2.5-tts-voicedesign seçeneklerini de destekler.Hazır ses modelleri için varsayılan
mimo_default. Ortam: XIAOMI_TTS_VOICE. Eski takma ad: voice. mimo-v2.5-tts-voicedesign için gönderilmez.Varsayılan
mp3. Ortam: XIAOMI_TTS_FORMAT.Kullanıcı mesajı olarak gönderilen isteğe bağlı doğal dil stil talimatı; seslendirilmez.
mimo-v2.5-tts-voicedesign için bu, ses tasarımı promptudur; atlanırsa OpenClaw bir varsayılan sağlar.Agent aracı
tts aracı metni konuşmaya dönüştürür ve yanıt teslimi için bir ses eki
döndürür. Feishu, Matrix, Telegram ve WhatsApp üzerinde ses, dosya eki yerine
sesli mesaj olarak teslim edilir. Feishu ve WhatsApp, ffmpeg kullanılabilir
olduğunda bu yolda Opus olmayan TTS çıktısını dönüştürebilir.
WhatsApp, sesi Baileys üzerinden PTT ses notu olarak (audio ile
ptt: true) gönderir ve istemciler ses notlarında altyazıları tutarlı şekilde
işlemediği için görünür metni PTT sesinden ayrı olarak gönderir.
Araç isteğe bağlı channel ve timeoutMs alanlarını kabul eder; timeoutMs,
milisaniye cinsinden çağrı başına sağlayıcı istek zaman aşımıdır. Çağrı başına
değerler messages.tts.timeoutMs değerini geçersiz kılar; yapılandırılmış TTS
zaman aşımları, Plugin tarafından yazılmış sağlayıcı varsayılanlarını geçersiz kılar.
Gateway RPC
| Yöntem | Amaç |
|---|---|
tts.status | Geçerli TTS durumunu ve son denemeyi oku. |
tts.enable | Yerel otomatik tercihi always olarak ayarla. |
tts.disable | Yerel otomatik tercihi off olarak ayarla. |
tts.convert | Tek seferlik metin → ses. |
tts.setProvider | Yerel sağlayıcı tercihini ayarla. |
tts.setPersona | Yerel persona tercihini ayarla. |
tts.providers | Yapılandırılmış sağlayıcıları ve durumu listele. |
Hizmet bağlantıları
- OpenAI metinden konuşmaya kılavuzu
- OpenAI Audio API başvurusu
- Azure Speech REST metinden konuşmaya
- Azure Speech sağlayıcısı
- ElevenLabs Metinden Konuşmaya
- ElevenLabs Kimlik Doğrulama
- Gradium
- Inworld TTS API
- MiniMax T2A v2 API
- Volcengine TTS HTTP API
- Xiaomi MiMo konuşma sentezi
- node-edge-tts
- Microsoft Speech çıktı biçimleri
- xAI metinden konuşmaya