本文分享了一位React/Node全栈工程师转向Agent开发的实战经验。从“调API+写prompt”的浅层应用,到深入Agent开发的工程思维转变,详细剖析了传统Web开发思维在处理多轮循环、概率性输出、对话状态管理及成本控制等方面的局限性。文章总结了5个常见踩坑点及解决方案,并分享了4个月的学习路线和3个Offer的面试复盘,强调评测能力和工程化思维的重要性,为Web背景开发者提供了一套系统化转型Agent开发的实战指南。

先交个底,我本科一真做Web开发,技术栈主要是 React / Node / TypeScript / Python,典型的全栈Web背景。

一开始接触大模型,其实和很多人一样:写prompt、接API、做点demo。朋友圈里那些"用GPT做了个XX"的小玩具,我也做过不少。

但很快我就发现:如果只是"调API + 写prompt",其实很难真正做出复杂的AI应用。

这篇文章主要分享一下:从前端/全栈工程师转向Agent开发,我的一些经验和踩过的坑。文末有我拿到的3个offer的情况,但说实话,offer只是结果,中间的过程才值得聊。
请添加图片描述

一、“调API + 写prompt”,为什么做不出复杂AI应用


很多人刚接触大模型时,会觉得AI应用开发就是:

  • 找OpenAI/ Anthropic申请个key;
  • 写一段"你是一个专业的XX"的system prompt;
  • 调个chat.completions.create(),把结果渲染到页面上。

一个周末就能跑通,成就感拉满。但当你真想做一个能解决实际问题的AI应用——比如一个能自主查数据、改配置、发通知的运维助手——很快就会撞上四堵墙。

❌ 想象中的AI开发

调用API,返回结果,渲染页面。一次请求一次响应,流程是确定性的。

✅ 真实的Agent开发

多轮循环、自主决策、调用工具、处理失败、控制成本。每一步都带着不确定性。

具体来说,"调API思维"会在四个地方彻底失效:

第一,单次调用 vs 多轮循环。Web开发的思维是"请求-响应",一次搞定。但Agent是循环的:模型思考→调用工具→拿到结果→继续思考→再调用……一个任务可能跑几十轮。一旦进入循环,你就要处理轮次上限、死循环检测、中间状态保存——这些在传统Web开发里根本不存在。

第二,确定性 vs 概率性。写前端时,按钮点了就是点了,接口返回JSON是确定的。但LLM的输出是概率性的:同一个输入,两次输出可能不一样;你让它返回JSON,它偶尔会"贴心"地包一层markdown代码块或加一句"好的,以下是您要的结果"。你的代码要为一个"不保证听话"的下游服务做兜底。

第三,页面状态 vs 对话状态。React解决了"UI状态管理",但Agent需要管理的是对话历史、工具调用记录、任务执行进度,而且这些状态的token体积会随轮次增长,很快撑爆上下文窗口。状态管理的复杂度,从"界面级"变成了"认知级"。

第四,无成本压力 vs 每一步都在烧钱。普通API调用基本免费或极便宜,但LLM每次调用都是真金白银。一个设计糟糕的Agent,跑一个任务烧掉几块钱token是常事。成本控制从"运维问题"变成了"架构问题"。

所以,从"调API"到"做Agent",跨越的不是框架或语法,而是一整套全新的工程思维:怎么让一个不可靠、有成本、无记忆的组件,可靠地完成复杂任务。

二、我的技术栈迁移:比想象中顺,但有讲究


好消息是,我的技术栈迁移成本其实不高:

ReactNodeTypeScriptPython→Agent编排工具调用RAG评测体系

原有能力迁移到Agent开发后迁移难度
TypeScript类型系统Function Calling的schema定义、结构化输出校验极低,直接复用
Node异步/事件循环流式输出(SSE)、并发工具调用、异步任务编排极低,直接复用
React状态管理对话状态、任务进度的前端可视化(如流式渲染)低,思路平移
API设计(REST/GraphQL)工具(Tool)接口设计:为LLM设计"好用的API"中,需换视角
PythonLangGraph/LlamaIndex等生态、数据处理、评测脚本低,语言不换思路换
(无)Prompt工程、LLM行为控制、上下文管理高,全新领域

这里有个让我感触很深的点:Web背景的人做Agent,最大的隐藏优势是"接口直觉"。

设计工具(Tool)的本质,就是设计一个"给LLM用的API"。参数叫什么名字、描述怎么写、返回什么结构,直接决定了LLM能不能正确调用。这跟设计给开发者用的API是同一门手艺——只是"用户"从一个理性的人,换成了一个按概率理解文档的模型。

一个工具的description写得含糊,LLM就会在错误的地方调用它。这和你写了一个语义不清的接口文档,调用方天天来问,是一回事。工具设计就是API设计的"概率版"。

三、我踩过的5个坑


这部分是最实在的。每一个坑都是我真金白银(token费)换来的。

坑一:把prompt当成"配置",写完就不管了

一开始我的prompt写在一个常量字符串里,改一次测一次,全靠手感。模型升级后行为变了,整个Agent直接"精神失常",而我连它之前为什么正常都不知道。

解法:把prompt当代码管理——版本化、写变更说明、配套测试用例。我用一组固定case跑回归,prompt任何改动都要过一遍。后来面试时聊到这个,面试官眼睛都亮了。

坑二:上下文窗口当"无限内存"用

早期我把整个对话历史、所有工具返回值全塞进messages,对话一长,token费用爆炸、模型还开始"丢"我前面给的约束。找了好久才发现是长上下文里的注意力稀释问题。

解法:上下文要有"预算意识"——历史摘要压缩、工具结果裁剪、关键指令固定放在system或末尾。本质上就是把Web的"内存管理"直觉迁移过来。

坑三:工具设计得太"人类友好"

我第一个版本的工具,参数名用中文拼音缩写、返回一大坨嵌套JSON。人类看着都费劲,LLM调用错误率超过30%。

解法:给LLM设计工具要"反直觉"——参数名用清晰的英文、description写成一句话"什么时候用我、怎么用"、返回结构尽量扁平。工具调用成功率从70%提到97%。

坑四:没有循环的"熔断机制"

有次Agent陷入死循环:同一个工具反复调用、每次结果都一样,但它就是不停。眼看着token费往上跳,我只能在控制台手动Ctrl+C。

解法:三轮子——轮次上限、重复检测(连续N次相同调用即熔断)、单任务token预算。做过后端的人对"重试风暴"的防护直觉,在这里直接生效。

坑五:只看"跑通了",不做评测

Demo阶段一切美好,真实场景一上就拉胯。我改了一版prompt感觉"好像变好了",其实没法证明。改动A好还是改动B好?全靠玄学。

解法:搭评测集——50个典型任务case,量化任务完成率、工具调用准确率、平均轮次、单任务成本。有了数字,一切迭代都有了方向。这可能是我在面试里最加分的一项。

四、我的4个月学习路线


时间上大概4个月,不是闷头学,是边学边做:

第1个月 破除幻想

读ReAct等论文,手写一个不带框架的ReAct循环,搞懂Agent到底在"循环"什么

第2个月 项目实战

用LangGraph做一个真实场景的多工具Agent,把我熟的Web业务"翻译"过来

第3个月 工程化

上下文管理、成本控制、熔断、缓存;用TS/Node重写了一版核心编排,吃透原理

第4个月 评测+面试

搭评测集、整理复盘、mock interview;项目开源放GitHub

两个关键决定,现在回头看极其正确:

  1. 先手写,再用框架。第一版Agent我没用LangChain,纯Python手写while循环+tool dispatch。多花了一周,但后来用框架时,我知道每一层封装下面发生了什么——面试官问"框架的checkpoint机制怎么实现的",我能答上来。只用过框架的人,答不上来。

  2. 项目选自己最熟悉的业务。我做的是一个"网站数据异常诊断Agent"——输入一个异常报警,它自己去查监控API、拉日志、分析原因、给出建议。因为这个业务我太熟了,我知道什么是"正确答案",评测集好建,demo也真实。不要做你不了解的领域的Agent,你会连它做得对不对都判断不了。

五、3个offer,都考了什么


Offer 1 · 某大厂AI平台

现场手写:一个带工具调用的Agent循环。不许用框架,白板写。考察点:循环终止条件、工具调用失败的重试与兜底、消息结构设计。后端出身的竞争者写得很快,但我的消息结构设计(受TS类型思维影响)被面试官专门表扬了。

白板编码循环设计失败兜底

Offer 2 · 某大厂业务线

系统设计:给百万级用户设计一个AI助手。我按Web架构的思路拆:网关层→编排层→工具层→模型层,然后重点讲了流式输出(SSE,Node的强项)、上下文存储、成本监控。最后追问了RAG的召回优化。

系统设计流式输出成本架构

Offer 3 · 某大厂AI中台

项目深挖:把简历项目问到第五层"为什么"。为什么工具参数这么设计?为什么评测集是这50个case?为什么prompt要版本管理?——因为有真实踩坑经历,每一层都有故事。这轮面完,面试官主动加了微信。

项目深挖评测体系踩坑复盘

三个面试有一个共同的感受:面试官其实不太在乎你会不会用LangChain,他们真正想确认的是——你有没有把LLM当成一个"不可靠组件"来做工程的意识。

工具调用失败了怎么办?输出格式飘了怎么办?成本超了怎么办?死循环了怎么办?——能不假思索地回答这四个问题的人,凤毛麟角。

六、给Web背景转Agent同学的4条建议


1. 你不是从零开始,是带着装备来的

TS类型直觉、异步编程、流式传输、API设计、状态管理——这些在Agent开发里全是硬通货。别被"我是前端/我是写页面的"这种自我设限困住。你的竞争力是"懂工程的人里最懂AI交互的,懂AI的人里最懂工程的"。

2. 一周内动手,别先囤课

别把吴恩达的课从头刷到尾再开始。直接选一个你熟悉的小场景,48小时内做出第一个能跑的Agent。遇到不懂的概念,带着问题回头查——需求驱动的学习比知识驱动的学习快10倍。

3. 评测能力是你的护城河

大多数人停留在"prompt玄学调优",你只要建立一套简单的量化评测(几十个case+几个指标),就超过了90%的候选人。这个能力门槛不高,但极少有人做——因为它不性感,但它值钱。

4. 把踩坑过程记录下来

死循环怎么解的、上下文怎么压的、工具怎么改的——这些记录既是你的面试弹药,也是你的公开内容。我有一半的面试邀约,来自我发在技术社区的踩坑复盘。

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐