Skip to content

高频面试题

LLM Agent 常见功能有哪些?

这道题不是让你报菜名,而是看你能否按任务推进链路解释 Agent 能做什么、每类功能解决什么问题、上线时有什么边界。

适合阶段:Agent 产品 / 应用工程面核心能力:Planning · Tool Use · Memory · Collaboration · Evaluation

面试官角度分析,想考什么

  • LLM Agent 常见功能有哪些?
    考规划、工具、检索、记忆、执行、反思、协作,而不是零散清单。

  • 哪些是核心,哪些是增强?
    考目标理解、循环、工具、停止是底座;多 Agent、长期记忆、自我修正按需加。

  • 功能越多越好吗?
    考取舍:能力增加选择错误、成本和不可控,生产还要安全、评估和观测。

可直接抄走的 30 秒参考答案

text
LLM Agent 的常见功能可以按任务链路分:先理解目标和约束,再做规划和任务分解;执行时通过 tool calling、RAG、数据库、API、代码环境或浏览器获取信息和采取动作;过程中维护状态和记忆,根据工具反馈自我修正;复杂场景还能做多 Agent 协作、handoff 或 review。生产里还必须有权限、安全、trace、评估、成本控制和人工确认。不是功能越多越好,而是要按任务风险和复杂度选择。

面试回答详解,知其所以然

回答这道题时,可以按“一个 Agent 从接到任务到交付结果”来组织功能。这样既完整,也不会变成零散清单。

1. 目标理解和任务解析

Agent 首先要理解用户想完成什么,而不是只理解一句话字面含义。常见能力包括:

  • 意图识别:判断用户要问答、执行、分析、生成还是修改。
  • 约束抽取:识别时间、范围、格式、权限、质量要求。
  • 缺失信息判断:发现目标不清时追问。
  • 验收标准识别:明确做到什么算完成。
  • 风险识别:判断是否涉及敏感数据或高危操作。

这类能力决定 Agent 会不会从一开始就跑偏。

2. 规划和任务分解

规划能力让 Agent 把复杂目标拆成可执行步骤。常见形式包括:

  • 一次性生成计划。
  • ReAct 式边行动边调整。
  • Plan-and-Execute:Planner 负责拆解,Executor 负责执行。
  • 动态重规划:工具失败、证据不足或环境变化时换路径。
  • 停止判断:完成、失败、预算耗尽、需要人工确认时退出。

规划不是越复杂越好。简单任务不需要长计划,复杂任务则需要显式状态和检查点。

3. 工具调用和外部执行

工具调用是 Agent 从“会说”变成“会做”的关键功能。常见工具能力包括:

  • 搜索、浏览器、RAG 检索。
  • 数据库查询、业务 API、内部服务。
  • 文件读写、代码执行、测试运行。
  • 邮件、工单、日历、IM 等办公系统。
  • MCP 工具、远程 Agent 或工作流节点。

工程上要强调:模型只提出工具调用,应用层负责执行。参数校验、鉴权、超时、重试、幂等、审批和审计都在工具执行层完成。

4. 知识检索和 RAG

Agent 常需要访问外部知识,而不是只依赖模型参数。常见功能包括:

  • 从知识库、文档、网页、数据库检索信息。
  • 根据任务动态选择数据源。
  • 对检索结果做 rerank、摘要和证据引用。
  • 发现证据不足时继续检索或换查询。
  • 把检索结果作为 observation 支撑下一步决策。

传统 RAG 通常是固定检索流程;Agentic RAG 的特点是检索策略可以由 Agent 动态决定。

5. 状态管理和记忆

Agent 要做多步任务,就必须记住当前进展。常见能力包括:

  • 保存当前目标、计划、已完成步骤和待办。
  • 记录工具调用结果和错误状态。
  • 对长上下文做摘要、压缩和引用化。
  • 保存跨会话用户偏好、项目事实和历史经验。
  • 根据当前任务召回相关长期记忆。
  • 处理记忆冲突、过期、删除和隐私边界。

这里的重点是:记忆不是把所有聊天记录塞进 prompt,而是有选择地写入、检索和注入。

6. 反思、自我修正和验证

很多 Agent 会加入质量控制能力:

  • 工具失败后根据错误信息重试或换策略。
  • 生成答案前检查是否满足目标。
  • 用 verifier、LLM judge、规则或测试检查结果。
  • 把失败经验写成反思,供后续任务复用。
  • 对高风险结论要求证据或人工确认。

这类能力能提升可靠性,但也会增加成本和延迟。生产里要按任务风险选择是否启用。

7. 多模态和环境交互

现代 Agent 不一定只处理文本。常见多模态能力包括:

  • 读取图片、截图、PDF、表格、音频或视频转写。
  • 操作浏览器、桌面或代码环境。
  • 理解 UI 状态并执行点击、输入、导航。
  • 生成图表、文档、代码、报告或可视化产物。

这类能力让 Agent 可以处理真实工作流,但安全边界更重要,因为它看到的页面和文件也可能包含恶意指令。

8. 协作和编排

复杂任务常需要多个能力单元协作。常见功能包括:

  • Handoff:把任务交给更擅长的 Agent。
  • Supervisor:上层 Agent 分配任务并汇总结果。
  • Orchestrator-Worker:动态拆分子任务并并行执行。
  • Debate / Review:多个角色互相检查。
  • Blackboard:共享任务状态和中间产物。

多 Agent 不是为了显得高级,而是为了隔离上下文、复用专业能力、并行处理和降低单个 Agent 的工具复杂度。

9. 安全、权限和可观测性

生产 Agent 必须有“保护系统”的功能:

  • 工具白名单和最小权限。
  • 危险动作人工审批。
  • Prompt injection 和数据泄露防护。
  • 沙箱、网络隔离和凭证隔离。
  • Trace、日志、回放和审计。
  • 成本、延迟、步数和 token 预算控制。
  • 离线评估、线上监控和回归测试。

面试里把这些说出来,说明你理解 Agent 是生产系统,不是只会跑 demo 的脚本。

面试官追问3个问题

追问一:哪些功能是 Agent 必须有的?

  • 考察点:能否区分必要能力和增强能力。
  • 回答方向:最小 Agent 至少要有目标理解、状态、工具或动作接口、执行循环和停止条件。长期记忆、多 Agent、反思、多模态属于按场景选择的增强能力。

追问二:工具越多 Agent 是否越强?

  • 考察点:工具治理意识。
  • 回答方向:不一定。工具越多,选择错误、描述冲突、权限风险和上下文成本越高。生产里应做工具分组、动态白名单、检索式工具选择和最小权限。

追问三:反思能力是否应该默认开启?

  • 考察点:成本和收益判断。
  • 回答方向:不应该无脑开启。反思适合复杂、可验证、失败可学习的任务;简单任务可能只增加延迟和 token。写入长期反思还要有质量门槛。

扩展知识

核心能力和可选增强能力

可以把能力分成两层:

  • 核心能力:目标理解、上下文构建、工具调用、状态管理、执行循环和停止条件。
  • 增强能力:长期记忆、反思、多 Agent、多模态、动态工具发现、自动评估和自学习。

不是所有 Agent 都需要增强能力。客服 FAQ Agent 可能主要需要 RAG 和工具调用;代码 Agent 更需要文件系统、测试、补丁和长任务状态;研究 Agent 更需要浏览、引用、检索和证据管理。

功能增加会带来复杂度

每增加一类能力,都要问三个问题:

  • 它解决了什么真实任务痛点?
  • 它失败时会造成什么后果?
  • 它需要什么评估和防护?

例如长期记忆能提升个性化,但会带来隐私和污染;浏览器操作能处理真实网页,但会暴露 prompt injection;多 Agent 能并行,但会增加协调成本和上下文一致性问题。

推荐回答结构

面试现场可以用这个结构:

text
理解目标 -> 规划 -> 调工具 / 检索 -> 状态记忆 -> 校验修正 -> 协作扩展 -> 安全治理

这样回答既覆盖功能,也体现系统设计思维。

基于 MIT 协议开源