- บทความเกี่ยวกับเสิร์ชเอนจิน Wikipedia แบบใหม่ที่ทำงานบนเบราว์เซอร์ และค้นหาแบบออฟไลน์ได้
- เสิร์ชเอนจินสามารถค้นหาหน้า Wikipedia ได้หนึ่งล้านหน้าแบบเรียลไทม์ และคืนผลลัพธ์ทุก ๆ 10ms บนอุปกรณ์พกพา
- ฐานข้อมูลของเสิร์ชเอนจินมีขนาดเล็ก เป็นกรณีการใช้งานทั่วไปที่รองรับ embedding หนึ่งล้านรายการได้โดยไม่ต้องมีการประมวลผลพิเศษ
- เสิร์ชเอนจินใช้ sentence transformer สำหรับทำ document embedding, บีบอัด embedding ด้วย product quantization และใช้
pq.js เพื่อคำนวณระยะทางในเบราว์เซอร์
- เสิร์ชเอนจินใช้
transformers.js เพื่อรัน sentence transformer ภายในเบราว์เซอร์สำหรับคิวรี
- เสิร์ชเอนจินจัดเรียง embedding ตามขนาดหน้าที่ถูกบีบอัด ทำให้หน้าที่มีความหนาแน่นของข้อมูลสูงถูกวิเคราะห์ก่อน และถูกส่งกลับมาในอันดับสูงสุด 10 อันดับ
- เสิร์ชเอนจินใช้ Arrow แทน JSON เพื่อประสิทธิภาพสูง โดย Arrow สามารถเก็บอาร์เรย์ product quantization แบบจำนวนเต็ม 8 บิตได้อย่างกระชับ
- เสิร์ชเอนจินใช้โมเดล ONNX ที่รันบน WebAssembly และยังไม่มีการเร่งความเร็วด้วย GPU
- เสิร์ชเอนจินทำ embedding ให้ Wikipedia ทั้งหมดด้วย sentence transformer, บีบอัด embedding ด้วย product quantization และเขียน ONNX ด้วยตนเอง
- เสิร์ชเอนจินส่งออก numpy เป็น Arrow เพื่อเก็บ embedding และ metadata ซึ่งกระชับกว่ามากทั้งในหน่วยความจำและบนดิสก์
- เสิร์ชเอนจินรองรับ faceted search ที่ช่วยให้ค้นหาแบบเรียลไทม์ในหมวดย่อยของผลิตภัณฑ์ได้
- ผู้เขียนเชิญชวนให้ส่งข้อเสนอแนะและไอเดียปรับปรุง โดยเฉพาะเรื่องการรองรับระดับการ quantization แบบอื่นและมิติ embedding แบบอื่น
1 ความคิดเห็น
ความคิดเห็นบน Hacker News