
ध्वनि संदेशों और सॉकेट पर वॉयस इनपुट के लिए ट्रांसक्रिप्शन को ट्यून किया जाता है, जब स्पीकर रुकता है तो प्रत्येक उच्चारण को एक पूर्ण प्रतिलेख के रूप में लौटाता है।
ध्वनि संदेशों और सॉकेट पर वॉयस इनपुट के लिए ट्रांसक्रिप्शन को ट्यून किया जाता है, जब स्पीकर रुकता है तो प्रत्येक उच्चारण को एक पूर्ण प्रतिलेख के रूप में लौटाता है।
सॉकेट पर 16 kHz pcm16 ऑडियो स्ट्रीम करें। प्रत्येक उच्चारण पूरी तरह से वापस आ जाता है जब स्पीकर रुकता है, या तब भी जब यह partial_results के साथ बोला जाता है। भाषा और विराम सेट करें जो session.update में एक उच्चारण समाप्त करता है।
इस नाम से भी जाना जाता है Qwen Audio ASR Message, Alibaba Cloud Qwen Audio 3.1 ASR Message
qwen-audio-3-1-asr-message/v1/realtimeqwen-audio-3.1-asr-messagealibaba/qwen-audio-3-1-asr-messageEmpirioLabs कैटलॉग से लाइव pay-as-you-go दरें। आप सिर्फ उतना ही भुगतान करते हैं जितना उपयोग करते हैं, कोई मासिक न्यूनतम नहीं।
Qwen Audio 3.1 ASR Message HTTP एंडपॉइंट के बजाय wss://api.empiriolabs.ai/v1/realtime?model=qwen-audio-3-1-asr-message पर एक WebSocket के ज़रिए लाइव ऑडियो स्ट्रीम को ट्रांसक्राइब करता है। मॉडल id qwen-audio-3-1-asr-message के साथ कनेक्ट करें और हैंडशेक पर अपनी EmpirioLabs API key को Authorization: Bearer हेडर के रूप में भेजें। base64 16-bit PCM ऑडियो जोड़ें और बोलते रहने के दौरान ही ट्रांसक्रिप्ट इवेंट पढ़ें। ब्राउज़र WebSocket पर हेडर सेट नहीं कर सकता, इसलिए यह कनेक्शन अपने सर्वर से खोलें और ऑडियो को अपने सॉकेट के ज़रिए ब्राउज़र तक पहुँचाएँ। EmpirioLabs डैशबोर्ड से API key प्राप्त करें।
import asyncio, json, os, websockets
async def main():
async with websockets.connect(
"wss://api.empiriolabs.ai/v1/realtime?model=qwen-audio-3-1-asr-message",
additional_headers=[
("Authorization", f"Bearer {os.environ['EMPIRIOLABS_API_KEY']}"),
],
max_size=None,
) as ws:
print(json.loads(await ws.recv())["type"]) # session.created
import base64
# 16-bit PCM microphone audio, base64 encoded, in small chunks.
for chunk in read_microphone_chunks():
await ws.send(json.dumps({
"type": "input_audio_buffer.append",
"audio": base64.b64encode(chunk).decode(),
}))
await ws.send(json.dumps({"type": "input_audio_buffer.commit"}))
async for raw in ws:
event = json.loads(raw)
if event["type"].endswith("input_audio_transcription.delta"):
# "text" is settled transcript; "stash" is still in progress.
if event.get("text"):
print(event["text"], end="", flush=True)
asyncio.run(main())EmpirioLabs पर Qwen Audio 3.1 ASR Message API द्वारा समर्थित request पैरामीटर। फ़ील्ड छोड़ने पर डिफ़ॉल्ट मान लागू होते हैं।
| पैरामीटर | प्रकार | डिफॉल्ट | रेंज / मान | विवरण |
|---|---|---|---|---|
| input_audio_format | enum | pcm16 | pcm16 | ऑडियो आप इनपुट बफर के लिए जोड़ने के लिए एन्कोडिंग: base64 16 16 बिट पीसीएम, मोनो, 16 kHz पर. |
| language | enum | auto | auto, zh, en, ja, ko, vi, th, id, ms, tl, hi, ar, fr, de, es,... | भाषण की भाषा, या ऑडियो से इसका पता लगाने के लिए ऑटो। इसे कनेक्शन URL के भाषा क्वेरी पैरामीटर के साथ सेट करें, या session.update में... |
| silence_duration_ms | integer | 800 | 200 से 6000 | विराम, मिलीसेकंड में, जो एक वाक्य को समाप्त करता है, 200 से 6000 तक। एक छोटा विराम प्रत्येक वाक्य को जल्दी सुलझाता है; एक लंबा एक वाक्य के अंदर एक विराम रखता है।... |
| threshold | number | - | 0 से 1 | 0.0 से 1.0 तक ट्रांसक्राइब करने से पहले भाषण कितना स्पष्ट होना चाहिए। एक उच्च मान अधिक पृष्ठभूमि शोर को अनदेखा करता है और शांत भाषण को याद कर सकता है। जब छोड़ा जाता... |
| noise_reduction | enum | far_field | far_field, near_field | जिस माइक्रोफ़ोन के लिए स्पीच डिटेक्शन को ट्यून किया जाता है: हेडसेट या फोन के लिए near_field है, far_field लैपटॉप या कमरे के माइक्रोफ़ोन के लिए।... |
| keep_dialect | boolean | false | - | चीनी बोली के शब्दों को बोली जाने के रूप में रखता है। बंद होने पर, बोली भाषण को मानक मंदारिन के रूप में लिखा जाता है। |
| partial_results | boolean | false | - | साथ ही प्रत्येक कथन को बोलते समय भेजता है, जैसा कि अब तक की conversation.item.input_audio_transcription.delta घटनाओं के रूप में होता है, जो अभी भी इसके बसने से पहले... |
wss://api.empiriolabs.ai/v1/realtime?model=qwen-audio-3-1-asr-message पर एक WebSocket पर ध्वनि संदेश ट्रांसक्रिप्शन, साधारण प्राधिकरण वाहक हेडर के साथ प्रमाणित।
input_audio_buffer.append के साथ 16 kHz मोनो pcm16 ऑडियो स्ट्रीम करें। आवाज गतिविधि का पता लगाने से तय होता है कि प्रत्येक उच्चारण कहाँ समाप्त होता है, इसलिए भेजने के लिए कोई प्रतिबद्धता नहीं है।
इनमें से किसी भी सेटिंग के साथ, पहले ऑडियो से पहले session.created के ठीक बाद session.update भेजें: input_audio_transcription.language (या कनेक्शन URL का language क्वेरी पैरामीटर; डिफ़ॉल्ट रूप से auto), turn_detection.silence_duration_ms (200 से 6000, डिफ़ॉल्ट 800) और turn_detection.threshold (0.0 से 1.0), और input_audio_noise_reduction (near_field या far_field)। keep_dialect चीनी बोली शब्दों को बोले जाने के रूप में रखता है। ऑडियो स्ट्रीमिंग के दौरान बदली गई सेटिंग उच्चारण को प्रगति में समाप्त कर देती है और उसके बाद भेजे गए ऑडियो पर लागू होती है।
प्रत्येक कथन पूरी तरह से आता है, एक conversation.item.input_audio_transcription.completed बार वक्ता के रुकने के बाद एक घटना के रूप में। partial_results को बोलते समय इसे प्राप्त करने के लिए भी सेट करें, conversation.item.input_audio_transcription.delta घटनाओं के रूप में जो अभी भी इसके बसने से पहले बदल सकती हैं। लाइव कैप्शन के लिए, qwen-audio-3-1-asr-stream हमेशा उन्हें भेजता है।
इनपुट और आउटपुट टोकन की कीमत प्रति 1M है, और प्रत्येक पूर्ण उच्चारण को मॉडल रिपोर्ट के उपयोग से अपने आप बिल किया जाता है।
EmpirioLabs पर Qwen Audio 3.1 ASR Message का बिल उपयोग के अनुसार बनता है: इनपुट $1.86 प्रति 1M ऑडियो इनपुट टोकन; आउटपुट $1.40 प्रति 1M जेनरेट किए गए टोकन। इस पेज की लाइव दर तालिका हमेशा API की वास्तविक बिलिंग से मेल खाती है।
Qwen Audio 3.1 ASR Message api.empiriolabs.ai पर WEBSOCKET /v1/realtime के ज़रिए मिलता है, मानक Bearer टोकन प्रमाणीकरण के साथ।
EmpirioLabs playground खोलें और Start session दबाकर इसे अपने ब्राउज़र में आज़माएँ। Qwen Audio 3.1 ASR Message अनुरोध और प्रतिक्रिया के बजाय WebSocket पर चलता है, इसलिए इसे जोड़ने के लिए रियलटाइम वॉइस क्विकस्टार्ट से शुरू करें। अपनी EmpirioLabs API key और मॉडल id qwen-audio-3-1-asr-message के साथ अपने सर्वर से कनेक्ट करें, फिर दोनों दिशाओं में ऑडियो स्ट्रीम करें।
EmpirioLabs खाता बनाएं, फिर डैशबोर्ड में API Keys में key जनरेट करें। बिलिंग pay-as-you-go क्रेडिट से होती है, इसलिए आप सिर्फ अपनी requests का भुगतान करते हैं।
हमारे मूल्य निर्धारण की जाँच करें या यदि आप चाहते हैं कि आपका अपना मॉडल हमारे स्टैक पर तैनात किया जाए, तो पहुंचें।