Skip to content
极高困难

一句话答案

Agent 基于 ReAct 循环(感知→思考→行动→观察),通过 Tool Calling 扩展 LLM 能力,实现复杂任务自动化。

核心要点

Agent Runtime 是 Agent 执行的核心引擎,负责管理 Agent 的运行生命周期。

核心组件:

┌─────────────────────────────────────────┐
│              Agent Runtime              │
│                                         │
│  ┌──────────┐    ┌──────────────────┐   │
│  │  Planner │    │  Memory Manager  │   │
│  │(规划模块)│    │  (记忆管理)     │   │
│  └──────────┘    └──────────────────┘   │
│                                         │
│  ┌──────────┐    ┌──────────────────┐   │
│  │ Executor │    │   Tool Registry  │   │
│  │(执行模块)│    │   (工具注册)    │   │
│  └──────────┘    └──────────────────┘   │
│                                         │
│  ┌──────────────────────────────────┐   │
│  │         Observability            │   │
│  │    (日志 / Trace / Metrics)     │   │
│  └──────────────────────────────────┘   │
└─────────────────────────────────────────┘

Agent 自主循环(ReAct Loop):

while not done:
  1. Observation:获取当前状态(对话历史 + 工具结果)
  2. Thought:LLM 推理下一步(Chain-of-Thought)
  3. Action:选择并调用工具,或生成最终答案
  4. if 调用工具:
       执行工具,将结果追加到 Context
       continue  → 下一次循环
     else:
       返回最终答案,结束循环

关键设计点:

  • 最大迭代次数:防止无限循环,设置 max_steps(如 15 步)
  • 超时控制:每次 LLM 调用和工具调用设置超时
  • 状态快照:每步保存状态,支持断点恢复
  • 并发控制:Multi-Agent 场景下的工具调用并发限流
追问与易错

追问方向:

  • 这个概念在你的项目中是怎么应用的?
  • 和相关技术/方案相比有什么优劣?
  • 如果出了问题你会怎么排查?

易错点:

  • ❌ 只知道概念不知道原理——面试官会追问底层实现
  • ❌ 缺乏实际使用经验——结合项目场景回答更有说服力

💡 记忆锚点

Agent像一个有工具箱的实习生,靠ReAct循环干活:观察当前情况(Observation)→ 想想该怎么做(Thought/CoT)→ 挑个工具动手干(Action/Tool Call)→ 看看结果(Observation)→ 不满意再来一轮,直到搞定。关键防护:设max_steps防无限循环,每步存快照支持断点恢复,工具调用要超时和限流。