先这样答
直接调用大模型是一次函数调用:输入提示词,输出文本,结束。Agent 是在这外面套了一个循环:模型先看当前状态(任务目标、历史步骤、可用工具),决定下一个动作,可能是调工具、可能是写中间结论、也可能是宣布完成。系统执行动作后把结果喂回给模型,循环往复,直到目标达成或者触发终止条件。
所以 Agent 和普通调用的区别不在模型本身,而在三个外加的东西。一是工具:模型只能生成文字,工具让它能查库、发请求、写文件。二是循环:普通调用是单轮,Agent 是多轮自主推进,中间的每一步由模型自己决定,不是人写死的流程。三是状态:要有地方存放任务进度、历史动作和中间结果,供下一轮决策使用。
最后可以给面试官一句总结:普通调用回答问题,Agent 完成任务。回答问题靠模型能力,完成任务还要靠工程:工具设计、上下文管理、失败处理,这些都是 Agent 工程师真正的日常。
面试官会怎么追问
- 「自主」的边界在哪?要不需要人确认? 按风险分级:低风险动作(查询类)自动执行,高风险动作(付款、删除、对外发送)必须人工确认,这是设计问题不是能力问题。
- Agent 一定会比直接调用效果好? 不一定。任务边界清晰、流程固定的场景,写死的流程更稳更便宜;Agent 的价值在路径不确定、需要边做边看的任务。
- Agent 系统的核心组件有哪些? 规划(决定下一步做什么)、记忆(状态与上下文)、工具(与世界交互)、外加一层护栏(权限、预算、终止条件)。
回答的坑
- 把 Agent 说成「更聪明的大模型」。区别在系统结构(工具 + 循环 + 状态),不在模型参数。
- 不提终止条件和护栏。没有边界的自主就是失控,面试官等你主动说这句话。
同系列的题
—— 本题完 ——