快手 AI 全栈一面:Skill 成本、Agent 链路与开发验收
本场面试题
- Skill 与 MCP 的 Token 消耗怎样比较,基本配置一样长时呢?
- 一个 Query 从进入 Agent 到输出结果,经历哪些步骤?
- AI 辅助开发怎样从需求走到验收?
- 怎样判断一个 Skill 足够好?
面经与参考答法
快手 AI 全栈一面:Skill 成本、Agent 链路与开发验收
公司:快手;岗位:AI 全栈开发;轮次:一面。原文没有面试日期与最终结果。
根据候选人公开自述选录技术问题,经历未获外部认证。原帖未提供完整现场答案;下方短答与例子均为编辑补充,不代表作者实际作答、项目实现或企业标准答案。本文选录4组问题。
(1)Skill 与 MCP 的 Token 消耗怎样比较,基本配置一样长时呢?
先明确“长度”是字符数还是目标模型的Token数,再在同模型、同任务和相近成功质量下比较完整执行。Skill可按需加载目录、正文和资源;MCP工具描述也取决于宿主怎样发现及注入。即使初始配置的Token数相同,后续说明、参数、工具返回、模型输出与重试仍可能不同,需分别记录,不能只按协议名称判断。 参见Agent Skills 加载机制。
教学例子:两边初始目录开销相同,一次任务后来加载长Skill正文,另一路只取到短工具结果,最终消耗就可能不同;换一个任务又可能相反。应同时报告完成质量与总Token,避免用少做步骤换取“省”。
知识阅读:Agent Skill:渐进式披露、热插拔与版本治理。
(2)一个 Query 从进入 Agent 到输出结果,经历哪些步骤?
入口先检查用户、任务范围与必要输入,建立运行状态,再组织上下文调用模型。模型若提出工具调用,运行时校验参数、权限和预算后执行,把带调用标识的结果写回状态,必要时进入下一轮。最终按业务成功条件返回结果;预算耗尽、缺信息、取消或失败都应有明确状态,不能一律写成功。
教学例子:查询任务状态时,工具HTTP请求成功却返回“仍在处理”,Agent应把它作为观察并按任务要求等待或如实回答,不能因为接口返回成功就宣布业务任务完成。
知识阅读:Agent Run Loop、轮次与终止条件。
(3)AI 辅助开发怎样从需求走到验收?
把需求写成可检查的输入、行为和验收条件,阅读现有代码及约束后拆解任务,实施最小连贯变更,再运行相关测试并审查diff。另开窗口可以帮助重新对照需求,但它只是复核视角,不能替代实际运行与验收证据。保留未验证项和失败原因,不能只以生成了代码判断完成。
教学例子:编辑假设需求是给列表增加筛选,验收至少包括筛选结果、清空条件及原有行为;新窗口发现缺少清空条件时要补实现并重测。原帖没有公布具体coding需求,这个功能仅用于说明方法。
知识阅读:Coding Agent 的架构与执行循环。
(4)怎样判断一个 Skill 足够好?
分别检查是否在该用时触发、是否完成目标、工具与参数是否正确,以及权限和安全边界是否遵守。用固定版本和可复现环境覆盖正常、相近任务误触发、异常恢复与越权输入,查看重复运行的波动、延迟和成本。开发用例与独立留出任务分开;一次成功或一段清晰说明,不能证明稳定可用。
教学例子:一个只负责读取报表的Skill,既要在报表任务上选对工具、给出可核验结果,也要在不相关输入时避免误触发,并拒绝超出授权的写操作;把正常用例的高分与这些失败分开报告。
知识阅读:Agent Skill:渐进式披露、热插拔与版本治理。