一个面向学习的最小化 LangChain / LangGraph 项目骨架。
当前阶段先提供:
- 清晰的目录结构
- 面向后续实现的模块边界
- 学习与搭建文档
- 交给 Claude 继续开发时可直接使用的说明
这个仓库的定位不是一上来做"大而全"的框架,而是先用 nano 级别的结构把核心学习路径固定下来:
- 先学会 LangChain 的基础组件如何协作
- 再学会 LangGraph 的状态、节点、边和执行流
- 最后在一个非常小的项目中把两者串起来
nanoLangchain/
├── README.md
├── CLAUDE.md
├── pyproject.toml
├── .env.example
├── .gitignore
├── docs/
│ ├── README.md
│ ├── architecture.md
│ ├── learning-roadmap.md
│ ├── todo.md
│ └── handoff-to-claude.md
├── examples/
│ ├── README.md
│ ├── run_chain.py
│ └── run_graph.py
├── tests/
│ ├── README.md
│ ├── test_core.py
│ ├── test_chain.py
│ └── test_graph.py
└── src/
└── nano_langchain/
├── __init__.py
├── core/
│ ├── __init__.py
│ ├── config.py
│ └── models.py
├── chains/
│ ├── __init__.py
│ └── simple_chain.py
├── graphs/
│ ├── __init__.py
│ └── simple_graph.py
└── prompts/
└── __init__.py
- 在
core/中补配置与模型初始化 - 在
chains/中完成第一个最小 LangChain 示例 - 在
graphs/中完成第一个最小 LangGraph 示例 - 在
examples/中增加可运行 demo - 在
tests/中补最基础测试
-
创建虚拟环境
python -m venv venv source venv/bin/activate # Linux/Mac # 或 venv\Scripts\activate # Windows
-
安装依赖
pip install langchain langgraph langchain-openai python-dotenv pytest
-
复制
.env.example到.env并设置你的 OpenAI API Keycp .env.example .env # 编辑 .env 文件,设置 OPENAI_API_KEY
python examples/run_chain.pypython examples/run_graph.pypython -m pytest tests/ -vconfig.py: 配置加载和环境变量管理models.py: 模型初始化和工厂函数
simple_chain.py: 最小问答链示例,展示 prompt + model + output parser 的组合
simple_graph.py: 最小状态图示例,包含两个节点(思考节点和回答节点)
run_chain.py: 运行 LangChain 示例的脚本run_graph.py: 运行 LangGraph 示例的脚本
test_core.py: 核心模块测试test_chain.py: 链模块测试test_graph.py: 图模块测试
当前仓库故意保持轻量,重点是先把架构和文档约束好,避免后面一边学一边把目录长歪。
详细学习路线请参考 docs/learning-roadmap.md
根据 docs/todo.md 中的计划,下一步可以:
- 增加更复杂的链示例(如带记忆的对话链)
- 增加带条件分支的图示例
- 将 prompt 模板抽离到
prompts/目录 - 接入 LangSmith 进行链路追踪