字节 Agent 全三轮面经:重构、上下文压缩与 Computer Use
- 轮次
- 一面+二面+三面
- 结果
- 三面后无 HC
- 时间
- 2026-10
- 来源
- 牛客网
《面试题目》
一面
- 如果要重构你实习的 Agent,你想怎么做?
- DeepSeek harness 和 pi 的区别是什么?
- Claude Code 的上下文是怎么压缩的?
- Computer use 的原理是什么?有没有了解过在云电脑的应用?
- 平时的 AI coding 工作流是怎样的?有没有更 native 的做法?
- 算法:判断 a 树是不是 b 树的子结构。
二面
- 怎么判断一个 Agent 项目是不是企业级?
- 算法:用 random5 实现 random7。
三面
- 场景:有一份 Nginx 日志,每行第一列都是 IP 地址,如何找出访问频率最高的几个 IP,用于排查是否存在攻击?不能写脚本,用基础的 Linux 操作和 nginx 操作完成。
- 算法:将一组正整数重新排列,拼接成最大的整数(LeetCode 179)。
《参考解析》
重构 Agent 先从边界和可观测性下手,而不是先换模型。 我会先把现有链路拆成五层:模型调用、工具层、上下文与记忆、编排/状态机、评测与观测。重构的第一步是拿真实 trace 做基线,标出每类失败(工具选错、参数错、上下文丢失、重复调用、超时)的占比,再决定改哪层。接口上把工具定义、权限、超时、重试、幂等键固定下来,模型只负责决策;状态持久化到外部存储,保证进程重启后能续跑;每次调用记录输入摘要、工具结果、token 与耗时,方便回放。这样换模型、换框架都只是替换一层,不会把业务逻辑绑死在某个 SDK 上。最后用离线评测集和线上灰度一起验证,先保证不退化,再谈降本和提速。
上下文压缩的核心是「保留决策,丢弃冗余」。 一类做法是摘要:把较早的对话压成目标、约束、已确认事实、未完成事项四块,原始消息只留最近几轮;另一类是把大块工具输出外置到文件或检索库,上下文里只放路径、摘要和关键片段,需要时再按需读取。Claude Code 这类工具从外部能观察到的思路也类似:长会话会做压缩,读文件按需分段,子任务丢给子 Agent 以隔离上下文,工具结果过长时截断并提示去读原文。真正要保住的是用户目标、硬约束、已经做过的决定和失败过的尝试;可以丢的是重复日志、完整文件内容、已经消化的搜索结果。压缩不是越短越好,压完要能回答「为什么这么做」和「下一步做什么」,否则模型会重新走一遍弯路。
Computer Use 是一个「观察—定位—动作—校验」的闭环。 模型拿到截图或可访问性树,输出点击坐标、输入文本、滚动、快捷键等动作,执行器在虚拟机里操作,再把新截图回传,循环直到任务完成。难点不在调用鼠标键盘,而在 grounding:截图里的元素要准确对应到可点击位置,分辨率、缩放、弹窗、加载态都会让坐标漂移;长任务还会遇到页面变化、验证码、权限弹窗和误操作。工程上通常叠加可访问性树/DOM 信息、动作前校验、失败重试和人工接管。云电脑的价值是隔离和安全:任务跑在一次性或可重置的虚拟机里,不碰用户本机文件,能并行扩容,也方便录屏审计;代价是延迟、图形性能和跨环境登录态,所以适合后台化、可回放的流程,不适合强实时操作。
「企业级 Agent」不是能跑通 demo,而是能对失败负责。 我会看几件事:权限是否最小化、工具调用是否可审计、写操作是否幂等、失败能否重试和回滚、敏感数据是否隔离、有没有人工审批节点、有没有稳定的评测集和回归机制、成本与延迟是否可预算、出问题能否定位到某一次调用。再往上一层是组织和流程:谁负责 prompt 与工具版本、变更怎么发布、线上 bad case 怎么回流。能把这些说清楚,才叫企业级;只展示一个效果很好的 demo,说明不了稳定性。
算法题里最容易被追问的是随机数构造和比较器。 random5 生成 random7 用拒绝采样:连续调用两次 random5,映射到 125,保留 121,按 (x-1) % 7 + 1 映射到 17,2225 丢弃重来;每次接受概率 21/25,期望尝试次数 25/21。判断 a 树是不是 b 树的子结构,可以递归比较每个节点,时间最坏 O(n*m);更稳的做法是把两棵树按先序序列化(空节点也写标记),再用 KMP 判断 a 的序列是否包含 b 的序列,时间降到 O(n+m)。拼接最大数用自定义比较器:a+b 与 b+a 比较,降序排列,最后处理全 0 的情况。Nginx 日志找高频 IP 可以用 cut -d' ' -f1 access.log | sort | uniq -c | sort -rn | head,这是基础命令组合而不是脚本;线上防护则在 Nginx 配 limit_req、limit_conn,按 IP 或连接数限速,再结合封禁与告警。