快手 Data Agent 一面:记忆、循环与 Subagent

3 道题 · 更新于 2026-10-29

本场面试题

  1. 短期与长期记忆应怎样设计?
  2. 怎样防止 Agent 陷入死循环?
  3. Subagent 适合哪些任务?

面经与参考答法

公司:快手;方向:Data Agent(原帖标题);轮次:一面。部门和实际面试日期未披露。本文选录3题。

根据候选人公开自述整理,经历未经外部认证。以下短答和例子均为编辑教学补充,不代表现场答案、原项目实现或企业标准方案。

(1)短期与长期记忆应怎样设计?

先按用途和生命周期区分:短期记忆维护当前会话的消息、任务状态与工具结果,需要故障恢复时使用持久检查点;长期记忆保存经授权可跨任务复用的事实或经验,保留来源、版本与有效期。召回时检查租户、权限、时效和冲突;相似度只产生候选,不保证事实正确,也不要求所有记忆都使用向量库。

教学例子(非原项目实现): 本轮订单查询的进度属于短期状态;用户明确允许保存的语言偏好可以进入长期记忆。换会话后取回偏好,仍需确认所属用户与当前有效性。

深入阅读:短期记忆、长期记忆与检索

---

(2)怎样防止 Agent 陷入死循环?

把完成条件、调用次数、token、费用和全局期限纳入运行状态,在决策与工具执行前校验。用未完成目标、状态版本、动作参数和新证据判断进展;分页或轮询须区分游标推进与重复空转。无进展时换方法、澄清或退出,重试也消耗原任务预算。完成、超限、失败、取消和人工介入应明确分流,模型说“完成”不能代替产物验证。

教学例子(非原项目实现): 连续以相同查询拿到相同证据,不能只改提示措辞就无限继续;若分页游标确实推进,同一工具重复调用仍可能是有效进展。停止时返回已完成项、剩余问题与原因。

深入阅读:Agent Run Loop、轮次与终止条件

---

(3)Subagent 适合哪些任务?

适合边界明确、可独立取证,或需要不同工具与上下文的子任务。主 Agent 传入目标、必要材料、约束、允许工具、预算和完成标准;子 Agent 在隔离上下文中执行,以证据与状态返回,由主 Agent 验证归并。独立任务才适合并行,共享写入需要所有者或版本检查。委派不扩大权限,也不自动提高质量;任务很小或依赖很强时,单一执行链可能更合适。

教学例子(非原项目实现): 把两份独立规范的核对交给两个只读子任务,各自返回段落引用,主 Agent 验证后归并。若后一项依赖前一项产物,应先完成依赖,而非让两路猜测或覆盖同一文件。

深入阅读:Subagent 子智能体设计

面经是候选人自述,解析为 Agent Journey 整理。更多大厂 AI / Agent 岗面经 · 按目标公司模拟面试