帮你快速理解AI Agent之我想招个Android实习生

背景

最近公司事情太多了,天天加班到半夜,身体快吃不消了,没办法只能向领导反映一下,帮我招个实习生,多多少少分担一些活,这不马上去某某直聘上贴了一份招聘信息,JD如下

岗位要求 说明
岗位名称 AI Agent(智能体Android实习生)
岗位要求 分析需求(理解目标)->设计方案(制定计划)->coding+调试(调用工具)->提测(交付结果)
薪资待遇 按照做的事情结算(按Token结算)
试用期考核 能不能独立完成一个复杂需求(多步骤真实任务)

面试及入职(大模型与AI Agent的区别)

陆陆续续面试了好几个人,有一个小伙子倒是十分满意,我的问题他都回答的很全面

  • 我问"说一下你对RecycleView认识多少",他能从ViewHolder讲到DiffUtil
  • 我问"说一下Activity的生命周期",他噼里啪啦全说上来了,连onSaveInstanceState都说了
  • 我问"用过哪些架构模式",好家伙MVC,MVP,MVVM,MVI全用过,他们的区别也都讲的头头是道

最终决定让他入职了,但是入职当天尴尬的一幕发生了,有个页面UI提了几处需要修复的地方,我想改改UI嘛,让实习生做吧,让他顺便熟悉熟悉项目,结果没过一会实习生端着电脑跑过来问我"老哥,代码怎么老是编译失败",我一看,红红的一行"Inconsistent JVM-target compatibility"格外醒目他居然没看见,"这不提示你jvm版本问题,你是不是下的最新版本的AS,新版默认jdk版本太高,改下就好了",他点点头,回去了

上面这件事情就看出了,会说(大模型)跟会做事(AI Agent)存在着本质的区别

初识实习生--小伙子挺聪明(LLM)

实习生入职了一个礼拜了,我发现他的脑子(LLM大语言模型)真好用,大概也是年轻,思维活跃吧,工作中遇到的问题,他都能看出这个问题的本质

  • 产品过来说这个列表滑着怎么会卡顿,实习生马上就知道在说的是RecycleView的性能问题
  • 看到代码里面存在不少new Thread,他知道应该用线程池来管理
  • 界面上有个标签没展示,他说看下接口是不是字段返回有误
  • 应用闪退了,他说分析一下日志

但是问题也暴露了出来,他只会说,但是你却看不到他实际做了什么,代码仓库里面他一行代码都没提交

LLM就像是一个八股文大神,他可以说得比谁都好,但他无法将他说的东西做出来

给实习生安排工具--Tool Use

回去思考了一下,我总算知道了如果想要让实习生发生从"只会说"到"会做事"的转变,那么就一定要给他介绍完整研发流程里面的所有工具,于是我拉了个小会议室,把他喊进来,告诉他

  • Android Studio:IDE,用来写代码和调试的
  • Gradle:用来编译以及打包的
  • Retrofit + OkHttp:网络框架,用来请求接口拉数据
  • Room:本地数据库
  • Firebase:查看线上崩溃日志以及性能数据
  • Git:提交代码
  • Charles:抓包,看真实接口返回的数据

现在工具都告诉他了,后面看看他的变化吧,有一天,产品又跑过来指着我们说:这里不是应该有个活动标签吗,为什么不展示了,这是个很严重的bug,赶紧给我修了,然后气鼓鼓的走了,于是我让实习生排查一下,只见实习生

  • git pull拉取了一份最新代码
  • adb将真机与Android Studio连上
  • 编译应用,运行应用,打开Charles,查找对应接口数据
  • 找到相关字段,发现字段返回有问题,并截图发给了后端
  • 后端修复了问题,实习生同步产品,告知他问题已修复

有了工具的实习生就会自己解决问题了,我坐在一边喝了口茶,露出了欣慰的笑容

Tool Use,给LLM装上了工具,让LLM不再只会纸上谈兵,而是会带兵打仗了

教会实习生写技术方案--Planning

又过了一段时间,给实习生安排了一个比较复杂的需求,在个人中心增加一个活动中心入口,活动期间才展示,其他时间隐藏,需求其实还行,只是前期需要沟通各端资源,设计稿,服务端接口等,可当我看见实习生啥也不说直接新建了一个xml文件开始敲布局,我就抑郁了,问他:

  • 我:你干啥呢?
  • 他:画布局啊,不是说新增个活动入口吗
  • 我:你知道入口长啥样吗
  • 他:不知道
  • 我:那你继续

然后他就坐在那边卡住了,于是我告诉他:你得先知道整个需求应该怎么做,需要哪些,逻辑是什么,不清楚的时候可以先写个技术方案

一个需求的技术方案可以包括如下环节

  1. 分析需求,确认功能点
  2. 有ui变动的需求必须要有设计文档链接
  3. 需要有接口以及对应接口文档
  4. 分析现有代码,找出需要改动哪些文件,哪些代码
  5. 数据层应该如何实现,逻辑层应该如何实现
  6. 联调方是谁,交付方是谁,验收方是谁

以上就叫Planning

这样以后每个需求我就不用每一步每一个环节都盯着了,我只需要提出需求,剩下的就让实习生自己按照流程去完成就好了

Planning,让Agent可以自己去拆任务,排优先级,规划执行步骤,让它学会独立思考

让实习生建立自己的知识库--Memory

日子过的挺好,又过了一个月

  • 我:有个新需求,在首页也加个活动入口,差不多跟上次个人中心加入口的需求一样
  • 实习生:什么个人中心?咱有做过这种需求吗
  • 我:......

年纪轻轻那么健忘,你是鱼吗?又要重新开始学吗?看来以后做的每个需求,解的每个bug,总结的任何经验,都记录下来,形成自己的知识库,让实习生不再健忘

  • 短期记忆:本次需求的上下文,比如如何加入口,逻辑是啥
  • 长期记忆:跨会话的关键决策,比如项目主体架构用的是mvp还是mvvm
  • 决策日志:已做过的技术选型,比如网络框架用的是Retrofit+okhttp,图片用Glide还是Coil加载
  • 踩坑日志:修过的问题,比如Android15+的设备上需要考虑边到边特性

这样一来,有了知识库的实习生就变成了一个懂项目的老手,不再是每次都需要从0开始的新人了

Memory,让Agent不再失忆,每个任务不再从最初环节开始执行

总结

最后再总结一下AI Agent(合格的实习生)就是LLM(大脑)+Tool Use(会用工具)+Planning(会做技术方案)+Memory(会总结,有自己的知识库)

相关推荐
沉默王二2 小时前
Agent底层原理连问8道,从ReAct到记忆压缩,PaiCLI项目实战拆解
面试·agent·ai编程
新新技术迷2 小时前
AI聊天自动跟随滚动,附回到底部按钮
人工智能
先锋部队2 小时前
用Web Worker解析AI返回的大文本不卡UI
人工智能
把你拉进白名单2 小时前
8.OpenClaw源码解析——三层洋葱重试
人工智能·llm·agent
用户632415031782 小时前
拖文档进AI对话框解析,前端要处理哪些脏活
人工智能
姗姗来迟了2 小时前
AI回答里的引用来源卡片,前端怎么做
人工智能
用户7106207733402 小时前
Codex-端口配置错误排查案例(stream disconnected before completion)
人工智能
恋猫de小郭3 小时前
苹果 AirPods 协议,Android 也可以使用完整版 AirPods 能力
android·前端·flutter
IT_陈寒3 小时前
JavaScript的默认参数挖坑实录,我掉进去了
前端·人工智能·后端