agentic-rag-for-dummies

用LangGraph快速搭建会思考的RAG智能体

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 搜索知识 🍴 复刻 578 👀 关注 26
GitHub ↗
GitHub 星标 ★ 4370
维护状态 较活跃
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,完全免费,可自行部署使用。

项目预览

agentic-rag-for-dummies 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类搜索知识
开发团队GiovanniPasq
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Jupyter Notebook
技术栈/模型agent,agentic-ai,agentic-rag,agents,ai-agents,bm25,generative-ai,gradio,langchain,langgraph,llm,ollama,qdrant,rag,rag-agents,rag-chatbot,rag-pipeline,retrieval-augmented-generation,retrieval-augmented-generation-rag
GitHub 星标★ 4370
上线时间2025-10-13 00:00:00
代码更新2026-10-17
仓库体积24.6 MB
本站数据更新2026-11-10
维护状态较活跃
收录时间2026-08-09
浏览次数8

项目介绍

这是一个用 LangGraph 构建的模块化 Agentic RAG 教程项目,旨在帮助开发者快速掌握检索增强生成(RAG)智能体的核心概念与实现。它解决了传统 RAG 系统在复杂查询、多步推理和工具调用上的不足,通过将检索、推理、工具使用等环节编排为可交互的智能体流程,提升了问答系统的准确性和灵活性。项目以 Jupyter Notebook 形式提供,包含从基础到高级的多个示例,覆盖了查询改写、混合检索、重排序、多文档问答等关键场景。其核心能力在于清晰展示了如何利用 LangGraph 的状态图机制构建可扩展的 RAG 智能体,并提供了实用的代码模板和最佳实践,适合希望快速上手 Agentic RAG 的开发者。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 4370

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:入门 约 15 分钟 部署方式:本地安装 6 步

环境要求

  • 已安装 Ollama(默认 LLM 提供方,见 https://ollama.com)
  • Python 环境,可选创建并激活虚拟环境
  • 可运行 Jupyter Notebook 或 VSCode,或使用 Google Colab
  • 准备 PDF 文档并放入 docs/ 目录

安装与启动步骤

  1. 1安装 Ollama 并拉模型

    先从 https://ollama.com 安装 Ollama,再拉取默认聊天模型 granite4.1:8b,用于后续的工具调用与问答。

    ollama pull granite4.1:8b
  2. 2准备 PDF 文档

    在项目根目录建立 docs/ 目录并把待检索的 PDF 放进去,README 提供了 javascript、blockchain、fortinet 三个示例 PDF 链接。

  3. 3用 Colab 快速开始

    直接打开 README 中的 Colab 笔记本链接,笔记本会自动克隆仓库并安装依赖;注意托管版 Colab 没有 Ollama,需先替换默认 Ollama 模型单元格。

  4. 4本地安装依赖

    在本地 Jupyter/VSCode 中可选先创建并激活虚拟环境,再安装依赖,也可改用 uv pip install -r requirements.txt。

    pip install -r requirements.txt
  5. 5顺序运行全部单元格

    把 PDF 放入 docs/ 后,从第一格开始自上而下运行全部单元格,不要跳格,最后会弹出聊天界面。

  6. 6运行应用

    除笔记本外还可直接运行应用入口脚本,启动后同样会呈现聊天界面。

    python project/app.py

关键配置

配置项必填说明示例
DOCS_DIR是存放原始 PDF 文件的目录docs
MARKDOWN_DIR是存放 PDF 转换后 markdown 的目录markdown_docs
PARENT_STORE_PATH是存放父级分块 JSON 文件的目录parent_store
CHILD_COLLECTION是Qdrant 中子分块集合名称document_child_chunks
DEFAULT_RETRIEVAL_K否默认检索返回的分块数量7
model否Ollama 聊天模型,建议 8B 以上以支持工具调用granite4.1:8b

如何确认成功

笔记本或 python project/app.py 跑完后出现聊天界面,即可输入问题验证检索与回答是否正常。

常见问题

Q:在 Google Colab 上能直接用 Ollama 吗?

A:不能。标准托管版 Colab 不提供 Ollama,需把默认的 Ollama 模型单元格替换成 README 文档中的云厂商示例,再运行剩余单元格。

Q:模型不按检索结果回答或胡乱调用工具怎么办?

A:为保证工具调用和指令遵循的可靠性,建议使用 8B 参数以上的模型;较小模型可能忽略检索指令或产生幻觉。

Q:可以用其他大模型厂商吗?

A:可以。系统与提供方无关,默认用 Ollama,按 LangChain 支持的任意聊天模型初始化方式改写即可。

Q:Docker 怎么部署?

A:README 未给出具体命令,完整 Docker 指令和系统要求见 project/README.md 中的 Docker Deployment 章节。

Q:依赖安装失败怎么办?

A:README 同时给出 uv 方案,可尝试 uv pip install -r requirements.txt,并确认虚拟环境已激活。

注意事项

  • 模型名称更新频繁,部署前请查阅官方文档确认最新可用模型标识。
  • Docker 部署的完整说明在 project/README.md,不在根目录 README 中。
  • README 的运行应用示例只给出 python project/app.py,端口等信息未说明,请以实际运行输出为准。

核心亮点

  • 模块化设计,每个RAG环节(检索、重排、生成)可独立替换和扩展
  • 基于LangGraph状态图,清晰展示Agent决策流程,易于调试
  • 包含多个真实场景示例(如多文档问答、工具调用),上手快

不足之处

  • 教程偏重LangGraph框架,对非该生态用户有一定学习成本
  • 文档/社区待观察

适用场景

  • 学习Agentic RAG架构与实现
  • 快速构建企业知识库问答原型
  • 作为LangGraph开发参考模板

替代项目

LangChain、LlamaIndex、Haystack

同类项目推荐

ollama-ex 开源

Elixir 项目几行代码接入本地大模型

A nifty little library for working with Ollama in Elixir.

★ 137 2026-10-29
prisma 开源

PHP 里一套接口调用多家多媒体大模型

Light-weight PHP package for integrating multi-media related Large Language Models (···

★ 242 2026-09-15
ai-fusion-kit 开源

快速搭建生产级 AI 聊天应用,省去重复造轮子。

A feature-rich, highly customizable AI Web App Template, empowered by Next.js.

★ 188 2026-08-09
ruby_llm 开源

用 Ruby 优雅地构建 AI 应用,一套代码接入所有主流大模型。

The Ruby AI framework.

★ 4498 2026-08-09
openDomain 开源

让 AI 智能体读懂业务领域知识,每条结论都有据可查

Git-native, evidence-backed domain semantic layer for AI agents and human maintainer···

★ 297 2026-10-06
langgraph-ai 开源

照着跑,快速上手LangGraph智能体与RAG开发

A comprehensive collection of LangGraph implementations, tutorials, and advanced AI ···

★ 115 2026-08-09
go-zero 开源

写接口描述,一键生成整套微服务代码

A cloud-native Go microservices framework with cli tool for productivity.

★ 33420 2026-10-07
rpd 开源

快速搭建节点式可视化编程界面,拖拽连线即所得。

:ok_hand: A Minimal Engine for creating Node-Based Visual Programming User Interface···

★ 452 2026-08-09