字节跳动抖音AI全栈开发一面面经(三面已挂)

字节跳动 · AI全栈开发工程师 · 一面 · 2026-05

《面试题目》

项目

  1. 详细说一下智能体 ReAct 模式的执行流程?
  2. 智能体陷入死循环的原因是什么?
  3. 怎么解决智能体死循环的?
  4. 为什么要做三层防护机制?
  5. 原子状态机是什么?解决了什么问题?
  6. 三层记忆的背景是什么?解决了什么问题?结果是什么?
  7. 记忆是如何召回的?
  8. 怎么保证问了 A 问题和 B 问题不会乱注入?怎么解决的?
  9. 长期记忆里面存了什么?如何界定?
  10. 召回的效果怎么样?
  11. 用的是什么模型?多模型是怎么做的?

Java/JVM/JUC

  1. Java 的类加载器是什么?

《参考解析》

  1. 智能体死循环的成因与防护:常见原因包括工具调用结果未达到预期但模型持续重复同一策略、终止条件设计不合理(如只依赖模型自己判断”任务完成”);解决方案通常设置多层防护:最大迭代次数硬限制、检测连续相同动作/结果时强制中断、引入外部裁判(另一个模型或规则)判断是否应该终止。
  2. 记忆召回的隔离问题:多用户/多会话场景下,记忆存储需要按用户ID/会话ID做严格的命名空间隔离(如向量数据库中的 metadata filter),检索时强制带上隔离条件,避免不同用户或不同问题之间的记忆被错误地交叉召回污染上下文。
  3. Java 类加载器:JVM 内置三种类加载器——启动类加载器(Bootstrap ClassLoader,加载核心类库,C++实现)、扩展类加载器(Extension/Platform ClassLoader,加载扩展类库)、应用类加载器(Application ClassLoader,加载classpath下的用户类),三者通过双亲委派模型协作:加载类时先委派给父加载器尝试加载,父加载器无法加载时才由自己加载,这样能保证核心类库的唯一性和安全性。