توی کنفرانس Build در تاریخ ۲۱ می ۲۰۲۴، یک ویژگی به اسم Personal Voice یا «صدای شخصی» به صورت عمومی معرفی شد. این قابلیت به کاربرها اجازه میده تا برنامههایی بسازن که توش بشه به راحتی صدای هوش مصنوعی شخصیسازی شده تولید کرد.
حالا سرویس Azure AI Speech یک مدل جدید تبدیل متن به گفتار (TTS) از نوع «zero-shot» به اسم «DragonV2.1Neural» رو معرفی کرده. مدل zero-shot یعنی برای ساختن یک صدای جدید، به داده خیلی کمی نیاز داره. این مدل جدید در مقایسه با مدل قبلی، صداهایی با حس طبیعیتر و گویاتر تولید میکنه و دقت تلفظ و کنترلپذیری بیشتری داره.
ویژگی «صدای شخصی» این امکان رو میده که کاربرها با توجه به ویژگیهای صدای خودشون، یک صدای مصنوعی کاملا شخصیسازی شده بسازن. فقط کافیه چند ثانیه از صدای خودتون رو به عنوان نمونه صوتی به سیستم بدین تا به سرعت یک کپی از صدای شما با هوش مصنوعی ساخته بشه. بعد از اون میشه از این صدا برای تولید گفتار به هر کدوم از زبانهای پشتیبانی شده (بیشتر از ۱۰۰ زبان) استفاده کرد. این قابلیت کاربردهای زیادی داره، از شخصیسازی صدای رباتهای گفتگو (چتبات) گرفته تا دوبله کردن محتوای ویدیویی با صدای اصلی بازیگر در زبانهای مختلف.
مدل قبلی که اسمش «DragonV1» بود، با اینکه صدای باکیفیت و لحن واقعی تولید میکرد، اما توی تلفظ بعضی چیزها مثل اسمهای خاص چالش داشت. برای همین، کنترل تلفظ همچنان یک ویژگی مهم برای تولید صدای طبیعی و دقیق به حساب میاد. علاوه بر این، برای کارهایی مثل ترجمه فیلم یا فایل صوتی، مهمه که یک مدل TTS بتونه نه تنها زبانهای مختلف، بلکه لهجههای خاص رو هم به درستی تولید کنه.
فصل دوم: چه چیزهایی در مدل جدید بهتر شده؟
مدل جدید «DragonV2.1» در مقایسه با مدل قبلی، یعنی «DragonV1»، پیشرفتهایی در طبیعی بودن صدا داشته و لحن و آهنگ کلام (که بهش میگن prosody) واقعیتر و پایدارتری ارائه میده و در عین حال دقت تلفظ بهتری هم داره.
این مدل جدید همچنین در تلفظ بهتر عمل میکنه. برای اندازهگیری این موضوع، از معیاری به اسم WER یا (Word Error Rate) استفاده شده که نرخ خطای کلمات رو نشون میده. این معیار با استفاده از یک سیستم تشخیص گفتار خودکار (ASR) میسنجه که صدای تولید شده چقدر قابل فهمه. هر چی عدد WER پایینتر باشه، بهتره. در ارزیابیهایی که روی تمام زبانهای پشتیبانی شده انجام شد (برای هر زبان بیشتر از ۱۰۰ مورد تست شد)، مدل جدید به طور میانگین ۱۲.۸ درصد کاهش نرخ خطا نسبت به مدل قبلی داشته.
این مدل جدید حتی میتونه موارد پیچیده رو درست بخونه، مثل کلماتی که در زبان چینی چند جور تلفظ دارن یا تولید بهتر لهجه بریتانیایی (en-GB).
در اینجا مشخصات فنی مدل Dragon V2.1 رو در یک جدول میبینیم:
ویژگی | جزئیات |
---|---|
معماری | مدل Transformer |
نکات برجسته | – چندزبانه – شبیهسازی صدای zero-shot با نمونه ۵ تا ۹۰ ثانیهای – سازگاری با احساسات، لهجه و محیط |
طول زمینه صوتی | ۳۰ ثانیه صدا |
زبانهای پشتیبانی شده | بیشتر از ۱۰۰ زبان و منطقه جغرافیایی Azure TTS |
پشتیبانی از SSML | بله |
تاخیر (Latency) | کمتر از ۳۰۰ میلیثانیه |
عامل زمان واقعی (RTF) | کمتر از ۰.۰۵ |
فصل سوم: چطور میشه تلفظ و لهجه رو کنترل کرد؟
مدل «DragonV2.1» از کنترل تلفظ با استفاده از تگهای فونِم (phoneme) در SSML پشتیبانی میکنه. شما میتونید با استفاده از تگ ipa
و یک فرهنگ لغت سفارشی (custom lexicon)، نحوه تلفظ کلمات رو مشخص کنید. مثلا در نمونهای که داده شده، برای تاکید روی هجای «meɪ» در کلمه tomato، از مقادیری مثل «tə.ˈmeɪ.toʊ» یا «təmeɪˈtoʊ» استفاده شده.
میشه تعریف کرد که کلمات تکی (مثل اسم یک شرکت، یک اصطلاح پزشکی یا یک ایموجی) چطور خونده بشن. برای تعریف تلفظ چندین کلمه، باید یک فایل فرهنگ لغت سفارشی با ساختار XML بسازید و اون رو آپلود کنید و بعد با تگ lexicon
در SSML بهش ارجاع بدید.
برای کنترل زبان و لهجه هم میشه از تگ <lang xml:lang>
استفاده کرد. مثلا برای تنظیم لهجه روی انگلیسی بریتانیایی، از en-GB
استفاده میشه. استفاده از این تگ برای دقت بیشتر در تلفظ پیشنهاد میشه.
برای مثال، کد زیر نشون میده چطور میشه لهجه بریتانیایی رو برای یک جمله تنظیم کرد:
<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="http://www.w3.org/2001/mstts" xml:lang="en-US">
<voice name="DragonV2.1Neural">
<mstts:ttsembedding speakerprofileid="your speaker profile ID here">
<lang xml:lang="en-GB">
Tomato, potato, and basil are in the salad.
</lang>
</mstts:ttsembedding>
</voice>
</speak>
فصل چهارم: عملکرد این مدل در مقایسه با بقیه چطوره؟
برای ارزیابی عملکرد مدلهای TTS، از بنچمارک استفاده میشه. در این مورد، سیستم مایکروسافت با دو ارائهدهنده برتر دیگه در زمینه تبدیل متن به گفتار zero-shot، یعنی «شرکت A» و «شرکت B»، برای زبان انگلیسی و با «شرکت A» برای زبان ماندارین (چینی) مقایسه شده.
برای این مقایسه از یک معیار ذهنی به اسم MOS یا (Mean Opinion Score) استفاده شده. توی این تستها، شنوندهها به فایلهای صوتی گوش میدن و به اونها امتیاز میدن. امتیازها بر اساس چهار جنبه هستن: تاثیر کلی، طبیعی بودن، حالت مکالمهای و کیفیت صدا. هر داور از ۱ تا ۵ امتیاز میده و میانگین امتیازها در زیر نشون داده شده.
- نتایج برای زبان انگلیسی: نتایج نشون میده که مدل TTS مایکروسافت در زبان انگلیسی کمی بهتر از شرکت A و B عمل کرده (با اختلاف امتیاز بیشتر از ۰.۰۵).
- نتایج برای زبان چینی: در زبان ماندارین، عملکردش با شرکت A در یک سطح بوده.
فصل پنجم: نمونههای آماده و کاربردهای واقعی
برای اینکه تست کردن مدل جدید DragonV2.1 راحتتر بشه، چند تا پروفایل صدای از پیش ساخته شده در دسترس قرار گرفته. این پروفایلها که اسمهایی مثل Andrew، Ava، Brian، Emma، Adam و Jenny دارن، به شما اجازه میدن بدون اینکه از صدای خودتون استفاده کنید، کیفیت مدل جدید رو امتحان کنید. برای استفاده از اونها، کافیه اسم پروفایل مورد نظر رو در تگ <mstts:ttsembedding>
و در بخش «speaker» وارد کنید.
این مدل پیشرفته و باکیفیت میتونه برای کارهایی مثل دوبله استفاده بشه و اجازه میده محتوای ویدیویی با لحن و سبک صدای بازیگر اصلی به زبانهای مختلف دوبله بشه. این مدل صدای شخصی جدید در سرویس ترجمه ویدیوی هوش مصنوعی Azure هم به کار گرفته شده تا به سازندههای سریالهای کوتاه کمک کنه به بازارهای جهانی دسترسی پیدا کنن. شرکتهای TopShort و JOWO.ai که در زمینه ساخت و ترجمه سریالهای کوتاه فعالیت میکنن، با سرویس ترجمه ویدیوی Azure همکاری میکنن تا ترجمه با هوش مصنوعی رو با یک کلیک ارائه بدن.
فصل ششم: استفاده مسئولانه و جلوگیری از سو استفاده
این مدل میتونه ریسک ساخت دیپفیک توسط افراد رو بیشتر کنه. برای جلوگیری از سو استفاده، مایکروسافت از کاربرها میخواد با سیاستهای استفاده موافقت کنن. این سیاستها شامل این موارد میشه:
- رضایت صریح از صاحب اصلی صدا
- اعلام کردن اینکه محتوای تولید شده مصنوعی است
- ممنوعیت جعل هویت یا فریب دیگران
همچنین، به صورت خودکار به خروجیهای صوتی که با صدای شخصی تولید میشن، واترمارک اضافه میشه. این فناوری واترمارک بهبود پیدا کرده و حالا با دقت بیشتر از ۹۹.۷ درصد میتونه وجود واترمارک رو حتی در سناریوهای مختلف ویرایش صدا تشخیص بده. این موضوع به جلوگیری از سو استفادههای احتمالی کمک میکنه.
علاوه بر ساخت صدای شخصی، مشتریهای واجد شرایط میتونن با قابلیت تنظیم دقیق صدای حرفهای در Custom Voice، یک صدای برند برای کسبوکار خودشون ایجاد کنن. سرویس Azure AI Speech همچنین بیشتر از ۶۰۰ صدای عصبی از پیش ساخته شده در بیش از ۱۵۰ زبان و منطقه ارائه میده.
فصل هفتم: چطور میشه شروع به کار کرد؟
مدل جدید TTS از اواسط ماه آگوست در دسترس قرار میگیره و اسمش در عملیات BaseModels_List
در API صدای سفارشی نمایش داده میشه.
وقتی اسم مدل جدید یعنی «DragonV2.1Neural» رو در لیست مدلهای پایه دیدید، باید مراحل زیر رو برای ثبت مورد استفاده و درخواست دسترسی طی کنید، شناسه پروفایل گوینده (speaker profile ID) رو بسازید و از اسم صدای «DragonV2.1Neural» برای تولید گفتار به هر کدوم از ۱۰۰ زبان پشتیبانی شده استفاده کنید.
کد SSML زیر یک نمونه از نحوه استفاده از DragonV2.1Neural برای تولید گفتار با صدای شخصی شما در زبانهای مختلف رو نشون میده:
<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="http://www.w3.org/2001/mstts" xml:lang="en-US">
<voice name="DragonV2.1Neural">
<mstts:ttsembedding speakerprofileid="your speaker profile ID here">
<lang xml:lang="en-US">
I'm happy to hear that you find me amazing and that I have made your trip planning easier and more fun.
</lang>
</mstts:ttsembedding>
</voice>
</speak>
دیدگاهتان را بنویسید