تصور کریں کہ ایک سرجن کسی انسانی مترجم کی ضرورت کے بغیر پوری دنیا کے مریضوں کے ساتھ ویڈیو کال کر رہا ہے۔ کیا ہوگا اگر ایک نیا آغاز اپنی مصنوعات کو سرحدوں کے پار اور نئی جغرافیائی منڈیوں میں آسانی سے وسعت دے سکے بغیر کسی زندہ انسانی مترجم کی ضرورت کے سیال، درست، کثیر لسانی کسٹمر سپورٹ اور سیلز پیش کر کے؟ جب آپ زبان کے پابند نہیں رہتے ہیں تو آپ کے کاروبار کا کیا ہوتا ہے؟
آج کل بہت سی مختلف زبانیں بولنے والی بین الاقوامی ٹیموں اور صارفین کے ساتھ ورچوئل میٹنگز کرنا عام ہے۔ چاہے وہ داخلی ہوں یا بیرونی میٹنگز، مطلب اکثر پیچیدہ مباحثوں میں گم ہو جاتا ہے اور آپ کو زبان کی رکاوٹوں کا سامنا کرنا پڑ سکتا ہے جو آپ کو اتنے موثر ہونے سے روکتی ہیں جتنا آپ ہو سکتے ہیں۔
اس پوسٹ میں، آپ سیکھیں گے کہ تین مکمل طور پر منظم AWS سروسز کو کیسے استعمال کیا جائے (ایمیزون نقل, ایمیزون ترجمہ، اور ایمیزون پولی) قریب قریب ریئل ٹائم اسپیچ ٹو اسپیچ مترجم حل تیار کرنے کے لیے جو کسی ماخذ اسپیکر کے لائیو صوتی ان پٹ کو بولی گئی، درست، ترجمہ شدہ ٹارگٹ لینگویج میں تیزی سے ترجمہ کر سکتا ہے، یہ سب کچھ صفر مشین لرننگ (ML) کے تجربے کے ساتھ ہے۔
حل کا جائزہ
ہمارا مترجم تین مکمل طور پر منظم AWS ML سروسز پر مشتمل ہے جو ایک Python اسکرپٹ میں مل کر کام کر رہے ہیں۔ AWS SDK برائے Python (Boto3) ہمارے ٹیکسٹ ٹرانسلیشن اور ٹیکسٹ ٹو اسپیچ حصوں کے لیے، اور آڈیو ان پٹ ٹرانسکرپشن کے لیے ایک غیر مطابقت پذیر اسٹریمنگ SDK۔
ایمیزون ٹرانسکرائب: اسپیچ کو ٹیکسٹ میں اسٹریم کرنا
ہمارے اسٹیک میں آپ جو پہلی سروس استعمال کرتے ہیں وہ ہے Amazon ٹرانسکرائب، ایک مکمل طور پر منظم اسپیچ ٹو ٹیکسٹ سروس جو ان پٹ اسپیچ لیتی ہے اور اسے ٹیکسٹ میں ٹرانسکرائب کرتی ہے۔ Amazon Transcribe میں ادخال کے لچکدار طریقے، بیچ یا سٹریمنگ ہے، کیونکہ یہ ذخیرہ شدہ آڈیو فائلز یا سٹریمنگ آڈیو ڈیٹا کو قبول کرتا ہے۔ اس پوسٹ میں، آپ استعمال کرتے ہیں غیر مطابقت پذیر ایمیزون ٹرانسکرائب اسٹریمنگ SDK برائے ازگر، جو لائیو آڈیو کو سٹریم کرنے اور لائیو ٹرانسکرپشن حاصل کرنے کے لیے HTTP/2 اسٹریمنگ پروٹوکول کا استعمال کرتا ہے۔
جب ہم نے پہلی بار یہ پروٹو ٹائپ بنایا تھا، تو Amazon ٹرانسکرائب اسٹریمنگ ادخال خودکار زبان کی شناخت کو سپورٹ نہیں کرتی تھی، لیکن نومبر 2021 سے اب ایسا نہیں ہے۔ بیچ اور اسٹریمنگ ادخال دونوں اب سب کے لیے خودکار زبان کی شناخت کو سپورٹ کرتے ہیں۔ تائید کی زبانیں. اس پوسٹ میں، ہم یہ دکھاتے ہیں کہ کس طرح پیرامیٹر پر مبنی حل، اگرچہ ہموار ملٹی لینگویج پیرامیٹر لیس ڈیزائن اسٹریمنگ خودکار زبان کی کھوج کے استعمال کے ذریعے ممکن ہے۔ ہمارے ٹرانسکرائب شدہ اسپیچ سیگمنٹ کو ٹیکسٹ کے طور پر واپس کرنے کے بعد، آپ Amazon Translate کو ہمارے Amazon Transcribe میں ترجمہ کرنے اور نتائج واپس کرنے کی درخواست بھیجتے ہیں۔ EventHandler
طریقہ.
ایمیزون ترجمہ: جدید ترین، مکمل طور پر منظم ترجمہ API
ہمارے اسٹیک میں اگلا Amazon Translate ہے، ایک نیورل مشین ٹرانسلیشن سروس جو تیز، اعلیٰ معیار، سستی، اور حسب ضرورت زبان میں ترجمہ فراہم کرتی ہے۔ جون 2022 تک، Amazon Translate 75 زبانوں میں ترجمہ کو سپورٹ کرتا ہے، جس میں زبانوں کے نئے جوڑے اور بہتری مسلسل کی جا رہی ہے۔ Amazon Translate آپ کے استعمال کے معاملے کے لحاظ سے، حقیقی وقت میں یا بیچ میں درست ترجمے فراہم کرنے کے لیے انتہائی قابل توسیع اور لچکدار AWS کلاؤڈ فن تعمیر پر ہوسٹ کیے گئے گہرے سیکھنے کے ماڈلز کا استعمال کرتا ہے۔ Amazon Translate کا استعمال سیدھا سادہ ہے اور اس کے لیے بنیادی فن تعمیر یا ML مہارتوں کے انتظام کی ضرورت نہیں ہے۔ Amazon Translate میں کئی خصوصیات ہیں، جیسے کہ بنانا اور استعمال کرنا اپنی مرضی کی اصطلاحات صنعت کی مخصوص شرائط کے درمیان میپنگ کو ہینڈل کرنے کے لیے۔ Amazon Translate سروس کی حدود کے بارے میں مزید معلومات کے لیے، رجوع کریں۔ ہدایات اور حدود. ایپلیکیشن کو ہماری ٹارگٹ لینگویج میں ترجمہ شدہ ٹیکسٹ موصول ہونے کے بعد، یہ فوری ترجمہ شدہ آڈیو پلے بیک کے لیے ایمیزون پولی کو ترجمہ شدہ متن بھیجتا ہے۔
Amazon Polly: مکمل طور پر منظم ٹیکسٹ ٹو اسپیچ API
آخر میں، آپ ترجمہ شدہ متن Amazon Polly کو بھیجتے ہیں، جو کہ ایک مکمل طور پر منظم ٹیکسٹ ٹو اسپیچ سروس ہے جو یا تو فوری اسٹریمنگ پلے بیک کے لیے زندگی بھر کے آڈیو کلپ کے جوابات بھیج سکتی ہے یا اس میں بیچ اور محفوظ کر سکتی ہے۔ ایمیزون سادہ اسٹوریج سروس (ایمیزون S3) بعد میں استعمال کے لیے۔ آپ معیاری استعمال کرتے ہوئے تقریر کے مختلف پہلوؤں جیسے کہ تلفظ، حجم، پچ، تقریر کی شرح، اور مزید کو کنٹرول کر سکتے ہیں۔ اسپیچ سنتھیسس مارک اپ لینگویج (SSML)۔
آپ مخصوص ایمیزون پولی کے لیے تقریر کی ترکیب کر سکتے ہیں۔ اعصابی آوازیں۔ نیوز کاسٹر کے انداز کا استعمال کرتے ہوئے انہیں ٹی وی یا ریڈیو نیوز کاسٹر کی طرح آواز دینا۔ آڈیو سٹریم میں شامل میٹا ڈیٹا کی بنیاد پر آپ یہ بھی پتہ لگا سکتے ہیں کہ متن میں مخصوص الفاظ یا جملے کب بولے جا رہے ہیں۔ یہ ڈویلپر کو گرافیکل ہائی لائٹنگ اور اینیمیشنز کو سنکرونائز کرنے کی اجازت دیتا ہے، جیسے اوتار کے ہونٹوں کی حرکت، ترکیب شدہ تقریر کے ساتھ۔
آپ مخصوص الفاظ کے تلفظ میں ترمیم کر سکتے ہیں، جیسے کہ کمپنی کے نام، مخففات، غیر ملکی الفاظ، یا نیوولوجزم، مثال کے طور پر "P!nk," "ROTFL" یا "C'est la vie" (جب غیر فرانسیسی میں بولا جاتا ہے۔ آواز)، حسب ضرورت لغت کا استعمال کرتے ہوئے۔
فن تعمیر کا جائزہ
درج ذیل خاکہ ہمارے حل کے فن تعمیر کو واضح کرتا ہے۔
ورک فلو مندرجہ ذیل ہے:
- آڈیو کو Python SDK کے ذریعے داخل کیا جاتا ہے۔
- ایمیزون پولی 39 ممکنہ زبانوں میں تقریر کو متن میں تبدیل کرتا ہے۔
- ایمیزون ترجمہ زبانوں کو تبدیل کرتا ہے۔
- Amazon Live Transcribe متن کو تقریر میں تبدیل کرتا ہے۔
- آڈیو اسپیکر کو آؤٹ پٹ کیا جاتا ہے۔
شرائط
آپ کو مائیکروفون، اسپیکر، اور قابل اعتماد انٹرنیٹ کنکشن کے ساتھ ایک میزبان مشین کی ضرورت ہے۔ ایک جدید لیپ ٹاپ کو اس کے لیے ٹھیک کام کرنا چاہیے کیونکہ کسی اضافی ہارڈ ویئر کی ضرورت نہیں ہے۔ اگلا، آپ کو کچھ سافٹ ویئر ٹولز کے ساتھ مشین سیٹ اپ کرنے کی ضرورت ہے۔
غیر مطابقت پذیر Amazon Transcribe streaming SDK استعمال کرنے کے لیے اور Python ماڈیول کے لیے آپ کے پاس Python 3.7+ انسٹال ہونا ضروری ہے۔ pyaudio
، جسے آپ مشین کے مائیکروفون اور اسپیکرز کو کنٹرول کرنے کے لیے استعمال کرتے ہیں۔ یہ ماڈیول C لائبریری پر منحصر ہے۔ portaudio.h
. اگر آپ کو مسائل کا سامنا کرنا پڑتا ہے۔ pyaudio
غلطیاں، ہم یہ دیکھنے کے لیے اپنے OS کو چیک کرنے کا مشورہ دیتے ہیں کہ آیا آپ کے پاس ہے۔ portaudio.h
لائبریری نصب.
سروس کالز کی اجازت اور تصدیق کے لیے، آپ ایک تخلیق کرتے ہیں۔ AWS شناخت اور رسائی کا انتظام ضروری AWS سروسز کو کال کرنے کی اجازت کے ساتھ (IAM) سروس رول۔ ترتیب دے کر AWS کمانڈ لائن انٹرفیس (AWS CLI) اس IAM سروس رول کے ساتھ، آپ ہماری اسکرپٹ کو اپنی مشین پر چابیاں یا پاس ورڈ پاس کیے بغیر چلا سکتے ہیں، کیونکہ AWS لائبریریاں ترتیب شدہ AWS CLI صارف کی اسناد کو استعمال کرنے کے لیے لکھی جاتی ہیں۔ یہ تیز رفتار پروٹو ٹائپنگ کے لیے ایک آسان طریقہ ہے اور اس بات کو یقینی بناتا ہے کہ ہماری خدمات کو ایک مجاز شناخت کے ذریعے بلایا جا رہا ہے۔ ہمیشہ کی طرح، IAM صارف یا کردار بناتے وقت IAM پالیسیاں تفویض کرتے وقت کم از کم استحقاق کے اصول پر عمل کریں۔
خلاصہ کرنے کے لیے، آپ کو درج ذیل شرائط کی ضرورت ہے:
- مائیکروفون، اسپیکر، اور انٹرنیٹ کنکشن کے ساتھ ایک PC، Mac، یا Linux مشین
- ۔
portaudio.h
آپ کے OS (brew, apt get, wget) کے لیے C لائبریری، جس کی paudio کے کام کرنے کی ضرورت ہے۔ - AWS CLI 2.0 مناسب طریقے سے مجاز IAM صارف کے ساتھ AWS CLI میں aws کنفیگر چلا کر ترتیب دیا گیا ہے۔
- ازگر 3.7+
- غیر مطابقت پذیر Amazon Transscribe Python SDK
- درج ذیل Python لائبریریاں:
boto3
amazon-transcribe
pyaudio
asyncio
concurrent
حل کو نافذ کریں۔
آپ Python کے لیے ایک نقطہ آغاز کے طور پر غیر مطابقت پذیر Amazon Transcribe streaming SDK پر بہت زیادہ انحصار کریں گے، اور اس مخصوص SDK کے اوپری حصے میں تعمیر کرنے جا رہے ہیں۔ ازگر کے لیے اسٹریمنگ SDK کے ساتھ تجربہ کرنے کے بعد، آپ شامل کرتے ہیں۔ سٹریمنگ مائیکروفون کا استعمال کرتے ہوئے ان پٹ pyaudio
، ایک عام طور پر استعمال شدہ Python اوپن سورس لائبریری جو آڈیو ڈیٹا میں ہیرا پھیری کے لیے استعمال ہوتی ہے۔ پھر آپ ہمارے ترجمہ اور متن سے تقریر کی فعالیت کے لیے Amazon Translate اور Amazon Polly میں Boto3 کالز شامل کریں۔ آخر میں، آپ ترجمہ شدہ تقریر کو کمپیوٹر کے اسپیکر کے ذریعے دوبارہ اس کے ساتھ سٹریم کرتے ہیں۔ pyaudio
. ازگر ماڈیول concurrent
آپ کو بلاکنگ کوڈ کو اس کے اپنے غیر مطابقت پذیر دھاگے میں چلانے کی صلاحیت فراہم کرتا ہے تاکہ آپ کی واپسی Amazon Polly اسپیچ کو بغیر کسی رکاوٹ کے بغیر بلاک کرنے کے طریقے سے چلایا جا سکے۔
آئیے اپنے تمام ضروری ماڈیولز درآمد کریں، سٹریمنگ کلاسز کو ٹرانسکرائب کریں، اور کچھ گلوبلز کو فوری بنائیں:
سب سے پہلے، آپ استعمال کرتے ہیں pyaudio
ان پٹ ڈیوائس کے نمونے لینے کی شرح، ڈیوائس انڈیکس، اور چینل کی گنتی حاصل کرنے کے لیے:
اگر یہ کام نہیں کر رہا ہے، تو آپ مندرجہ ذیل کوڈ میں دکھائے گئے اپنے آلات کو لوپ اور پرنٹ بھی کر سکتے ہیں، اور پھر ڈیوائس کی معلومات کو بازیافت کرنے کے لیے ڈیوائس انڈیکس کا استعمال کر سکتے ہیں۔ pyaudio
:
تم استعمال کرتے ہو channel_count
, sample_rate
، اور dev_index
مائیک اسٹریم میں پیرامیٹرز کے طور پر۔ اس سلسلے کے کال بیک فنکشن میں، آپ ایک استعمال کرتے ہیں۔ asyncio
مائیک اسٹریم کے ان پٹ بائٹس کو ایک میں ڈالنے کے لیے نان بلاکنگ تھریڈ سیف کال بیک asyncio
ان پٹ قطار. لوپ اور input_queue اشیاء کو نوٹ کریں جس کے ساتھ بنایا گیا ہے۔ asyncio
اور وہ درج ذیل کوڈ میں کیسے استعمال ہوتے ہیں:
اب جب جنریٹر کام کرتا ہے۔ mic_stream()
کہا جاتا ہے، یہ مسلسل ان پٹ بائٹس حاصل کرتا ہے جب تک کہ ان پٹ قطار میں مائکروفون ان پٹ ڈیٹا موجود ہو۔
اب جب کہ آپ جان چکے ہیں کہ مائیکروفون سے ان پٹ بائٹس کیسے حاصل کی جاتی ہیں، آئیے دیکھتے ہیں کہ ایمیزون پولی آؤٹ پٹ آڈیو بائٹس کو اسپیکر آؤٹ پٹ سٹریم میں کیسے لکھا جائے:
اب آئیے اس پر توسیع کرتے ہیں کہ آپ نے پوسٹ میں کیا بنایا ہے۔ Python کے لیے غیر مطابقت پذیر Amazon ٹرانسکرائب سٹریمنگ SDK. درج ذیل کوڈ میں، آپ استعمال کرتے ہوئے ایک ایگزیکیوٹر آبجیکٹ بناتے ہیں۔ ThreadPoolExecutor
کنکرنٹ کے ساتھ تین کارکنوں کے ساتھ ذیلی کلاس۔ اس کے بعد آپ EventHandler میں حتمی طور پر واپس شدہ ٹرانسکرپٹ پر Amazon Translate کال شامل کریں اور اس ترجمہ شدہ متن، executor آبجیکٹ، اور ہمارے aws_polly_tts()
ایک میں فنکشن asyncio
کے ساتھ لوپ loop.run_in_executor()
، جو ہمارے ایمیزون پولی فنکشن (ترجمہ شدہ ان پٹ ٹیکسٹ کے ساتھ) کے اگلی تکرار کے آغاز پر متضاد طور پر چلاتا ہے۔ asyncio
لوپ.
آخر کار ، ہمارے پاس loop_me()
فنکشن اس میں، آپ کی وضاحت write_chunks()
، جو ایک ایمیزون ٹرانسکرائب اسٹریم کو دلیل کے طور پر لیتا ہے اور غیر مطابقت پذیر طور پر اس میں اسٹریمنگ مائک ان پٹ کے ٹکڑے لکھتا ہے۔ پھر آپ استعمال کریں۔ MyEventHandler()
آؤٹ پٹ ٹرانسکرپشن اسٹریم کو اس کی دلیل کے طور پر بنائیں اور ہینڈلر آبجیکٹ بنائیں۔ پھر آپ انتظار کے ساتھ استعمال کریں۔ asyncio.gather()
اور ان کوروٹینز کے حتمی مستقبل کو سنبھالنے کے لیے ہینڈل_ایونٹس() طریقہ کے ساتھ write_chunks() اور ہینڈلر کو پاس کریں۔ آخر میں، آپ ایونٹ کے تمام لوپس جمع کرتے ہیں اور لوپ کرتے ہیں۔ loop_me()
کے ساتھ کام run_until_complete()
. درج ذیل کوڈ دیکھیں:
جب پچھلے کوڈ کو بغیر کسی غلطی کے ایک ساتھ چلایا جاتا ہے، تو آپ مائیکروفون میں بات کر سکتے ہیں اور مینڈارن چینی میں ترجمہ شدہ اپنی آواز کو جلدی سے سن سکتے ہیں۔ Amazon Transscribe اور Amazon Translate کے لیے خودکار زبان کا پتہ لگانے کی خصوصیت کسی بھی معاون ان پٹ زبان کو ہدف کی زبان میں ترجمہ کرتی ہے۔ آپ کافی دیر تک بول سکتے ہیں اور فنکشن کالز کی غیر مسدود نوعیت کی وجہ سے، آپ کے تمام اسپیچ ان پٹ کا ترجمہ اور بولا جاتا ہے، جس سے یہ لائیو تقریروں کا ترجمہ کرنے کا ایک بہترین ٹول ہے۔
نتیجہ
اگرچہ اس پوسٹ نے یہ ظاہر کیا ہے کہ یہ تینوں مکمل طور پر منظم AWS APIs ایک ساتھ بغیر کسی رکاوٹ کے کیسے کام کر سکتے ہیں، ہم آپ کو اس بارے میں سوچنے کی ترغیب دیتے ہیں کہ آپ موجودہ لاگت کے ایک حصے کے لیے کثیر لسانی بند کیپشننگ جیسے سروسز یا میڈیا کے لیے کثیر لسانی معاونت فراہم کرنے کے لیے ان خدمات کو دوسرے طریقوں سے کیسے استعمال کر سکتے ہیں۔ . طب، کاروبار، اور یہاں تک کہ سفارتی تعلقات سبھی ہمیشہ بہتر ہونے والی، کم لاگت، کم دیکھ بھال والی ترجمے کی خدمت سے فائدہ اٹھا سکتے ہیں۔
اس استعمال کے کیس کے تصور کوڈ بیس کے ثبوت کے بارے میں مزید معلومات کے لیے ہمارا دیکھیں Github کے.
مصنفین کے بارے میں
مائیکل ٹران Amazon Web Services میں Envision انجینئرنگ ٹیم کے ساتھ ایک سولیوشن آرکیٹیکٹ ہے۔ وہ تکنیکی رہنمائی فراہم کرتا ہے اور صارفین کو AWS پر ممکنہ فن کو دکھانے کے ذریعے اختراع کرنے کی صلاحیت کو تیز کرنے میں مدد کرتا ہے۔ اس نے ہمارے صارفین کے لیے AI/ML اور IoT کے ارد گرد متعدد پروٹوٹائپس بنائے ہیں۔ آپ مجھ سے @Mike_Trann ٹویٹر پر رابطہ کر سکتے ہیں۔
کیمرون ولکس AWS انڈسٹری ایکسلریٹر ٹیم میں پروٹو ٹائپنگ آرکیٹیکٹ ہے۔ ٹیم میں رہتے ہوئے اس نے AWS پر ML کے "آرٹ آف دی پوسیبل" کا مظاہرہ کرنے کے لیے صارفین کو ML پر مبنی کئی پروٹو ٹائپس فراہم کیں۔ وہ میوزک پروڈکشن، آف روڈنگ اور ڈیزائن سے لطف اندوز ہوتا ہے۔
- AI
- ai آرٹ
- AI آرٹ جنریٹر
- عی روبوٹ
- ایمیزون پولی
- ایمیزون نقل
- ایمیزون ترجمہ
- مصنوعی ذہانت
- مصنوعی ذہانت کا سرٹیفیکیشن
- بینکنگ میں مصنوعی ذہانت
- مصنوعی ذہانت والا روبوٹ
- مصنوعی ذہانت والے روبوٹ
- مصنوعی ذہانت سافٹ ویئر
- AWS مشین لرننگ
- blockchain
- بلاکچین کانفرنس
- coingenius
- بات چیت مصنوعی ذہانت
- crypto کانفرنس ai
- dall-e
- گہری سیکھنے
- گوگل عی
- مشین لرننگ
- پلاٹا
- افلاطون اے
- افلاطون ڈیٹا انٹیلی جنس
- افلاطون گیم
- پلیٹو ڈیٹا
- پلیٹو گیمنگ
- پیمانہ ai
- نحو
- تکنیکی طریقہ
- زیفیرنیٹ