BazaarLinkBazaarLink
साइन इन
दस्तावेज़API संदर्भSDK संदर्भएजेंटिक उपयोगAI स्किल्स
विषय-सूची

वाक् संश्लेषण (TTS) मार्गदर्शिका

वाक् संश्लेषण (TTS) मार्गदर्शिका

POST /v1/audio/speech OpenAI-compatible है: JSON भेजें और ऑडियो फ़ाइल बाइनरी रूप में पाएँ। ElevenLabs परिवार में elevenlabs/eleven-v4, eleven-v4-turbo, eleven-v3, eleven-v3-conversational, eleven-multilingual-v2, eleven-flash-v2.5, eleven-flash-v2, eleven-turbo-v2.5, eleven-turbo-v2 शामिल हैं। ताज़ा सूची GET /v1/models?output_modalities=speech पर देखें। GET /v1/models डिफ़ॉल्ट रूप से केवल टेक्स्ट मॉडल लौटाता है, इसलिए सूची देखने के लिए ?output_modalities=speech (या all) जोड़ें।

POST/v1/audio/speech

पैरामीटर

पैरामीटरप्रकारआवश्यकविवरण
modelstringहाँवाक् मॉडल ID, जैसे elevenlabs/eleven-flash-v2.5।
inputstringहाँसंश्लेषण के लिए पाठ: प्रति अनुरोध अधिकतम 4,096 वर्ण (elevenlabs/eleven-v4 और eleven-v4-turbo के लिए 10,000)। लंबे पाठ को कई अनुरोधों में बाँटें।
voicestringहाँइस्तेमाल की जाने वाली आवाज़; उसका प्रारूप मॉडल पर निर्भर है। नीचे आवाज़ नियम देखें।
response_formatstringनहींmp3 (डिफ़ॉल्ट) या pcm। opus, aac, flac और wav को API स्वीकार करता है, पर ElevenLabs मॉडल अभी इन्हें 400 से अस्वीकार करते हैं।
speednumberनहींबोलने की गति 0.25 से 4.0 तक। हर मॉडल इसे लागू नहीं करता।
instructionsstringनहींआवाज़ की शैली के निर्देश। हर मॉडल इन्हें लागू नहीं करता।
stabilitynumberनहींआवाज़ की स्थिरता, 0–1 (डिफ़ॉल्ट 0.5)। कम मान अधिक भावपूर्ण, अधिक मान अधिक समतल। यह तब लागू होता है जब elevenlabs/* मॉडल का अनुरोध हमारे सीधे वॉइस रूट से पूरा हो; प्रतिक्रिया हेडर X-Voice-Settings applied या ignored बताता है।
similarity_boostnumberनहींमूल आवाज़ से समानता, 0–1 (डिफ़ॉल्ट 0.75)। Eleven v3 में उपयोग नहीं होता।
stylenumberनहींशैली पर ज़ोर, 0–1 (डिफ़ॉल्ट 0)। 0 से ऊपर होने पर विलंब बढ़ता है। Eleven v4 में उपयोग नहीं होता।
use_speaker_boostbooleanनहींमूल वक्ता से समानता बढ़ाता है (डिफ़ॉल्ट true); थोड़ा विलंब बढ़ता है।
clone_strengthnumberनहींक्लोन की तीव्रता, 0–1 (अधिकांश आवाज़ों के लिए 0 अनुशंसित)। केवल Eleven v4 के लिए प्रशिक्षित आपकी अपनी प्रोफ़ेशनल क्लोन आवाज़ों (voice_…) के लिए।
language_codestringनहींबोली जाने वाली भाषा तय करने के लिए दो अक्षरों का छोटे अक्षरों वाला भाषा कोड (ISO 639-1), जैसे ar, ja, en। multilingual-v2 मॉडल में उपयोग नहीं होता।
audio_effectsobjectनहींवैकल्पिक ऑडियो-इफ़ेक्ट ऑब्जेक्ट: filter_preset_id (जैसे phone, old_radio), environment_id (रीवर्ब स्थान, जैसे small_room, hall), background_noise_id (जैसे cafe), distance (0–1), send_level (रीवर्ब मात्रा, 0–1) और pan (−1…1)। ID में छोटे अक्षर, अंक और अंडरस्कोर होते हैं; कोई अतिरिक्त शुल्क नहीं। रीवर्ब या शून्य से भिन्न pan स्टीरियो आउटपुट देता है और pcm आउटपुट के साथ नहीं चलता।

ऊपर की सातों आवाज़ सेटिंग वैकल्पिक हैं; न भेजने पर कुछ नहीं बदलता। सीमा से बाहर का मान 400 लौटाता है और न भेजा जाता है, न उसका शुल्क लगता है। प्रतिक्रिया हेडर X-Voice-Settings बताता है कि आपकी सेटिंग उपयोग हुई या नहीं: applied = उपयोग हुई; ignored = बैकअप रूट ने उत्तर दिया, इसलिए सेटिंग उपयोग नहीं हुई (ऑडियो फिर भी बनता है); हेडर नहीं = आपने कोई आवाज़ सेटिंग नहीं भेजी। उदाहरण: stability 0 अधिक भावपूर्ण पढ़ता है, 1 अधिक समतल।

आवाज़ के नियम

ElevenLabs मॉडल (elevenlabs/…) इन आवाज़ नामों में से एक लेते हैं (अक्षर-भेद नहीं): george, sarah, adam, alice, bella, bill, brian, callum, charlie, chris, daniel, eric, harry, jessica, laura, liam, lily, matilda, river, roger, will। ElevenLabs मॉडल के लिए voice छोड़ा जा सकता है (डिफ़ॉल्ट george)। अन्य मान पर 400 invalid_voice मिलता है। आपकी अपनी कस्टम आवाज़ (voice_…) का वर्णन नीचे «कस्टम आवाज़ें» अनुभाग में है।

alloy, echo या nova जैसे OpenAI-style आवाज़ नाम केवल उन मॉडलों पर काम करते हैं जो उन्हें सूचीबद्ध करते हैं। मॉडल पृष्ठ देखें।

कस्टम आवाज़ें (क्लोनिंग) चरणबद्ध रूप से खोली जा रही हैं: नीचे «कस्टम आवाज़ें» अनुभाग (POST /v1/voices) देखें। आपके खाते में चालू होने तक ऊपर के 21 प्रीसेट नामों या किसी सार्वजनिक voice ID का उपयोग करें।

ElevenLabs मॉडल को alloy भेजने पर त्रुटि आती है
ElevenLabs मॉडल को ऐसी आवाज़ मिलने पर जो न voice ID है न समर्थित नामों में से (जैसे alloy या Rachel), 400 invalid_voice लौटता है और संदेश में स्वीकार्य नाम दिए जाते हैं। विफल अनुरोधों पर शुल्क नहीं लगता।

अंतर्निहित आवाज़ें

voice में नीचे दिए गए नामों में से एक (छोटे अक्षरों में) दें। हर आवाज़ का हमारा अपना छोटा पूर्वावलोकन क्लिप है, और GET /api/v1/audio/voices पूरी सूची (लिंग, आयु वर्ग, उच्चारण, शैली और पूर्वावलोकन URL) देता है।

?lang= (en, zh-TW, zh-CN; डिफ़ॉल्ट Accept-Language) केवल description की भाषा तय करता है। पूर्वावलोकन URL नहीं बदलते: preview_urls.en (preview_url के समान) अंग्रेज़ी क्लिप है और preview_urls.zh (preview_url_zh के समान) चीनी क्लिप।

आवाज़विवरणपूर्वावलोकन
georgeMale, middle-aged, British accent. Mature and steady, suited to narration and storytelling.
sarahFemale, young adult, American accent. Professional and clear, suited to broadcast-style reading.
adamMale, middle-aged, American accent. Everyday and approachable, suited to short social videos.
aliceFemale, middle-aged, British accent. Professional and informative, suited to explainers and teaching.
bellaFemale, middle-aged, American accent. Professional and informative, suited to explainers and teaching.
billMale, senior, American accent. Crisp and direct, suited to advertising voice-overs.
brianMale, middle-aged, American accent. Polished and refined, suited to social and brand content.
callumMale, middle-aged, American accent. Expressive, suited to characters and animation.
charlieMale, young adult, Australian accent. Energetic and lively, suited to conversation.
chrisMale, middle-aged, American accent. Relaxed and casual, suited to conversation.
danielMale, middle-aged, British accent. Formal and measured, suited to news-style and educational reading.
ericMale, middle-aged, American accent. Polished and warm, suited to conversation.
harryMale, young adult, American accent. Rough and gritty, suited to character voices.
jessicaFemale, young adult, American accent. Bright and cute, suited to conversation.
lauraFemale, young adult, American accent. Playful with attitude, suited to social content.
liamMale, young adult, American accent. Confident and upbeat, suited to social content.
lilyFemale, middle-aged, British accent. Confident and clear, suited to explainers and teaching.
matildaFemale, middle-aged, American accent. Upbeat and friendly, suited to explainers and teaching.
riverNeutral voice, middle-aged, American accent. Calm and even, suited to conversation.
rogerMale, middle-aged, American accent. Polished and confident, suited to conversation.
willMale, young adult, American accent. Laid-back and easygoing, suited to conversation.

भावना और क्रिया टैग (audio tags)

टैग को input के अंदर सीधे चौकोर कोष्ठक में लिखें, जैसे [laughs], [whispers], [excited], [sighs], [crying], [curious] या [softly]। टैग जैसे लिखे हैं वैसे ही मॉडल को भेजे जाते हैं और आगे के शब्दों को बोलने का ढंग तय करते हैं। पाठ किसी भी भाषा में हो, टैग अंग्रेज़ी में ही रखें।

curl https://api.bazaarlink.ai/v1/audio/speech \
  -H "Authorization: Bearer $BAZAARLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"elevenlabs/eleven-v3","input":"[laughs] That was actually funny. [whispers] Do not tell anyone.","voice":"george","response_format":"mp3"}' \
  --output audio-tags.mp3

elevenlabs/eleven-v3 और elevenlabs/eleven-v4 परिवार इन्हें समर्थन देते हैं। अन्य स्पीच मॉडल टैग नहीं समझते और कोष्ठक के भीतर का पाठ पढ़ सकते हैं, इसलिए पहले एक छोटा वाक्य आज़माएँ।

टैग भी input के अक्षरों में गिने जाते हैं और बाकी पाठ की तरह ही बिल होते हैं।

आउटपुट प्रारूप

response_format छोड़ने पर डिफ़ॉल्ट mp3 (Content-Type audio/mpeg) है; pcm (audio/pcm, कच्चा 16-bit PCM) भी काम करता है। API opus, aac, flac और wav स्वीकार करता है, पर ElevenLabs मॉडल अभी इन्हें 400 से अस्वीकार करते हैं। फ़ाइल को प्रतिक्रिया के Content-Type हेडर के अनुसार सहेजें।

मूल्य निर्धारण

वाक् संश्लेषण का शुल्क इनपुट वर्णों के आधार पर लगता है। प्रति वर्ण दर /models के मॉडल पृष्ठ और GET /v1/models में pricing.character पर मिलती है। मॉडल पृष्ठ इसे दस लाख वर्णों के आधार पर दिखाता है।

उदाहरण

curl https://api.bazaarlink.ai/v1/audio/speech \
  -H "Authorization: Bearer $BAZAARLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"elevenlabs/eleven-flash-v2.5","input":"Hello from BazaarLink.","voice":"george","response_format":"mp3"}' \
  --output speech.mp3

सामान्य त्रुटियाँ

स्थितिकारण और समाधान
400अमान्य अनुरोध: model, input या voice नहीं है; input 4,096 वर्णों से अधिक; speed 0.25–4.0 से बाहर; असमर्थित response_format; Unknown voice; unknown_model (/models पर ID जाँचें)।
401API कुंजी नहीं है या अमान्य है। अपनी BazaarLink कुंजी Authorization: Bearer के साथ भेजें।
402शेष राशि पर्याप्त नहीं है। रिचार्ज करके फिर प्रयास करें।
403प्रबंधन कुंजी मॉडल नहीं चला सकती या खाता निलंबित है। सामान्य API कुंजी उपयोग करें।
429दर सीमा पूरी हो गई है। Retry-After के अनुसार प्रतीक्षा करके फिर प्रयास करें।
502मॉडल सेवा अस्थायी रूप से अनुपलब्ध है या ऑडियो स्थानांतरण बाधित हुआ। फिर प्रयास करें; विफल अनुरोध का शुल्क नहीं लगता।

पूरा पैरामीटर संदर्भ: वाक् संश्लेषण

वाक् संश्लेषण

/v1/models?output_modalities=speech की मॉडल आईडी से पाठ को ऑडियो में बदलें। मॉडल पृष्ठ पर दी गई प्रति दस लाख अक्षर की दर से बिल बनता है। पूरा ऑडियो बफ़र होने के बाद बाइनरी डेटा लौटाया जाता है; चरणबद्ध स्ट्रीमिंग समर्थित नहीं है। provider, transforms, route, service_tier और preset जैसे रूटिंग नियंत्रण फ़ील्ड अनदेखे किए जाते हैं।

POST/v1/audio/speech
curl https://api.bazaarlink.ai/v1/audio/speech \
  -H "$BAZAARLINK_AUTH_HEADER" \
  -H "Content-Type: application/json" \
  -d '{"model":"<speech-model-id>","input":"Hello","voice":"alloy","response_format":"mp3"}' \
  --output speech.mp3

# Voice settings (elevenlabs/* models; the X-Voice-Settings response header says applied or ignored)
curl -D - https://api.bazaarlink.ai/v1/audio/speech \
  -H "$BAZAARLINK_AUTH_HEADER" \
  -H "Content-Type: application/json" \
  -d '{"model":"elevenlabs/eleven-v4","input":"Hello","voice":"george","stability":0.4,"similarity_boost":0.8,"style":0.2,"use_speaker_boost":true,"language_code":"en","audio_effects":{"distance":0.3}}' \
  --output speech.mp3
POST/v1/chat/completions

/v1/chat/completions में audio या input_audio और ऑडियो समर्थित मॉडल चुनें। कॉन्फ़िगर की गई इनपुट और आउटपुट टोकन दरें रिपोर्ट किए गए सभी पाठ तथा ऑडियो टोकन पर समान रूप से लागू होती हैं।

curl https://api.bazaarlink.ai/v1/chat/completions \
  -H "$BAZAARLINK_AUTH_HEADER" \
  -H "Content-Type: application/json" \
  -d '{"model":"<audio-chat-model-id>","messages":[{"role":"user","content":"Say hi."}],"stream":true,"modalities":["text","audio"],"audio":{"voice":"alloy","format":"pcm16"},"max_tokens":32}'
Support
Hi! How can we help you?
Send a message and we'll get back to you soon.