هذا هو روبوت Matrix بسيط يدعم استخدام OpenAI API وLangchain لإنشاء استجابات من مدخلات المستخدم. يستجيب الروبوت للأوامر التالية: !gpt
و !chat
و !v
و !pic
و !new
و !lc
و !help
اعتمادًا على الكلمة الأولى في الموجه.
طريقة عامل الميناء (مستحسن):
قم بتحرير config.json
أو .env
بالقيم المناسبة
للحصول على التوضيحات وقائمة المعلمات الكاملة، راجع: https://github.com/hibobmaster/matrix_chatgpt_bot/wiki
قم بإنشاء ملفين فارغين لقاعدة البيانات المستمرة فقط
touch sync_db context.db manage_db
sudo docker compose up -d
Manage_db (يمكن تجاهله) مخصص لوكيل langchain، sync_db مخصص لقاعدة بيانات مزامنة المصفوفة، context.db مخصص لسياق دردشة الروبوت
libolm-dev
git clone https://github.com/hibobmaster/matrix_chatgpt_bot.git
python -m venv venv
source venv/bin/activate
pip install -U pip setuptools wheel
pip install -r requirements.txt
room_id
: سيعمل الروبوت في الغرفة التي يوجد بها {
"homeserver" : " YOUR_HOMESERVER " ,
"user_id" : " YOUR_USER_ID " ,
"password" : " YOUR_PASSWORD " ,
"device_id" : " YOUR_DEVICE_ID " ,
"room_id" : " YOUR_ROOM_ID " ,
"openai_api_key" : " YOUR_API_KEY " ,
"gpt_api_endpoint" : " xxxxxxxxx "
}
python src/main.py
للتفاعل مع الروبوت، ما عليك سوى إرسال رسالة إلى الروبوت في غرفة Matrix باستخدام إحدى المطالبات التالية:
!help
رسالة المساعدة
!gpt
لإنشاء استجابة لمرة واحدة:
!gpt What is the meaning of life?
!chat
للدردشة باستخدام واجهة برمجة التطبيقات الرسمية مع محادثة سياقية !chat Can you tell me a joke?
يمكنك الرجوع إلى لقطة الشاشة
Room Level: quote a image and @bot + {prompt}
Thread Level: quote a image with a {prompt}
!lc
للدردشة باستخدام نقطة نهاية langchain api !lc All the world is a stage
!pic
لإنشاء صورة باستخدام openai DALL·E أو LocalAI !pic A bridal bouquet made of succulents
!agent
عرض أو تعيين وكيل langchain !agent list
!agent use {agent_name}
!new + {chat}
ابدأ محادثة جديدةمسؤول LangChain(flowise): https://github.com/hibobmaster/matrix_chatgpt_bot/wiki/Langchain-(flowise)
https://github.com/hibobmaster/matrix_chatgpt_bot/wiki/
مستوى الغرفة:
مستوى الموضوع:
اذكر البوت مع المطالبة، وسيقوم البوت بالرد في الموضوع.
للحفاظ على السياق، ما عليك سوى إرسال المطالبة في سلسلة الرسائل مباشرةً دون ذكرها.