先这样答
设计这个系统需要先向面试官明确请求量级与延迟要求,随后采用分层架构来实现。系统分为意图路由层、工具层和生成层。意图路由层负责判断用户诉求。它将请求分发到闲聊、工单操作或知识库问答三个分支。工具层执行具体任务。它包含调用工单系统的API和执行RAG检索。生成层负责整合所有信息。大模型在这里生成最终回答。回答必须附带知识库或工单的引用来源。
工程实现必须解决混合路由与限流两个约束问题。混合路由用于控制计算成本与响应延迟。系统用规则或小模型处理简单的闲聊与高频常规问题。复杂逻辑和长文本理解交由大模型处理。限流机制保护后端系统。工单系统API的QPS通常有限。Agent需要实现请求队列排队。当流量超载时,系统执行降级策略。
异常处理决定系统的可用性。工具调用超时后,Agent需要执行重试机制。重试失败时,系统降级提供只读数据。如果用户意图模糊,Agent必须向用户发起澄清提问。如果工具返回错误,Agent也要向用户说明情况。这能避免大模型产生幻觉。
面试官会怎么追问
-
「混合路由具体怎么切分大小模型?」 系统先通过规则或本地小模型做意图分类。闲聊和简单查询直接由小模型生成回复。遇到需要多步推理或调用复杂工单API的请求,路由模块将其转发给大模型。
-
「工单系统API限流触发时,排队与降级怎么做?」 Agent拦截请求并放入队列。前端界面同步显示排队等待状态。如果等待时间超过设定阈值,Agent直接返回当前工单的只读缓存状态。系统同时提示用户稍后重试写入操作。
-
「工具调用失败或超时,怎么向用户澄清?」 Agent捕获工具层的具体错误码。大模型根据错误类型生成追问话术。API提示缺少参数时,Agent直接询问用户缺失的具体字段信息。系统不直接抛出代码级报错。
回答的坑
上来直接画调用流程,忘记和面试官对齐系统的并发量级与延迟指标。
只讲正常交互的理想链路,忽略后端API限流和工具调用超时的异常处理。
同系列的题