การจัดทำดัชนีบทความ Wikipedia นับล้านด้วย Upstash Vector
พื้นที่เก็บข้อมูลนี้ประกอบด้วยโค้ดและเอกสารประกอบสำหรับโครงการของเราในการสร้างดัชนีบทความ Wikipedia นับล้านโดยใช้ Upstash Vector ดังที่อธิบายไว้ในโพสต์บนบล็อกของเรา
ภาพรวมโครงการ
เราได้สร้างเครื่องมือค้นหาเชิงความหมายและ Upstash RAG Chat SDK โดยใช้ข้อมูล Wikipedia เพื่อแสดงความสามารถของ Upstash Vector และ RAG Chat SDK โครงการนี้เกี่ยวข้องกับ:
- การเตรียมและฝังบทความ Wikipedia
- การทำดัชนีเวกเตอร์โดยใช้ Upstash Vector
- การสร้างเครื่องมือค้นหาความหมายวิกิพีเดีย
- การใช้งานแชทบอท RAG
คุณสมบัติที่สำคัญ
- จัดทำดัชนีเวกเตอร์มากกว่า 144 ล้านรายการจากบทความ Wikipedia ใน 11 ภาษา
- ใช้โมเดลการฝัง BGE-M3 เพื่อรองรับหลายภาษา
- ดำเนินการค้นหาความหมายด้วยความสามารถข้ามภาษา
- สร้างแชทบอท RAG โดยใช้ Upstash RAG Chat SDK
เทคโนโลยีที่ใช้
- Upstash Vector: สำหรับจัดเก็บและค้นหาการฝังเวกเตอร์
- Upstash Redis: สำหรับจัดเก็บเซสชันการแชท
- Upstash RAG Chat SDK: สำหรับการสร้างแอปพลิเคชัน RAG Chat
- SentenceTransformers: สำหรับการสร้างการฝัง
- Meta-Llama-3-8B-Instruct: ในฐานะผู้ให้บริการ LLM ผ่าน QStash LLM API
การพัฒนา
เมื่อต้องการรันโครงการภายในเครื่อง ให้ทำตามขั้นตอนเหล่านี้:
- ไปที่ Upstash Console เพื่อจัดการฐานข้อมูลของคุณ:
- สร้างฐานข้อมูล Vector ใหม่พร้อมการรองรับโมเดลการฝัง คุณสามารถเลือกรุ่น BGE-M3 เพื่อรองรับหลายภาษาได้
- สร้างฐานข้อมูล Redis ใหม่สำหรับจัดเก็บเซสชันการแชท
- คัดลอกข้อมูลรับรองสำหรับทั้ง Redis และ Vector นอกจากนี้ ให้คัดลอกข้อมูลรับรอง QStash สำหรับการใช้โมเดล LLM ที่โฮสต์ upstash
ใส่ข้อมูลประจำตัวในไฟล์ .env
ในรูทของโปรเจ็กต์ ไฟล์ .env
ของคุณควรมีลักษณะดังนี้:
UPSTASH_VECTOR_REST_URL=
UPSTASH_VECTOR_REST_TOKEN=
UPSTASH_REDIS_REST_TOKEN=
UPSTASH_REDIS_REST_URL=
QSTASH_TOKEN=
- เติมดัชนีเวกเตอร์ของคุณ
โปรเจ็กต์นี้ใช้เนมสเปซเพื่อจัดเก็บบทความในภาษาต่างๆ ดังนั้นคุณต้องเพิ่มเวกเตอร์ในเนมสเปซที่ถูกต้อง สำหรับภาษาอังกฤษ ให้ใส่เวกเตอร์ของคุณลงใน en
namespace
- ติดตั้งการพึ่งพา:
- รันเซิร์ฟเวอร์การพัฒนา:
มีส่วนร่วม
เรายินดีรับการมีส่วนร่วมเพื่อปรับปรุงโครงการนี้ โปรดส่งปัญหาหรือดึงคำขอ
รับทราบ
- Wikipedia สำหรับการจัดหาชุดข้อมูล
- Upstash สำหรับฐานข้อมูลเวกเตอร์และ RAG Chat SDK
- ผู้มีส่วนร่วมทั้งหมดในไลบรารีโอเพ่นซอร์สที่ใช้ในโปรเจ็กต์นี้
ติดต่อ
หากมีคำถามหรือข้อเสนอแนะเกี่ยวกับโครงการหรือ Upstash Vector โปรดติดต่อเราที่ (เพิ่มข้อมูลติดต่อ)
ลองชมการสาธิตสดของเราเพื่อดูการทำงานของโปรเจ็กต์!