2026年AI全栈开发者养成路线:从调API到造Agent,附完整教程清单和代码,零基础3-4个月速成!
不是算法工程师,也能做AI应用开发。
2026年,AI应用开发岗位的招聘量同比增长了340%,但80%的求职者卡在同一个地方——能聊原理,但做不出东西。
身边很多后端、前端、产品经理都涌入了这个赛道,踩的坑出奇一致:
- 一上来就追框架,Prompt 都没写明白
- 看了10个LangChain教程,没一个能跑通
- 学了大半年,连一个完整的Agent都没搭出来
- 代码跑起来了,但不知道效果好不好——没有评估体系
这篇是2026年最新版的保姆级学习路线,从Python零基础到能独立部署AI Agent,共6个阶段。每个阶段学什么、看哪些教程、做什么项目、产出什么成果、常见坑怎么避,全列清楚。文末还附了5个完整实战项目的详细步骤、代码片段和学习成本预算。
按这个路线走,零基础3-4个月能独立做出一个上线的AI应用;有编程基础的,2个月就够了。
一、前置基础:1-2周
很多人跳过这步,后面会付出3倍的代价。
1.1 Python 基础(必须项)
不需要精通Python,但必须达到这个水平:
| 技能点 | 到什么程度 | 练习建议 |
|---|---|---|
| 基础语法 | 变量、循环、条件、函数 | 写一个文件重命名脚本 |
| 面向对象 | 类、继承、方法 | 写一个简化的爬虫类 |
| 文件操作 | 读写JSON、CSV | 解析一个API返回的JSON |
| 虚拟环境 | conda / venv | 创建一个独立项目环境 |
| 关键库 | requests、pandas | 调一个API并处理数据 |
推荐资源:
- 哈佛CS50P(免费,10周,David Malan主讲,适合零基础)
- Python官方Tutorial(适合有编程基础的人快速过一遍,2天)
- 练习平台:LeetCode Easy 5-10道(不需要刷算法,熟悉语法即可)
产出物: 能独立写一个Python脚本,调用API并处理返回结果。
1.2 机器学习极简概念(了解即可)
不要在这里钻牛角尖。只需理解以下概念,不需要推导公式:
| 概念 | 一句话理解 | 在哪里用到 |
|---|---|---|
| 张量(Tensor) | 多维数组,数据在模型里的存储形式 | 所有框架的输入输出 |
| 梯度下降 | 模型通过试错找到最优参数 | 训练过程 |
| 过拟合 | 模型死记硬背,不会举一反三 | 微调时要避免 |
| Embedding | 把文字变成数字向量 | RAG检索、语义搜索 |
| Token | 模型处理文本的最小单位(1个中文词≈1-2个token) | API计费、上下文限制 |
推荐资源:
- 3Blue1Brown《深度学习系列》(YouTube/B站,共4集,每集20分钟)
- 吴恩达《机器学习》前3周(Coursera,免费旁听)
产出物: 能向一个非技术人员解释清楚"为什么大模型能说话"。
1.3 必备工具链(1天搞定)
# 安装conda(推荐Miniconda)# https://docs.conda.io/en/latest/miniconda.html# 创建项目环境conda create -n ai-dev python=3.11conda activate ai-dev# 安装基础包pip install jupyter pandas requests python-dotenv# 配置VS Code + Jupyter插件# 安装Git并配置SSH Key
产出物: 一个能跑Jupyter Notebook的本地环境,能成功import pandas和requests。
⚠️ 避坑指南:
- 不要装Anaconda完整版(太重),用Miniconda就够了
- Python版本选3.11(3.12部分AI库还没完全适配,3.10也行)
- VS Code装上Python、Jupyter、Pylance三个插件就够用
- API密钥用
.env文件管理,绝对不要硬编码到代码里,也不要提交到Git
二、大模型核心理论:2-3周
你不需要自己训练模型,但必须知道模型"为什么会说话"。这是后续所有工程决策的底层逻辑。
2.1 Transformer 架构(地基)
这是大模型的核心技术。不要尝试从头实现,但要理解以下组件:
| 组件 | 作用 | 为什么重要 |
|---|---|---|
| 自注意力机制 | 让模型能"看到"整句话的上下文 | 这是长文本理解的基础 |
| 多头注意力 | 同时关注不同层面的信息 | 语法、语义、情感并行处理 |
| 位置编码 | 告诉模型每个词的位置 | 没有它,模型分不清"我爱你"和"你爱我" |
| Encoder/Decoder | 分别负责理解和生成 | GPT只用Decoder,Bert用Encoder |
推荐资源:
- 3Blue1Brown《注意力机制可视化》(30分钟,最直观的解释)
- 李沐《动手学深度学习》第11章 Transformer(B站免费,2小时)
- Jay Alammar《The Illustrated Transformer》(博客,图文并茂)
产出物: 能画一张简图,向同事解释Transformer的工作流程。
2.2 LLM 基础概念(面试必问)
| 概念 | 一句话解释 | 工程影响 |
|---|---|---|
| 预训练 | 用海量文本让模型学会语言规律 | 决定模型的基础能力 |
| SFT(监督微调) | 用高质量对话数据调整模型行为 | 让模型更听话、更礼貌 |
| RLHF(人类反馈强化学习) | 用人类偏好训练模型做选择 | 让输出更符合人类价值观 |
| 上下文窗口 | 模型一次能处理的最大token数 | 决定文档长度限制 |
| 参数规模 | 模型的"大脑容量"(70B=700亿参数) | 越大越强,但也越慢越贵 |
| 基座模型 vs 对话模型 | 基座只会补全,对话模型会聊天 | 调用API时选对模型类型 |
推荐资源:
- Andrej Karpathy《神经网络从零到英雄》(YouTube,20小时,最系统的教程)
- OpenAI官方《How GPT works》(博客,15分钟读完)
产出物: 能解释"为什么GPT-4比GPT-3.5强,以及为什么它贵10倍"。
2.3 API 调用实战(第一个能跑的程序)
这是从理论到工程的第一步。以下代码用OpenAI API,但DeepSeek/Claude的API结构几乎一样。
import osfrom openai import OpenAI# 设置API密钥(从环境变量读取,不要硬编码)client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))# 调用GPT-4.1response = client.chat.completions.create( model="gpt-4.1", messages=[ {"role": "system", "content": "你是一个专业的技术文档翻译员。"}, {"role": "user", "content": "把这段英文翻译成中文:\"The quick brown fox jumps over the lazy dog.\""} ], temperature=0.3, # 0=最确定,2=最随机 max_tokens=500# 最大输出长度)print(response.choices[0].message.content)print(f"消耗token: {response.usage.total_tokens}")print(f"费用: ${response.usage.total_tokens * 0.005 / 1000}") # gpt-4.1输入$5/百万token
关键参数详解:
| 参数 | 取值范围 | 用途 | 常见设置 |
|---|---|---|---|
| temperature | 0-2 | 控制随机性 | 事实问答0.1-0.3,创意写作0.7-1.0 |
| max_tokens | 1-上下文上限 | 限制输出长度 | 根据任务预估,留20%余量 |
| system prompt | 任意文本 | 设定模型角色和行为 | 越具体越好,控制输出风格 |
| top_p | 0-1 | 核采样(与temperature二选一) | 一般0.9-1.0,很少单独调 |
| presence_penalty | -2-2 | 惩罚重复内容 | 创意写作0.5-1.0,代码0 |
推荐项目: 用同一个Prompt测试3个模型(GPT-4.1、Claude Sonnet、DeepSeek V4),记录:
- 输出质量(主观评分1-5)
- 响应速度(秒)
- 成本(按token计算)
把结果整理成一个对比表格。这一步会帮你建立模型选型直觉——知道什么场景用什么模型最划算。
2026年主流模型速查表(选型参考):
| 模型 | 输入价格 | 输出价格 | 上下文 | 强项 | 适合场景 |
|---|---|---|---|---|---|
| GPT-5.6 Sol | $5/M | $30/M | 150万 | 综合最强 | 复杂推理、代码 |
| Claude Sonnet 4.5 | $3/M | $15/M | 200K | 长文本、代码 | RAG、文档处理 |
| DeepSeek V4 | ¥1/M | ¥2/M | 128K | 性价比之王 | 大量调用、测试 |
| GLM-5.2 | 免费开源 | — | 128K | 中文理解 | 本地部署、隐私 |
| Gemini 3.5 Pro | $1.25/M | $5/M | 200万 | 多模态 | 图文混合任务 |
口诀:测试用DeepSeek,生产用Claude,极端复杂用GPT-5.6,省钱用GLM。
产出物: 一个能运行的多模型对比脚本,能输出质量和成本的对比报告。
⚠️ 避坑指南:
- 不要用
gpt-4这个旧模型名了,2026年应该用gpt-4.1或gpt-5.6 temperature=0不是真的零随机,而是接近零。需要完全确定性的输出,用seed参数max_tokens是输出上限,不是输入+输出。别忘了算上输入的token消耗- 国内访问OpenAI需要代理,DeepSeek和通义千问的API国内直连,入门阶段更省心
- API费用是按token计费的,1个中文字≈2个token,写代码时注意成本控制
三、提示工程:1-2周(最容易被低估)
在AI工程里,提示词就是你的代码。一个平庸的AI应用和一个优秀的AI应用,差距往往就在提示词设计上。这个阶段不需要学任何框架,只需要一支笔和大量实验。
3.1 核心技能树(从易到难)
① 零样本/少样本提示(最基础)
直接告诉模型你要什么:
请把以下JSON数据转换成Markdown表格:[输入JSON]
少样本(给例子)效果更好:
请把JSON转换成Markdown表格。格式如下:输入:{"name":"张三","age":25}输出:| name | age |\n|------|-----|\n| 张三 | 25 |现在处理:[输入JSON]
② 思维链(Chain-of-Thought,解决复杂推理)
不加CoT:
问:一个农场有鸡和兔,共35个头,94只脚。鸡兔各几只?答:鸡23只,兔12只。 ← 模型可能直接猜,错误率高
加CoT:
问:一个农场有鸡和兔,共35个头,94只脚。鸡兔各几只?请一步一步思考:答:假设全是鸡,35×2=70只脚,实际94只,多出24只。每只兔比鸡多2只脚,所以兔有24÷2=12只。鸡有35-12=23只。答案:鸡23只,兔12只。
③ 结构化输出(对接前端的刚需)
请分析以下用户评论,以JSON格式输出:{ "sentiment": "positive/negative/neutral", "topics": ["话题1", "话题2"], "urgency": 1-5, "summary": "50字以内总结"}评论:"这个快递太慢了,三天才到,但包装很好。"
④ 角色扮演(控制输出风格)
你是一位有20年经验的资深Java工程师,正在指导一位初级开发者。请用简洁、实用、带代码示例的方式回答以下问题:
⑤ 上下文压缩(长文档处理)
以下是一份100页的技术文档。请先总结每章的核心观点,然后回答我的问题。[文档内容]总结完成后,请回答:第三章提到的那三个优化方案是什么?
3.2 推荐资源(按优先级排序)
| 资源 | 类型 | 时长 | 为什么推荐 |
|---|---|---|---|
| Anthropic《Prompt Engineering》 | 官方文档 | 2小时 | 最权威,Anthropic是提示工程最强的团队 |
| 吴恩达《ChatGPT Prompt Engineering》 | 视频课程 | 1小时 | 快速入门,适合新手 |
| OpenAI《Prompt Engineering Guide》 | 官方文档 | 1小时 | 有具体的最佳实践和反模式 |
| 社区案例集(Prompt Engineering Guide网站) | 案例集合 | 持续 | 看别人的优秀提示词是怎么写的 |
3.3 实战项目:提示词优化实验
选一个真实任务(比如"写产品需求文档"),按以下步骤做实验:
Step 1:基准版本 写一个简单的提示词,记录输出质量(人工评分1-5)。
Step 2:添加角色设定 给模型一个具体角色,观察输出风格变化。
Step 3:添加少样本示例 给1-2个输入输出示例,观察准确率提升。
Step 4:添加CoT 要求模型一步步思考,观察复杂题的正确率。
Step 5:结构化输出 要求JSON格式输出,观察前端对接难度变化。
Step 6:组合优化 把上述技巧组合,找到最佳方案。
产出物: 一个"提示词优化报告",包含5个版本的提示词、评分对比、最终推荐方案。
⚠️ 避坑指南:
- 提示词不是越长越好。Anthropic的实验数据表明,超过2000字的提示词,模型注意力会下降
- 不要在同一句话里给矛盾指令(“简洁但详细”、“快速但全面”),模型会困惑
- 结构化输出用JSON时,加一句"只输出JSON,不要其他内容",否则模型可能加废话
- 少样本示例的顺序会影响输出,把最好的例子放第一个
temperature和top_p通常只调一个,OpenAI官方建议不要同时调
四、大模型应用开发:3-4周(核心阶段)
这是从"调API"到"做产品"的跨越。这个阶段的目标是:能独立做出一个能用的AI应用。
4.1 RAG:让模型扎根你的数据
RAG(检索增强生成)是生产环境中最常见的AI应用模式。核心理念:不要指望模型记住所有知识,而是让它先查资料,再回答。
完整RAG流程(必须理解每一步)
用户提问 → 检索相关文档 → 拼接上下文 → 模型生成答案
技术栈详解(每个组件都有选择)
① 文档加载与分块
from langchain.document_loaders import PyPDFLoaderfrom langchain.text_splitter import RecursiveCharacterTextSplitter# 加载PDFloader = PyPDFLoader("技术文档.pdf")docs = loader.load()# 分块:按字符递归分割,保持段落完整# chunk_size=1000: 每块约1000字符# chunk_overlap=200: 相邻块重叠200字符,防止上下文断裂text_splitter = RecursiveCharacterTextSplitter( chunk_size=1000, chunk_overlap=200, length_function=len)chunks = text_splitter.split_documents(docs)print(f"文档分成了 {len(chunks)} 块")
分块策略对比:
| 策略 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| 按字符固定长度 | 通用场景 | 简单可控 | 可能切断句子 |
| 按语义分块 | 需要理解段落边界 | 上下文完整 | 实现复杂 |
| 按Markdown标题 | 技术文档 | 结构清晰 | 仅适合结构化文档 |
| 按句子 | 短文本 | 粒度细 | 块太多,检索慢 |
② Embedding 模型选择
from langchain.embeddings import OpenAIEmbeddings# 方案A:OpenAI Embedding(质量好,收费)embeddings = OpenAIEmbeddings(model="text-embedding-3-large")# 方案B:BGE-M3(中文场景首选,免费开源)# 安装:pip install FlagEmbeddingfrom FlagEmbedding import BGEM3FlagModelmodel = BGEM3FlagModel('BAAI/bge-m3')
| Embedding模型 | 维度 | 中文效果 | 成本 | 推荐场景 |
|---|---|---|---|---|
| text-embedding-3-large | 3072 | 优秀 | $0.13/百万token | 英文为主、预算充足 |
| text-embedding-3-small | 1536 | 良好 | $0.02/百万token | 成本敏感 |
| BGE-M3 | 1024 | 优秀 | 免费 | 中文场景首选 |
| BGE-large-zh | 1024 | 优秀 | 免费 | 纯中文、离线部署 |
③ 向量数据库选择
from langchain.vectorstores import Chroma# Chroma:本地轻量,开发首选vectorstore = Chroma.from_documents( documents=chunks, embedding=embeddings, persist_directory="./chroma_db" # 数据持久化到本地)# 检索docs = vectorstore.similarity_search("什么是RAG?", k=3)
| 数据库 | 定位 | 适用场景 | 特点 |
|---|---|---|---|
| Chroma | 本地开发 | 原型、小项目 | 零配置,pip install即用 |
| Pinecone | 托管服务 | 生产环境 | 全自动,按查询量付费 |
| Milvus | 企业级 | 大规模数据 | 支持十亿级向量,需要运维 |
| Weaviate | 混合搜索 | 需要关键词+向量 | 原生支持混合检索 |
④ 检索策略进阶
基础检索(仅向量相似度)的问题:有时候语义相关但关键词不匹配,或者反过来。
混合检索(推荐):
from langchain.retrievers import BM25Retriever, EnsembleRetriever# 向量检索 + BM25关键词检索,各取Top-K后合并vector_retriever = vectorstore.as_retriever(search_kwargs={"k": 5})bm25_retriever = BM25Retriever.from_documents(chunks, k=5)ensemble_retriever = EnsembleRetriever( retrievers=[bm25_retriever, vector_retriever], weights=[0.5, 0.5] # 各50%权重)
重排序(Rerank,进一步提升准确率):
# 先用检索召回20个候选,再用重排序模型选出Top-3from langchain.retrievers import ContextualCompressionRetrieverfrom langchain.retrievers.document_compressors import CrossEncoderRerankercompressor = CrossEncoderReranker(model="BAAI/bge-reranker-v2-m3")retriever = ContextualCompressionRetriever( base_compressor=compressor, base_retriever=ensemble_retriever)
⑤ 完整RAG问答代码
from langchain.chains import RetrievalQAfrom langchain.chat_models import ChatOpenAI# 构建RAG链qa_chain = RetrievalQA.from_chain_type( llm=ChatOpenAI(model="gpt-4.1", temperature=0.1), chain_type="stuff", # 把所有检索到的文档塞进Prompt retriever=vectorstore.as_retriever(search_kwargs={"k": 3}), return_source_documents=True# 返回引用的文档)# 提问result = qa_chain({"query": "RAG的核心思想是什么?"})print("答案:", result["result"])print("\n引用来源:")for doc in result["source_documents"]: print(f"- {doc.metadata['source']}, 页码: {doc.metadata.get('page', 'N/A')}")
⑥ RAG评估(不能跳过)
# 准备评估集(至少20对问答)eval_questions = [ {"question": "什么是RAG?", "answer": "检索增强生成,让模型先查资料再回答"}, # ... 更多]# 评估指标from ragas import evaluatefrom ragas.metrics import faithfulness, answer_relevancy, context_recall# faithfulness: 答案是否忠实于检索到的文档(防幻觉)# answer_relevancy: 答案是否 relevant to 问题# context_recall: 正确答案是否被检索到了
| 指标 | 衡量什么 | 目标值 |
|---|---|---|
| Faithfulness | 答案是否基于检索文档 | >0.8 |
| Answer Relevancy | 答案是否 relevant to 问题 | >0.8 |
| Context Recall | 正确答案是否在检索结果中 | >0.7 |
| Context Precision | 检索结果里有多少是相关的 | >0.6 |
RAG 高级优化技巧(进阶必读)
基础RAG能跑通后,以下技巧能让效果提升一个台阶:
① 查询改写(Query Rewriting)
用户提问往往口语化、模糊。先用模型把问题改写得更精准,再检索:
# 用户原始问题:"那个报销流程是啥来着"# 改写后:"公司员工费用报销的完整流程和所需材料"# 改写后检索准确率显著提升
② 多路召回(Multi-Query Retrieval)
让模型从不同角度生成3-5个变体问题,分别检索后合并结果:
# 原始问题:"RAG怎么评估?"# 变体1:"RAG评估有哪些指标?"# 变体2:"如何用RAGAS评估RAG系统?"# 变体3:"RAG系统的faithfulness怎么计算?"# 分别检索 → 去重合并 → 检索覆盖率提升30%+
③ 父子分块(Parent-Child Chunking)
检索时用小块(精准),生成时用大块(上下文完整):
- 小块:300字,用于精准匹配
- 大块:1200字(包含小块),喂给模型生成答案
④ 元数据过滤
给每个文档块打标签(部门、日期、文档类型),检索时先过滤再匹配:
# 只在2026年的HR政策文档里搜索docs = vectorstore.similarity_search( "年假政策", filter={"department": "HR", "year": 2026})
⚠️ RAG避坑指南:
chunk_size不是越小越好。太小会丢失上下文,太大检索精度下降。中文文档建议500-1000字符- Embedding模型和生成模型不需要是同一家的。可以用BGE-M3做Embedding + GPT-4.1做生成
- 向量数据库不是必须的。文档少于100篇时,直接用NumPy做余弦相似度就够了
k=3是个好起点。太少容易漏,太多会引入噪声,还增加token成本- 检索结果排序很重要。把最相关的放最前面(Lost in the Middle问题:模型对中间位置的内容注意力最弱)
4.2 框架选择:LangChain vs LlamaIndex
| 维度 | LangChain | LlamaIndex |
|---|---|---|
| 定位 | 通用LLM应用编排框架 | 专注RAG和数据检索 |
| 上手难度 | 中等(概念多) | 较易(RAG专用) |
| Agent支持 | 强(LangGraph子项目) | 较弱(有Agent但简单) |
| 社区生态 | 最大,教程最多 | 增长快,RAG领域最专业 |
| 中文文档 | 较全 | 一般 |
| 适用场景 | 复杂工作流、多步骤任务、Agent | 知识库问答、文档处理、RAG |
建议:
- 如果目标是快速做一个知识库问答 → 从 LlamaIndex 开始
- 如果目标是复杂Agent工作流 → 从 LangChain + LangGraph 开始
- 两者不冲突,可以组合使用
产出物: 一个能用的内部知识助手,支持PDF上传、问答、显示引用来源。
五、AI Agent开发:4-6周(进阶阶段)
Agent不是"更聪明的聊天机器人",而是能自主决策、调用工具、执行任务的数字员工。
5.1 Agent核心概念(必须理解)
① ReAct模式(推理+行动)
这是所有Agent框架的底层逻辑。ReAct = Reasoning + Acting:
用户:帮我查一下明天北京的天气,然后发邮件提醒我带伞。Agent思考:1. 用户需要北京明天的天气 → 需要调用天气API2. 如果下雨 → 需要发邮件 → 需要调用邮件API3. 先执行天气查询Agent行动:→ 调用天气API: get_weather(city="北京", date="明天")→ 结果:明天有雨Agent思考:4. 确认有雨,需要发邮件5. 调用邮件APIAgent行动:→ 调用邮件API: send_email(to="user@example.com", subject="明天带伞", body="...")→ 结果:发送成功Agent回复:已查询明天北京天气,有雨。已发送提醒邮件到您的邮箱。
手写一个极简ReAct Agent(理解底层逻辑):
import reclassSimpleReActAgent: def__init__(self, llm, tools): self.llm = llm # 大模型接口 self.tools = tools # 可用工具字典 defrun(self, query): # 构造系统提示 system_prompt = f"""你是一个智能助手。你可以使用以下工具:{self._format_tools()}请按以下格式回复:思考:你当前的想法行动:工具名[参数]当你获得工具结果后,继续思考,直到可以给出最终答案。最终答案格式:最终答案:你的回答""" messages = [ {"role": "system", "content": system_prompt}, {"role": "user", "content": query} ] max_steps = 5 for step inrange(max_steps): # 调用模型 response = self.llm.chat(messages) content = response.choices[0].message.content messages.append({"role": "assistant", "content": content}) # 检查是否是最终答案 if"最终答案:"in content: return content.split("最终答案:")[1].strip() # 解析行动 action_match = re.search(r'行动:(\w+)\[(.*?)\]', content) if action_match: tool_name = action_match.group(1) tool_input = action_match.group(2) # 执行工具 if tool_name inself.tools: result = self.tools[tool_name](tool_input) messages.append({"role": "user", "content": f"工具结果:{result}"}) else: messages.append({"role": "user", "content": f"错误:工具{tool_name}不存在"}) return"执行步骤过多,请简化任务。" def_format_tools(self): return"\n".join([f"- {name}: {desc}"for name, desc inself.tools.items()])# 使用示例tools = { "search": lambda q: f"搜索结果:关于'{q}'的...", "calculator": lambda expr: str(eval(expr))}agent = SimpleReActAgent(llm=client, tools=tools)result = agent.run("搜索Python最新版本,然后计算3的平方")print(result)
产出物: 理解ReAct循环后,你能向同事解释"为什么Agent不是简单的API调用"。
② 工具调用(Function Calling)
让模型能调用外部API。关键在于:定义好JSON Schema,模型会自动生成参数。
import jsontools = [ { "type": "function", "function": { "name": "get_weather", "description": "获取指定城市的天气", "parameters": { "type": "object", "properties": { "city": {"type": "string", "description": "城市名"}, "date": {"type": "string", "description": "日期,如'明天'"} }, "required": ["city"] } } }]response = client.chat.completions.create( model="gpt-4.1", messages=[{"role": "user", "content": "北京明天天气怎么样?"}], tools=tools, tool_choice="auto"# 让模型自动决定是否调用工具)# 模型会返回tool_calls,而不是直接回答if response.choices[0].message.tool_calls: tool_call = response.choices[0].message.tool_calls[0] function_name = tool_call.function.name arguments = json.loads(tool_call.function.arguments) print(f"模型决定调用: {function_name}({arguments})")
③ 记忆(Memory)
Agent需要记住之前的对话和长期知识:
from langchain.memory import ConversationBufferMemory# 短期记忆:保存最近N轮对话memory = ConversationBufferMemory(k=5) # 只保留最近5轮# 长期记忆:用向量数据库存储重要信息# 每次对话结束后,把关键信息提取并存入向量库# 下次对话时先检索相关记忆
| 记忆类型 | 存储方式 | 使用场景 | 工具 |
|---|---|---|---|
| 短期记忆 | 变量/Redis | 当前对话上下文 | ConversationBufferMemory |
| 长期记忆 | 向量数据库 | 跨对话的用户偏好 | Chroma + Embedding |
| 实体记忆 | 知识图谱 | 人物、地点、关系 | mem0、Neo4j |
推荐框架:mem0
- 专门为AI Agent设计的记忆层
- 自动提取、存储、检索记忆
- 支持跨对话的长期记忆
- GitHub: github.com/mem0ai/mem0
5.2 主流Agent框架对比(详细版)
| 框架 | 核心特点 | 适用场景 | 学习难度 | 社区活跃度 | 部署方式 |
|---|---|---|---|---|---|
| LangGraph | 状态图驱动,节点=步骤,边=流转。可控性最强 | 复杂工作流、需要精细控制的场景、企业级应用 | ★★★☆ | 高(LangChain官方) | Python + FastAPI |
| CrewAI | 多Agent协作,角色扮演(PM、Researcher、Writer) | 团队协作型任务(研报生成、营销方案、代码审查) | ★★☆☆ | 高 | Python + CLI |
| AutoGen | 微软出品,对话驱动,Agent之间可以互相聊天 | 研究型多Agent协作、代码生成、复杂推理 | ★★★☆ | 中高 | Python + Jupyter |
| Dify | 可视化编排,低代码,拖拽搭建 | 快速原型、企业内部工具、非技术人员使用 | ★☆☆☆ | 高 | Docker一键部署 |
| Coze | 字节跳动,生态丰富,插件多 | 微信/飞书机器人、快速上线、社交媒体应用 | ★☆☆☆ | 高(国内) | 云端托管 |
| Agno | 轻量级,专注于简单Agent | 快速实验、教学、简单任务 | ★☆☆☆ | 中 | Python |
推荐学习顺序:
- Dify/Coze(1天):快速搭一个能用的Agent,建立信心
- LangGraph(1-2周):理解Agent的底层状态机和控制流
- CrewAI(3-5天):做多Agent协作,体验角色分工
- AutoGen(可选):如果需要Agent之间深度对话协作
5.3 关键设计模式(Anthropic官方推荐)
Anthropic在2026年的官方指南《Building Effective Agents》中强调:构建Agent不需要复杂的框架,需要的是可组合的模式。
| 模式 | 说明 | 适用场景 | 代码复杂度 |
|---|---|---|---|
| Prompt Chaining | 把一个复杂任务拆成多个简单Prompt,串联执行 | 长文档生成(先大纲→再章节→再润色) | ★☆☆ |
| Routing | 根据输入类型,路由到不同的处理分支 | 客服(投诉/咨询/售后走不同流程) | ★★☆ |
| Parallelization | 多个任务并行执行,最后汇总结果 | 同时分析一份文档的语法、风格、事实准确性 | ★★☆ |
| Orchestrator-Workers | 一个主Agent分配任务,多个Worker Agent执行 | 研报生成(主Agent分配章节,各Worker写各章节) | ★★★ |
| Evaluator-Optimizer | 生成→评估→优化,循环直到达标 | 代码生成(生成→测试→修复→再测试) | ★★★ |
示例:Orchestrator-Workers模式
# 主Agent:分析任务,分配子任务orchestrator_prompt = """你是一个项目管理Agent。用户需要一份关于AI行业的研报。请将任务分配给以下Worker:- Researcher: 收集最新数据和趋势- Analyst: 分析数据并提炼观点 - Writer: 撰写报告正文请输出每个Worker的具体任务。"""# 各Worker执行自己的任务# 最后主Agent汇总所有输出,生成最终报告
5.4 MCP:2026年最该关注的协议
MCP(Model Context Protocol)是Anthropic推出的开放标准,让模型能统一调用外部工具和数据源。
为什么重要?
- 统一接口:以前每个工具都要单独写适配器,现在一个协议搞定
- 生态丰富:已有1000+社区MCP Server(GitHub、Slack、PostgreSQL、浏览器、文件系统等)
- 即插即用:安装一个MCP Server,模型就能立即使用对应工具
MCP Server示例(GitHub):
// 配置文件 mcp.json{"mcpServers":{ "github":{ "command":"npx", "args":["-y","@anthropic/mcp-server-github"], "env":{ "GITHUB_TOKEN":"ghp_xxxxxxxx" } }}}
安装后,Claude/Cursor就能直接:
- “帮我查看这个PR的代码变更”
- “创建一个新的GitHub Issue”
- “搜索仓库中关于Authentication的代码”
推荐MCP Server(入门必装):
| Server | 功能 | 安装命令 |
|---|---|---|
| GitHub | 代码仓库操作 | npx @anthropic/mcp-server-github |
| PostgreSQL | 数据库查询 | npx @modelcontextprotocol/server-postgres |
| Brave Search | 联网搜索 | npx @anthropic/mcp-server-brave |
| Filesystem | 文件读写 | npx @anthropic/mcp-server-filesystem |
| Slack | 消息发送 | npx @anthropic/mcp-server-slack |
学习成本:2小时,收益:无限扩展模型能力。
产出物: 配置好3个MCP Server的Claude/Cursor,能完成"查GitHub PR→搜索相关资料→写总结发到Slack"的完整工作流。
⚠️ Agent开发避坑指南:
- 最大循环次数必须设上限。Agent可能陷入死循环(反复调用同一个工具),设
max_steps=5是安全线 - 工具描述要精确。模型选工具靠description字段,描述模糊会导致选错工具。"获取天气"比"天气"好
- 错误处理比成功路径更重要。API超时、返回格式异常、工具不存在——每个都要处理,否则Agent会崩溃
- 不要让Agent处理需要100%准确的任务(如金融交易、医疗诊断)。Agent是概率系统,不是确定性程序
- 调试技巧:把每一步的思考过程都打印出来,你会发现90%的bug出在"模型理解错了你的意图"
- 成本控制:Agent每一步都在调API,一个复杂任务可能消耗几万token。先用便宜模型(DeepSeek)测试,确认流程后再换强模型
有技术底子的人,正站在AI大模型开发的黄金入口
先问自己一个问题:
你写了这么多年代码,薪资是不是已经很久没动了?
面试的时候,“会Spring Boot”“会Vue”"会MySQL"已经变成了基本操作,没有人在乎了。大家都会的东西,就不值钱了。
但另一边,有人在疯狂涨薪
拉勾、BOSS直聘上,“AI应用开发”“大模型开发”"Agent开发"的岗位数量在过去一年翻了3倍,薪资中位数比同级别后端开发高出 40%-60%。
不是因为他们比你聪明,而是因为他们踩对了赛道。
你可能觉得:我又不是搞算法的,大模型跟我有什么关系?
这就是最大的误区。
AI大模型应用开发 ≠ 训练大模型
说清楚一点:训练大模型的是那几家大厂,但用大模型做应用的,是千千万万的普通企业和团队。
而这些团队需要的,不是PhD,而是——
能用大模型API搭出可用产品的应用开发者
能设计Agent工作流、调用工具链的Agent工程师
能把RAG、Function Calling、多轮对话落地到真实业务的AI全栈
这些活儿,有编程基础的你,完全能干。
你需要补的不是"算法基础",而是"AI开发的技术栈和工程思维"。
Agent开发,为什么是程序员最好的切入点?
因为Agent开发本质上就是"用自然语言编程"——而这恰恰需要你已有的工程能力:
你有代码功底 → 理解Function Calling、工具调用、API集成,比零基础快10倍
你有系统设计经验 → 设计多Agent协作架构、状态管理、错误处理,逻辑一脉相承
你懂工程化 → 部署、监控、性能优化,这些AI项目同样需要
你理解数据 → RAG系统的数据清洗、向量检索、效果调优,你的DB经验直接复用
说白了,你已有的能力是资产,不是沉没成本。差的只是"AI这一层"的认知和工具链。
学完之后,你值多少钱?
转型 从传统后端/前端转AI应用开发,打开薪资天花板,跳槽议价权拉满
升职 在现有团队主导AI项目落地,从"写代码的"变成"定方向的"
独立 用Agent开发能力做SaaS产品、接AI外包项目,技术变现多一条腿
不可替代 当AI能写CRUD了,你是那个"用AI写代码"的人,而不是"被AI替代"的人
这不是危言耸听。GitHub Copilot已经能写出70%的CRUD代码了,纯执行层面的程序员价值在快速缩水。但"能用AI构建AI应用"的人,目前严重不够用。
这门课会教你什么?
面向有编程基础的开发者,从AI大模型应用开发的工程实践出发:
✅ 大模型API调用与Prompt工程实战
✅ RAG系统搭建:从数据处理到向量检索全流程
✅ Agent开发:Function Calling、工具链、多步推理
✅ 多Agent协作与工作流编排
✅ 真实项目落地:从需求到部署的完整工程链路
不讲虚的,全是能直接用在项目里的东西。
🚀 AI大模型应用开发课程
有编程基础?这就是你的下一个赛道
“程序员最大的风险,不是技术过时,而是用旧技术赚新钱的心态。”
你可能还在想"再等等看"——但AI这个赛道,窗口期就这么长。
等大模型开发变成"标配技能"的时候,你就不是先行者了,而是追赶者。
你有技术底子,这是你最大的优势。别浪费它。

更多推荐


所有评论(0)