Embeddings และ Semantic Search
Why this matters
ปัญหาคลาสสิกของการค้นเอกสาร QA: ของที่ต้องการมีอยู่จริง แต่ ค้นไม่เจอเพราะใช้คำต่างกัน
Keyword Search vs Semantic Search
Keyword search ค้นด้วยคำตรงตัว:
"bolt rust"
อาจหาเอกสารที่ใช้คำว่า:
"corrosion found on fastener"
ไม่เจอ — ทั้งที่เป็นเรื่องเดียวกัน
Semantic search พยายามค้นจาก ความหมายใกล้เคียง ไม่ใช่คำตรงตัว โดยใช้เทคนิคที่เรียกว่า Embeddings: การแปลงข้อความเป็นตัวเลขชุดหนึ่งที่สะท้อนความหมาย ข้อความที่ความหมายใกล้กันจะได้ตัวเลขใกล้กัน ระบบจึงจับคู่ “rust” กับ “corrosion” ได้แม้ไม่มีคำร่วมกันเลย
เหมาะกับ
- Historical complaint search — ค้น complaint เก่าด้วยคำอธิบายอาการ
- Similar defect search — หาเคส defect ที่คล้ายกับเคสปัจจุบัน
- Knowledge base — ค้นฐานความรู้ภายในองค์กร
- SOP/specification search — หาเอกสารที่เกี่ยวข้องโดยไม่ต้องจำชื่อไฟล์
What a BA needs to know
เวลาเขียน requirement อย่าเขียนแค่ “ระบบต้องค้นหาได้” — ให้ระบุว่าต้องการค้นแบบไหน: ค้นด้วย field ตรงตัว (Part No., วันที่) ใช้ keyword search ธรรมดาพอ แต่ค้นด้วย “อาการที่อธิบายเป็นภาษาคน” ต้องการ semantic search ซึ่งต้นทุนและความซับซ้อนต่างกัน