GTUtor: نظام دردشة ديناميكي متعدد المواضيع
GTUtor هو نظام تعليمي ذكي مصمم خصيصًا لطلاب جامعة جوجارات التكنولوجية (GTU). فهو يجمع بين قوة Gemini Pro AI من Google ونظام المعرفة القائم على المستندات لتوفير استجابات دقيقة واعية بالسياق عبر موضوعات متعددة.
سمات
- دعم متعدد المواضيع : إنشاء وإدارة مواضيع متعددة باستخدام قواعد معرفية مستقلة
- ؟ تكامل المستندات : قم بتحميل مستندات PDF أو قم بتوفير عناوين URL لتعزيز قاعدة المعرفة
- واجهة الدردشة الذكية : نظام محادثة ديناميكي مع تتبع التاريخ
- ؟ الاستجابات المدركة للسياق : تجمع بين المعرفة بالمستندات وإمكانيات Gemini Pro
- إدارة قواعد البيانات : أدوات مدمجة لإدارة قواعد بيانات المستندات لكل موضوع
- ؟ التركيز على GTU : مصمم خصيصًا لمناهج ودورات GTU
- ؟ التخزين المستمر : يحفظ سجلات الدردشة وبيانات الموضوع تلقائيًا
- ؟ وظيفة النسخ : سهولة نسخ الأسئلة والأجوبة
تثبيت
- استنساخ المستودع:
git clone https://github.com/pruthakjani5/GTUtor.git
cd gtutor
- إنشاء بيئة افتراضية وتفعيلها:
python -m venv venv
source venv/bin/activate # On Windows: venvScriptsactivate
- تثبيت التبعيات المطلوبة:
pip install -r requirements.txt
- قم بإنشاء ملف
.env
في جذر المشروع وأضف مفتاح Gemini API الخاص بك:
GEMINI_API_KEY=your_api_key_here
إذا كنت بحاجة إلى إعداد جديد بدون قاعدة البيانات التجريبية والمحادثات السابقة، فاحذف المجلد "gtutor_data"، وسيؤدي تشغيل app.py إلى إنشاء مجلد جديد.
التبعيات المطلوبة
- تبسيط
- طلبات
- pypdf
- google-geneativeai
- com.chromadb
- بيثون dotenv
- com.tempfile
- تخفيض السعر
- الحافظة
الاستخدام
- ابدأ تطبيق Streamlit:
قم بالوصول إلى التطبيق من خلال متصفح الويب الخاص بك (عادةً على http://localhost:8501
)
حدد أو أنشئ موضوعًا من القائمة المنسدلة
قم بتحميل مستندات PDF أو قم بتوفير عناوين URL بتنسيق PDF لبناء قاعدة المعرفة الخاصة بالموضوع
ابدأ بطرح الأسئلة في واجهة الدردشة
الميزات بالتفصيل
إدارة الموضوع
- إنشاء مواضيع جديدة
- حذف المواضيع الموجودة
- مسح قواعد بيانات الموضوع
- تتبع عدد المستندات لكل موضوع
إدارة الوثائق
- تحميل ملفات PDF (حتى 10 ميجابايت)
- إضافة المستندات عبر URL
- استخراج النص التلقائي وتقطيعه
- التخزين المستمر لبيانات الوثيقة
واجهة الدردشة
- الإجابة على الأسئلة في الوقت الحقيقي
- تتبع سجل الدردشة
- نسخ الأسئلة والأجوبة
- حذف الرسائل الفردية
- ابدأ محادثات جديدة
- واجهة مستخدم محسنة مع الصور الرمزية للمستخدم/الروبوت
الإجابة على الجيل
- استجابات واعية للسياق باستخدام المستندات التي تم تحميلها
- الرجوع إلى معرفة Gemini Pro عند الحاجة
- ردود منظمة ومنسقة
- نغمة أكاديمية مع التركيز على مناهج GTU
هيكل المشروع
gtutor/
├── app.py # Main application file
├── .env # Environment variables
├── requirements.txt # Project dependencies
└── gtutor_data/ # Data directory
├── dbs/ # Subject databases
├── chat_histories/ # Conversation histories
└── subjects.json # Subject list
التنفيذ الفني
- معالجة المستندات : يستخدم
pypdf
لاستخراج نص PDF مع التقطيع التلقائي - قاعدة بيانات المتجهات : تطبق
chromadb
لتخزين النص واسترجاعه بكفاءة - إطار عمل واجهة المستخدم : تم تصميمه باستخدام واجهة ويب
streamlit
سريعة الاستجابة - تكامل الذكاء الاصطناعي : يستخدم Gemini Pro API من Google للحصول على استجابات ذكية
- ثبات البيانات : التخزين المستند إلى JSON لسجلات الدردشة وبيانات الموضوع
- دعم تخفيض السعر : تنسيق النص المحسن للردود
المساهمة
المساهمات هي موضع ترحيب! لا تتردد في تقديم طلب السحب.
رخصة
هذا المشروع مرخص بموجب ترخيص MIT - راجع ملف الترخيص للحصول على التفاصيل.
شكر وتقدير
- Google Geneative AI لواجهة برمجة تطبيقات Gemini Pro
- Streamlit لإطار الويب
- ChromaDB لتنفيذ قاعدة بيانات المتجهات
يدعم
للحصول على الدعم والأسئلة، يرجى فتح مشكلة في مستودع GitHub أو الاتصال بالمشرفين.