Agentic RAG

Agentic RAG

Agentic RAG คือสถาปัตยกรรมที่ LLM ทำหน้าที่เป็น Agent โดยวนซ้ำกระบวนการสร้าง Query ค้นหา ประเมินผลลัพธ์ และตัดสินใจค้นหาซ้ำอย่างอิสระ เพื่อให้ได้ความแม่นยำของคำตอบที่เหนือกว่า RAG แบบถาม-ตอบทั่วไป

ความแตกต่างจาก RAG แบบดั้งเดิม

RAG pipeline มาตรฐานทำงานในรูปแบบเส้นตรง คือ "คำถามของผู้ใช้ → การค้นหาเวกเตอร์ → ส่งเอกสารที่ดึงมาให้ LLM → สร้างคำตอบ" หากเจตนาของคำถามชัดเจนและสามารถดึงข้อมูลที่ต้องการได้ในการค้นหาครั้งเดียว วิธีนี้ก็เพียงพอ แต่ในทางปฏิบัติ มักเกิดกรณีที่การค้นหาเพียงครั้งเดียวไม่สามารถรวบรวมข้อมูลที่จำเป็นได้ครบถ้วน

ใน Agentic RAG ตัว LLM เองจะเป็นผู้ตัดสินใจว่า "ผลการค้นหาเพียงพอหรือไม่" และ "ควรเปลี่ยน query หรือไม่" จากนั้นจะเขียน query ใหม่หรือสอบถามจาก data source อื่นตามความจำเป็น ด้วยการผนวก multi-step reasoning เข้าไป จึงสามารถรวบรวมและบูรณาการข้อมูลหลายชิ้นอย่างเป็นขั้นตอน เพื่อประกอบเป็นคำตอบสุดท้ายได้

มีประสิทธิภาพในสถานการณ์ใดบ้าง

ลองพิจารณาตัวอย่างการสอบถาม knowledge base ภายในองค์กร คำถามอย่าง "เทมเพลตการเสนอขายที่ใช้ในดีลยอดขายสูงสุด 3 อันดับของเดือนที่แล้วคืออะไร" นั้นต้องการหลายขั้นตอน ได้แก่ การค้นหาข้อมูลยอดขาย → การระบุดีล → การค้นหาเอกสารเสนอขายของแต่ละดีล การที่ agent รับผิดชอบการแยกย่อยและการค้นหาตามลำดับนี้ ทำให้ผู้ใช้ได้รับคำตอบจากคำถามเพียงครั้งเดียว

อย่างไรก็ตาม ยิ่ง agent วนลูปมากขึ้นเท่าใด latency และ token cost ก็จะสูงขึ้นตามลำดับ การกำหนดขีดจำกัดจำนวนลูป และการออกแบบให้ส่งคืนความคืบหน้าระหว่างทางผ่าน streaming ถือเป็นสิ่งที่ขาดไม่ได้ในการใช้งานจริง

บทความที่กล่าวถึงคำศัพท์นี้