แอพแชทง่าย ๆ ที่มีฐานข้อมูล Embeddings และ Vector โดยเฉพาะสำหรับการดำเนินการในท้องถิ่นบน Mac/Apple Silicon
repo นี้เป็นการกลั่นและ riff ตาม Privatept และ LocalGPT ซึ่งฉันสร้างขึ้นเพื่อใช้งานเฉพาะในท้องถิ่นบน Apple Silicon และ MacBook Pro (M1) ของฉันโดยเฉพาะ แรงจูงใจของฉันคือการสร้างแชท LLM ที่ทำงานได้ขั้นต่ำที่ทำงานอย่างสมบูรณ์ในอุปกรณ์ของฉันเพื่อจุดประสงค์ในการเรียนรู้

conda create -n simpleChat python=3.11
conda activate simpleChatgit clone https://github.com/ziligy/simpleChat_llama2_mac_silicon simpleChat
cd simpleChatคนขี้เกียจ
conda install -c conda-forge langchain==0.0.239อัพเกรด llama-cpp-python สำหรับโลหะ
CMAKE_ARGS= " -DLLAMA_METAL=on " FORCE_CMAKE=1 pip install --upgrade --force-reinstall llama-cpp-python==0.1.77 --no-cache-dirข้อกำหนด. txt
pip install -r requirements.txtดาวน์โหลดรุ่นนี้หรือรุ่น 4 บิต (ที่ต้องการ) GGML (จำเป็น)
llama-2-13b-chat.ggmlv3.q4_1.bin
กำหนด model_path ใน ค่าคงที่ py เพื่อตั้งค่าตำแหน่งและชื่อของโมเดลที่คุณใช้
(เช่นใน ค่าคงที่ py ) model_path = os.path.expanduser ('~') + "/models/llama-2-13b-chat.ggmlv3.q4_1.bin"
gradio app.pyคุณควรเห็น: ทำงานบน URL ในพื้นที่: http://127.0.0.1:7861
CMD + คลิกที่ลิงค์เพื่อเริ่มการแชท UI ในเบราว์เซอร์ของคุณ
ไปที่เบราว์เซอร์ของคุณเพื่อแชทกับ AI
หมายเหตุการตอบสนองการแชทอาจใช้เวลาหนึ่งถึงสองนาทีดังนั้นคุณจะต้องอดทน
หมายเหตุ: ส่วนประกอบ Ingest.py นั้นเป็นทางแยกจาก LocalGPT โดยพื้นฐาน
ใส่ไฟล์. txt, .pdf หรือ. csv ของคุณลงในไดเรกทอรี source_documents
ประเภทไฟล์เริ่มต้นปัจจุบันคือ. txt, .pdf, .csv และ. xlsx หากคุณต้องการใช้ไฟล์ประเภทอื่น ๆ คุณจะต้องแปลงเป็นหนึ่งในประเภทไฟล์เริ่มต้น
เรียกใช้คำสั่งต่อไปนี้เพื่อนำข้อมูลทั้งหมด
python ingest.pyมันจะสร้างดัชนีที่มี vectorstore ท้องถิ่น จะใช้เวลาขึ้นอยู่กับขนาดของเอกสารของคุณ
หากคุณต้องการเริ่มต้นจากฐานข้อมูลที่ว่างเปล่าให้ลบโฟลเดอร์ DB
rm -r ./DBการดำเนินการโปรแกรม Ingest.py จะสร้างไดเร็กทอรี DB ใหม่ใหม่