Bharat ChatAI هو تطبيق chatbot مدعوم بالذكاء الاصطناعي ويدمج نماذج الذكاء الاصطناعي المختلفة ووظائف معالجة المستندات. يتيح هذا التطبيق للمستخدمين الدردشة مع الذكاء الاصطناعي باستخدام نماذج مختلفة، وتحميل المستندات ومعالجتها، واسترداد المعلومات من عناوين URL.
استنساخ المستودع:
git clone https://github.com/itsmohitkumar/bharat-chatbot-groq.git
cd bharat-chatbot-groq
إنشاء بيئة افتراضية وتفعيلها:
python -m venv env
source env/bin/activate # On Windows, use `envScriptsactivate`
تثبيت الحزم المطلوبة:
pip install -r requirements.txt
قم بإنشاء ملف .env
في الدليل الجذر للمشروع وأضف مفتاح API الخاص بك:
GROQ_API_KEY=your_api_key_here
قم بتشغيل تطبيق Streamlit:
streamlit run app.py
لوضع تطبيق Bharat ChatAI في حاوية باستخدام Docker، اتبع الخطوات التالية:
إنشاء ملف Dockerfile: في الدليل الجذر لمشروعك، قم بإنشاء ملف Dockerfile
بالمحتوى التالي:
# Use an official Python runtime as a parent image
FROM python:3.9-slim
# Set the working directory in the container
WORKDIR /app
# Copy the current directory contents into the container at /app
COPY . /app
# Install any needed packages specified in requirements.txt
RUN pip install --no-cache-dir -r requirements.txt
# Make port 8501 available to the world outside this container
EXPOSE 8501
# Define environment variable
ENV GROQ_API_KEY=your_api_key_here
# Run the application
CMD [ "streamlit" , "run" , "app.py" ]
إنشاء صورة Docker: قم بتشغيل الأمر التالي في الوحدة الطرفية لإنشاء صورة Docker الخاصة بك:
docker build -t bharat-chatai .
تشغيل حاوية Docker: بعد إنشاء الصورة، يمكنك تشغيل التطبيق في حاوية تحتوي على:
docker run -p 8501:8501 bharat-chatai
سيكون التطبيق متاحًا على http://localhost:8501
.
لنشر تطبيق Bharat ChatAI على AWS EC2، اتبع الخطوات التالية:
إطلاق مثيل EC2:
t2.micro
(مؤهل للطبقة المجانية).الاتصال بمثيل EC2:
ssh -i " your-key.pem " [email protected]
قم بتثبيت Docker على مثيل EC2:
sudo apt update
sudo apt install docker.io
sudo systemctl start docker
sudo systemctl enable docker
استنساخ مستودع Bharat ChatAI:
git clone https://github.com/itsmohitkumar/bharat-chatbot-groq.git
cd bharat-chatbot-groq
بناء وتشغيل حاوية Docker:
sudo docker build -t bharat-chatai .
sudo docker run -p 80:8501 bharat-chatai
الوصول إلى التطبيق:
http://ec2-xx-xx-xx-xx.compute-1.amazonaws.com
). هيكل ملف المشروع هو كما يلي:
bharat-chatai/
├── src/
│ ├── __init__.py
│ ├── logger.py
│ ├── prompt.py
│ ├── bharatchat/
│ │ ├── __init__.py
│ │ └── chatbot.py
├── setup.py
├── app.py
src/__init__.py
: ملف التهيئة لحزمة src
.src/logger.py
: وحدة لتكوين التسجيل.src/prompt.py
: وحدة لتحديد قوالب المطالبة.src/bharatchat/__init__.py
: ملف التهيئة لحزمة bharatchat
.src/bharatchat/chatbot.py
: الوحدة الرئيسية لمنطق chatbot.setup.py
: البرنامج النصي لإعداد الحزمة.app.py
: ملف التطبيق الرئيسي لتشغيل واجهة Streamlit. تتعامل فئة Config
مع تكوين التطبيق، بما في ذلك استرداد مفتاح API وجلب خيارات النموذج المتاحة من Groq API.
تقوم فئة DocumentProcessor
بمعالجة المستندات من الملفات التي تم تحميلها أو عناوين URL، وتقسيمها إلى أجزاء، وتخزينها في مخزن متجهات FAISS. كما يقوم بإنشاء ملخصات للمستندات التي تمت معالجتها.
تتعامل فئة ChatHandler
مع استعلامات الدردشة، وتعرض محفوظات الدردشة، وتسترد الاستجابات باستخدام متجهات المستند.
تقوم فئة ToolsAndAgentsInitializer
بتهيئة الأدوات والوكلاء لواجهة الدردشة، بما في ذلك إعداد النموذج وإنشاء سلاسل مدمجة لمعالجة المستندات والاستعلام.
تقوم فئة BharatChatAI
بتهيئة التطبيق، بما في ذلك عمليات التضمين ومعالجة المستندات ومعالجة الدردشة. كما أنه يدير واجهة تطبيق Streamlit.
تعرض فئة StreamlitInterface
واجهة تطبيق Streamlit، بما في ذلك تهيئة الشريط الجانبي والتعامل مع اختيارات المستخدم.
هذا المشروع مرخص بموجب ترخيص MIT. راجع ملف الترخيص للحصول على التفاصيل.
لأية أسئلة أو الدعم، يرجى الاتصال:
المؤلف: موهيت كومار
البريد الإلكتروني: [email protected]