面灵AI→

vivo Agent 开发线下一面:Harness 与 Agent 工程

结果
已挂
时间
2026-09
来源
牛客网

《面试题目》

  1. 自我介绍
  2. 你是本科生?为什么不考研?
  3. 你的意向是偏后端方向还是偏 Agent 方向?我看你都有做过。
  4. 讲讲你对 Agent 的一些理解,都可以说。
  5. 详细讲讲 Harness 吧。
  6. 讲一个 Agent 工程中由于 Harness 环节做得不好而导致的问题,以及如何排查和解决。
  7. 你平时都是怎么学习 AI 和 Agent 相关知识的?
  8. 讲讲你在 Agent 方面的一些实践。
  9. 反问:团队业务是什么?
  10. 反问:对我的发展有什么建议?

《参考解析》

对 Agent 的理解怎么讲得有层次:先给定义——Agent 是”模型 + 循环 + 环境接口”:模型负责决策,循环负责”规划 → 调用工具 → 观察结果 → 修正”直到满足终止条件,环境接口包括工具、文件系统、浏览器、代码执行沙箱等;再加上记忆/上下文管理和评测护栏。然后区分 workflow 与 agent:workflow 的路径是人预先编排好的(适合稳定、可枚举的流程),agent 把路径交给模型自己决定(适合开放任务,但更难控)。最后落到自己做过的那条链路上,讲清边界:输入是什么、工具集有哪些、失败时怎么办、用什么指标衡量。反问得到的团队信息是蓝心小 V(对标小爱同学、小艺),说明业务偏终端助手。

Harness 到底指什么:Harness 是模型之外的那层运行时/脚手架——同一套模型换成不同的 harness,效果差距可能比换模型还大。它至少包含六件事:① 工具的定义与调用编排(schema 描述、参数校验、失败重试、并发调用);② 上下文管理(系统提示、历史压缩与摘要、检索注入、token 预算分配);③ 循环控制(最大步数、终止条件、死循环检测、子任务拆分);④ 错误处理与降级(工具报错怎么反馈给模型、连续失败怎么兜底、超时与中断恢复);⑤ 权限与沙箱(能写哪些目录、能跑哪些命令、危险操作确认);⑥ 可观测(每一步的输入输出、工具耗时、token 与成本、可回放 trace)。面试里能被明确问到 Harness,说明面试官自己就做这层,答得越具体越好。

Harness 做得不好会出什么问题、怎么排查:典型症状:工具调用参数总是缺字段或类型错(工具 schema 描述不清、缺示例);模型在同一个动作上反复打转(没有步数上限或没有把失败信息回灌);上下文超限后丢掉关键约束、行为突然变差(压缩策略粗暴、没做优先级保留);重试风暴或超时(没有退避与幂等,工具失败被无限重试);幻觉调用不存在的工具(工具列表与描述在长对话中被截断);多轮状态串味(会话隔离没做好)。排查方法是工程化的:把 trace 拉出来逐步回放,先固定模型只换 harness 的一处做 A/B,把线上失败案例收成一个可离线复跑的回放集,然后逐条看”是提示、工具描述、上下文、还是编排逻辑”的问题;能加单步断言就加断言,把”靠感觉调提示词”变成有回归集的迭代。

怎么学 AI/Agent 知识 + 实践怎么讲:学习方法讲三层——读官方文档与规范(模型 API、工具调用协议、上下文与缓存机制)、读优秀开源实现与源码(框架的 agent loop、工具注册、错误处理怎么写的)、动手搭一个最小可跑的 agent 再逐步加复杂度(先单工具,再加多工具与规划,最后做评测)。实践部分按”业务问题—方案—指标”讲:要解决什么场景的问题、链路怎么设计(模型选型、工具、prompt 与上下文策略)、效果怎么量化(成功率、平均步数、成本、人工介入率),有 pipeline 建设经验就重点讲工程化那部分——数据流、并发与限流、失败重试、日志与评测,这些比”我用过某个框架”更能证明能力。

面试复盘与节奏控制:作者记录了几个值得参考的点:笔试通知当天上午才发、面试周五才约、面试中说话频繁被打断;timeline 是 8.26 投递 → 9.15 笔试 → 9.22 面试 → 当晚感谢信。被频繁打断时不建议跟着提速或沉默,可以先用一句话给出结论(“我的结论是 X,展开说三个原因”),再按对方插话的节奏调整;面试体验差不等于没机会,但反馈快慢与流程拖沓确实反映了团队的做事方式,选 offer 时可以当作参考。