Lylove Blog
返回首页

文章

程序员转 AI Agent:从零做一个最小可用 Agent 项目

面向程序员的 AI Agent 实战入门:用一个能搜索、总结、写文件的最小可用项目,串起工具调用、记忆、RAG 和基础工程化。

程序员转 AI Agent:从零做一个最小可用 Agent 项目

如果你已经会写代码,最好的入门方式不是先研究一堆框架,而是先做一个真正能跑的最小 Agent。它不需要很聪明,但要完整:能接收目标、调用工具、处理结果、继续决策,并最终给出可用输出。

这篇文章用一个简单项目,把 AI Agent 最关键的能力串起来。

目标

我们做一个最小可用 Agent,它支持三件事:

  • 搜索资料
  • 总结信息
  • 写入本地文件

这个组合很适合程序员练手,因为它覆盖了 Agent 的核心能力:工具调用、状态流转、结果整理和基础工程化。

为什么先做最小 Agent

很多人一开始就上多 Agent、复杂编排、长记忆系统,结果最后连最基础的调用链都没打通。

正确顺序应该是:

  1. 先让模型能稳定调用一个工具
  2. 再让它根据结果继续判断
  3. 再加入检索和记忆
  4. 最后才考虑多 Agent 协作

项目结构

一个最小 Agent 只需要这些模块:

  • agent core:负责循环决策
  • tools:搜索、读文件、写文件
  • memory:保存中间状态
  • prompt:定义角色和规则
  • logger:记录每一步发生了什么

你可以把它理解为一个很小的状态机。

核心循环

Agent 的最小闭环通常长这样:

  1. 接收用户目标
  2. 让模型判断下一步
  3. 如果需要工具,就执行工具
  4. 把结果喂回模型
  5. 直到任务完成

伪代码就是:

python
while not done:
    action = llm.decide(state)
    if action.type == "tool":
        result = run_tool(action)
        state.update(result)
    else:
        done = True

这个循环看起来简单,但它就是很多 Agent 的基础。

第一个工具:搜索

搜索工具的作用是让 Agent 脱离“只会瞎编”的状态。

你可以先用最简单的实现:

  • 调用搜索 API
  • 返回标题、摘要、链接
  • 让模型根据结果继续总结

重点不是搜索本身,而是工具输出要稳定、可解析、可复用。

第二个工具:写文件

写文件工具能让 Agent 的输出真正落地。

适合练习的场景:

  • 自动生成笔记
  • 整理学习总结
  • 输出 Markdown 文档

写文件时要注意:

  • 路径要限制在安全目录
  • 覆盖前最好确认
  • 记录写入内容,方便回放

第三个能力:记忆

这里的“记忆”不是科幻概念,而是很实用的状态保存。

最少包括:

  • 当前任务
  • 已调用过的工具
  • 工具返回结果
  • 中间草稿

如果没有记忆,Agent 很容易每一步都像失忆一样重新开始。

加入 RAG

当 Agent 需要基于知识库工作时,就要加检索。

一个简单流程是:

  1. 把文档切分成片段
  2. 建索引
  3. 查询时召回相关片段
  4. 把片段提供给模型

这一步能显著提高回答的稳定性,也能帮助 Agent 少胡说。

常见问题

1. 为什么 Agent 总是乱调用工具?

通常是因为工具说明不清楚,或者没有给足停止条件。

2. 为什么 Agent 会重复步骤?

通常是因为状态没有保存好,或者结果没有被正确写回上下文。

3. 为什么 Agent 很慢?

因为它每一步都在多轮推理,工具越多,延迟越高。要控制步骤数。

你应该重点练什么

别把时间都花在框架上,先练这些:

  • 工具定义
  • 状态管理
  • 错误处理
  • 重试与超时
  • 日志与回放
  • 安全边界

这些才是工程里最值钱的部分。

推荐的练手顺序

建议你按这个顺序做:

  1. 只会回答的聊天助手
  2. 会搜索的助手
  3. 会写文件的助手
  4. 会读知识库的助手
  5. 带简单规划能力的 Agent
  6. 带评审节点的多 Agent 原型

结语

如果你是程序员,学习 AI Agent 最快的方式不是背概念,而是做项目。先把一个最小闭环跑通,再不断加能力:搜索、记忆、RAG、评估、安全、协作。

真正的门槛,不是会不会调用模型,而是你能不能把它做成一个可靠系统。