AI SmartTalk

เข้าสู่ระบบเริ่มทดลองใช้ฟรี
พจนานุกรม · เทคโนโลยี AI

การค้นหาเวกเตอร์ (การค้นหาทางความหมาย)

อัปเดต
6 นาทีในการอ่าน

แชร์

คำจำกัดความอย่างรวดเร็ว

การค้นหาเวกเตอร์เป็นวิธีการดึงข้อมูลที่ส่งคืนรายการที่การฝังใกล้เคียงที่สุดกับการฝังของคำถาม ดังนั้นผลลัพธ์จึงตรงกันตามความหมายแทนที่จะเป็นคำสำคัญที่แชร์กัน มันเป็นเครื่องยนต์ปกติของการค้นหาทางความหมาย

ในหน้านี้

  1. 01การค้นหาเวกเตอร์ทำงานอย่างไร
  2. 02การค้นหาทางความหมายกับการค้นหาคำสำคัญ
  3. 03ข้อผิดพลาด
  4. 04การค้นหาด้วยเวกเตอร์ใน AI SmartTalk
  5. 05คำถามที่พบบ่อย
  6. 06แหล่งข้อมูล
  7. 07คำที่เกี่ยวข้อง

การค้นหาเวกเตอร์ทำงานอย่างไร

เอกสาร ข้อความ หรือผลิตภัณฑ์แต่ละรายการจะถูกแปลงเป็นการฝังและจัดเก็บในดัชนี ในช่วงเวลาที่ค้นหาคำถามจะถูกฝังด้วยโมเดลเดียวกัน และดัชนีจะส่งคืนเวกเตอร์ที่ใกล้ที่สุด ซึ่งมักจะวัดโดยความคล้ายคลึงกันของโคไซน์ ลูกค้าที่ถามว่า “อะไรที่อบอุ่นสำหรับการเล่นสกี” สามารถหาชุดแจ็กเก็ตที่อธิบายว่า “กันน้ำและมีฉนวน” แม้ว่าจะไม่มีคำใดตรงกัน。

การเปรียบเทียบคำถามกับเวกเตอร์หลายล้านรายการทีละรายการจะช้า ดังนั้นดัชนีจึงใช้อัลกอริธึมการค้นหาที่ใกล้เคียงที่สุดโดยประมาณ HNSW ซึ่งเป็นกราฟชั้นที่อธิบายโดย Malkov และ Yashunin ในปี 2016 เป็นหนึ่งในที่ใช้กันอย่างแพร่หลายที่สุด; มันแลกเปลี่ยนการสูญเสียความแม่นยำเล็กน้อยเพื่อการค้นหาที่รวดเร็วมาก ส่วนขยายโอเพนซอร์สเช่น pgvector นำดัชนีเหล่านี้ไปยัง PostgreSQL

การค้นหาทางความหมายกับการค้นหาคำสำคัญ

การค้นหาคำสำคัญ (BM25, ข้อความเต็ม, การจับคู่ไตรแกรม) มีความแม่นยำในคำที่แน่นอน: การอ้างอิงผลิตภัณฑ์ แบรนด์ รหัสข้อผิดพลาด มันล้มเหลวในคำพ้องความหมายและการพาราฟเรส การค้นหาเวกเตอร์เป็นตรงกันข้าม: แข็งแกร่งในความหมาย อ่อนแอในสตริงที่แน่นอนและตัวระบุที่หายาก。

นั่นคือเหตุผลที่ระบบการผลิตส่วนใหญ่ใช้การค้นหาผสม: รันทั้งสองแล้วรวมกันหรือจัดอันดับผลลัพธ์ใหม่ การวิจัยการดึงข้อมูลหนาแน่นเช่นงานปี 2020 ของ Karpukhin และเพื่อนร่วมงานเกี่ยวกับการตอบคำถามแสดงให้เห็นว่าการดึงข้อมูลทางความหมายปรับปรุงการเรียกคืนได้มากเพียงใด และผู้ปฏิบัติงานได้เรียนรู้ตั้งแต่นั้นมาว่ามันยังได้รับประโยชน์จากคู่คำสำคัญมากเพียงใด

ข้อผิดพลาด

การค้นหาด้วยเวกเตอร์จะส่งคืนผลลัพธ์เสมอ แม้ว่าจะไม่มีสิ่งที่เกี่ยวข้องอยู่จริง ดังนั้นระบบจึงต้องมีเกณฑ์ความเกี่ยวข้องหรือการตรวจสอบก่อนที่จะใช้ผลลัพธ์ มันไม่เข้าใจตัวเลขหรือข้อจำกัด: “ต่ำกว่า 50 ยูโร, มีสินค้าในสต็อก, ขนาด M” ต้องการตัวกรองจริงบนข้อมูลที่มีโครงสร้าง และคุณภาพขึ้นอยู่กับว่าข้อมูลถูกแบ่งออกอย่างไร: ข้อความที่ยาวเกินไปทำให้ความหมายเบลอ ข้อความที่สั้นเกินไปทำให้สูญเสียบริบท

การค้นหาด้วยเวกเตอร์ใน AI SmartTalk

AI SmartTalk เก็บการฝังใน PostgreSQL ด้วย pgvector โดยมีดัชนี HNSW บนเอกสารผลิตภัณฑ์ และรวมความคล้ายคลึงของเวกเตอร์กับการค้นหาด้วย trigram และการค้นหาข้อความทั้งหมด สำหรับผลิตภัณฑ์ เครื่องมือค้นหาของผู้ช่วยจะเพิ่มตัวกรองที่มีโครงสร้างเกี่ยวกับราคา สต็อก แบรนด์ หมวดหมู่ และคุณลักษณะของตัวแปร เพื่อให้คำถามเชิงความหมายและข้อจำกัดที่แม่นยำสามารถตอบได้พร้อมกัน

คำถามที่พบบ่อย

การค้นหาความหมายเหมือนกับการค้นหาด้วยเวกเตอร์หรือไม่?

การค้นหาความหมายคือเป้าหมาย — การค้นหาผลลัพธ์ตามความหมาย การค้นหาด้วยเวกเตอร์ผ่านการฝังเป็นวิธีที่ใช้กันทั่วไปเพื่อให้บรรลุเป้าหมายนี้ มักจะรวมกับการค้นหาด้วยคำหลัก

ฉันต้องการฐานข้อมูลเวกเตอร์เฉพาะหรือไม่?

ไม่จำเป็นต้องมี ส่วนขยายเช่น pgvector เพิ่มดัชนีเวกเตอร์ให้กับ PostgreSQL ซึ่งเพียงพอสำหรับแอปพลิเคชันหลายๆ อย่างและทำให้เวกเตอร์อยู่ใกล้กับข้อมูลที่เหลือ

การค้นหาผสมคืออะไร?

การค้นหาที่ดำเนินการค้นหาด้วยเวกเตอร์และการค้นหาด้วยคำหลักพร้อมกันและรวมผลลัพธ์เข้าด้วยกัน เพื่อจัดการทั้งคำถามที่ถูกพาราฟเรสและคำที่แน่นอนเช่นการอ้างอิงผลิตภัณฑ์

แหล่งข้อมูล

  1. [1]Malkov & Yashunin, Efficient and robust approximate nearest neighbor search using HNSW graphs (2016)
  2. [2]Karpukhin et al., Dense Passage Retrieval for Open-Domain Question Answering (2020)
  3. [3]pgvector, open-source vector similarity search for Postgres

เรียกดูพจนานุกรม

พร้อมใน 5 นาที

ลองใช้กับคำถามของคุณเอง.ตัวแทนของคุณสามารถใช้งานได้ทันทีวันนี้.

เชื่อมต่อร้านค้าหรือเว็บไซต์ของคุณ ให้ตัวแทนเรียนรู้จากมัน และทดสอบก่อนที่คุณจะเลือกแผน ไม่ต้องใช้บัตรเครดิต.

สร้างตัวแทนของฉันดูราคา

ไม่มีบัตรเครดิต

ยกเลิกได้ทุกเมื่อ

GDPR-native · โฮสติ้งใน EU