ระบบตอบคำถามหลายอินเตอร์เฟสที่ใช้ LLM ของ Hugging Face และ Augmented Generation (RAG) เพื่อส่งคำตอบตามเอกสารประกอบการกอด ใช้งานได้เป็น API, Discord Bot หรือแอป Gradio นอกจากนี้ยังมีลิงก์ไปยังเอกสารที่ใช้ในการกำหนดแต่ละคำตอบ

ในการดำเนินการอินเทอร์เฟซที่มีอยู่ใด ๆ ให้ระบุพารามิเตอร์ที่ต้องการในไฟล์ .env ตาม .env.example ที่อยู่ใน config/ directory หรือคุณสามารถตั้งค่าเหล่านี้เป็นตัวแปรสภาพแวดล้อม:
QUESTION_ANSWERING_MODEL_ID - (str) สตริงที่ระบุ ID โมเดลจากฮับใบหน้ากอดหรือไดเรกทอรีที่มีน้ำหนักแบบจำลองEMBEDDING_MODEL_ID - (STR) EMBEDDING ID รุ่นจากฮับใบหน้ากอด เราขอแนะนำให้ใช้ hkunlp/instructor-largeINDEX_REPO_ID - (Str) ID ที่เก็บข้อมูลจาก Hugging Face Hub ที่เก็บดัชนีไว้ รายการดัชนีที่เกิดขึ้นจริงมากที่สุดสามารถพบได้ในส่วนนี้: ดัชนีPROMPT_TEMPLATE_NAME - (str) ชื่อของเทมเพลตพรอมต์โมเดลที่ใช้สำหรับการตอบคำถามเทมเพลตจะถูกเก็บไว้ในไดเรกทอรี config/api/prompt_templatesUSE_DOCS_FOR_CONTEXT - (บูล) ใช้เอกสารที่ดึงมาเป็นบริบทสำหรับการสืบค้นที่กำหนดNUM_RELEVANT_DOCS - (int) จำนวนเอกสารที่ใช้สำหรับคุณสมบัติก่อนหน้าADD_SOURCES_TO_RESPONSE - (บูล) รวมถึงแหล่งที่มาของเอกสารที่ดึงมาเป็นบริบทสำหรับการสืบค้นที่กำหนดUSE_MESSAGES_IN_CONTEXT - (บูล) ใช้ประวัติการแชทสำหรับประสบการณ์การสนทนาDEBUG - (BOOL) ให้การบันทึกเพิ่มเติมติดตั้งการพึ่งพาที่จำเป็นจากไฟล์ข้อกำหนด:
pip install -r requirements.txt หลังจากทำตามขั้นตอนทั้งหมดตามที่อธิบายไว้ในส่วนการตั้งค่าให้ระบุตัวแปร APP_MODE environment เป็น gradio และเรียกใช้คำสั่งต่อไปนี้:
python3 app.py โดยค่าเริ่มต้น API จะให้บริการที่ http://0.0.0.0:8000 ในการเปิดใช้งานให้ทำตามขั้นตอนทั้งหมดที่ระบุไว้ในส่วนการตั้งค่าจากนั้นเรียกใช้คำสั่งต่อไปนี้:
python3 -m api ในการโต้ตอบกับระบบเป็นบอทที่ไม่ลงรอยกันให้เพิ่มตัวแปรสภาพแวดล้อมที่จำเป็นเพิ่มเติมจากส่วน Discord bot ของไฟล์ .env.example ใน config/ ไดเรกทอรี
DISCORD_TOKEN - (str) คีย์ API สำหรับแอปพลิเคชัน BotQA_SERVICE_URL - (STR) URL ของบริการ API เราแนะนำโดยใช้: http://0.0.0.0:8000NUM_LAST_MESSAGES - จำนวนข้อความที่ใช้สำหรับบริบทในการสนทนาUSE_NAMES_IN_CONTEXT - (บูล) รวมชื่อผู้ใช้ในบริบทการสนทนาENABLE_COMMANDS - (bool) อนุญาตคำสั่งเช่นการล้างข้อมูลช่องสัญญาณDEBUG - (BOOL) ให้การบันทึกเพิ่มเติมหลังจากทำตามขั้นตอนทั้งหมดให้ดำเนินการ:
python3 -m bot ในการโฮสต์บอทในการกอดพื้นที่ใบหน้าให้ระบุตัวแปรสภาพแวดล้อม APP_MODE เป็น discord และบอทจะถูกเรียกใช้โดยอัตโนมัติจากไฟล์ app.py
รายการต่อไปนี้มีดัชนีล่าสุดที่สามารถใช้สำหรับระบบ:
เราใช้ Python 3.10
ในการติดตั้งแพ็คเกจ Python ที่จำเป็นทั้งหมดเรียกใช้คำสั่งต่อไปนี้:
pip install -r requirements.txtเราใช้ PIPREQSNB เพื่อสร้างไฟล์ข้อกำหนด. txt ในการติดตั้ง pipreqsnb ให้เรียกใช้คำสั่งต่อไปนี้:
pip install pipreqsnbในการสร้างไฟล์ chendent.txt ให้เรียกใช้คำสั่งต่อไปนี้:
pipreqsnb --force .ในการเรียกใช้การทดสอบหน่วยคุณสามารถใช้คำสั่งต่อไปนี้:
pytest -o " testpaths=tests " --noconftest