Một hệ RAG là hai pipeline gặp nhau ở index

Một hệ RAG là hai pipeline gặp nhau ở index A data-flow diagram generated by Archify. 01 / Đầu vào 02 / Biến đổi 03 / Index / Truy xuất 04 / Ghép context 05 / Kết quả Tài liệu thô · PDF, wiki, DB, API · 01 / Đầu vào Tài liệu thô PDF, wiki, DB, API Parse · chunk · metadata · khôi phục cấu trúc tài liệu · 02 / Biến đổi Parse · chunk · metadata khôi phục cấu trúc tài liệu Knowledge index · dense + sparse + filter · 03 / Index / Truy xuất Knowledge index dense + sparse + filter Câu hỏi người dùng · raw query lúc chạy · 01 / Đầu vào Câu hỏi người dùng raw query lúc chạy Query processing · rewrite, tách ý, filter · 02 / Biến đổi Query processing rewrite, tách ý, filter Retrieval + rerank · candidate rồi tới evidence · 03 / Index / Truy xuất Retrieval + rerank candidate rồi tới evidence Context builder · chọn, sắp, cắt theo budget · 04 / Ghép context Context builder chọn, sắp, cắt theo budget Câu trả lời + citation · bám vào evidence đã lấy · 05 / Kết quả Câu trả lời + citation bám vào evidence đã lấy đọc và chuẩn hoá embed và đánh index hiểu câu hỏi dense + sparse evidence đã xếp hạng prompt có grounding index phục vụ truy vấn Legend primary data data store data flow

Nửa trên chạy offline, nửa dưới chạy khi có người hỏi

  • • Pipeline dữ liệu trả lời: làm sao biến tri thức thô thành thứ search được
  • • Pipeline truy vấn trả lời: làm sao tìm và dùng evidence tốt nhất
  • • Hai nửa gặp nhau đúng một chỗ là knowledge index

RAG không cập nhật weights của model

  • • Model vẫn nguyên như cũ sau khi cắm thêm RAG
  • • Thứ thay đổi là thông tin có sẵn tại thời điểm inference
  • • Vì vậy sửa một tài liệu chỉ cần re-index, không cần train lại

Mỗi mũi tên là một chỗ có thể hỏng

  • • Parser mất bảng, chunk mất chủ ngữ, retrieval bỏ sót entity
  • • Rerank chọn nhầm, context quá dài, prompt không ép grounding
  • • Đổi sang model lớn hơn không sửa được lỗi nằm ở các khâu trên