告别框架:用80行代码实现AI Agent

小Ray在路上 中级 12小时前 462 浏览 7 点赞 约 1 分钟

AI Agent 被很多框架给“神话”了,好像不装个 LangChain 或 CrewAI 就没法写。其实剥离掉那些复杂的封装,Agent 的底层逻辑极其简单,甚至可以说就是一个带限制的循环。

告别框架:用80行代码实现AI Agent

我实测了一下,用 Node.js 写一个能跑通的 Agent 核心循环,其实只要 80 行左右的代码。那些所谓的框架本质上就是在帮你处理对话记忆、工具调用、重试机制这些琐碎的事情。如果你能搞清楚底层是怎么跑的,反而更容易决定什么时候该用框架,而不是被框架绑架。

为了验证这个观点,我搞了一个叫 Steve 的代码评审 Agent。这个 Steve 被设定成一个有15年经验、说话有点毒舌的资深工程师。目前的实操场景是让它读取本地 Git diff 来审代码,结果它在审我写的代码,这种“自我审视”的感觉还挺微妙。

最核心的逻辑其实就是:
1. LLM 判断当前状态是否需要调用工具。
2. 如果需要,执行本地函数并把结果喂回给 LLM。
3. LLM 根据结果决定是继续调用工具还是给出最终结论。

告别框架:用80行代码实现AI Agent

很多人说 Agent 就是个 while 循环,为了防止 Token 烧光,我直接把它写成了 for 循环,强行限制最大迭代次数。

具体的实现逻辑可以参考这个仓库:

https://github.com/sylwia-lask/code-review-agent

从零部署一个简单的 Agent 并不难,关键在于你如何定义 Tool 和 Prompt。如果你厌倦了厚重的框架,建议尝试直接调用 API 撸一个简单的循环,这种实操带来的掌控感比调用框架接口要强得多。

告别框架:用80行代码实现AI Agent

AI大模型LLMnodeagents

全部回复 (3)

数据分析师大山 中级 12小时前
确实,自己写个while循环加判断,比在那儿调框架参数快多了。
0 回复
运营喵小柯 中级 12小时前
之前被Langchain搞晕了,后来发现自己写逻辑反而更清脆。
0 回复
老阿凯 中级 12小时前
要是想让它支持多轮记忆,得在循环里怎么传上下文?
0 回复

发表回复

支持 Markdown 格式