Hogwarts测试开发
06-30·北京测吧员工
字节面试题:ReAct 的工作原理(八)
十五、一个高质量 ReAct Agent 应该怎么设计?如果面试官继续追问:如果让你实现一个 ReAct Agent,你会重点关注什么?可以从下面几个方面回答。1. 工具定义要清晰工具描述越清楚,模型越容易选对。不要给模型一个“万能工具”。比如:{  "name": "query_test_report",  "description": "查询指定项目在指定时间范围内的自动化测试报告",  "params": {    "project": "string",    "start_time": "string",    "end_time": "string"  }}这个工具的边界很清楚:只能查测试报告,不能查日志,也不能修改数据。2. 工具权限要分级不同工具的风险等级不一样。查询日志和删除数据,绝对不能放在同一个权限级别。可以这样设计:3. 执行轮次要限制ReAct 不是越多轮越好。轮次越多,成本越高,延迟越高,失控风险也越大。所以要限制:最大推理轮次最大工具调用次数最大 Token 消耗最大任务执行时间最大重试次数4. 工具返回要结构化工具最好返回结构化结果,而不是一大段自然语言。比如:{  "result": "failed",  "reason": "database connection timeout",  "affected_cases": 23,  "suggestion": "check database connection pool and recent deployment"}结构化结果更容易被模型继续使用。5. 过程必须可观测Agent 系统一旦上线,必须能追踪过程。否则出问题时根本不知道它为什么这么做。至少要记录:用户原始输入每一轮模型决策调用了哪个工具工具参数是什么工具返回结果是什么是否重试是否触发人工确认最终答案依据是什么没有可观测性,Agent 很难进生产环境。十六、面试标准答案:ReAct 工作原理是什么?如果面试官直接问:ReAct 的工作原理是什么?
发布于 北京
分享
评论
未登录
友善发言
image-upload
评论
加载中