2026-07-11 11:24:03 +08:00
2026-07-08 10:09:42 +08:00
2026-07-11 11:24:03 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00
2026-07-08 10:09:42 +08:00

AI 智能体开发LangChain + LangGraph

课程简介

本课程面向具备 Python 基础语法的大学生和 AI 应用开发初学者,系统讲解如何使用 大语言模型 API、LangChain、RAG、向量数据库、LangGraph 构建 AI 智能体应用。

课程不是停留在“调用大模型聊天”而是围绕真实智能体开发流程帮助学习者理解并实践如何把大模型、Prompt、工具、知识库、状态管理、流程控制、人机协作、评估与部署组织成一个可运行、可测试、可交付的 AI 应用系统。

课程主线如下:

开发环境
→ 大模型 API 调用
→ LangChain 基础组件
→ Prompt / Chain / Parser / Tool
→ RAG 与向量数据库
→ LangGraph 状态图
→ 对话代理、任务调度、多智能体、人机协作
→ 综合项目实战
→ 部署、评估与课程总结

课程定位

本课程定位为 AI 智能体开发入门到项目实战课程,重点培养以下能力:

  • 能够独立搭建 Python + Jupyter + LangChain + LangGraph 开发环境;
  • 能够通过 OpenAI 兼容 API 调用大语言模型;
  • 能够使用 Prompt、链式组合、输出解析器构建稳定的大模型应用
  • 能够定义工具,并让模型根据任务调用工具;
  • 能够使用 RAG 和向量数据库构建知识库问答系统;
  • 能够使用 LangGraph 构建有状态、可分支、可循环、可记忆的智能体流程;
  • 能够理解多智能体协作、任务调度和人机协作机制;
  • 能够完成从需求分析、MVP 实现到部署评估的完整项目闭环。

适合人群

适合以下学习者:

  • 具备 Python 基础语法的大学生;
  • 想从大模型 API 调用进入 AI 应用开发的初学者;
  • 想系统学习 LangChain、RAG、LangGraph 的开发者;
  • 希望完成 AI 智能体项目作品的学生或工程实践者;
  • 对工具调用、多智能体、人机协作、任务自动化感兴趣的学习者。

先修要求

建议学习者具备:

  • Python 基础语法;
  • 函数、列表、字典、类、异常处理等基础知识;
  • 基本命令行使用能力;
  • Jupyter Notebook 基础使用经验;
  • 对 HTTP API、JSON、环境变量有初步了解更佳。

技术栈

  • 开发工具VS Code
  • 编程语言Python 3.12.11
  • 虚拟环境venv
  • Notebook 环境Jupyter Notebook / ipykernel
  • 主要框架LangChain、LangGraph
  • 向量数据库ChromaDB
  • 大语言模型qwen3.6-35b-A3b
  • 向量模型qwen3-embedding
  • API 方式OpenAI 兼容 API
  • 包管理pip + 清华大学 TUNA 镜像源
  • 部署与评估FastAPI、Docker、日志、评估集、LangSmith 概念

环境要求

  • Python 3.10 及以上版本,推荐 Python 3.12.11
  • 已安装 pip
  • 已安装 VS Code 和 Jupyter 相关插件
  • 具备 OpenAI 兼容 API 访问权限
  • 已获取可用的 OPENAI_BASE_URLOPENAI_API_KEY

默认模型配置

本课程默认统一使用以下模型:

类型 默认模型 用途
大语言模型 qwen3.6-35b-A3b 对话、生成、推理、工具调用、智能体节点
向量模型 qwen3-embedding 文档向量化、相似度检索、RAG 知识库

如实际 API 服务不支持上述模型,可根据服务提供方说明替换为等价模型,但建议在整门课程中保持模型名称统一,避免调试混乱。

快速开始

1. 克隆本仓库

git clone <仓库地址>
cd AI智能体开发

2. 创建虚拟环境

python -m venv .venv

3. 激活虚拟环境

Windows PowerShell

.venv\Scripts\Activate.ps1

macOS / Linux

source .venv/bin/activate

4. 安装依赖

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

5. 配置环境变量

在项目根目录创建 .env 文件:

OPENAI_BASE_URL=https://your-base-url.com/v1
OPENAI_API_KEY=sk-your-api-key

6. 选择 Jupyter 内核

在 VS Code 中选择 .venv 对应的 Python 解释器或 Jupyter Kernel然后按顺序打开 .ipynb 课件学习。

学习目标

完成课程后,学习者应能够:

  1. 搭建 Python、VS Code、venv、Jupyter 的 AI 应用开发环境;
  2. 使用 OpenAI 兼容 API 调用 qwen3.6-35b-A3b
  3. 掌握 PromptTemplate、ChatPromptTemplate、Few-shot Prompt 等提示模板方法;
  4. 使用 LangChain 构建 LLM 链、结构化输出链和复杂 Runnable 链;
  5. 定义计算、查询、文件处理等工具,并实现模型驱动的工具调用;
  6. 使用 qwen3-embedding、ChromaDB 构建向量检索系统;
  7. 构建完整 RAG 知识库问答应用;
  8. 使用 LangGraph 构建状态图、节点、边、条件边、循环与记忆;
  9. 实现对话代理、任务调度、多智能体协作和人机协作流程;
  10. 完成知识库问答助手、多工具协作智能体、交互式智能体项目;
  11. 理解智能体项目的部署、评估、日志、追踪和上线检查方法。

推荐学习路径

01-02环境准备
03-04大模型 API 与 LangChain 入门
05-08Prompt、LLM 链、输出解析器、链式组合
09-10工具定义与工具调用
11-13RAG、Embedding、向量数据库、知识库问答
14-19LangGraph 状态图基础
20-23高级智能体编排
24-26综合项目实战
27-28部署评估与课程总结

注:从认知顺序看,建议学习者在学习第 05 课 LLM 链时,同时回看第 06 课 Prompt 模板。后续课程维护时,可考虑将 Prompt 模板提前到 LLM 链之前。

详细课程大纲

模块一:开发环境与 Python 项目配置

序号 课件 主题 核心产出
01 01_开发环境搭建.ipynb 开发环境搭建 可运行的本地 Python 虚拟环境
02 02_Python环境配置.ipynb Python 环境配置 可复现的 Notebook 开发环境

本模块帮助学习者完成 VS Code、Python、venv、pip、Jupyter、依赖管理等基础准备为后续运行大模型和智能体课件打好环境基础。

模块二:大模型 API 与 LangChain 入门

序号 课件 主题 核心产出
03 03_大模型API调用.ipynb 大模型 API 调用 可调用 qwen3.6-35b-A3b 的 Python 示例
04 04_LangChain概述.ipynb LangChain 概述 第一个 LangChain 调用链

本模块介绍 OpenAI 兼容 API、环境变量配置、单轮对话、多轮对话、流式输出以及 LangChain 的框架定位和组件化开发思想。

模块三LangChain 核心组件

序号 课件 主题 核心产出
05 05_LLM链.ipynb LLM 链 Prompt + LLM + Parser 基础链
06 06_Prompt模板.ipynb Prompt 模板 可复用的 Prompt 模板
07 07_输出解析器.ipynb 输出解析器 稳定结构化输出链
08 08_链式组合.ipynb 链式组合 多步骤、多分支 Runnable 流程

本模块学习 LangChain 应用开发的核心组件,包括 Prompt 模板、模型调用、输出解析、Runnable、并行链、分支链和复杂链式组合。

模块四:工具定义与工具调用

序号 课件 主题 核心产出
09 09_工具定义.ipynb 工具定义 自定义工具集合
10 10_工具调用.ipynb 工具调用 能自动选择并调用工具的智能体

本模块从 @tool 工具定义开始,逐步学习计算工具、查询工具、文件工具、多工具注册、模型选择工具、工具执行与最终答案生成。

建议在学习本模块后重点理解 Agent 的基本循环:

观察任务 → 思考方案 → 选择工具 → 执行工具 → 观察结果 → 生成答案

模块五RAG 与向量数据库

序号 课件 主题 核心产出
11 11_检索增强.ipynb 检索增强 简单本地 RAG 问答链
12 12_向量数据库.ipynb 向量数据库 基于 ChromaDB 的本地知识库检索
13 13_RAG构建.ipynb RAG 构建 多文档知识库问答系统

本模块学习 RAG 的完整流程:文档加载、文本切分、qwen3-embedding 向量化、向量数据库存储、相似度检索、上下文构造、答案生成和检索效果评估。

推荐理解路径:

为什么需要 RAG
→ 文档如何切分
→ 文本如何变成向量
→ 向量数据库如何检索
→ 检索结果如何交给大模型回答
→ 如何评估 RAG 效果

模块六LangGraph 状态图基础

序号 课件 主题 核心产出
14 14_LangGraph概述.ipynb LangGraph 概述 最小 LangGraph 状态图
15 15_图结构.ipynb 图结构 StateGraph 总体结构示例
16 16_状态管理.ipynb 状态管理 多字段业务状态设计
17 17_节点与边.ipynb 节点与边 多节点顺序执行图
18 18_条件边.ipynb 条件边 带条件判断的状态图
19 19_循环与记忆.ipynb 循环与记忆 支持循环和持久化状态的智能体流程

本模块学习 LangGraph 的核心思想:用状态图管理复杂智能体流程。学习者将掌握 State、Node、Edge、START、END、条件边、循环、MemorySaver 和 thread_id 等关键概念。

模块七:高级智能体编排

序号 课件 主题 核心产出
20 20_多智能体架构.ipynb 多智能体架构 多智能体协作工作流
21 21_对话代理.ipynb 对话代理 支持上下文记忆的对话机器人
22 22_任务调度.ipynb 任务调度 自动化任务调度智能体
23 23_人机协作.ipynb 人机协作 带人工审批环节的智能体工作流

本模块从单智能体流程扩展到多智能体协作,学习监督者模式、流水线模式、辩论模式、对话代理、任务拆解、任务调度、人机确认与审批流程。

模块八:综合项目实战

序号 课件 项目 核心产出
24 24_项目实战一.ipynb 个人知识库问答助手 知识库问答助手 MVP
25 25_项目实战二.ipynb 多工具协作型智能体 多工具智能体
26 26_项目实战三.ipynb 带交互界面的学习任务助手 可交互智能体项目

三个项目形成如下递进:

  1. 项目一:个人知识库问答助手
    聚焦 RAG 思想,完成文档准备、检索、答案生成和参考资料返回。

  2. 项目二:多工具协作型智能体
    聚焦工具调用,完成搜索、计算、文件读取、工具选择、工具执行和结果汇总。

  3. 项目三:带交互界面的学习任务助手
    聚焦项目封装和交互体验,完成意图识别、条件路由、历史记录和命令行交互。

后续可将项目三进一步升级为综合收官项目:整合 RAG、多工具、记忆、条件路由、CLI / Web 交互和自动评估用例。

模块九:部署、评估与课程总结

序号 课件 主题 核心产出
27 27_部署与评估.ipynb 部署与评估 智能体上线检查与评估流程
28 28_课程总结.ipynb 课程总结 后续学习路线与完整知识框架

本模块帮助学习者理解智能体应用如何从 Notebook Demo 走向工程交付包括函数封装、命令行运行、API 服务、Docker、云部署、评估集、日志、追踪和上线检查清单。

实践项目列表

项目 对应课件 项目类型 关键能力
第一个大模型 API 对话程序 03_大模型API调用.ipynb API 入门 环境变量、单轮/多轮/流式调用
第一个 LangChain 程序 04_LangChain概述.ipynb 框架入门 ChatOpenAI、Prompt、LCEL
结构化输出链 07_输出解析器.ipynb 输出解析 JSON、Pydantic、格式约束
智能客服工单处理链 08_链式组合.ipynb 链式组合 分类、摘要、并行分析、回复建议
多功能工具集合 09_工具定义.ipynb 工具定义 计算、查询、文件处理工具
工具调用型助手 10_工具调用.ipynb 工具智能体 工具选择、工具执行、结果汇总
私有文档问答系统 11_检索增强.ipynb RAG 入门 文档加载、切分、检索、生成
ChromaDB 知识库 12_向量数据库.ipynb 向量数据库 持久化、相似度检索、元数据过滤
多文档 RAG 系统 13_RAG构建.ipynb 完整 RAG 多文档加载、检索评估、问答生成
多智能体协作流程 20_多智能体架构.ipynb 多智能体 监督者、流水线、辩论、协作
对话代理机器人 21_对话代理.ipynb 对话智能体 messages、检查点、多轮记忆
任务调度智能体 22_任务调度.ipynb 工作流智能体 任务拆解、执行、汇总
人工审批工作流 23_人机协作.ipynb Human-in-the-loop interrupt、resume、人工确认
个人知识库问答助手 24_项目实战一.ipynb 综合项目一 RAG、检索、回答、依据展示
多工具协作型智能体 25_项目实战二.ipynb 综合项目二 搜索、计算、文件读取、工具选择
学习任务助手 26_项目实战三.ipynb 综合项目三 意图识别、条件路由、历史记录、交互
智能体部署与评估流程 27_部署与评估.ipynb 工程化项目 API、评估集、日志、追踪、上线检查

课程优化说明

本课程已按以下原则进行优化:

  • 统一课程主线模型LLM 使用 qwen3.6-35b-A3bEmbedding 使用 qwen3-embedding
  • 清理 Notebook 已保存运行输出避免残留报错、API Key 前缀和本地运行结果干扰学习;
  • 补齐 requirements.txt 中课程实际使用的关键依赖;
  • 将 Claude / Anthropic 调用作为扩展阅读,不作为课程主线默认运行内容;
  • 修正项目实战中的模型注释示例,避免出现与课程默认模型不一致的示例;
  • README 课程目录与实际项目内容保持一致。

学习建议

  1. 先完成 01-02 环境配置,确保 .venv 和 Jupyter Kernel 正确;
  2. 学习 03 时重点确认 .env 中的 API 配置是否可用;
  3. 学习 05-08 时重点掌握 Prompt、链、解析器和 Runnable 的组合方式;
  4. 学习 09-10 时重点理解“工具让模型获得外部能力”;
  5. 学习 11-13 时重点理解 RAG 的每个环节,而不是只运行最终代码;
  6. 学习 14-19 时建议画流程图辅助理解 LangGraph 的状态、节点和边;
  7. 学习 20-23 时关注单智能体到多智能体、人机协作的演进;
  8. 学习 24-26 时建议主动扩展项目数据和功能,形成自己的项目作品;
  9. 学习 27-28 时重点整理项目部署、评估、日志和后续学习路线。

注意事项

  • 每份课件都是独立的 .ipynb 文件,建议按顺序学习;
  • 运行课件前请确保虚拟环境已激活,并且 Jupyter 内核选择为 .venv
  • 涉及大模型 API 的课件需要正确配置 OPENAI_BASE_URLOPENAI_API_KEY
  • 涉及 RAG 和向量数据库的课件默认使用 qwen3-embedding
  • 如果 API 服务不支持工具调用、流式输出或指定模型,请根据服务商文档调整对应参数;
  • 项目实战中的部分案例为了教学稳定性使用规则模拟,学习者可在掌握流程后替换为真实 API 或真实数据源。

后续拓展方向

完成本课程后,可以继续学习:

  • 更复杂的 ReAct Agent 和规划型 Agent
  • 多模态智能体;
  • 企业知识库 RAG 优化;
  • Agent 评估体系与自动化测试;
  • LangGraph 生产级工作流;
  • MCP 工具生态;
  • Streamlit / Gradio / FastAPI 智能体 Web 应用;
  • 智能体权限控制、审计、安全与成本优化。
Description
AI智能体开发教程
Readme 211 KiB
Languages
Jupyter Notebook 100%