执行摘要
修复 OpenAI 工具调用流式响应中访问 prev_tool_call_arr 时的索引错误,避免崩溃。
PR body 引用 Issue #37937 和 #36849 以修复 IndexError。Issue 评论中 sfeng33 指出错误发生在流式路径(serving.py:1133),而 extract_tool_calls() 从未被调用,作者随后在流式路径中添加了处理(如 issue 评论中作者回应“I’ve added handling for the stream as well”)。
建议工程师精读此 PR 以理解流式处理中工具调用的状态管理逻辑,关注 auto_tool_called 变量的引入和条件检查的调整,这有助于避免类似索引错误;同时注意 review 中提到的死代码问题,可作为代码优化参考。
review 中,gemini-code-assist[bot] 指出 openai_tool_parser.py 中的修改可能是死代码,因为 prev_tool_call_arr 主要在流式路径使用,作者未移除该代码。在 issue 评论中,sfeng33 提醒 bug 位于流式路径,作者确认并添加处理。最终,审核者如 yanghui1-arch 和 DarkLight1337 批准了 PR,讨论聚焦于正确性和代码清理。
参与讨论