เกี่ยวกับ
ที่เก็บนี้มีแอปพลิเคชัน chatbot ที่สร้างขึ้นโดยใช้ Streamlit, Langchain และ Chromadb ออกแบบมาเพื่อให้ข้อมูลที่สำคัญเกี่ยวกับ COVID-19 ตามเนื้อหาของไฟล์ PDF chatbot ใช้วิธีการดึง-เพิ่มการเพิ่มขึ้น (RAG) ซึ่งข้อมูลที่เกี่ยวข้องจะถูกดึงมาจากฐานข้อมูลเวกเตอร์จากนั้นประมวลผลโดยรูปแบบภาษาเพื่อสร้างคำตอบสุดท้าย
สารบัญ
- คุณสมบัติ
- สถาปัตยกรรม
- การติดตั้ง
- การใช้งาน
- การปรับใช้
- ผลงาน
- การทำงานในอนาคต
คุณสมบัติ
- PDF Interestion: chatbot สามารถนำไฟล์ PDF ที่มีข้อมูลที่เกี่ยวข้อง COVID-19 และสร้างฐานข้อมูลเวกเตอร์โดยใช้ Chromadb
- การตอบคำถาม: ผู้ใช้สามารถถามคำถามที่เกี่ยวข้องกับ COVID-19 และ chatbot จะดึงข้อมูลที่เกี่ยวข้องจากฐานข้อมูล Vector และสร้างการตอบกลับโดยใช้รูปแบบภาษา
- Interface StreamLit: chatbot มีอินเทอร์เฟซที่ใช้งานง่ายที่สร้างขึ้นด้วย StreamLit ช่วยให้ผู้ใช้สามารถโต้ตอบกับแอปพลิเคชันผ่านอินเตอร์เฟสบนเว็บ
สถาปัตยกรรม
chatbot เป็นไปตามวิธีการดึง-เพิ่มการรวม (RAG) ซึ่งรวมเทคนิคการดึงและการสร้างเพื่อให้คำตอบที่ถูกต้องและเกี่ยวข้อง สถาปัตยกรรมประกอบด้วยส่วนประกอบต่อไปนี้:
- ตัวโหลดเอกสาร: โหลดไฟล์ PDF จากโฟลเดอร์หนังสือและแยกออกเป็นชิ้นข้อความขนาดเล็ก
- ฐานข้อมูลเวกเตอร์: ชิ้นข้อความจะถูกแปลงเป็น embeddings เวกเตอร์โดยใช้ embeddings ของ OpenAI และเก็บไว้ในฐานข้อมูลเวกเตอร์ Chromadb
- การค้นหาที่คล้ายคลึงกัน: เมื่อผู้ใช้ถามคำถามชิ้นข้อความที่เกี่ยวข้องจะถูกดึงมาจากฐานข้อมูลเวกเตอร์ตามความคล้ายคลึงกับคำถาม
- รูปแบบภาษา: ชิ้นข้อความที่ดึงมาจะถูกส่งผ่านไปยังรูปแบบภาษา (GPT-3.5-turbo) พร้อมกับคำถามของผู้ใช้ โมเดลสร้างคำตอบสุดท้ายตามบริบทที่ให้ไว้
- Interface StreamLit: ส่วนต่อประสานผู้ใช้ถูกสร้างขึ้นโดยใช้ StreamLit ช่วยให้ผู้ใช้สามารถโต้ตอบกับ chatbot ผ่านอินเตอร์เฟสบนเว็บ
การติดตั้ง
- โคลน repositry:
git clone https://github.com/saral7293/COVID-19-CHATBOT-Retrieval-Augmented-Generation-
- นำทางไปยังไดเรกทอรีโครงการ:
cd COVID-19-CHATBOT-Retrieval-Augmented-Generation
- ติดตั้งการพึ่งพาที่ต้องการ:
pip install -r requirements.txt
- ตั้งค่าคีย์ OpenAI API ของคุณเป็นตัวแปรสภาพแวดล้อม:
export OPENAI_API_KEY=your_openai_api_key
การใช้งาน
หากต้องการเรียกใช้ chatbot ในเครื่องโดยใช้ Streamlit ให้ดำเนินการคำสั่งต่อไปนี้:
สิ่งนี้จะเริ่มต้นแอปพลิเคชัน Streamlit และคุณสามารถโต้ตอบกับ chatbot ผ่านเว็บอินเตอร์เฟส
การปรับใช้
chatbot นี้ได้รับการปรับใช้กับอินสแตนซ์ EC2 ใน VM
ผลงาน
ยินดีต้อนรับ! หากคุณพบปัญหาใด ๆ หรือต้องการเพิ่มคุณสมบัติใหม่โปรดเปิดปัญหาหรือส่งคำขอดึง
การทำงานในอนาคต
ปรับแต่ง chatbot และใช้เทคนิค RAG ล่วงหน้า