Hệ thống RAG tác nhân tự cải thiện (Self-Improving Agentic RAG) là một framework mã nguồn mở trên GitHub cho phép bạn xây dựng pipeline RAG không chỉ hoạt động tốt khi testing mà còn biết tự phân tích, đánh giá và điều chỉnh chiến lược vận hành của chính nó. Thay vì bạn phải mò mẫm tunning hàng tá tham số như prompt, số lượng tài liệu truy xuất, hay model LLM dùng cho từng bước, framework này giao việc đó cho một nhóm tác nhân AI cấp cao: chúng chẩn đoán điểm yếu trong output, đề xuất cải tiến cho Standard Operating Procedure (SOP), và thử nghiệm các phiên bản mới tự động. Vòng lặp tiến hóa này giúp hệ thống thích nghi với dữ liệu mới mà không cần can thiệp thủ công, đặc biệt hữu ích cho các domain phức tạp như y tế, nơi yêu cầu độ chính xác và tuân thủ quy định cao. Bạn có thể xem chi tiết tại repository gốc trên GitHub.
Thank you for reading this post, don't forget to subscribe!Những điểm chính
- Hệ thống gồm hai vòng lặp: Inner Loop (Guild – nhóm tác nhân chuyên gia soạn thảo tài liệu) và Outer Loop (Director – tác nhân cấp cao chẩn đoán và tiến hóa SOP).
- Đánh giá đa chiều 5D (Scientific Rigor, Regulatory Compliance, Ethical Soundness, Recruitment Feasibility, Operational Simplicity) dùng LLM-as-a-Judge kết hợp đánh giá lập trình.
- Phân tích Pareto Front để tìm ra các chiến lược tối ưu đánh đổi giữa các mục tiêu, trình bày trực quan cho người ra quyết định.
- Chạy hoàn toàn local với Ollama, không cần API đám mây; hỗ trợ các model Llama 3.1 8B, Qwen2 7B, Llama 3 70B.
- Sử dụng LangGraph để orchestrate đa tác nhân, FAISS cho vector store, DuckDB cho dữ liệu có cấu trúc (MIMIC-III).
Autonomous Agentic RAG là gì và giải quyết vấn đề gì?

Autonomous Agentic RAG (viết tắt từ Autonomous Agentic RAG – Self Improving Agentic RAG Pipeline) là một framework xây dựng hệ thống RAG có khả năng tự cải thiện thông qua cơ chế tiến hóa. Vấn đề mà nó giải quyết rất thực tế: khi bạn deploy một pipeline RAG lên production, dữ liệu unseen thường làm hỏng những gì đã chạy ngon lành trong testing. Việc tunning thủ công các design decision – như prompt engineering, chiến lược retrieval, phối hợp tác nhân – cực kỳ tốn thời gian và khó tìm ra tổ hợp tối ưu. Framework này chuyển việc đó thành một bài toán tối ưu đa mục tiêu tự động: nhóm tác nhân chuyên gia (gọi là Guild) thực hiện tác vụ RAG, một hệ thống đánh giá đa chiều chấm điểm output, một tác nhân chẩn đoán phân tích điểm yếu, và một tác nhân kiến trúc sư đề xuất SOP mới. Vòng lặp này lặp lại cho đến khi tìm ra Pareto Front – tập hợp các chiến lược đánh đổi tốt nhất. Trong README, tác giả áp dụng cho domain y tế (thiết kế tiêu chí tuyển chọn bệnh nhân cho thử nghiệm lâm sàng), nhưng kiến trúc có thể áp dụng cho bất kỳ lĩnh vực nào cần RAG chính xác và thích nghi.
Những tính năng nổi bật của Autonomous Agentic RAG?

Tính năng đầu tiên đáng chú ý là kiến trúc hai vòng lặp (Inner Loop và Outer Loop) cho phép tự động hóa quá trình tối ưu hóa RAG. Inner Loop là một Guild gồm Planner, Medical Researcher, Regulatory Specialist, Ethics Specialist, Patient Cohort Analyst, và Synthesizer – mỗi tác nhân dùng một model LLM riêng được chọn theo vai trò (ví dụ Planner dùng Llama 3.1 8B với format JSON, Director dùng Llama 3 70B). Các tác nhân này phối hợp qua LangGraph để sinh ra tài liệu tiêu chí lâm sàng. Outer Loop gồm Performance Diagnostician và SOP Architect: Diagnostician phân tích vector đánh giá 5 chiều và chọn ra điểm yếu chính, Architect tạo ra 2-3 SOP đột biến (mutations) để cải thiện điểm đó. Mỗi SOP mới được chạy lại qua Inner Loop và đánh giá lại, kết quả được lưu vào SOPGenePool. Cuối cùng, hệ thống áp dụng phân tích Pareto để loại bỏ các giải pháp bị thống trị và trình bày front tối ưu cho người dùng. Một điểm mạnh khác là tích hợp đa nguồn dữ liệu: PubMed (văn bản khoa học), FDA guidelines (PDF), nguyên tắc đạo đức Belmont, và bệnh án MIMIC-III (DuckDB). Tất cả được index thành FAISS vector stores. Bạn cũng có thể theo dõi tất cả trace qua LangSmith để debug.
Hướng dẫn cài đặt và sử dụng cơ bản?

Để chạy thử, bạn cần môi trường Python với các thư viện chính. Dưới đây là các bước cơ bản dựa trên hướng dẫn trong README:
- Cài đặt dependencies: Chạy lệnh
pip install -U langchain langgraph langchain_community langchain_openai langchain_core ollama pandas duckdb faiss-cpu sentence-transformers biopython pypdf pydantic lxml html2text beautifulsoup4 matplotlib. - Cài Ollama và pull models: Tải các model cần thiết:
ollama pull llama3.1:8b-instruct,ollama pull qwen2:7b,ollama pull llama3:70b,ollama pull nomic-embed-text. Nếu GPU hạn chế, bạn có thể bỏ qua model 70B và thay bằng phiên bản nhỏ hơn. - Chuẩn bị dữ liệu: Tạo thư mục
./data/pubmed_articles,./data/fda_guidelines,./data/ethical_guidelines,./data/mimic_db. Chạy notebook để download PubMed articles và FDA PDF, tạo file ethics summary, và load MIMIC-III CSVs (cần tải từ PhysioNet và đặt đúng thư mục). - Cấu hình biến môi trường: Tạo file
.envvớiLANGCHAIN_API_KEY(để tracing),ENTREZ_EMAIL(để truy cập PubMed). - Chạy thử pipeline: Import notebook, khởi tạo LLM config, tạo knowledge stores, sau đó chạy Guild graph với baseline SOP. Output sẽ là tài liệu tiêu chí tuyển chọn bệnh nhân. Sau đó chạy evaluation và evolution cycle để thấy hệ thống tự cải thiện.
Lưu ý: Việc chạy model 70B yêu cầu RAM >32GB hoặc GPU mạnh. Bạn có thể giảm bộ nhớ bằng cách dùng quantization (ví dụ ollama pull llama3:70b-instruct-q4_K_M). Toàn bộ quy trình được thiết kế chạy trên local, không phụ thuộc API bên ngoài.
Ai nên dùng – ai không nên dùng?

Autonomous Agentic RAG phù hợp với các nhóm nghiên cứu AI/ML muốn thử nghiệm kiến trúc RAG tự tối ưu hóa, đặc biệt trong các lĩnh vực đòi hỏi độ chính xác và tuân thủ quy định như y tế, tài chính, pháp lý. Nó cũng là tài liệu học tập tuyệt vời cho ai muốn hiểu cách kết hợp LangGraph, multi-agent evaluation, và evolutionary algorithms. Tuy nhiên, framework này còn ở mức prototype: việc chạy đầy đủ yêu cầu tài nguyên phần cứng đáng kể (đặc biệt model 70B), quy trình cài đặt dữ liệu MIMIC-III phức tạp do yêu cầu giấy phép, và chưa có sẵn Docker image hay CLI đơn giản. Nếu bạn chỉ cần một pipeline RAG cơ bản để chạy nhanh, đây không phải lựa chọn tối ưu. Nếu bạn là developer muốn mổ xẻ kiến trúc mới lạ và sẵn sàng đầu tư thời gian cài đặt, repo này rất đáng để nghiên cứu.
Câu hỏi thường gặp
Tôi có cần GPU mạnh để chạy không?
Có, đặc biệt nếu bạn muốn chạy model Director (Llama 3 70B) để có kết quả tốt nhất. Bạn có thể thay bằng model nhỏ hơn (ví dụ 8B hoặc 7B) nhưng chất lượng chẩn đoán và sinh SOP có thể giảm. Ollama hỗ trợ quantization giúp giảm tài nguyên.
Framework này có hỗ trợ ngôn ngữ khác ngoài tiếng Anh không?
Hiện tại dữ liệu mẫu và prompts đều bằng tiếng Anh (PubMed, FDA, MIMIC-III). Bạn có thể thay thế nguồn tri thức và dịch prompts sang tiếng Việt, nhưng cần kiểm tra lại các mapping ICD9, lab codes vì chúng là dữ liệu y tế Mỹ.
Tôi có thể dùng framework này cho dữ liệu riêng của mình không?
Có thể, bạn chỉ cần thay đổi các knowledge stores: thay thế PubMed bằng tài liệu nội bộ, thay MIMIC bằng database riêng, và tùy chỉnh prompts cho phù hợp domain. Tuy nhiên, việc huấn luyện lại vòng tiến hóa có thể mất nhiều thời gian.
Làm sao để hiểu rõ hơn về mã nguồn?
Repository có notebook Jupyter chi tiết từng bước cùng với giải thích. Bạn nên chạy notebook theo thứ tự, đọc phần docstring và comment trong code. Ngoài ra, bạn có thể theo dõi tác giả trên Medium để có bài viết phân tích sâu hơn.
Kết luận
Autonomous Agentic RAG là một dự án mã nguồn mở táo bạo, áp dụng nguyên lý tiến hóa vào tối ưu hóa pipeline RAG. Dù còn nặng về tài nguyên và chưa thân thiện với người mới, nó mở ra hướng tiếp cận mới: thay vì tuning thủ công, hãy để AI tự thiết kế quy trình của chính nó. Nếu bạn muốn khám phá giới hạn của Agentic RAG, hãy clone repo về, chạy thử và đóng góp ý tưởng. Đừng quên để lại sao trên GitHub nếu bạn thấy hữu ích nhé!

