首页 时政热点 科技头条 智能AI 安全攻防 数码硬件 开发者生态 汽车 游戏 社会热点 开源推荐 医疗健康 归档 标签 关于
智能AI morning

AI Agent 干中学,「造轮子」让我学会了什么?

摘要

AI Agent 干中学,「造轮子」让我学会了什么。主作者 关注 Mirtle 少数派作者 Mirtle 关注 Mirtle 少数派作者 联合作者 关注 Mirtle 少数派作者 Mirtle 关注 Mirtle 少数派作者 昨天 15:00 16:20更新:文章内容更新 作者注:故事有演绎成分。文章提到的 AI Agent 是 Raycast 插件的形式,以避免处理复杂的 UI/UX 工程。

OpenAI Agent Mirtle 关注 少数派作
2026-05-29 1 阅读 约9分钟阅读 Mirtle
分享:
字号:
AI Agent 干中学,「造轮子」让我学会了什么? 主作者 关注 Mirtle 少数派作者 Mirtle 关注 Mirtle 少数派作者 联合作者 关注 Mirtle 少数派作者 Mirtle 关注 Mirtle 少数派作者 昨天 15:00 16:20更新:文章内容更新 作者注:故事有演绎成分。文章提到的 AI Agent 是 Raycast 插件的形式,以避免处理复杂的 UI/UX 工程。代码由 Codex 编写,作者测试、调研并推动产品迭代。 我要自己从头搞一个 AI Agent。 周五下班路上,这个信念充斥着一个文科生的心。 当天下午小组周会,研发人员对我脱口而出「你懂个屁的 AI」,紧接着就是上下文、MCP、Skills 这类于我而言「可远观不可亵玩」的词汇。我沉默不言,无法反驳,因为我对 AI 的全部理解确实只停留在每月的 meme 梗图、流行词,以及 OpenAI、Anthropic 的花边野史。任何追问都会让我哑口无言。 但事情将迎来转机,我感受到不同于下月减肥、少吃油盐和戒掉抖音的强大信念:我要用两天时间梳理完 AI 发展脉络,理解 Agent 能力边界。我也知道软件工程更多是门实践学科,要学习 AI,没有什么比自己「重造一个轮子」带来的理解更加深刻。 所以我也拟定了清晰的目标,我的 AI Agent 至少需要做三件事: 能正常聊天; 能帮我创建、整理待办和笔记; 能帮我拿到最新的少数派的派早报、本周看什么等栏目摘要。 此外,它也不能直接使用任何 AI 框架,代码从零开始;核心脉络、迭代则由我自己定,不能偷懒给 Codex 一句「我要 AI Agent」。 让 AI 开口说话,并治好它的「失忆症」 周六一早,我尝试迈出第一步:搞定聊天。为此我得看一大堆比《三星 OneUI 使用说明书》还复杂的接入文档,对于非程序员群体——例如我——大概和看天书差不多。 出人意料的是,所有 AI 厂商的文档的第一页都只有一行加粗的十个字: 先指定模型,再写上问题 : DeepSeek-v4-flash: 你好 DeepSeek 不一会儿就会发来贺电。大概半小时,我用一个既有的软件做界面框架,做好了雏形: 一句简单咒语,就能驱动一个海量数据训练出来的黑盒。美好的开局让我信心爆棚。我紧接着打算和 AI 联络感情:「从现在开始,你叫我阿乐,我叫你大 D」。我想试试这个好搭档的默契,它却掉链子了: 没错,就像得了失忆症,似乎每一轮对话对于 AI 来讲都是全新的开始。这可不行,而且,ChatGPT 们可不是这样。以「多轮对话」为关键词搜索后,我了解到原来在模型层面上,AI 没有「记忆」一说 1 : 模型只处理本轮对话中,你的输入和它的输出。这也就是模型的 Context(上下文窗口)。 解决办法很原始:每一次新的对话,都把上几轮对话的内容复述一遍: DeepSeek-v4-flash: 上一轮的问题;上一轮的回答 当前轮的问题 假如有 AI 实体,每一次对话我都要花上几分钟把前一轮对话的内容跟它重新讲一遍;想到这有些好笑的情境,AI 的「活人感」就少了很多。但带上了复读机 AI 的「失忆症」果然好了,我暂时只叠加了五轮前文,再之前的怎么处理我现在并没有好的办法。先以能跑为目标: 此时周六上午才过去了两个多小时,我的计划已迈出坚实的第一步。我还惊喜地发现,市面上的 AI 那么多,但都能用 OpenAI 和 Anthropic 定下的两、三种方式用起来,多轮对话的处理方式基本一致: OpenAI Chat Completions API:最常见的格式,一般说「OpenAI compatible」就是说能用它; OpenAI Responses API:OpenAI 的新标准,xAI、火山(豆包)都主推这个; Anthropic Messages API:Claude 自成一套,想要接入 Claude Code 的厂商(如 DeepSeek)往往支持。 这不过是「茴字的几种写法」。我一口气把手边的几个 AI 都接了进来,OpenAI、Gemini 都有现成的日志功能,后续要做核对审查估计会方便一些。 有了基础的聊天能力,如果想定制一个自己的 AI,或者让 AI 完成指定任务,就像在 2022 年 ChatGPT 一鸣惊人后那样,我唯一能依靠的就是提示词了。这里人们还发明了一个词:提示词工程(prompt engineering)。想当初科学、玄学难辨的各类提示词火遍朋友圈和社区,出现了大量搜集提示词的门户站点,皆因提示词是和 AI 交互的唯一途径。彼时通过提示词来做角色扮演为卖点的 Character.ai,也在短时间内声名鹊起。但 AI 似乎停留在 Chat 领域。 让 AI「使用」工具 周六下午开工前,我打算先和我的造物打个招呼,和它还不熟的我选了个不会出错的话题,「今天几号了」: 回答让我大跌眼镜:2025 年 7 月!你怎么还活在去年? AI 能做的是思考,它了解其训练材料截止的世界,但这个「缸中之脑」怎么才能和当下的世界交互?这也关系到让 AI Agent 帮我创建笔记待办的可能性。 我再次翻开厂商们的文档,工具调用(tool use)概念映入眼帘。有趣的是,OpenAI 把一部分工具称为函数(function)。函数这个概念,在几乎所有类型的编程语言里面都有,它被设计在当前环境中完成特定的任务,例如存取数据,获取信息,譬如人的五官手足。但 AI 模型能跑编程意义上的函数,听起来就像「缸中之脑」长出眼耳四肢一样匪夷所思。 现实自然并非如此,工具调用稍微有一些复杂: DeepSeek-v4-flash: 上一轮的问题;上一轮的回答 当前轮的问题 工具:要知道时间请回复「获取时间」 代码: 如果 AI 返回是「获取时间」,就发送给 AI 时间 AI 模型决定获取时间时,它会直接按特定的格式,回复给我们一段话,我们的代码收到这段话后自己获取时间,然后告诉 AI,它才知道时间。换句话说,AI 模型负责调兵遣将,不上阵杀敌。它决定需要谁做事情,然后再拿对方的结果报告给用户。 这意味着我需要自己写一个执行方和它配合。 虽然原理上名不副实,但工具给模型能力带来了无限可能。我只需要将我需要的能力包装成一个个工具,AI 就能适时使用它们。这也同时意味着传统编程能做的一切事情,当前所有的信息、服务,AI 模型就能读取、取用。 外在世界的现实任务 <--解决-- 程序 <--通信-- 接口 <--tool-- AI 模型 我一口气给 AI 添加了十几个工具:我的 AI 现在可以访问网络、执行命令、操作我的系统: 而我的目标之一——创建笔记待办,此刻也被轻松实现: 我很快注意到了副作用:这么多的工具,我一股脑放进对话,简单的「Hello,你好」就要消耗 3 到 4 千的 token,一分钟如果有多次工具调用,6 到 8 万的 token 就没了。 但我暂不考虑优化,因为周六的夜色已至。我停下手上的活开始反思另一个问题:我在自己搞 AI Agent,十几个工具就是十几套不同的代码逻辑,写了一下午。那 Cursor、Codex、Claude Code 这种规模,难道程序员要自己给市面上成千上万个服务都写一遍代码不成?
这篇文章对您有帮助吗?

订阅66必读

每日精选科技资讯,直达你的邮箱