𝗔𝘀𝘆𝗻𝗰 𝗦𝗰𝗿𝗮𝗽𝗶𝗻𝗴 𝗜𝘀 𝗕𝗲𝘁𝘁𝗲𝗿 𝗳𝗼𝗿 𝗥𝗔𝗚 𝗜𝗻𝗴𝗲𝘀𝘁𝗶𝗼𝗻

ระบบ RAG มักจะล้มเหลวเนื่องจากข้อมูลที่ล้าสมัย หน้าเว็บมีการเปลี่ยนแปลงแต่ดัชนี (index) ของคุณยังเหมือนเดิม ส่งผลให้ AI ของคุณให้คำตอบที่ผิดพลาดด้วยความมั่นใจสูง

หลายคนพยายามแก้ไขปัญหานี้ด้วย synchronous scraper แบบง่ายๆ โดยการดึงหน้าเว็บ สกัดข้อมูล และอัปเดต vector store ของคุณ วิธีการนี้มักจะสร้างปัญหาเมื่อนำไปใช้งานจริง (production)

ปัญหาหลักของการทำ synchronous scraping:

การทำ async scraping จะใช้กระบวนการแบบ submit, poll และ retrieve โดยคุณส่งงาน (submit task) รับ job ID มา แล้วค่อยกลับมาตรวจสอบผลลัพธ์ในภายหลัง วิธีนี้จะช่วยให้แอปพลิเคชันของคุณทำงานได้อย่างรวดเร็ว

วิธีการสร้าง ingestion pipeline ที่เชื่อถือได้:

การทำ async scraping เหมาะที่สุดสำหรับการอัปเดตเบื้องหลัง (background updates) และการรีเฟรชข้อมูลตามกำหนดเวลา (scheduled refreshes) แต่มันไม่เหมาะกับความต้องการแบบเรียลไทม์ที่ผู้ใช้ต้องรอหน้าเว็บที่สดใหม่ทันที

หากผู้ใช้ต้องการข้อมูลในทันที ให้แสดงเนื้อหาจากแคช (cached content) ไปก่อน แล้วค่อยอัปเดตดัชนีในเบื้องหลัง

Source: https://dev.to/anakin_writers/async-scraping-jobs-are-usually-a-better-fit-for-rag-ingestion-than-blocking-requests-12k1

Optional learning community: https://t.me/GyaanSetuAi