Skip to content

项目结构建议

一个中小型 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/
  • 本站内容为中文学习整理,不做官方身份声明。

本站为非官方中文学习站点,不代表 LangChain 官方。部分内容参考官方文档并重新整理为中文学习笔记。