执行摘要
该PR修复了--enable-force-include-usage CLI标志未正确启用连续使用统计的bug,通过修改should_include_usage()函数逻辑并添加回归测试,确保服务器级覆盖始终包括连续使用统计,影响范围仅限于前端使用统计功能。
功能与动机
动机是确保当服务器启用--enable-force-include-usage标志时,响应中始终包含最终使用统计和连续使用统计,修复了原有逻辑中连续使用统计可能被stream options禁用的错误。PR body明确指出“make --enable-force-include-usage return (True, True) from should_include_usage()”以解决此问题,无需外部issue驱动。
实现拆解
- 核心逻辑变更:在
vllm/entrypoints/utils.py中,should_include_usage()函数现在当enable_force_include_usage为True时直接返回(True, True),简化了条件判断。
python
if enable_force_include_usage:
return True, True
- 测试覆盖:在
tests/entrypoints/test_utils.py中添加了参数化测试test_should_include_usage_force_enables_continuous_usage,验证在不同stream options(如None、include_usage=False等)下强制覆盖的行为。
- 测试更新:更新了
tests/entrypoints/openai/chat_completion/test_enable_force_include_usage.py中的断言,移除assert chunk.usage is None以匹配新逻辑,确保测试通过。
评论区精华
Review讨论较少,仅gemini-code-assist[bot]确认“The changes are sound and effectively resolve the issue.”,simon-mo批准无评论。无技术争议或深度讨论,变更被快速接受。
风险与影响
- 风险:变更范围小,风险低。主要风险是修改了核心函数
should_include_usage(),如果early return逻辑错误,可能影响其他stream options处理,但测试覆盖了多种场景,降低了回归风险。
- 影响:仅影响使用
--enable-force-include-usage标志的用户,确保连续使用统计正确启用,对系统其他部分无影响,属于前端行为修复。
关联脉络
PR body提及#24477添加token-details字段到连续使用统计,但本PR专注于CLI覆盖语义变更,无直接技术关联。在同仓库近期历史PR中,类似bugfix PR如#37911修复前端警告,但未修改相同文件,无其他跨PR关联脉络。
参与讨论