ทำความรู้จัก Retrieval-Augmented Generation (RAG) คืออะไร
เจาะลึกเทคโนโลยี RAG แนวทางช่วยให้ LLM ค้นหาข้อมูลจากเอกสารภายนอกมาตอบคำถามได้ทันทีโดยไม่ต้องฝึกโมเดลใหม่ อ้างอิงจากบทความบน Dev.to

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
- RAG ช่วยให้ LLM ตอบคำถามจากเอกสารภายนอกได้ทันทีโดยไม่ต้องเทรนโมเดลใหม่
- สถาปัตยกรรมผสมผสานความรู้เดิมของโมเดลเข้ากับการค้นหาดัชนีภายนอกแบบเรียลไทม์
- ระบบ Vector database ค้นหาข้อมูลจากความใกล้เคียงเชิงเรขาคณิตแทนคำที่ตรงกัน
- การจำกัดจำนวนส่วนข้อมูลที่ค้นหาช่วยแก้ปัญหาภาวะข้อมูลตกหล่นกลางบริบท
เมื่อพูดถึงปัญญาประดิษฐ์ประเภทภาษาขนาดใหญ่หรือ LLM มักจะมีข้อจำกัดสำคัญอยู่สองประการคือความรู้ของโมเดลถูกหยุดไว้ตั้งแต่ตอนฝึกสอน และโมเดลไม่รู้จักข้อมูลส่วนตัวของผู้ใช้งานเลย เทคโนโลยีที่เรียกว่า Retrieval-Augmented Generation หรือ RAG จึงถูกพัฒนาขึ้นมาเพื่อแก้ปัญหานี้โดยการดึงข้อมูลที่เกี่ยวข้องเข้ามาประกอบในขั้นตอนการส่งคำสั่งแทนการฝังข้อมูลลงไปในน้ำหนักของโมเดลโดยตรง
คำว่า RAG ในหนึ่งประโยคหมายถึงวิธีการทำให้ LLM ตอบคำถามโดยใช้เอกสารที่ไม่เคยผ่านการฝึกสอนมาก่อน ด้วยการค้นหาข้อความที่เกี่ยวข้องในเอกสารเหล่านั้นแล้วส่งผลลัพธ์ให้โมเดลใช้เป็นบริบทก่อนสร้างคำตอบขึ้นมา โดยไม่มีการฝึกโมเดลใหม่และไม่มีการปรับแต่งละเอียดเพิ่มเติม เป็นเพียงขั้นตอนการค้นหาที่นำมาแปะไว้ด้านหน้าของคำสั่งปกติเท่านั้น

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
ที่มาของแนวคิดนี้ย้อนกลับไปถึงงานวิจัยในปี 2020 จาก Facebook AI Research ซึ่งอธิบายว่าเป็นการผสมผสานความรู้แบบพารามิเตอร์และไม่ใช่พารามิเตอร์เข้ากับการสร้างภาษา โดยผู้แต่งคือนาย Patrick Lewis และคณะ ได้จับคู่โมเดลแปลงลำดับข้อมูลเข้ากับดัชนีเวกเตอร์หนาแน่นผ่านเครื่องมือดึงข้อมูลนิวรัลที่ผ่านการฝึกมาแล้ว
กระบวนการทำงานของระบบ RAG จะดำเนินตามลำดับขั้นตอนที่แน่นอนสำหรับทุกๆ คำถาม โดยมีโครงสร้างหลักประกอบด้วย:
- ขั้นตอนการรับคำค้นหาจากผู้ใช้งาน
- ขั้นตอนการดึงข้อมูลที่เกี่ยวข้องจากแหล่งภายนอก
- ขั้นตอนการนำบริบทข้อความที่ค้นหาได้มารวมกับคำสั่งเดิม
- ขั้นตอนการสร้างคำตอบขั้นสุดท้ายโดย LLM
ในส่วนของฐานข้อมูลแบบเวกเตอร์จะทำการจัดทำดัชนีตามความใกล้เคียงเชิงเรขาคณิตแทนที่จะใช้ค่าที่ตรงกันเป๊ะ ตัวอย่างเช่นการค้นหาวิธีรีเซ็ตรหัสผ่านสามารถจับคู่กับข้อความเรื่องการลืมข้อมูลเข้าสู่ระบบได้แม้จะแทบไม่มีคำที่ซ้ำกันเลย โดย API ของ Ollama มีการเปิดใช้งานผ่านช่องทางที่ช่วยส่งโมเดลและข้อมูลนำเข้าเพื่อรับค่าตัวเลขกลับมา ซึ่งโมเดล nomic-embed-text ถือเป็นตัวเลือกท้องถิ่นที่ได้รับความนิยมสูงเนื่องจากผลทดสอบระบุว่ามีประสิทธิภาพดีกว่ารุ่นมาตรฐานบางตัวทั้งในงานบริบทสั้นและยาว
ในมุมมองทางวิศวกรรมซอฟต์แวร์ เทคโนโลยี RAG กลายเป็นมาตรฐานสำคัญในการสร้างระบบปัญญาประดิษฐ์ระดับองค์กร เนื่องจากข้อมูลในโลกความเป็นจริงมีการเปลี่ยนแปลงอยู่ตลอดเวลา การอาศัยเพียงโมเดลที่ถูกฝึกมาล่วงหน้าย่อมไม่เพียงพอต่อการนำไปใช้งานจริงที่ต้องการความแม่นยำสูงและอัปเดตอยู่เสมอ การแยกส่วนการค้นหาข้อมูลออกจากกระบวนการสร้างคำตอบยังช่วยลดภาระในการคำนวณและทำให้ผู้พัฒนาสามารถควบคุมความถูกต้องของแหล่งที่มาของข้อมูลได้ง่ายขึ้น
งานวิจัยร่วมระหว่าง Stanford, Berkeley และ Samaya AI ในปี 2023 พบว่าประสิทธิภาพของโมเดลจะอยู่ในระดับสูงสุดเมื่อข้อมูลที่เกี่ยวข้องปรากฏอยู่บริเวณต้นหรือท้ายของบริบท และจะลดลงอย่างมีนัยสำคัญหากข้อมูลถูกแทรกอยู่ตรงกลาง ซึ่งเรียกว่าปรากฏการณ์ข้อมูลสูญหายกลางบริบท ดังนั้นการจำกัดขั้นตอนการดึงข้อมูลให้เหลือเพียง 3 ถึง 5 ส่วนที่มีความเกี่ยวข้องและผ่านการจัดลำดับอย่างดีจึงมักให้ผลลัพธ์ที่ดีกว่าการดึงข้อมูลจำนวนมากที่ไม่มีการคัดกรอง
ข้อควรระวังในการใช้งานระบบ RAG มักเกี่ยวข้องกับการแบ่งส่วนข้อมูลโดยไม่ทดสอบคุณภาพ การคาดหวังว่าตัวดึงข้อมูลจะหาข้อมูลที่เกี่ยวข้องได้เสมอซึ่งในความเป็นจริงอาจไม่เป็นเช่นนั้น การละเลยไม่ทำดัชนีข้อมูลใหม่หลังข้อมูลมีการเปลี่ยนแปลง รวมถึงการพยายามใช้ RAG กับทุกงานทั้งที่คำตอบนั้นมีอยู่แล้วในชุดข้อมูลฝึกสอนดั้งเดิมของโมเดล
ที่มา: Dev.to
พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้
ความคิดเห็น
แสดงความคิดเห็น