أفضل آلات توليف الكلام على الإنترنت.

هل تتوق إلى الحصول على معلومات، لكن عقلك سئم من إدراكها بصريًا؟ في نهاية يوم العمل لم يعد لديك أي تركيز؟ أو ربما أنت كسول جدًا بحيث لا تستطيع القراءة؟

قبل القضاء على الكسل في نفسك، لن تكون فكرة سيئة أن تكوّن صداقات معه. في الواقع، هذا صديق مخلص وحكيم، بالتعاون مع اثنين من نبضات الدماغ، يمكنه تعليم العديد من التفاصيل الدقيقة في الحياة، حيث لا يمكنك تجاوز ليس فقط الجبال الكبيرةولكن حتى التلال الصغيرة. كيف يمكنك العيش بدون ضغوط؟ الكسل يعرف الإجابة على هذا السؤال لكل حالة على حدة.

على سبيل المثال، حتى لا يجهد الشخص ويحمي رؤيته، تم اختراع محركات التوليف الصوتي - ذكاء اصطناعي يمكنه تحويل النص إلى كلام صوتي والعكس - الكلام إلى نص.

الوصفة لاستقبال أي معلومات مطبوعة عن طريق الأذن بسيطة: قم بتثبيت أي من برامج قراءة النص بصوت مثل Govorilka أو Balabolka على جهاز الكمبيوتر الخاص بك، وأكمله بمحرك صوتي باللغة الروسية مع مكبرات صوت مثل Alena أو نيكولاي أو أولغا أو كاترينا ، انسخ النص إلى البرنامج وابدأ تشغيل الكلام الاصطناعي. ولكن حتى هذه الوصفة يمكن تبسيطها. يمكنك الاستماع إلى المنشورات الموجودة على مواقع الإنترنت ببضع نقرات عن طريق تثبيت ملحق خاص في متصفحك مصمم لتحويل النص إلى كلام.

ملحق Chrome SpeakIt!: مُركِّب الكلام داخل المتصفح لأولئك الذين يتكاسلون عن القراءة

ملحق للمتصفحات المستندة إلى Chromium SpeakIt! يمكنه قراءة النص بأكثر من 50 لغة، بما في ذلك اللغة الروسية. تم بالفعل تثبيت محركات الصوت باللغة الروسية فيه، لذلك ليست هناك حاجة إلى خطوات إضافية لتثبيت مكونات البرامج الفردية. كل ما عليك فعله، والتغلب على كسلك لبضع دقائق، هو التثبيت من المتجر جوجل كرومتمديد SpeakIt! يأتي مجانًا تمامًا.

بعد تثبيت SpeakIt! مدمج في شريط أدوات المتصفح باستخدام زر على شكل أيقونة مكبر الصوت. سيؤدي النقر فوق زر الماوس الأيسر إلى فتح واجهة صغيرة للامتداد مع زر لبدء تشغيل الكلام وزر إيقاف.

انقر بزر الماوس الأيمن على SpeakIt! سيفتح قائمة السياق حيث نحتاج إلى تحديد أمر "الخيارات".

هنا، في إعدادات الامتداد، من القوائم المنسدلة، يمكننا ضبط محرك صوتي مختلف عن المحرك المثبت مسبقًا مع مذيع ناطق باللغة الروسية، يمكننا تحديد أنثى أو صوت ذكر. يمكننا أيضًا ضبط مستوى وسرعة تشغيل الكلام عن طريق سحب أشرطة التمرير الخاصة بالخيارات المقابلة.

اختيار المذيع الناطق باللغة الروسية كذكر أو بصوت أنثىموجود فقط لمحرك الصوت iSpeech. محرك الكلام! لا يمكن القراءة إلا بصوت أنثوي. ويمكن استخدام المحرك الأصلي بأمان من قبل أولئك الذين اعتادوا على الصوت المخملي لنيكولاي ديجالو. أدخل أي عبارة في حقل "اختبار" واختبر العديد من محركات الصوت ومكبرات الصوت. سيساعد هذا الجميع على اختيار الاستنساخ الأمثل للكلام لأنفسهم. إذا كان المنشور عبر الإنترنت باللغة الإنجليزية، فإننا نقوم باختبار المحركات الصوتية باللغة الإنجليزية.

حسنًا، لقد قررنا إعدادات الامتداد، فلننتقل الآن مباشرة إلى عملية إعادة إنتاج منشورات الإنترنت بصوت اصطناعي. في صفحة الويب الخاصة بالمنشور الذي تهتم به، حدد النص الذي تريد إعادة إنتاجه، ثم اتصل بقائمة السياق وانقر فوق الزر SpeakIt، أو انقر فوق الزر الخاص بهذا الامتداد في لوحة المتصفح.

نريد اليوم أن نتحدث عن سيناريو مثير للاهتمام يمكن أن يكون مفيدًا بالتأكيد في مجال التجارة الإلكترونية. إنه على وشكحول أتمتة خدمة العملاء، وهي:

  1. يتصل العميل بالمتجر الإلكتروني ويطلب منه إدخال رقم الطلب؛
  2. يتم نقل القيم التي أدخلها المشترك عبر DTMF إلى البرنامج النصي AGI؛
  3. باستخدام رقم الطلب، نقوم بإنشاء استعلام SQL لقاعدة البيانات حيث نقوم بتخزين معلومات حول الطلبات. من الجدول المقابل نحصل على حالة الطلب واسم العميل؛
  4. نقوم بإنشاء سلسلة تحتاج إلى التحدث إلى العميل وإرسالها لإنشاء الصوت نحو Yandex.SpeechKit API (تقنية TTS - تحويل النص إلى كلام)؛
  5. نتلقى ملفًا صوتيًا من Yandex، ونفك تشفيره بالتنسيق الذي نحتاجه (.wav، 8k) ونعيد تشغيله إلى العميل؛
  6. نقوم بحذف الملف المعاد إنتاجه وإنهاء مكالمة العميل؛

في رأينا، هذه أتمتة مثيرة للاهتمام. دعونا نبدأ الإعداد؟ :)

الحصول على واجهة برمجة التطبيقات - رمز Yandex.SpeechKit

للتعرف على التكنولوجيا، توفر Yandex فترة تجريبية مجانية مدتها شهر واحد من لحظة إرسال الطلب الأول. بعد ذلك، لمواصلة استخدام Yandex. يحتاج SpeechKit Cloud إلى توقيع عقد. يمكن قراءة تفاصيل شروط الاستخدام.

أولاً، انتقل إلى حساب المطور باستخدام الرابط https://developer.tech.yandex.ru وانقر فوق الحصول على المفتاح:

  • اسم المفتاح- أدخل اسمًا للمفتاح. على سبيل المثال، النجمة + تحويل النص إلى كلام;
  • اتصال- اختر من القائمة سحابة SpeechKit;

نتذكر القيمة المميزة باللون الأحمر في لقطة الشاشة أعلاه - وهذا هو الرمز المميز الخاص بك. دعنا ننتقل إلى إعداد البرنامج النصي AGI.

إنشاء جدول مع الطلبات

لنقم بإنشاء جدول SQL حيث سنقوم بتخزين بيانات الطلب. في الأغراض المختبرية، سنقوم بنشره على نفس المضيف مثل IP-PBX Asterisk (+ سيؤدي هذا إلى تقليل التأخير ووقت المعالجة). لذا، أدخل الأوامر التالية في وحدة تحكم الخادم (اتصل عبر SSH أولاً):

استخدم العلامة النجميةcdrdb; إنشاء جدول zakazy(name varchar(20),phone varchar(20),nomerzakaza varchar(20),status varchar(20)); أدخل في قيم zakazy (الاسم، الهاتف، nomerzakaza، الحالة) ("Alexander"، "79257777777"، 300388، "Sent")؛ أدخل في قيم zakazy (الاسم، الهاتف، nomerzakaza، الحالة) ("Ivan"، "79251111111"، 476656، "Paid")؛ أدخل في قيم zakazy (الاسم، الهاتف، nomerzakaza، الحالة) ("Sergey"، "79252222222"، 0089822، "تم التسليم")؛

لقد أنشأنا وملأنا الجدول. أنت الآن بحاجة إلى إنشاء مستخدم يمكنه الوصول إلى الجدول SELECT:

إنشاء مستخدم "mysql_login"@"localhost" تم تحديده بواسطة "mysql_password"؛ منح التحديد على النجمة cdrdb.zakazy إلى "mysql_login"؛

تذكر اسم المستخدم وكلمة المرور الخاصين بك وانتقل إلى الخطوة التالية - تكييف البرنامج النصي AGI. تقليديًا، يتم ترميز التعليقات بعد الشرطة المائلة المزدوجة // :

AGI - البرنامج النصي

وفيما يلي هيكل البرنامج النصي:

#!/usr/bin/php -q get_data("custom/generate", 6000, 10); // قبول DTMF من العميل؛ $number= $result["result"]; // سجل رقم الطلب الذي أدخله العميل في متغير؛ $hostname = "localhost"; // لدينا مضيف محلي. قد يكون لديك عنوان IP الخاص بالخادم الذي تم تخزين قاعدة بيانات الطلب عليه (قم بتكوين pg_hba.conf مسبقًا على المضيف البعيد)؛ $username = "mysql_login"; // تسجيل الدخول الذي قمت بإنشائه سابقًا؛ $password = "mysql_password"; // كلمة المرور التي قمت بإنشائها سابقًا؛ $dbName = "asteriskcdrdb"; mysql_connect($hostname,$username,$password) OR DIE("لا يمكن إنشاء اتصال"); mysql_select_db($dbName) أو يموت(mysql_error()); $query = "SELECT * FROM zakazy WHERE `nomerzakaza`="$number";"; // توصيل البيانات وتحليلها حسب رقم الطلب؛ $res=mysql_query($query) أو يموت(mysql_error()); while ($row = mysql_fetch_assoc($res)) ( $status = $row["status"]; $name = $row["name"]; // اكتب الاسم والحالة التي تم الحصول عليها من SQL إلى المتغيرات؛ ); $str = "عزيزي ".$name."! حالة طلبك هي ".$status." شكرًا لتواصلك، أتمنى لك كل التوفيق!"; // قم بتكوين السلسلة المراد تركيبها؛ $qs = http_build_query(array("format" => "wav"،"lang" => "ru-RU"، "speaker" => "jane"، "مفتاح" => "your_token"، "emotion" => "جيد"، "نص" => $str)); // وصف المتغيرات التي سيتم إرسالها إلى Yandex API. يمكنك ضبط تنسيق الملف واللغة ومكبر الصوت (أصوات الذكور أو الإناث) واللون العاطفي. استبدل "your_token" بالمفتاح الذي تم استلامه من Yandex API. سحابة الكلام كيت؛ $ctx =stream_context_create(array("http"=>array("method"=>"GET"،"header"=>"المرجع: \r\n"))); $soundfile = file_get_contents("https://tts.voicetech.yandex.net/generate؟".$qs, false, $ctx); $file = fopen("file1.wav", "w"); fwrite(ملف $, ملف صوتي $); فكلوز(ملف $); // احصل على الملف الصوتي (احفظه باسم file1.wav)؛ Shell_exec("sox -t الخام -r 48k -e موقعة عدد صحيح -b 16 -c 1 file1.wav -t wav -r 8k -c 1 /var/lib/asterisk/sounds/ru/custom/output1.wav" ); // تحويل الصوت إلى تنسيق الصوت المطلوب لـ Asterisk ونسخه إلى الدليل /var/lib/asterisk/sounds/ru/custom/؛ shell_exec("chown النجمة: النجمة /var/lib/asterisk/sounds/ru/custom/output1.wav"); shell_exec("chmod 775 /var/lib/asterisk/sounds/ru/custom/output1.wav"); // منح الملف الأذونات اللازمة؛ $agi->exec("تشغيل"،"custom/output1"); // أرسل الأمر إلى AGI لتشغيل الملف الصوتي المستلم؛ shell_exec("rm -f /var/lib/asterisk/sounds/ru/custom/output1.wav"); shell_exec("rm -f file1.wav"); // حذف كلا الملفين؛ ؟ > تنزيل البرنامج النصي AGI

بعد تنزيل الملف، احفظه بالملحق .php

احفظ البرنامج النصي تحت اسم tts.php في الدليل /var/lib/asterisk/agi-bin وأصدر الأوامر التالية إلى وحدة تحكم الخادم:

Dos2unix /var/lib/asterisk/agi-bin/tts.php chown النجمة:asterisk /var/lib/asterisk/agi-bin/tts.php chmod 775 /var/lib/asterisk/agi-bin/tts.php

نحن نكيف الوظيفة مع الإنتاج

لذا، أولاً، افتح الملف /etc/asterisk/extensions_custom.conf لتحريره وأضف الإدخال التالي إليه:

Exten => s,1,Answer() exten => s,2,AGI(tts.php)

جيد جدًا. لنقم بإجراء اتصال بسياق مخصص من FreePBX. للقيام بذلك، سوف نستخدم الوحدة النمطية. دعونا نتحرك على طول الطريق مسؤلوجهات مخصصةو اضغط أضف الوجهة:


انقر يُقدِّمو تطبيق التكوين. نريد أن يتمكن العميل من معرفة حالة طلبه من قائمة الرد الصوتي التفاعلي (IVR) الرئيسية بالضغط على الرقم 4. انتقل إلى نظام الرد الصوتي التفاعلي (IVR) الرئيسي وإلى الأقسام إدخالات الرد الآلي (IVR).أضف ما يلي:

مستعد. إذا لم ينجح شيء ما، فاكتب لنا في التعليقات، وسنحاول المساعدة :)

هل كانت هذه المقالة مفيدة لك؟

أرجوك أخبرني لماذا؟

نأسف لأن المقال لم يكن مفيدًا لك: (من فضلك، إذا لم يكن الأمر صعبًا، وضح السبب؟ سنكون ممتنين جدًا للحصول على إجابة مفصلة. شكرًا لك على مساعدتنا في أن نصبح أفضل!

وفي مؤتمر آخر عام 2013، قدمنا ​​ما لدينا مكتبة جديدةياندكس SpeechKit. هذه واجهة برمجة تطبيقات عامة للتعرف على الكلام ويمكن لمطوري Android وiOS استخدامها. يمكنك تنزيل SpeechKit وقراءة الوثائق أيضًا.

يتيح لك Yandex SpeechKit الوصول مباشرة إلى الواجهة الخلفية المستخدمة بنجاح في تطبيقات Yandex للهاتف المحمول. لقد قمنا بتطوير هذا النظام منذ فترة طويلة والآن نتعرف بشكل صحيح على 94% من الكلمات في Navigator وخرائط الهاتف المحمول، بالإضافة إلى 84% من الكلمات في متصفح الهاتف المحمول. في هذه الحالة، يستغرق التعرف ما يزيد قليلاً عن ثانية. هذه بالفعل نوعية جيدة للغاية، ونحن نعمل بنشاط على تحسينها.

يمكن القول أنه في المستقبل القريب لن تختلف الواجهات الصوتية عمليًا من حيث الموثوقية عن طرق الإدخال الكلاسيكية. قصة مفصلةحول كيفية تمكننا من تحقيق مثل هذه النتائج، وكيف يعمل نظامنا، تحت الخفض.

يعد التعرف على الكلام أحد أكثر الأشياء إثارة للاهتمام و المهام المعقدة الذكاء الاصطناعي. الإنجازات المعنية هنا جدا مناطق مختلفة: من اللغويات الحاسوبيةقبل المعالجة الرقميةإشارات. لفهم كيفية بناء الآلة التي تفهم الكلام، دعونا نفهم أولاً ما الذي نتعامل معه.

أولا: الأساسيات
بالنسبة لنا، الكلام المنطوق هو في المقام الأول إشارة رقمية. وإذا نظرنا إلى تسجيل هذه الإشارة فلن نرى كلامًا ولا وضوحًا الصوتيات الواضحة- تتدفق "أحداث الكلام" المختلفة بسلاسة مع بعضها البعض دون تشكيل حدود واضحة. نفس العبارة قيلت أناس مختلفونأو في بيئات مختلفة، سيبدو مستوى الإشارة مختلفًا. في الوقت نفسه، يتعرف الناس بطريقة أو بأخرى على خطاب بعضهم البعض: لذلك، هناك ثوابت يمكن بموجبها، بناءً على الإشارة، إعادة بناء ما قيل بالفعل. إن العثور على مثل هذه الثوابت هو مهمة النمذجة الصوتية.

لنفترض أن الكلام البشري يتكون من مقاطع صوتية (هذا تبسيط فادح، ولكنه صحيح بالنسبة للتقريب الأول). دعونا نحدد الصوت باعتباره الحد الأدنى من وحدة اللغة ذات المعنى، أي الصوت، الذي يمكن أن يؤدي استبداله إلى تغيير في معنى كلمة أو عبارة. لنأخذ جزءًا صغيرًا من الإشارة، على سبيل المثال 25 مللي ثانية. دعنا نسمي هذا القسم "الإطار". ما هو الصوت الذي تم التحدث به في هذا الإطار؟ من الصعب الإجابة على هذا السؤال بشكل لا لبس فيه - فالعديد من الصوتيات متشابهة للغاية مع بعضها البعض. ولكن إذا كان من المستحيل إعطاء إجابة لا لبس فيها، فيمكن للمرء أن يفكر من حيث "الاحتمالات": بالنسبة لإشارة معينة، تكون بعض المقاطع الصوتية أكثر احتمالا، والبعض الآخر أقل احتمالا، ويمكن استبعاد البعض الآخر من الاعتبار تماما. في الواقع، النموذج الصوتي هو وظيفة تأخذ كمدخل قسمًا صغيرًا من الإشارة الصوتية (الإطار) وتنتج توزيعًا احتماليًا لمختلف الصوتيات في هذا الإطار. وبالتالي، فإن النموذج الصوتي يسمح لنا بإعادة بناء ما قيل بالصوت - بدرجات متفاوتة من الثقة.

آخر جانب مهمالصوتيات - احتمالية الانتقال بين الصوتيات المختلفة. نعلم من التجربة أن بعض مجموعات الصوتيات يسهل نطقها وتحدث بشكل متكرر، في حين أن البعض الآخر أكثر صعوبة في نطقها ويتم استخدامها بشكل أقل في الممارسة العملية. يمكننا تلخيص هذه المعلومات وأخذها في الاعتبار عند تقييم "معقولية" تسلسل معين من الصوتيات.

الآن لدينا جميع الأدوات اللازمة لتصميم أحد "أعمدة العمل" الرئيسية التعرف التلقائيالكلام - نموذج ماركوف المخفي (HMM، نموذج ماركوف المخفي). للقيام بذلك، دعونا نتخيل للحظة أننا لا نحل مشكلة التعرف على الكلام، ولكن العكس تماما - تحويل النص إلى كلام. لنفترض أننا نريد الحصول على نطق كلمة "ياندكس". دع كلمة "ياندكس" تتكون من مجموعة من المقاطع الصوتية، على سبيل المثال، [th] [a] [n] [d] [e] [k] [s]. دعونا نبني آلة حالة محدودة لكلمة "ياندكس"، حيث يتم تمثيل كل صوت بحالة منفصلة. في كل لحظة من الزمن نكون في إحدى هذه الحالات و"ننطق" خاصية الصوت لهذا الصوت (نعرف كيف يتم نطق كل صوت بفضل النموذج الصوتي). لكن بعض الصوتيات تستمر لفترة طويلة (مثل [a] في كلمة "Yandex")، ويتم ابتلاع البعض الآخر عمليًا. هذا هو المكان الذي تكون فيه المعلومات حول احتمالية الانتقال بين الصوتيات مفيدة. بعد أن ولدت الصوت المقابل الوضع الحالي، نحن نقبل الحل الاحتمالي: هل يجب أن نبقى في نفس الحالة أم ننتقل إلى الحالة التالية (وبالتالي الصوت التالي).

وبشكل أكثر رسمية، يمكن تمثيل HMM بالطريقة الآتية. أولاً، دعونا نقدم مفهوم الانبعاثات. كما نتذكر من المثال السابق، فإن كل حالة من حالات HMM "تولد" خاصية صوتية لهذه الحالة المحددة (أي الصوت). في كل إطار، يتم "تشغيل" الصوت من التوزيع الاحتمالي المطابق للصوت المحدد. ثانياً، التحولات ممكنة بين الدول، وتخضع أيضاً لأنماط احتمالية محددة سلفاً. على سبيل المثال، احتمال أن "يمتد" الصوت [a] مرتفع، وهو ما لا يمكن قوله عن الصوت [d]. تحدد مصفوفة الانبعاث ومصفوفة الانتقال نموذج ماركوف المخفي بشكل فريد.

حسنًا، لقد نظرنا في كيفية استخدام نموذج ماركوف المخفي لتوليد الكلام، ولكن كيف يمكننا تطبيقه على المشكلة العكسية للتعرف على الكلام؟ تأتي خوارزمية Viterbi للإنقاذ. لدينا مجموعة من الكميات التي يمكن ملاحظتها (في الواقع، صوت) ونموذج احتمالي يربط بين الحالات المخفية (الصوتيات) والكميات المرصودة. تتيح لك خوارزمية Viterbi استعادة التسلسل الأكثر احتمالاً للحالات المخفية.

لنفترض أن هناك كلمتين فقط في قاموس التعرف الخاص بنا: "Yes" ([d][a]) و"No" ([n"][e][t]). وهكذا، لدينا نموذجان مخفيان لماركوف. فلنحصل على تسجيل لصوت المستخدم وهو يقول "نعم" أو "لا". ستسمح لنا خوارزمية فيتربي بالإجابة على سؤال ما هي فرضية التعرف الأكثر احتمالاً.

الآن تتلخص مهمتنا في استعادة التسلسل الأكثر احتمالا لحالات نموذج ماركوف المخفي، الذي "أنتج" (بتعبير أدق، كان من الممكن أن يولد) التسجيل الصوتي المقدم لنا. إذا قال المستخدم "نعم"، فإن التسلسل المقابل للحالات عبر 10 إطارات يمكن أن يكون، على سبيل المثال، [d] [d] [d] [d] [a] [a] [a] [a] [أ] أو [د] [أ] [أ] [أ] [أ] [أ] [أ] [أ]. وبالمثل، فمن الممكن خيارات مختلفةنطق كلمة "no" - على سبيل المثال، [n"][n"][n"][e][e][e][e][t][t][t] و [n"][n" ] [e] [e] [e] [e] [t] [t]. الآن سوف نجد الطريقة "الأفضل" ، وهي الطريقة الأكثر احتمالاً لنطق كل كلمة الإطار سوف نسأل نموذجنا الصوتي، ما مدى احتمالية ظهور صوت معين هنا (على سبيل المثال، [d] و [a])؛ بالإضافة إلى ذلك، سنأخذ في الاعتبار احتمالات التحولات ([d]-> [d]، [d]->[a]، [a] ]->[a]). بهذه الطريقة سنحصل على الطريقة الأكثر احتمالا لنطق كل كلمة من الكلمات الفرضية؛ علاوة على ذلك، سنحصل على كل منها مقياس لمدى احتمالية نطق هذه الكلمة بالذات (يمكننا اعتبار هذا المقياس بمثابة طول أقصر مسار من خلال الرسم البياني المقابل). نتيجة الاعتراف.

إن خوارزمية Viterbi سهلة التنفيذ للغاية (يتم استخدام البرمجة الديناميكية) وتعمل في وقت يتناسب مع ناتج عدد حالات HMM وعدد الإطارات. ومع ذلك، لا يكفينا دائمًا أن نعرف المسار الأرجح؛ على سبيل المثال، عند تدريب نموذج صوتي، تحتاج إلى تقدير احتمالية كل حالة في كل إطار. ولهذا الغرض، يتم استخدام خوارزمية الأمام والخلف.

ومع ذلك، فإن النموذج الصوتي هو مجرد عنصر واحد من النظام. ماذا تفعل إذا كان قاموس التعرف لا يتكون من كلمتين، كما في المثال الذي تمت مناقشته أعلاه، بل من مئات الآلاف أو حتى الملايين؟ سيكون الكثير منهم متشابهين جدًا في النطق أو حتى نفس الشيء. في الوقت نفسه، في ظل وجود السياق، يتناقص دور الصوتيات: يمكن استعادة الكلمات الغامضة أو الصاخبة أو الغامضة "ضمن المعنى". لمراعاة السياق، يتم استخدامها مرة أخرى النماذج الاحتمالية. على سبيل المثال، يفهم أحد المتحدثين باللغة الروسية أن الجملة الطبيعية (في حالتنا، الاحتمالية) للجملة "أمي غسلت الإطار" أعلى من عبارة "أمي غسلت السيكلوترون" أو "أمي غسلت الإطار". أي أن وجود سياق ثابت "أم الصابون..." يحدد التوزيع الاحتمالي لـ الكلمة التالية، وهو ما يعكس كلا من الدلالات والصرف. يسمى هذا النوع من نماذج اللغة نماذج لغة n-gram (ثلاثية الأشكال في المثال الذي تمت مناقشته أعلاه)؛ بالطبع، هناك طرق أكثر تعقيدًا وقوة لنمذجة اللغة.

ثانيا. ما هو تحت غطاء محرك السيارة من Yandex ASR؟
الآن بعد أن نتخيل جهاز عامأنظمة التعرف على الكلام، سنصف بمزيد من التفصيل تفاصيل تقنية Yandex - الأفضل، وفقًا لبياناتنا، نظام التعرف على الكلام الروسي.
عند النظر في أمثلة الألعاب المذكورة أعلاه، قمنا عمدًا بإجراء العديد من التبسيطات وحذفنا عددًا من التفاصيل المهمة. وعلى وجه الخصوص، جادلنا بأن "وحدة البناء" الأساسية للكلام هي الصوت. في الواقع، الصوت هو وحدة كبيرة جدًا؛ لنمذجة نطق صوت واحد بشكل مناسب، يتم استخدام ثلاث حالات منفصلة - بداية الصوت ووسطه ونهايته. معًا يشكلون نفس HMM كما هو مذكور أعلاه. بالإضافة إلى ذلك، تعتمد الصوتيات على الموضع والسياق: رسميًا، يبدو الصوت "نفسه" مختلفًا بشكل كبير اعتمادًا على جزء الكلمة الموجود فيه والصوتيات المجاورة له. وفي الوقت نفسه، قائمة بسيطة للجميع الخيارات الممكنةسوف تعود الصوتيات الحساسة للسياق للغاية رقم ضخممجموعات، الكثير منها لا يحدث أبدًا في الحياة الواقعية؛ لجعل عدد الأحداث الصوتية معقولاً، يتم دمج الصوتيات الحساسة للسياق المراحل الأولىالتدريب وتعتبر معا.
وهكذا، قمنا أولاً بجعل الصوتيات حساسة للسياق، وثانياً، قسمنا كل منها إلى ثلاثة أجزاء. هذه الكائنات - "أجزاء الصوت" - تشكل الآن صوتنا الأحرف الصوتية. ويطلق عليهم أيضًا اسم Senones. كل حالة من حالات HMM لدينا هي سينون. يستخدم نموذجنا 48 صوتًا وحوالي 4000 سينونا.

لذلك، لا يزال نموذجنا الصوتي يأخذ الصوت كمدخل، وعند الإخراج يعطي توزيعًا احتماليًا على السينونات. الآن دعونا نلقي نظرة على ما يتم توفيره بالضبط للمدخلات. كما قلنا، يتم قطع الصوت إلى أقسام 25 مللي ثانية ("إطارات"). عادة، تكون خطوة التقطيع 10 مللي ثانية، بحيث تتداخل الإطارات المجاورة جزئيًا. من الواضح أن الصوت "الخام" - سعة التذبذبات بمرور الوقت - ليس هو الشكل الأكثر إفادة لتمثيل الإشارة الصوتية. طيف هذه الإشارة أفضل بكثير. في الممارسة العملية، عادة ما يتم استخدام طيف لوغاريتمي ومتدرج، والذي يتوافق مع قوانين الإنسان الإدراك السمعي(تحول ميل). تخضع القيم الناتجة لتحويل جيب التمام المنفصل (DCT)، والنتيجة هي MFCC - معاملات ميل التردد Cepstral. (يتم الحصول على كلمة Cepstral عن طريق إعادة ترتيب الحروف في Spectral، مما يعكس وجود DCT إضافي). MFCC هو متجه لـ 13 رقمًا حقيقيًا (عادةً). ويمكن استخدامها كمدخل لنموذج صوتي في شكله الخام، ولكنها غالبًا ما تخضع للعديد من التحولات الإضافية.

يعد تدريب النموذج الصوتي عملية معقدة ومتعددة الخطوات. للتدريب، يتم استخدام خوارزميات من عائلة التوقع-التعظيم، مثل خوارزمية باوم-ويلش. جوهر الخوارزميات من هذا النوع هو تناوب خطوتين: في خطوة التوقع، يتم استخدام النموذج الحالي لحساب توقع دالة الاحتمالية؛ في خطوة التعظيم، يتم تغيير معلمات النموذج بطريقة تؤدي إلى تعظيمها هذا التقدير. في المراحل الأولى من التدريب، يتم استخدام نماذج صوتية بسيطة: يتم تقديم ميزات MFCC البسيطة كمدخلات، ويتم أخذ الصوتيات في الاعتبار دون الاعتماد على السياق، ويتم استخدام خليط من Gaussians مع مصفوفات التغاير القطري (GMMs القطرية - نماذج الخليط الغوسي) لنمذجة احتمالية الانبعاث في HMM. تعتبر نتائج كل نموذج صوتي سابق هي نقطة البداية لمزيد من التدريب نموذج معقد، مع وظيفة توزيع احتمالية الإدخال أو الإخراج أو الانبعاثات الأكثر تعقيدًا. هناك العديد من الطرق لتحسين النموذج الصوتي، ولكن التأثير الأكثر أهمية هو الانتقال من نموذج GMM إلى DNN (الشبكة العصبية العميقة)، مما يضاعف جودة التعرف تقريبًا. الشبكات العصبية خالية من العديد من قيود الخلائط الغوسية وتتمتع بقدرة تعميم أفضل. بالإضافة إلى ذلك، فإن النماذج الصوتية المبنية على الشبكات العصبية تكون أكثر مقاومة للضوضاء ولها أداء أفضل.

يتم تدريب الشبكة العصبية للنمذجة الصوتية على عدة مراحل. لتهيئة الشبكة العصبية، يتم استخدام مجموعة من آلات بولتزمان المقيدة (RBM). RBM هي شبكة عصبية عشوائية تتدرب بدون معلم. وعلى الرغم من أن الأوزان التي يتعلمها لا يمكن استخدامها مباشرة للتمييز بين فئات الأحداث الصوتية، إلا أنها تعكس بنية الكلام بالتفصيل. يمكنك التفكير في الإدارة القائمة على النتائج باعتبارها مستخرجًا للميزات - حيث يتبين أن النموذج التوليدي الناتج يمثل نقطة انطلاق ممتازة لبناء نموذج تمييزي. يتم تدريب النموذج التمييزي باستخدام خوارزمية الانتشار العكسي الكلاسيكية، والتي تطبق عددًا من التقنياتوتحسين التقارب ومنع التجهيز الزائد. ونتيجة لذلك، فإن مدخلات الشبكة العصبية عبارة عن عدة إطارات ذات ميزات MFCC (يخضع الإطار المركزي للتصنيف، والباقي يشكل السياق)، ويبلغ الإخراج حوالي 4000 خلية عصبية تتوافق مع مختلف السينونات. تُستخدم هذه الشبكة العصبية كنموذج صوتي في نظام الإنتاج.

دعونا نلقي نظرة فاحصة على عملية فك التشفير. لمهمة الاعتراف خطاب عفويمع قاموس كبيرالنهج الموصوف في القسم الأول غير قابل للتطبيق. أنت بحاجة إلى بنية بيانات تربط كل شيء معًا الاقتراحات الممكنةالتي يمكن للنظام التعرف عليها. الهيكل المناسب هو محول الطاقة ذو الحالة المحدودة الموزونة (WFST) - في الأساس مجرد آلة ذات حالة محدودة مع شريط إخراج وأوزان على الحواف. عند إدخال هذا الجهاز توجد السينونات، وعند الإخراج توجد الكلمات. تأتي عملية فك التشفير في الاختيار أفضل طريقةفي هذا الجهاز وتوفير تسلسل إخراج من الكلمات المقابلة لهذا المسار. في هذه الحالة، يتكون سعر المرور على طول كل قوس من عنصرين. المكون الأول معروف مسبقًا ويتم حسابه في مرحلة تجميع الآلة. ويشمل تكلفة النطق، والانتقال إلى حالة معينة، وتقييم الاحتمالية من نموذج اللغة. يتم حساب المكون الثاني بشكل منفصل لإطار معين: هذا هو الوزن الصوتي للسينون المطابق لرمز الإدخال للقوس المعني. يتم فك التشفير في الوقت الفعلي، لذلك لا يتم فحص كل شيء الطرق الممكنة: الاستدلالات الخاصة تقصر مجموعة الفرضيات على الفرضيات الأكثر احتمالا.

وبطبيعة الحال، فإن الجزء الأكثر إثارة للاهتمام من الناحية الفنية هو بناء مثل هذا الإنسان الآلي. تم حل هذه المهمة دون اتصال بالإنترنت. للانتقال من HMMs البسيطة لكل صوت حساس للسياق إلى آلي خطي لكل كلمة، نحتاج إلى استخدام قاموس النطق. من المستحيل إنشاء مثل هذا القاموس يدويًا، ويتم استخدام الأساليب هنا التعلم الالي(والمهمة نفسها هي المجتمع العلمييسمى Grapheme-To-Phoneme، أو G2P). وفي المقابل، يتم "ضم" الكلمات مع بعضها البعض في نموذج لغوي، يتم تقديمه أيضًا في النموذج آلة الدولة المحدودة. العملية المركزية هنا هي تكوين WFST، ولكنها مهمة أيضًا أساليب مختلفةتحسين WFST من حيث الحجم وكفاءة التخزين.

نتيجة عملية فك التشفير هي قائمة من الفرضيات التي يمكن معالجتها بشكل أكبر. على سبيل المثال، يمكنك استخدام نموذج لغة أكثر قوة لإعادة ترتيب الفرضيات الأكثر احتمالاً. يتم إرجاع القائمة الناتجة إلى المستخدم، مرتبة حسب قيمة الثقة - الدرجة التي نثق بها في إجراء التعرف بشكل صحيح. غالبًا ما تكون هناك فرضية واحدة متبقية، وفي هذه الحالة يشرع تطبيق العميل على الفور في تنفيذ الأمر الصوتي.

في الختام، دعونا نتطرق إلى مسألة مقاييس الجودة لأنظمة التعرف على الكلام. المقياس الأكثر شيوعًا هو معدل خطأ الكلمات (وعكسه دقة الكلمات). في الأساس، فهو يعكس نسبة الكلمات التي تم التعرف عليها بشكل غير صحيح. لحساب معدل خطأ الكلمات لنظام التعرف على الكلام، يتم استخدام مجموعات مكتوبة بخط اليد من الاستعلامات الصوتية التي تطابق موضوع التطبيق باستخدام التعرف على الكلام.

SpeechKit Cloud هو برنامج يمنح المطورين إمكانية الوصول إلى تقنيات Yandex للتعرف على الكلام وتركيبه. يتم تنفيذ التكامل باستخدام وحدة Yandex TTS، المتوفرة من خلال سوق الوظائف الإضافية لنظام MajorDoMo.

إجراء التثبيت والتكوين بسيط للغاية ويكتمل في عدة خطوات.

1. انتقل إلى لوحة التحكم

2. اذهب إلى سوق الإضافات

3. انتقل إلى قسم "التفاعل".

4. أضف وحدة نمطية إلى نظام MajorDomo - لوحة التحكم - سوق الإضافات - التفاعل - Yandex TTS - أضف:

5. سيقوم النظام بإبلاغنا بنجاح التثبيت وإعادة التوجيه إلى صفحة "سوق الإضافات":

6. لتكوين الوحدة بشكل أكبر، تحتاج إلى Yandex Api Key، والذي يمكن الحصول عليه مجانًا في حساب المطور باستخدام حساب موجود حسابياندكس:

7. قم بتعيين اسم للمفتاح الذي يتم إنشاؤه وانقر فوق SpeechKit Cloud:

8. املأ الحقول المطلوبة بالبيانات وانقر على زر "إرسال":

9. إذا تم كل شيء بشكل صحيح، فسيظهر مفتاح API الذي تم إنشاؤه في القائمة الموجودة على اليمين، والتي يجب نسخها إلى الحافظة:

10. افتح إعدادات وحدة Yantex TTS (MajorDoMo - لوحة التحكم - التطبيقات - Yandex TTS)، في حقل مفتاح API، الصق المفتاح المنسوخ في الخطوة السابقة، وحدد الصوت، والحالة المزاجية، وتأكد أيضًا من أن الوحدة انه مفعل:

11. اكتمل الإعداد!

انتباه!يتم إنشاء اختبار Yandex Api Key لمدة شهر واحد، وبعد ذلك سيتوقف النظام عن التعبير عن العبارات الجديدة (غير المخزنة مؤقتًا). للحصول على مفتاح دائم، يجب عليك إرسال خطاب إلى Yandex مع طلب نقل المفتاح إلى مفتاح دائم.

تقنية التعرف على الكلام

ياندكس Speechkit Autopoet.

تحضير النص

النطق والتجويد

صفحة أو على موقع ويب خاص بالموارد

ربما أتيحت للعديد منكم الفرصة للتحكم في جهاز كمبيوتر أو هاتف ذكي باستخدام صوتك. عندما تخبر Navigator "لنذهب إلى Gogol، 25" أو تقول في تطبيق Yandex استعلام بحثتعمل تقنية التعرف على الكلام على تحويل صوتك إلى أمر نصي. ولكن هناك أيضا مشكلة عكسية: تحويل النص الموجود تحت تصرف الكمبيوتر إلى صوت.

يستخدم Yandex تقنية تركيب الكلام من مجمع Yandex Speechkit للنصوص الصوتية. على سبيل المثال، يسمح لك بمعرفة كيفية النطق كلمات اجنبيةوالعبارات في المترجم. بفضل تركيب الكلام، حصل Autopoet أيضًا على صوته الخاص.

تحضير النص

النطق والتجويد

بمعنى آخر، يتم استخدام الكثير من البيانات لتجميع كل 25 مللي ثانية من الكلام. تضمن المعلومات المتعلقة بالبيئة المباشرة الانتقال السلس من إطار إلى إطار ومن مقطع لفظي إلى مقطع لفظي، كما يلزم وجود معلومات حول العبارة والجملة ككل لإنشاء التجويد الصحيحالكلام المركب.

يتم استخدام نموذج صوتي لقراءة النص المعد. وهو يختلف عن النموذج الصوتي المستخدم في التعرف على الكلام. في حالة التعرف على النموذج، من الضروري إنشاء مراسلات بين الأصوات ذات الخصائص والصوتيات المحددة. في حالة التوليف، يجب على النموذج الصوتي، على العكس من ذلك، بناء على أوصاف الإطارات، إنشاء أوصاف للأصوات.

كيف يعرف النموذج الصوتي كيفية نطق الصوت بشكل صحيح أو إعطاء التجويد الصحيح؟ الجملة الاستفهام؟ تتعلم من النصوص والملفات الصوتية. على سبيل المثال، يمكنك تحميل كتاب صوتي والنص المقابل فيه. كلما زاد عدد البيانات التي يتعلمها النموذج، كان نطقه ونغمه أفضل.

يمكن العثور على مزيد من المعلومات حول التقنيات من مجمع Yandex SpeechKit على هذه الصفحة أو على مورد خاص. إذا كنت مطورًا وترغب في اختبار السحابة أو اصدار المحمولسوف يساعدك موقع SpeechKit، وهو موقع مخصص لتقنيات Yandex.

""، "contentType": "text/html"، "amp": "

ربما أتيحت للعديد منكم الفرصة للتحكم في جهاز كمبيوتر أو هاتف ذكي باستخدام صوتك. عندما تقول لـ Navigator "دعنا نذهب إلى Gogol, 25" أو تقول استعلام بحث في تطبيق Yandex، تقوم تقنية التعرف على الكلام بتحويل صوتك إلى أمر نصي. ولكن هناك أيضًا مهمة معاكسة: تحويل النص الموجود تحت تصرف الكمبيوتر إلى صوت.

إذا كانت مجموعة النصوص التي يجب التعبير عنها صغيرة نسبيًا وتوجد فيها نفس التعبيرات - كما هو الحال، على سبيل المثال، في إعلانات مغادرة القطارات ووصولها إلى المحطة - يكفي دعوة متحدث والتسجيل فيه الاستوديو الكلمات الصحيحةوالعبارات، ومن ثم تجميع رسالة منها. ومع ذلك، فإن هذا النهج لا يعمل مع النصوص التعسفية. هذا هو المكان الذي تصبح فيه تقنية تركيب الكلام مفيدة.

يستخدم Yandex تقنية تركيب الكلام من مجمع Yandex Speechkit للنصوص الصوتية. على سبيل المثال، يسمح لك بمعرفة كيفية نطق الكلمات والعبارات الأجنبية في المترجم. بفضل تركيب الكلام، حصل Autopoet أيضًا على صوته الخاص.

تحضير النص

يتم حل مشكلة تركيب الكلام على عدة مراحل. أولاً، تقوم خوارزمية خاصة بإعداد النص بحيث يكون مناسبًا للروبوت لقراءته: فهو يكتب جميع الأرقام بالكلمات ويوسع الاختصارات. ثم يتم تقسيم النص إلى عبارات، أي إلى عبارات ذات تجويد مستمر - ولهذا يركز الكمبيوتر على علامات الترقيم والهياكل المستقرة. لجميع الكلمات يتم تجميعها النسخ الصوتي.

لفهم كيفية قراءة كلمة ما ومكان التركيز عليها، يلجأ الروبوت أولاً إلى القواميس الكلاسيكية المجمعة يدويًا والمضمنة في النظام. إذا لم تكن الكلمة المطلوبة موجودة في القاموس، يقوم الكمبيوتر ببناء النسخ من تلقاء نفسه - بناءً على القواعد المستعارة منه الكتب المرجعية الأكاديمية. وأخيراً إذا القواعد العاديةتبين أنها غير كافية - وهذا يحدث، لأن أي لغة حية تتغير باستمرار - فهي تستخدم القواعد الإحصائية. إذا ظهرت الكلمة في متن الطائرة نصوص تدريبية، سيتذكر النظام المقطع الذي يركز عليه المتحدثون عادةً.

النطق والتجويد

عندما يكون النسخ جاهزًا، يحسب الكمبيوتر المدة التي سيصدر فيها كل صوت، أي عدد الإطارات التي يحتوي عليها - وهذا ما يسمى الأجزاء التي يبلغ طولها 25 مللي ثانية. ثم يتم وصف كل إطار وفقًا للعديد من العوامل: ما هو الصوت الذي ينتمي إليه والمكان الذي يشغله فيه؛ إلى أي مقطع لفظي ينتمي هذا الصوت؟ إذا كان حرف علة، فهل يتم التشديد عليه؟ ما المكان الذي تحتله في مقطع لفظي؟ مقطع لفظي - في كلمة واحدة؛ كلمة - في عبارة؛ ما هي علامات الترقيم الموجودة قبل هذه العبارة وبعدها؟ ما المكان الذي تشغله العبارة في الجملة؟ وأخيرا، ما هي العلامة الموجودة في نهاية الجملة وما هو تجويدها الرئيسي.

بمعنى آخر، يتم استخدام الكثير من البيانات لتجميع كل 25 مللي ثانية من الكلام. تضمن المعلومات حول البيئة المباشرة الانتقال السلس من الإطار إلى الإطار ومن مقطع لفظي إلى مقطع لفظي، كما أن المعلومات حول العبارة والجملة ككل ضرورية لإنشاء التنغيم الصحيح للكلام المركب.

يتم استخدام نموذج صوتي لقراءة النص المعد. وهو يختلف عن النموذج الصوتي المستخدم في التعرف على الكلام. في حالة التعرف على النموذج، من الضروري إنشاء مراسلات بين الأصوات ذات الخصائص والصوتيات المحددة. في حالة التوليف، يجب على النموذج الصوتي، على العكس من ذلك، بناء على أوصاف الإطارات، إنشاء أوصاف للأصوات.

كيف يعرف النموذج الصوتي كيفية نطق الصوت بشكل صحيح أو إعطاء التجويد الصحيح لجملة الاستفهام؟ تتعلم من النصوص والملفات الصوتية. على سبيل المثال، يمكنك تحميل كتاب صوتي والنص المقابل فيه. كلما زاد عدد البيانات التي يتعلمها النموذج، كان نطقه ونغمه أفضل.

وأخيرا، عن الصوت نفسه. ما يجعل أصواتنا يمكن التعرف عليها، في المقام الأول، هو الجرس، الذي يعتمد على السمات الهيكلية للأعضاء. جهاز الكلامكل شخص. يمكن تصميم جرس صوتك، أي يمكن وصف خصائصه - للقيام بذلك، يكفي قراءة مجموعة صغيرة من النصوص في الاستوديو. بعد ذلك، يمكن استخدام البيانات المتعلقة بجرس صوتك لتجميع الكلام بأي لغة، حتى تلك التي لا تعرفها. عندما يحتاج الروبوت إلى إخبارك بشيء ما، فإنه يستخدم مولدًا موجات صوتية- مشفر صوتي. أنه يحتوي على معلومات حول خصائص الترددالعبارات المستلمة من النموذج الصوتي، بالإضافة إلى البيانات الموجودة على الجرس، والتي تعطي الصوت لونًا يمكن التعرف عليه.

يمكن العثور على مزيد من المعلومات حول التقنيات من مجمع Yandex SpeechKit على هذه الصفحة أو على مورد خاص. إذا كنت مطورًا وترغب في اختبار النسخة السحابية أو النسخة المحمولة من SpeechKit، فسيساعدك الموقع المخصص لتقنيات Yandex.

""،"مقالة فورية":"

ربما أتيحت للعديد منكم الفرصة للتحكم في جهاز كمبيوتر أو هاتف ذكي باستخدام صوتك. عندما تقول لـ Navigator "دعنا نذهب إلى Gogol, 25" أو تقول استعلام بحث في تطبيق Yandex، تقوم تقنية التعرف على الكلام بتحويل صوتك إلى أمر نصي. ولكن هناك أيضًا مهمة معاكسة: تحويل النص الموجود تحت تصرف الكمبيوتر إلى صوت.

إذا كانت مجموعة النصوص التي يجب التعبير عنها صغيرة نسبيًا وتحتوي على نفس التعبيرات - كما هو الحال، على سبيل المثال، في إعلانات مغادرة القطارات ووصولها إلى المحطة - يكفي دعوة متحدث وتسجيل الكلمات الضرورية والعبارات في الاستوديو ومن ثم جمع الرسالة منها. ومع ذلك، فإن هذا النهج لا يعمل مع النصوص التعسفية. هذا هو المكان الذي تصبح فيه تقنية تركيب الكلام مفيدة.

يستخدم Yandex تقنية تركيب الكلام من مجمع Yandex Speechkit للنصوص الصوتية. على سبيل المثال، يسمح لك بمعرفة كيفية نطق الكلمات والعبارات الأجنبية في المترجم. بفضل تركيب الكلام، حصل Autopoet أيضًا على صوته الخاص.

تحضير النص

يتم حل مشكلة تركيب الكلام على عدة مراحل. أولاً، تقوم خوارزمية خاصة بإعداد النص بحيث يكون مناسبًا للروبوت لقراءته: فهو يكتب جميع الأرقام بالكلمات ويوسع الاختصارات. ثم يتم تقسيم النص إلى عبارات، أي إلى عبارات ذات تجويد مستمر - ولهذا يركز الكمبيوتر على علامات الترقيم والهياكل المستقرة. يتم تجميع النسخ الصوتي لجميع الكلمات.

لفهم كيفية قراءة كلمة ما ومكان التركيز عليها، يلجأ الروبوت أولاً إلى القواميس الكلاسيكية المجمعة يدويًا والمضمنة في النظام. إذا لم تكن الكلمة المطلوبة موجودة في القاموس، يقوم الكمبيوتر ببناء النسخ من تلقاء نفسه، بناءً على القواعد المستعارة من الكتب المرجعية الأكاديمية. وأخيرا، إذا لم تكن القواعد المعتادة كافية - وهذا يحدث، لأن أي لغة حية تتغير باستمرار - فإنه يستخدم القواعد الإحصائية. إذا تم العثور على كلمة في مجموعة نصوص التدريب، فسيتذكر النظام المقطع الذي يركز عليه المتحدثون عادةً فيه.

النطق والتجويد

عندما يكون النسخ جاهزًا، يحسب الكمبيوتر المدة التي سيصدر فيها كل صوت، أي عدد الإطارات التي يحتوي عليها - وهذا ما يسمى الأجزاء التي يبلغ طولها 25 مللي ثانية. ثم يتم وصف كل إطار وفقًا للعديد من العوامل: ما هو الصوت الذي ينتمي إليه والمكان الذي يشغله فيه؛ إلى أي مقطع لفظي ينتمي هذا الصوت؟ إذا كان حرف علة، فهل يتم التشديد عليه؟ ما المكان الذي تحتله في مقطع لفظي؟ مقطع لفظي - في كلمة واحدة؛ كلمة - في عبارة؛ ما هي علامات الترقيم الموجودة قبل هذه العبارة وبعدها؟ ما المكان الذي تشغله العبارة في الجملة؟ وأخيرا، ما هي العلامة الموجودة في نهاية الجملة وما هو تجويدها الرئيسي.

بمعنى آخر، يتم استخدام الكثير من البيانات لتجميع كل 25 مللي ثانية من الكلام. تضمن المعلومات حول البيئة المباشرة الانتقال السلس من الإطار إلى الإطار ومن مقطع لفظي إلى مقطع لفظي، كما أن المعلومات حول العبارة والجملة ككل ضرورية لإنشاء التنغيم الصحيح للكلام المركب.

يتم استخدام نموذج صوتي لقراءة النص المعد. وهو يختلف عن النموذج الصوتي المستخدم في التعرف على الكلام. في حالة التعرف على النموذج، من الضروري إنشاء مراسلات بين الأصوات ذات الخصائص والصوتيات المحددة. في حالة التوليف، يجب على النموذج الصوتي، على العكس من ذلك، بناء على أوصاف الإطارات، إنشاء أوصاف للأصوات.

كيف يعرف النموذج الصوتي كيفية نطق الصوت بشكل صحيح أو إعطاء التجويد الصحيح لجملة الاستفهام؟ تتعلم من النصوص والملفات الصوتية. على سبيل المثال، يمكنك تحميل كتاب صوتي والنص المقابل فيه. كلما زاد عدد البيانات التي يتعلمها النموذج، كان نطقه ونغمه أفضل.

وأخيرا، عن الصوت نفسه. ما يجعل أصواتنا يمكن التعرف عليها، أولا وقبل كل شيء، هو الجرس، الذي يعتمد على السمات الهيكلية لأعضاء جهاز الكلام في كل شخص. يمكن تصميم جرس صوتك، أي يمكن وصف خصائصه - للقيام بذلك، يكفي قراءة مجموعة صغيرة من النصوص في الاستوديو. بعد ذلك، يمكن استخدام البيانات المتعلقة بجرس صوتك لتجميع الكلام بأي لغة، حتى تلك التي لا تعرفها. عندما يحتاج الروبوت إلى إخبارك بشيء ما، فإنه يستخدم مولد موجة صوتية - مشفر صوتي. يتم تحميل معلومات حول خصائص تردد العبارة الواردة من النموذج الصوتي، بالإضافة إلى بيانات حول الجرس، الذي يمنح الصوت لونًا يمكن التعرف عليه.

يمكن العثور على مزيد من المعلومات حول التقنيات من مجمع Yandex SpeechKit على هذه الصفحة أو على مورد خاص. إذا كنت مطورًا وترغب في اختبار النسخة السحابية أو النسخة المحمولة من SpeechKit، فسيساعدك الموقع المخصص لتقنيات Yandex.

"),,"proposedBody":("المصدر":"

ربما أتيحت للعديد منكم الفرصة للتحكم في جهاز كمبيوتر أو هاتف ذكي باستخدام صوتك. عندما تقول لـ Navigator "دعنا نذهب إلى Gogol, 25" أو تقول استعلام بحث في تطبيق Yandex، تقوم تقنية التعرف على الكلام بتحويل صوتك إلى أمر نصي. ولكن هناك أيضًا مهمة معاكسة: تحويل النص الموجود تحت تصرف الكمبيوتر إلى صوت.

إذا كانت مجموعة النصوص التي يجب التعبير عنها صغيرة نسبيًا وتحتوي على نفس التعبيرات - كما هو الحال، على سبيل المثال، في إعلانات مغادرة القطارات ووصولها إلى المحطة - يكفي دعوة متحدث وتسجيل الكلمات الضرورية والعبارات في الاستوديو ومن ثم جمع الرسالة منها. ومع ذلك، فإن هذا النهج لا يعمل مع النصوص التعسفية. هذا هو المكان الذي تصبح فيه تقنية تركيب الكلام مفيدة.

يستخدم Yandex تقنية تركيب الكلام من مجمع Yandex Speechkit للنصوص الصوتية. على سبيل المثال، يسمح لك بمعرفة كيفية نطق الكلمات والعبارات الأجنبية في المترجم. بفضل تركيب الكلام، حصل Autopoet أيضًا على صوته الخاص.

تحضير النص

يتم حل مشكلة تركيب الكلام على عدة مراحل. أولاً، تقوم خوارزمية خاصة بإعداد النص بحيث يكون مناسبًا للروبوت لقراءته: فهو يكتب جميع الأرقام بالكلمات ويوسع الاختصارات. ثم يتم تقسيم النص إلى عبارات، أي إلى عبارات ذات تجويد مستمر - ولهذا يركز الكمبيوتر على علامات الترقيم والإنشاءات المستقرة. يتم تجميع النسخ الصوتي لجميع الكلمات.

لفهم كيفية قراءة كلمة ما ومكان التركيز عليها، يلجأ الروبوت أولاً إلى القواميس الكلاسيكية المجمعة يدويًا والمضمنة في النظام. إذا لم تكن الكلمة المطلوبة موجودة في القاموس، يقوم الكمبيوتر ببناء النسخ من تلقاء نفسه، بناءً على القواعد المستعارة من الكتب المرجعية الأكاديمية. وأخيرا، إذا لم تكن القواعد المعتادة كافية - وهذا يحدث، لأن أي لغة حية تتغير باستمرار - فإنه يستخدم القواعد الإحصائية. إذا تم العثور على كلمة في مجموعة نصوص التدريب، فسيتذكر النظام المقطع الذي يركز عليه المتحدثون عادةً فيه.

النطق والتجويد

عندما يكون النسخ جاهزًا، يحسب الكمبيوتر المدة التي سيصدر فيها كل صوت، أي عدد الإطارات التي يحتوي عليها - وهذا ما يسمى الأجزاء التي يبلغ طولها 25 مللي ثانية. ثم يتم وصف كل إطار وفقًا للعديد من العوامل: ما هو الصوت الذي ينتمي إليه والمكان الذي يشغله فيه؛ إلى أي مقطع لفظي ينتمي هذا الصوت؟ إذا كان حرف علة، فهل يتم التشديد عليه؟ ما المكان الذي تحتله في مقطع لفظي؟ مقطع لفظي - في كلمة واحدة؛ كلمة - في عبارة؛ ما هي علامات الترقيم الموجودة قبل هذه العبارة وبعدها؟ ما المكان الذي تشغله العبارة في الجملة؟ وأخيرا، ما هي العلامة الموجودة في نهاية الجملة وما هو تجويدها الرئيسي.

بمعنى آخر، يتم استخدام الكثير من البيانات لتجميع كل 25 مللي ثانية من الكلام. تضمن المعلومات حول البيئة المباشرة الانتقال السلس من الإطار إلى الإطار ومن مقطع لفظي إلى مقطع لفظي، كما أن المعلومات حول العبارة والجملة ككل ضرورية لإنشاء التنغيم الصحيح للكلام المركب.

يتم استخدام نموذج صوتي لقراءة النص المعد. وهو يختلف عن النموذج الصوتي المستخدم في التعرف على الكلام. في حالة التعرف على النموذج، من الضروري إنشاء مراسلات بين الأصوات ذات الخصائص والصوتيات المحددة. في حالة التوليف، يجب على النموذج الصوتي، على العكس من ذلك، بناء على أوصاف الإطارات، إنشاء أوصاف للأصوات.

كيف يعرف النموذج الصوتي كيفية نطق الصوت بشكل صحيح أو إعطاء التجويد الصحيح لجملة الاستفهام؟ تتعلم من النصوص والملفات الصوتية. على سبيل المثال، يمكنك تحميل كتاب صوتي والنص المقابل فيه. كلما زاد عدد البيانات التي يتعلمها النموذج، كان نطقه ونغمه أفضل.

وأخيرا، عن الصوت نفسه. ما يجعل أصواتنا يمكن التعرف عليها، أولا وقبل كل شيء، هو الجرس، الذي يعتمد على السمات الهيكلية لأعضاء جهاز الكلام في كل شخص. يمكن تصميم جرس صوتك، أي يمكن وصف خصائصه - للقيام بذلك، ما عليك سوى قراءة مجموعة صغيرة من النصوص في الاستوديو. بعد ذلك، يمكن استخدام البيانات المتعلقة بجرس صوتك لتجميع الكلام بأي لغة، حتى تلك التي لا تعرفها. عندما يحتاج الروبوت إلى إخبارك بشيء ما، فإنه يستخدم مولد موجة صوتية يسمى المشفر الصوتي. يتم تحميل معلومات حول خصائص تردد العبارة الواردة من النموذج الصوتي، بالإضافة إلى بيانات حول الجرس، الذي يمنح الصوت لونًا يمكن التعرف عليه.

يمكن العثور على مزيد من المعلومات حول التقنيات من مجمع Yandex SpeechKit على هذه الصفحة أو على مورد خاص. إذا كنت مطورًا وترغب في اختبار النسخة السحابية أو النسخة المحمولة من SpeechKit، فسيساعدك الموقع المخصص لتقنيات Yandex.

ربما أتيحت للعديد منكم الفرصة للتحكم في جهاز كمبيوتر أو هاتف ذكي باستخدام صوتك. عندما تقول لـ Navigator "دعنا نذهب إلى Gogol, 25" أو تقول استعلام بحث في تطبيق Yandex، تقوم تقنية التعرف على الكلام بتحويل صوتك إلى أمر نصي. ولكن هناك أيضًا مهمة معاكسة: تحويل النص الموجود تحت تصرف الكمبيوتر إلى صوت.

إذا كانت مجموعة النصوص التي يجب التعبير عنها صغيرة نسبيًا وتحتوي على نفس التعبيرات - كما هو الحال، على سبيل المثال، في إعلانات مغادرة القطارات ووصولها إلى المحطة - يكفي دعوة متحدث وتسجيل الكلمات الضرورية والعبارات في الاستوديو ومن ثم جمع الرسالة منها. ومع ذلك، فإن هذا النهج لا يعمل مع النصوص التعسفية. هذا هو المكان الذي تصبح فيه تقنية تركيب الكلام مفيدة.

يستخدم Yandex تقنية تركيب الكلام من مجمع Yandex Speechkit للنصوص الصوتية. على سبيل المثال، يسمح لك بمعرفة كيفية نطق الكلمات والعبارات الأجنبية في المترجم. بفضل تركيب الكلام، حصل Autopoet أيضًا على صوته الخاص.

تحضير النص

يتم حل مشكلة تركيب الكلام على عدة مراحل. أولاً، تقوم خوارزمية خاصة بإعداد النص بحيث يكون مناسبًا للروبوت لقراءته: فهو يكتب جميع الأرقام بالكلمات ويوسع الاختصارات. ثم يتم تقسيم النص إلى عبارات، أي إلى عبارات ذات تجويد مستمر - ولهذا يركز الكمبيوتر على علامات الترقيم والهياكل المستقرة. يتم تجميع النسخ الصوتي لجميع الكلمات.

لفهم كيفية قراءة كلمة ما ومكان التركيز عليها، يلجأ الروبوت أولاً إلى القواميس الكلاسيكية المجمعة يدويًا والمضمنة في النظام. إذا لم تكن الكلمة المطلوبة موجودة في القاموس، يقوم الكمبيوتر ببناء النسخ من تلقاء نفسه، بناءً على القواعد المستعارة من الكتب المرجعية الأكاديمية. وأخيرا، إذا لم تكن القواعد المعتادة كافية - وهذا يحدث، لأن أي لغة حية تتغير باستمرار - فإنه يستخدم القواعد الإحصائية. إذا تم العثور على كلمة في مجموعة نصوص التدريب، فسيتذكر النظام المقطع الذي يركز عليه المتحدثون عادةً فيه.

النطق والتجويد

عندما يكون النسخ جاهزًا، يحسب الكمبيوتر المدة التي سيصدر فيها كل صوت، أي عدد الإطارات التي يحتوي عليها - وهذا ما يسمى الأجزاء التي يبلغ طولها 25 مللي ثانية. ثم يتم وصف كل إطار وفقًا للعديد من العوامل: ما هو الصوت الذي ينتمي إليه والمكان الذي يشغله فيه؛ إلى أي مقطع لفظي ينتمي هذا الصوت؟ إذا كان حرف علة، فهل يتم التشديد عليه؟ ما المكان الذي تحتله في مقطع لفظي؟ مقطع لفظي - في كلمة واحدة؛ كلمة - في عبارة؛ ما هي علامات الترقيم الموجودة قبل هذه العبارة وبعدها؟ ما المكان الذي تشغله العبارة في الجملة؟ وأخيرا، ما هي العلامة الموجودة في نهاية الجملة وما هو تجويدها الرئيسي.

بمعنى آخر، يتم استخدام الكثير من البيانات لتجميع كل 25 مللي ثانية من الكلام. تضمن المعلومات حول البيئة المباشرة الانتقال السلس من الإطار إلى الإطار ومن مقطع لفظي إلى مقطع لفظي، كما أن المعلومات حول العبارة والجملة ككل ضرورية لإنشاء التنغيم الصحيح للكلام المركب.

يتم استخدام نموذج صوتي لقراءة النص المعد. وهو يختلف عن النموذج الصوتي المستخدم في التعرف على الكلام. في حالة التعرف على النموذج، من الضروري إنشاء مراسلات بين الأصوات ذات الخصائص والصوتيات المحددة. في حالة التوليف، يجب على النموذج الصوتي، على العكس من ذلك، بناء على أوصاف الإطارات، إنشاء أوصاف للأصوات.

كيف يعرف النموذج الصوتي كيفية نطق الصوت بشكل صحيح أو إعطاء التجويد الصحيح لجملة الاستفهام؟ تتعلم من النصوص والملفات الصوتية. على سبيل المثال، يمكنك تحميل كتاب صوتي والنص المقابل فيه. كلما زاد عدد البيانات التي يتعلمها النموذج، كان نطقه ونغمه أفضل.

وأخيرا، عن الصوت نفسه. ما يجعل أصواتنا يمكن التعرف عليها، أولا وقبل كل شيء، هو الجرس، الذي يعتمد على السمات الهيكلية لأعضاء جهاز الكلام في كل شخص. يمكن تصميم جرس صوتك، أي يمكن وصف خصائصه - للقيام بذلك، يكفي قراءة مجموعة صغيرة من النصوص في الاستوديو. بعد ذلك، يمكن استخدام البيانات المتعلقة بجرس صوتك لتجميع الكلام بأي لغة، حتى تلك التي لا تعرفها. عندما يحتاج الروبوت إلى إخبارك بشيء ما، فإنه يستخدم مولد موجة صوتية - مشفر صوتي. يتم تحميل معلومات حول خصائص تردد العبارة الواردة من النموذج الصوتي، بالإضافة إلى بيانات حول الجرس، الذي يمنح الصوت لونًا يمكن التعرف عليه.

يمكن العثور على مزيد من المعلومات حول التقنيات من مجمع Yandex SpeechKit على هذه الصفحة أو على مورد خاص. إذا كنت مطورًا وترغب في اختبار النسخة السحابية أو النسخة المحمولة من SpeechKit، فسيساعدك الموقع المخصص لتقنيات Yandex.

""، "contentType": "text/html")"، "authorId": "24151397"، "slug": "kak-eto-rabotaet-sintez-rechi"، "canEdit":false،"canComment":false،" isBanned":false,"canPublish":false,"viewType":minor",isDraft":false,"isOnModeration":false,"isOutdated":false,"isSubscriber":false,"commentsCount":55," التعديلDate: "Tue 03 2018 18:56:00 GMT+0000 (UTC)"، "isAutoPreview":false،"showPreview":true،"approvedPreview":("source": "

عندما تقول لـ Navigator "Let's go to Gogol, 25" أو تقول استعلام بحث بصوت عالٍ، تقوم تقنية التعرف على الكلام بتحويل صوتك إلى أمر نصي. هناك أيضًا مهمة معاكسة: تحويل النص إلى صوت. في بعض الأحيان يكفي دعوة المتحدث وكتابة الكلمات والعبارات الضرورية، لكن هذا لن ينجح مع النصوص التعسفية. هذا هو المكان الذي تصبح فيه تقنية تركيب الكلام مفيدة.

"،"contentType": "text/html")،"proposePreview":("source": "

عندما تقول لـ Navigator "Let's go to Gogol, 25" أو تقول استعلام بحث بصوت عالٍ، تقوم تقنية التعرف على الكلام بتحويل صوتك إلى أمر نصي. هناك أيضًا مهمة معاكسة: تحويل النص إلى صوت. في بعض الأحيان يكفي دعوة المتحدث وكتابة الكلمات والعبارات الضرورية، لكن هذا لن ينجح مع النصوص التعسفية. هذا هو المكان الذي تصبح فيه تقنية تركيب الكلام مفيدة.

عندما تقول لـ Navigator "Let's go to Gogol, 25" أو تقول استعلام بحث بصوت عالٍ، تقوم تقنية التعرف على الكلام بتحويل صوتك إلى أمر نصي. هناك أيضًا مهمة معاكسة: تحويل النص إلى صوت. في بعض الأحيان يكفي دعوة المتحدث وكتابة الكلمات والعبارات الضرورية، لكن هذا لن ينجح مع النصوص التعسفية. هذا هو المكان الذي تصبح فيه تقنية تركيب الكلام مفيدة.

"،"contentType": "text/html")، "titleImage":("h32":("height":32،"path": "/get-yablogs/47421/file_1475751201967/h32"، "width": 58,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/h32"),"major1000":("height":246,"path":":/get- yablogs/47421/file_1475751201967/major1000"، "width":444، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major1000")،"major288":(" height":156"،path":":"/get-yablogs/47421/file_1475751201967/major288"، "width": 287، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421" /file_1475751201967/major288"),"major300":("path":"/get-yablogs/47421/file_1475751201967/major300"،"fullPath":"https://avatars.mds.yandex.net/get-yablogs/ 47421/file_1475751201967/major300"، "width":300،"height":150)،،"major444":("path": "/get-yablogs/47421/file_1475751201967/major444"، "fullPath": "https: / /avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major444"، "width":444، "height": 246)،"major900":("path": "/get-yablogs/47421" / file_1475751201967/major900"، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major900"، "width":444، "height": 246)،"minor288" : ("path": "/get-yablogs/47421/file_1475751201967/minor288"، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/minor288"، "عرض" : 288،"height":160)،،"orig":("height":246،"path": "/get-yablogs/47421/file_1475751201967/orig"، "width": 444، "fullPath": " https: //avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/orig"),"touch288":("path": "/get-yablogs/47421/file_1475751201967/touch288"،"fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/touch288"، "width":444،"height":246)،،"touch444":("path": "/get -yablogs/ 47421/file_1475751201967/touch444"، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/touch444"، "width": 444، "height": 246) ,"touch900 ":("height":246,"path":":/get-yablogs/47421/file_1475751201967/touch900"،"width":444,"fullPath":https://avatars.mds.yandex. net/get -yablogs/47421/file_1475751201967/touch900"),"w1000":("height":246,"path":":/get-yablogs/47421/file_1475751201967/w1000"،"width":444"،fullPath" ": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w1000"),"w260h260":("height":246,path":":/get-yablogs/47421/ file_1475751201967/w260h260 ""، "width":260"، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w260h260")"،"w260h360":("height":246 "path ": "/get-yablogs/47421/file_1475751201967/w260h360"، "width": 260، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w260h360" "), "w288":("height":156,path":":/get-yablogs/47421/file_1475751201967/w288",width":282,"fullPath":https://avatars.mds. yandex.net /get-yablogs/47421/file_1475751201967/w288"),"w288h160":("height":160,"path":":/get-yablogs/47421/file_1475751201967/w288h160"،"width":288, "fullPath" :"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w288h160"),"w300":("height":162,"path":":/get-yablogs/ 47421/file_1475751201967 /w300"، "width":292، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w300")، "w444":("height" :246، "path": "/get-yablogs/47421/file_1475751201967/w444"، "width": 444، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967" /w444" ),"w900":("height":246,"path":":/get-yablogs/47421/file_1475751201967/w900", "width":444,"fullPath":":https://avatars. mds.yandex .net/get-yablogs/47421/file_1475751201967/w900"),"major620":("path": "/get-yablogs/47421/file_1475751201967/major620"، "fullPath": "https://avatars" .mds.yandex.net/get-yablogs/47421/file_1475751201967/major620"،"width":444،"height":150)))،،"tags":[("displayName":"تقنيات Yandex"،"slug. ": "tekhnologii -yandeksa"، "url": "/blog/company? ?tag=tekhnologii-yandeksa")),("displayName":"كيف يعمل؟""،"slug":"kak-eto-rabotaet"،"url":":/blog/company??tag=kak-eto - rabotaet")],"isModerator":false,"isTypography":false,"metaDescription":":"metaKeywords":":"dependentTitle":,"isAutoRelated":false,"commentsEnabled":true , "url": "/blog/company/kak-eto-rabotaet-sintez-rechi"، "urlTemplate": "/blog/company/%slug٪"، "fullBlogUrl": "https://yandex.ru/ blog /company"، "addCommentUrl": "/blog/createComment/company/kak-eto-rabotaet-sintez-rechi"، "updateCommentUrl": "/blog/updateComment/company/kak-eto-rabotaet-sintez-rechi" , "addCommentWithCaptcha":":/blog/createWithCaptcha/company/kak-eto-rabotaet-sintez-rechi"، "changeCaptchaUrl": "/blog/api/captcha/new"، "putImageUrl": "/blog/image/put" " ,"urlBlog": "/blog/company"، "urlEditPost": "/blog/57f4dd21ccb9760017cf4ccf/edit"، "urlSlug": "/blog/post/generateSlug"، "urlPublishPost": "/blog/57f4dd21ccb9760017cf4ccf/publish" " ,"urlUnpublishPost":":/blog/57f4dd21ccb9760017cf4ccf/unpublish"، "urlRemovePost": "/blog/57f4dd21ccb9760017cf4ccf/removePost"، "urlDraft": "/blog/company/kak-eto-rabotaet-sintez-rechi/draft" , "urlDraftTemplate":":/blog/company/%slug%/draft"، "urlRemoveDraft": "/blog/57f4dd21ccb9760017cf4ccf/removeDraft"، "urlTagSuggest": "/blog/api/suggest/company"، "urlAfterDelete": " /blog/company"، "isAuthor":false، "subscribeUrl": "/blog/api/subscribe/57f4dd21ccb9760017cf4ccf"، "unsubscribeUrl": "/blog/api/unsubscribe/57f4dd21ccb9760017cf4ccf"، "urlEditPostPage": "/blog / Company/57f4dd21ccb9760017cf4ccf/edit"، "urlForTranslate": "/blog/post/translate"، "urlRelateIssue": "/blog/post/updateIssue"، "urlUpdateTranslate": "/blog/post/updateTranslate"، "urlLoadTranslate" : "/blog/post/loadTranslate"، "urlTranslationStatus": "/blog/company/kak-eto-rabotaet-sintez-rechi/translationInfo"، "urlRelatedArticles": "/blog/api/dependentArticles/company/kak-eto" - rabotaet-sintez-rechi"، "author":("id":"24151397"،"uid":("value": "24151397"، "lite":false،"hosted":false)،،"الأسماء المستعارة" ": ("13": "chistyakova")،"login": "amarantta"، "display_name":("name": "Sveta Chistyakova"، "avatar":("default": "24700/24151397-15660497" ""فارغة":خطأ)))،"عنوان": [البريد الإلكتروني محمي] ""، "defaultAvatar": "24700/24151397-15660497"، "imageSrc": "https://avatars.mds.yandex.net/get-yapic/24700/24151397-15660497/islands-middle"، "isYandexStaff": true)،"originalModificationDate":":2018-04-03T15:56:07.719Z"، "socialImage":("h32":("height":32,"path":":/get-yablogs/47421/file_1475751201967/ h32"، "width": 58، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/h32")، "major1000":("height":246،" path "/get-yablogs/47421/file_1475751201967/major1000"، "width": 444، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major1000") ,"major288":("height":156,"path":":/get-yablogs/47421/file_1475751201967/major288", "width":287,"fullPath":":https://avatars.mds.yandex. net/get-yablogs/47421/file_1475751201967/major288"),"major300":("path": "/get-yablogs/47421/file_1475751201967/major300"،"fullPath":":https://avatars.mds.yandex .net/get-yablogs/47421/file_1475751201967/major300"، "width":300،"height":150)،،"major444":("path": "/get-yablogs/47421/file_1475751201967/major444"، " fullPath":":https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major444"، "width":444،"height":246)،،"major900":("path" :" /get-yablogs/47421/file_1475751201967/major900"، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major900"، "width": 444، "height ": 246)،"minor288":("path": "/get-yablogs/47421/file_1475751201967/minor288"، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/" file_1475751201967/ minor288"، "العرض": 288، "الارتفاع": 160)،" الأصل ":("الارتفاع": 246، "path": "/get-yablogs/47421/file_1475751201967/orig"، "العرض" :444, "fullPath":":https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/orig"),"touch288":("path":"/get-yablogs/47421/file_1475751201967 "" ("المسار" :"/get-yablogs/47421/file_1475751201967/touch444"، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/touch444"، "width": 444,"height ":246),,"touch900":("height":246,path":":/get-yablogs/47421/file_1475751201967/touch900",width":444,"fullPath":":https //avatars.yandex.net/get-yablogs/47421/file_1475751201967/touch900"),"w1000":("height":246,"path":/get-yablogs/47421/file_1475751201967/w1000" "width": 444,"fullPath":https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w1000"),"w260h260":("height":246,"path" :"/get- yablogs/47421/file_1475751201967/w260h260"، "width":260، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w260h260")،" w260h360":(" height":246,"path":":/get-yablogs/47421/file_1475751201967/w260h360", "width":260,"fullPath":":https://avatars.mds.yandex.net/ get-yablogs/47421 /file_1475751201967/w260h360"),"w288":("height":156,"path":":/get-yablogs/47421/file_1475751201967/w288"،"width":282"،fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w288"),"w288h160":("height":160,path":":/get-yablogs/47421/file_1475751201967/ w288h160"، "width ":288،"fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w288h160"),"w300":("height":162," path "/ get-yablogs/47421/file_1475751201967/w300"، "width": 292، "fullPath": "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w300") ,"w444": ("height":246,"path":":/get-yablogs/47421/file_1475751201967/w444", "width":444,"fullPath":":https://avatars.mds.yandex. net/get-yablogs /47421/file_1475751201967/w444"),"w900":("height":246,"path":":/get-yablogs/47421/file_1475751201967/w900"،"width":444,"fullPath "https: //avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w900"),"major620":("path":":"/get-yablogs/47421/file_1475751201967/major620"،" fullPath ""https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major620"،"width":444،"height":150))))">