ChatterBot هو محرك حوار تحادثي قائم على التعلم الآلي تم إنشاؤه في Python مما يجعل من الممكن إنشاء ردود بناءً على مجموعات من المحادثات المعروفة. يسمح التصميم المستقل للغة لـ ChatterBot بتدريبه على التحدث بأي لغة.
مثال على الإدخال النموذجي سيكون مثل هذا:
المستخدم: صباح الخير! كيف حالك؟
بوت: أنا في حالة جيدة جدًا، شكرًا لك على السؤال.
المستخدم: مرحبًا بك.
بوت: هل تحب القبعات؟
يبدأ مثيل ChatterBot غير المدرب دون معرفة كيفية التواصل. في كل مرة يقوم فيها المستخدم بإدخال بيان، تقوم المكتبة بحفظ النص الذي أدخله والنص الذي كان البيان ردًا عليه. عندما يتلقى ChatterBot المزيد من المدخلات، يزداد عدد الردود التي يمكنه الرد عليها وتزداد دقة كل استجابة فيما يتعلق ببيان الإدخال. يختار البرنامج أقرب استجابة مطابقة من خلال البحث عن أقرب عبارة معروفة مطابقة تتطابق مع الإدخال، ثم يقوم بإرجاع الاستجابة الأكثر احتمالاً لتلك العبارة بناءً على عدد مرات إصدار كل استجابة من قبل الأشخاص الذين يتواصل معهم الروبوت.
يمكن تثبيت هذه الحزمة من PyPi عن طريق تشغيل:
pip install chatterbot
from chatterbot import ChatBot
from chatterbot.trainers import ChatterBotCorpusTrainer
chatbot = ChatBot('Ron Obvious')
# Create a new trainer for the chatbot
trainer = ChatterBotCorpusTrainer(chatbot)
# Train the chatbot based on the english corpus
trainer.train("chatterbot.corpus.english")
# Get a response to an input statement
chatbot.get_response("Hello, how are you today?")
يأتي ChatterBot مزودًا بوحدة مساعدة للبيانات يمكن استخدامها لتدريب روبوتات الدردشة. توجد حاليًا بيانات تدريبية لأكثر من اثنتي عشرة لغة في هذه الوحدة. ستكون المساهمات ببيانات التدريب الإضافية أو بيانات التدريب بلغات أخرى موضع تقدير كبير. قم بإلقاء نظرة على ملفات البيانات الموجودة في حزمة chatterbot-corpus إذا كنت مهتمًا بالمساهمة.
from chatterbot.trainers import ChatterBotCorpusTrainer
# Create a new trainer for the chatbot
trainer = ChatterBotCorpusTrainer(chatbot)
# Train based on the english corpus
trainer.train("chatterbot.corpus.english")
# Train based on english greetings corpus
trainer.train("chatterbot.corpus.english.greetings")
# Train based on the english conversations corpus
trainer.train("chatterbot.corpus.english.conversations")
مساهمات كوربوس هي موضع ترحيب! يرجى تقديم طلب سحب.
اعرض وثائق ChatterBot على قراءة المستندات.
لإنشاء التوثيق بنفسك باستخدام Sphinx، قم بتشغيل:
sphinx-build -b html docs/ build/
للحصول على أمثلة، راجع دليل الأمثلة في مستودع git الخاص بهذا المشروع.
يوجد أيضًا مثال لمشروع Django باستخدام ChatterBot، بالإضافة إلى مثال لمشروع Flask باستخدام ChatterBot.
راجع ملاحظات الإصدار لمعرفة التغييرات https://github.com/gunthercox/ChatterBot/releases
master
، على سبيل المثال، أنشئ فرعًا جديدًا my-pull-request
.ChatterBot مرخص بموجب ترخيص BSD المكون من 3 فقرات.