美团 AI 应用开发实习二面:降级、工具调用与 AI Coding
本场面试题
- 熔断降级怎样做?能让用户无感吗?
- 工具调用的流程是什么?模型在哪些环节发挥作用?
- 让大模型来写这个练手项目,能完成吗?
面经与参考答法
美团 AI 应用开发实习二面:降级、工具调用与 AI Coding
这份自述记录了美团 AI 应用开发实习二面,具体部门、面试日期和项目业务未披露。本页选取三组问题;原帖另有压测、ID 与后端设计追问,没有可直接复用的配置或量化结果。经历未经外部核实;以下短答与示例为编辑补充的学习材料,不代表现场答案、原项目实现或公司的技术栈。
(1)熔断降级怎样做?能让用户无感吗?
先区分隔离故障依赖的熔断,与保留可接受能力的降级。在同一任务和剩余预算内,预先定义缓存、替代实现、模型或异步处理等合格路径,核对权限、数据新鲜度、能力与质量底线,并检查是否已经产生副作用。“无感”不能无条件承诺;若结果能力、可靠性或新鲜度发生变化,应给用户可理解的说明,不能把降级失败包装成成功。
教学示例(非原面试实现):检索依赖故障时,只有在授权与新鲜度要求允许的情况下才返回有来源的缓存。没有合格证据或替代能力时,明确说明暂不可用或转人工,比让未验证的备用模型补出答案更可靠。
(2)工具调用的流程是什么?模型在哪些环节发挥作用?
宿主向模型提供工具描述与参数契约,模型提出候选工具调用和参数;宿主从可信会话检查身份、权限、参数与资源范围,执行获准调用,再把关联到本次调用的结果回送模型。模型可据结果继续请求工具或组织答案,运行时负责状态、次数、超时、错误和终止条件。模型输出调用意图,不等于函数已执行,格式正确也不等于动作获准。
教学示例(非原面试实现):模型提出查询某个订单的状态,宿主仍须验证当前用户能否读取该订单,执行查询并带调用标识回传结果,再由模型整理回答。不能直接相信模型给出的用户身份或访问权限。
(3)让大模型来写这个练手项目,能完成吗?
原帖没有给出完整需求或当事人的回答,不能直接判断能或不能。应把需求转成明确的范围、约束与验收标准,固定仓库基线,经过读代码、规划、修改、测试和差异审查,再用实际证据判断完成程度。模型能生成一段代码,不代表能正确处理跨模块依赖、权限、异常和部署约束,也不能用它的“已完成”声明代替验证。
教学示例(非原面试实现):给已有接口补查询功能时,先约定权限、空结果和异常行为,再让模型在受限范围内修改,执行相关检查并审查 Diff。交付时明确实际通过与尚未验证的部分。