بوت Telegram لتعلم اللغات


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

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

ما هو بالفعل هناك ولماذا لم يعجبني.


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

لذلك ، قررت أن أتطلع إلى برامج بسيطة لحفظ المفردات. حاولت العمل مع Lexilize Flashcards و Quizlet وبالطبع Anki .

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

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

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

لذلك ، كانت المهمة لإنشاء مثل هذا التطبيق من شأنه أن يساعد في إنشاء بطاقات القاموس ، وكان بسيط ومفيد.

ماذا فعلت


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

من أجل عدم التعامل مع الواجهة الأمامية ، قررت أن أكتب روبوتًا لـ Telegram ، حيث سمعت أن هذا النظام الأساسي هو الأنسب لكتابة برامج الروبوت (إذا كنت مخطئًا ، فاكتب في التعليقات). اخترت Python 3.7 كلغة برمجة وملف واجهة برمجة تطبيقات Telegram bot يسمى aiogram .

نظرًا لأنني لم أكتب أي شيء مثل هذا من قبل ، فقد اضطررت لقراءة بعض التجارب والتجربة وتمكنت من كتابة روبوت في غضون بضعة أيام.

ماذا حدث


لقد تحولت إلى أداة مفيدة (على الأقل بالنسبة لي) لتجديد المفردات.
المهام الرئيسية:

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

بعد ذلك ، سأوضح كيف يعمل الروبوت ، لكنني لن أتحمل أمثلة من اللغة الفنلندية ، لكنني سأوضح كيف يعمل الروبوت في اللغة الإنجليزية.

كيف يعمل؟


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

بعد قيام المستخدم بتشغيل الروبوت باستخدام الأمر / start وقراءة التعليمات الصغيرة في أوامره (المتوفرة أيضًا في أي وقت باستخدام الأمر / help ) ، يلزمك تحديد اللغة التي سيتعلمها ( / setlanguage ). يجب كتابة اسم اللغة باللغة الإنجليزية ، لذلك ، على سبيل المثال ، أكتب الفنلندية ، وليس Suomi ، عندما أدرس الكلمات الفنلندية.



بعد اختيار اللغة ، يمكنك البدء في إضافة الكلمات / الإضافات . الأمر بسيط - اكتب كلمة ، ويكاموس يعرض قائمة من المعاني (باللغة الإنجليزية). يمكنك اختيار قيمة واحدة. يمكنك الآن تحديد عدة قيم في وقت واحد وإضافة القيم الخاصة بك.



بعد إضافة الكلمات ، يمكنك البدء في دراسة المفردات ( / تعلم ) واختيار عدد الكلمات التي أرغب في العمل بها في هذا الوقت. ستحدد خوارزمية تكرار الفاصل الزمني أكثر الكلمات "المنسية" (أو التي تمت إضافتها للتو) وستعرض دراستها. إذا لم تكن هناك كلمات "منسية" ، فيمكنك تكرار الأمر المكتوب / الأمر باستخدام الأمر.



تبدأ دراسة الكلمات ذاتها بتكوين مهارة سلبية - التعرف على الكلمة. يظهر الروبوت كلمة ومهمة المستخدم لتذكر معناها. إذا كان المستخدم متأكدًا من أنه يتذكر الكلمة ، فإنه يضغط على تذكر ، إذا لم يكن متأكدًا من معرفته - إظهار المعنى .

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



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



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

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



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

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

من الواضح أنه يمكن القيام بالمزيد من المهام. ما رأيك سيكون يستحق إضافة؟

ما التالي


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

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

لذلك ، فإن الاستخدام الصحيح لأدوات مثل روبوتي هو أنه ينبغي أن يساعدوا في تذكر المفردات المحددة بالفعل.

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

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

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

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

لقد نسيت تقريبا. اسم الروبوت هو OppiWordsBot . سأكون سعيدًا إذا قمت باختباره واكتب لي تعليقاتك ومقترحاتك وتعليقاتك.

UPDATE
قام بإنشاء مجموعة في Telegram للتواصل حول الروبوت. تعال) https://t.me/OppiWords

UPDATE
يمكنك الآن تحديد عدة قيم في وقت واحد وإضافة القيم الخاصة بك.

UPDATE
أضيفت القدرة على إضافة كلمات من قوائم مفردات التردد لتعلم اللغة.

UPDATE
املأ الكود على github https://github.com/tezer/OppiWordsBot

Source: https://habr.com/ru/post/ar471196/


All Articles