GEO

UltraRAG 2.0:基于MCP架构的开源框架,用YAML配置简化复杂RAG系统开发

2026/1/25
UltraRAG 2.0:基于MCP架构的开源框架,用YAML配置简化复杂RAG系统开发

AIAI Summary (BLUF)

UltraRAG 2.0是基于MCP架构的开源框架,通过YAML配置简化复杂RAG系统开发,支持低代码实现多步推理、动态检索与模块化工作流,有效解决研发与生产环境中RAG应用的工程瓶颈。

当检索增强生成(RAG)技术从简单的“检索+生成”拼接,进化到需要融合自适应知识组织、多轮推理和动态检索的复杂系统时,研究人员常常陷入冗长的工程实现泥潭。UltraRAG 2.0,由清华大学THUNLP实验室、东北大学NEUIR实验室、OpenBMB与AI9stars联合推出,正试图改变这一现状。这个基于模型上下文协议(MCP)架构的开源框架,让开发者只需编写YAML配置文件,就能实现串行、循环、条件分支等复杂逻辑,用几十行代码搭建出媲美DeepResearch、Search-o1的高性能RAG系统。

Why is UltraRAG 2.0 Needed?

现代RAG系统的复杂度飙升,给研究者带来两大痛点:

  1. 复现现有方法时:要面对不同项目的异构接口和冗余代码。
  2. 验证新想法时:80%的精力消耗在工程实现而非算法创新上。
    UltraRAG 2.0的核心解决方案是组件化封装+灵活编排
  • 将检索、生成等核心功能封装为标准化MCP Server。
  • 通过函数级Tool接口实现模块“热插拔”。
  • 用YAML文件声明式定义复杂推理流程。

Three Core Highlights: Redefining the RAG Development Experience

1. Low-Code Construction of Complex Pipelines

# Example: A simple iterative retrieval-generation pipeline
pipeline:
  - step: retriever.retrieve  # Call the retrieval service
    params:
      query: "{{input.query}}"
      top_k: 5
    output: context
  - loop: 3  # Iterate for 3 rounds
    steps:
      - step: generator.reflect  # Generate reflection
        params:
          context: "{{context}}"
        output: reflection
      - step: retriever.retrieve  # Secondary retrieval based on reflection
        params:
          query: "{{reflection}}"
        output: new_context

1. 低代码构建复杂Pipeline

无需深入编程细节,只需编写YAML配置文件,就能实现:

  • 多轮迭代检索(如Search-o1的思维链+检索模式)。
  • 基于条件判断的动态流程切换。
  • 复杂推理链路的串行/并行调度。

2. Out-of-the-Box Ecosystem Support

2. 开箱即用的生态支持

框架内置17个主流科研Benchmark,包括:

  • 问答任务:NaturalQuestions、HotpotQA等。
  • 知识密集型任务:FEVER、TriviaQA等。
  • 长文本理解:Qasper、NarrativeQA等。
    同时提供大规模语料库支持:
  • wiki-2018(2100万文档)。
  • 即将上线的wiki-2024版本。

3. Seamless Extension and Deployment

# Start vLLM service
bash script/vllm_serve.sh --model lmsys/vicuna-7b-v1.5

3. 无缝扩展与部署

通过模块化设计实现:

  • 支持vLLM部署的大模型服务。
  • 兼容FAISS、LanceDB等向量数据库。
  • 自定义Server只需实现标准接口。

Getting Started in 5 Minutes

1. Environment Setup

# Create a virtual environment
conda create -n ultrarag python=3.11
conda activate ultrarag
# Clone the repository
git clone https://github.com/OpenBMB/UltraRAG.git --depth 1
cd UltraRAG
# Install dependencies
pip install uv
uv pip install -e ".[all]"

1. 环境搭建

# 创建虚拟环境
conda create -n ultrarag python=3.11
conda activate ultrarag
# 克隆仓库
git clone https://github.com/OpenBMB/UltraRAG.git --depth 1
cd UltraRAG
# 安装依赖
pip install uv
uv pip install -e ".[all]"

2. Verify Installation

# Run the hello world example
ultrarag run examples/sayhello.yaml
# Successful output: Hello, UltraRAG 2.0!

2. 验证安装

# 运行hello world示例
ultrarag run examples/sayhello.yaml
# 成功输出:Hello, UltraRAG 2.0!

3. Build Your First RAG System

3. 开始构建第一个RAG系统

参考官方教程实现:

  • 语料库编码与索引建立。
  • 检索服务部署与调用。
  • 推理Pipeline配置与优化。

Who is UltraRAG 2.0 For?

谁适合用UltraRAG 2.0?

  • 科研人员:快速复现SOTA方法,验证新想法。
  • 算法工程师:低成本搭建生产级RAG系统。
  • 学生:降低RAG技术学习门槛,聚焦核心逻辑。
    项目已在GitHub开源,包含详细文档、示例代码和视频教程。社区还提供每日更新的RAG前沿论文解读,助力研究者紧跟领域进展。
    UltraRAG 2.0正在重构RAG系统的开发范式——当工程复杂度被大幅降低,研究者终于可以将精力集中在真正重要的地方:算法创新与科学发现。

(编者注:原始输入内容包含一个关于通用AI学习路径的扩展推广部分。作为专注于UltraRAG 2.0技术介绍的技术编辑,本文已在技术介绍的自然终点处结束。后续内容虽然与AI技能提升相关,但与UltraRAG框架的核心技术叙述不同,为保持本文的焦点、专业性和客观性,已将其省略。)

Roger深圳
本文由 Roger 审核,最后更新于 2026年7月2日
联系编辑 →
← 返回文章列表
分享到:微博

版权与免责声明:本文仅用于信息分享与交流,不构成任何形式的法律、投资、医疗或其他专业建议,也不构成对任何结果的承诺或保证。

文中提及的商标、品牌、Logo、产品名称及相关图片/素材,其权利归各自合法权利人所有。本站内容可能基于公开资料整理,亦可能使用 AI 辅助生成或润色;我们尽力确保准确与合规,但不保证完整性、时效性与适用性,请读者自行甄别并以官方信息为准。

若本文内容或素材涉嫌侵权、隐私不当或存在错误,请相关权利人/当事人联系本站,我们将及时核实并采取删除、修正或下架等处理措施。也请勿在评论或联系信息中提交身份证号、手机号、住址等个人敏感信息。