Nếu bạn đã từng xây dựng một hệ thống RAG (Retrieval-Augmented Generation), bạn biết nỗi đau: debug cái pipeline phức tạp, không biết retriever trả về gì, prompt engineering mò mẫm, và khi có bug thì... ngồi đọc logs mỏi mắt.
Đội ngũ từ Tsinghua University (THUNLP), Northeastern University (NEUIR), OpenBMB và AI9Stars vừa release UltraRAG v3 - framework đầu tiên xây dựng RAG pipelines dựa trên kiến trúc Model Context Protocol (MCP). Và nó đang có 3,400+ stars trên GitHub.
UltraRAG giải quyết vấn đề gì?
"Last Mile Problem" trong RAG
Vấn đề lớn nhất khi làm RAG không phải là retriever hay LLM - mà là logic inference không visible. Bạn không biết:
- Retriever trả về documents nào?
- Documents đó có relevant không?
- Prompt được construct như thế nào?
- Tại sao LLM trả lời sai?
UltraRAG giải quyết bằng cách visualize toàn bộ pipeline ở mức pixel-level. Bạn nhìn thấy data flow qua từng component.
Tính năng nổi bật
1. MCP Architecture
Đây là điểm khác biệt lớn nhất. UltraRAG standardize các components RAG (Retriever, Generator, Reranker...) thành independent MCP Servers. Lợi ích:
- Reusable: Một retriever server có thể dùng cho nhiều pipelines
- Decoupled: Debug từng component riêng biệt
- Scalable: Scale từng server theo nhu cầu
2. YAML-Based Orchestration
Thay vì viết code Python phức tạp, bạn định nghĩa pipeline bằng YAML:
pipeline:
- step: retrieve
server: retriever_server
params:
top_k: 5
- step: rerank
server: reranker_server
condition: "len(documents) > 0"
- step: generate
server: llm_server
loop_until: "confidence > 0.8"
Hỗ trợ loops, conditionals, sequential execution - tất cả trong vài chục dòng config.
3. Visual IDE (Không phải chat interface)
UltraRAG UI không phải chatbot đơn giản. Nó là một RAG IDE với:
- Pipeline Builder: Kéo thả components như Figma
- Real-time Canvas ↔ Code Sync: Sửa trên canvas → code update, sửa code → canvas update
- Parameter Tuning: Chỉnh prompt, top_k, temperature... ngay trên UI
- AI Dev Assistant: GPT hỗ trợ design pipeline và viết prompts
4. One-Click Deployment
Xong pipeline? Một click để convert thành:
- Interactive Web UI
- REST API endpoint
- Demo chatbot
Không cần viết frontend, không cần setup server riêng.

So sánh với các RAG frameworks khác
| Feature | UltraRAG | LangChain | LlamaIndex | Haystack |
|---|---|---|---|---|
| MCP Native | ✅ | ❌ | ❌ | ❌ |
| Visual IDE | ✅ | ❌ | ❌ | ❌ |
| YAML Orchestration | ✅ | ❌ | ❌ | Partial |
| One-click Deploy | ✅ | ❌ | ❌ | ❌ |
| Loop/Conditional | ✅ YAML | Python | Python | Python |
| Research Benchmarks | ✅ Built-in | ❌ | ❌ | ❌ |
Ai nên dùng UltraRAG?
Phù hợp cho:
- Researchers cần reproducible RAG experiments
- Teams muốn prototype nhanh mà không viết nhiều code
- Developers cần debug RAG pipelines phức tạp
- Những ai đang dùng MCP và muốn tích hợp RAG
Chưa phù hợp cho:
- Production systems cần extreme customization
- Những ai không quen với YAML-based config
- Projects cần tích hợp sâu với existing Python codebase
Cài đặt
Docker (Recommended):
docker pull openbmb/ultrarag:latest
docker run -p 8080:8080 openbmb/ultrarag:latest
Source Code:
git clone https://github.com/OpenBMB/UltraRAG
cd UltraRAG
pip install -r requirements.txt
python main.py
Kết luận
UltraRAG v3 là một bước tiến thú vị trong việc democratize RAG development. Việc dựa trên MCP architecture cho thấy team đang nghĩ về long-term ecosystem chứ không chỉ là một tool standalone.
Với backing từ Tsinghua và OpenBMB (cùng team tạo ra MiniCPM), đây là project đáng để follow.
Link: github.com/OpenBMB/UltraRAG
Docs: ultrarag.openbmb.cn
Discussion