LLM 应用开发框架学习笔记
一、整体架构
开发 AI 应用时,并不是直接调用大模型,而是通过 SDK 和各种开发框架完成。
text 大语言模型(LLM) GPT / Claude / Gemini / Llama / Qwen │ ┌───────┴────────┐ │ │ LLM SDK 应用开发框架 │ │ OpenAI SDK LangChain Gemini SDK LlamaIndex Claude SDK Haystack LangGraph AutoGen OpenAI Agents SDK
LLM:负责思考。
SDK:负责连接模型。
框架:负责组织整个 AI 应用。
二、这些框架分别是什么?
| 框架 | 定位 | 核心作用 |
|---|---|---|
| LangChain | 通用 LLM 应用框架 | 构建 AI 应用 |
| LlamaIndex | RAG 框架 | 连接企业数据 |
| AutoGen | 多 Agent 框架 | 多 AI 协作 |
| OpenAI Agents SDK | 官方 Agent SDK | 构建 Agent |
| Haystack | 企业搜索 + RAG | 智能搜索 |
| LangGraph | Agent 工作流 | 控制复杂流程 |
| Ollama | 本地模型运行工具 | 本地部署 LLM |
三、LangChain(最流行)
定位
万能的 LLM 应用开发框架。
它负责把多个步骤串联起来,而不仅仅是调用一次大模型。
例如:
text用户问题 │Prompt │调用工具/API │读取数据库 │LLM 分析 │返回结果
核心组件
1、Prompt Template(提示词模板)
统一管理 Prompt。
text你是一名 Java 专家。请回答:{question}
2、Chain(链)
多个步骤按顺序执行。
text用户问题 │检索知识 │LLM 总结 │答案
3、Memory(记忆)
保存聊天上下文。
例如:
text用户:我叫张三......用户:我叫什么?AI:张三
4、Agent(智能体)
AI 自己决定调用什么工具。
text用户问天气↓AI 判断需要天气 API↓调用 API↓整理答案
适用场景
- ChatBot
- 企业 AI
- RAG
- Agent
四、LlamaIndex(专注 RAG)
定位
专门解决 AI 如何读取企业数据。
例如:
企业拥有:
- Word
- Excel
- 数据库
- 网页
GPT 本身不知道这些内容。
LlamaIndex 可以帮助 GPT 读取。
流程:
text企业文档 │建立索引(Index) │用户提问 │检索相关内容 │交给 LLM │生成答案
这就是 RAG(Retrieval-Augmented Generation,检索增强生成)。
适用场景
- 企业知识库
- 文档问答
- 私有数据问答
五、AutoGen
定位
多 Agent 协作框架。
传统:
text用户 │一个 AI │答案
AutoGen:
text产品经理 Agent │程序员 Agent │测试 Agent │运维 Agent
多个 AI 像团队一样协作完成任务。
适用于:
- 自动开发
- 自动办公
- AI 团队
六、OpenAI Agents SDK
定位
OpenAI 官方 Agent 开发框架。
提供:
- Agent
- Tool Calling
- Memory
- Handoff(任务转交)
- Trace(调用追踪)
流程:
text用户↓Agent↓判断任务↓调用工具↓生成答案
特点:
- 官方支持
- 与 OpenAI 模型集成最佳
七、Haystack
定位
企业级搜索 + RAG 框架。
工作流程:
text用户问题↓Retriever(检索)↓找到相关文档↓LLM 阅读↓生成答案
特点:
- 文档检索
- 企业搜索
- RAG
适用于:
- 企业搜索系统
- 知识库平台
八、LangGraph
定位
LangChain 推出的 Agent 工作流框架。
普通流程:
textA │B │C
LangGraph:
text 判断 ↙ ↘ 搜索 计算 ↘ ↙ 总结
支持:
- 分支
- 循环
- 状态保存
- 多 Agent
适用于复杂 AI 工作流。
九、Ollama
定位
本地运行大模型的软件。
支持:
- Llama
- Qwen
- DeepSeek
- Mistral
- Gemma
例如:
bashollama run llama3
运行方式:
text你的电脑↓Ollama↓本地模型↓回答问题
优点:
- 不联网
- 数据安全
- 免费
- 私有化部署
十、Ollama + LangGraph
二者通常配合使用:
text用户↓LangGraph(负责流程)↓Ollama(负责思考)↓返回结果
即:
LangGraph 控制流程,Ollama 提供模型能力。
十一、它们之间的关系
text 用户 │ Spring Boot │ Spring AI / SDK │ ┌────────────┴────────────┐ │ │ LangChain OpenAI Agents SDK │ ├──────────────┐ │ │ LlamaIndex LangGraph │ │ └───────┬──────┘ │ Ollama │ GPT / Qwen / Llama
说明:
- Spring AI:Java 调用 AI。
- LangChain:组织整个 AI 应用。
- LlamaIndex:负责知识库(RAG)。
- LangGraph:负责复杂 Agent 流程。
- Ollama:负责本地运行模型。
- GPT、Qwen、Llama:真正负责推理的大模型。
十二、如何选择?
| 场景 | 推荐框架 |
|---|---|
| 聊天机器人 | LangChain |
| 企业知识库 | LlamaIndex |
| RAG | LlamaIndex、Haystack |
| 多 Agent | AutoGen、LangGraph |
| OpenAI Agent | OpenAI Agents SDK |
| 本地部署 | Ollama |
| 私有化 AI | Ollama + LangGraph |
十三、推荐学习路线(Java 后端)
text第一阶段(基础)LLM│Prompt│LLM SDK│Spring AI↓第二阶段(AI 应用)LangChain│Tool Calling│Memory↓第三阶段(知识库)Embedding│向量数据库│RAG│LlamaIndex↓第四阶段(Agent)Agent│LangGraph│OpenAI Agents SDK↓第五阶段(企业部署)Spring Boot│Spring AI│LangGraph│Ollama│企业 AI Agent
十四、一句话总结
| 名称 | 一句话理解 |
|---|---|
| LLM | 真正负责思考的大模型 |
| SDK | 调用大模型的工具 |
| LangChain | AI 应用万能框架 |
| LlamaIndex | AI 读取企业数据 |
| AutoGen | 多个 AI 协同工作 |
| OpenAI Agents SDK | OpenAI 官方 Agent 框架 |
| Haystack | 企业搜索 + RAG |
| LangGraph | Agent 工作流引擎 |
| Ollama | 本地运行大模型 |
| Ollama + LangGraph | 本地 AI Agent 解决方案 |
十五、记忆口诀(建议背下来)
textLLM:负责思考SDK:负责连接LangChain:负责组织应用LlamaIndex:负责连接数据(RAG)Haystack:负责搜索LangGraph:负责流程AutoGen:负责多 Agent 协作OpenAI Agents SDK:官方 Agent 开发Ollama:负责本地运行模型





