项目结构建议
一个中小型 LangChain 应用不要把所有代码写在一个文件里。推荐按“模型、工具、链路、接口、配置”拆分。
text
ai-app/
├── app/
│ ├── main.py # FastAPI / Flask 入口
│ ├── config.py # 环境变量与配置
│ ├── models/ # 模型初始化
│ ├── prompts/ # Prompt 模板
│ ├── tools/ # 工具函数
│ ├── chains/ # RAG / 总结 / 抽取链路
│ ├── agents/ # Agent 定义
│ ├── graph/ # LangGraph 工作流
│ └── services/ # 业务服务
├── tests/
├── requirements.txt
└── README.md分层思路
models:只负责初始化模型,不写业务逻辑。prompts:集中管理系统提示词、任务提示词和模板变量。tools:封装可被 Agent 调用的外部能力,比如查询订单、查库存、调用 HTTP。chains:封装固定流程,比如“检索 -> 拼上下文 -> 回答”。agents:封装具有自主工具选择能力的 Agent。graph:封装复杂状态流转,比如审批、重试、人工介入。
后端工程建议
如果你是 Java 后端,可以将 Python AI 服务作为独立微服务,通过 HTTP / RPC 提供能力。Java 负责用户、权限、订单、风控等核心业务,Python 负责模型调用、RAG、Agent 编排。
非官方声明
本站为个人维护的非官方中文学习文档,不代表 LangChain 官方。页面内容是基于公开文档、源码实践和中文开发者视角重新整理的学习资料。涉及 API 细节时,请以官方文档和实际安装版本为准。
参考来源
- LangChain / LangGraph 官方文档:
https://docs.langchain.com/ - LangChain API Reference:
https://reference.langchain.com/ - 本站内容为中文学习整理,不做官方身份声明。