text-generation-inference 文本生成基准忽略了--max-batch-prefill-tokens,这可能导致意外的OOM,

wpcxdonn  于 6个月前  发布在  其他
关注(0)|答案(3)|浏览(144)

系统信息

信息

  • Docker
  • CLI直接使用

任务

  • 一个官方支持的命令
  • 我自己的修改

重现(优先级较低)

如标题所述,根据我的经验,text-generation-launcher会忽略--max-batch-prefill-tokens(默认为4096),并且由于这个原因可能会发生OOM,因为CacheManager然后用太多的数据块进行初始化(
text-generation-inference/server/text_generation_server/models/flash_causal_lm.py
第703行 in 3c02262
| | set_cache_manager( |
),留下不足以运行的前向计算内存。
如果text-generation-benchmark被用于比text-generation-launcher中指定的更多的令牌,我们可能会优雅地引发错误。

预期行为

没有OOM,而是会有明确的错误信息

djp7away

djp7away1#

由设计意图决定。它绕过路由器,以非常精确的方式控制实际运行的计算。
只有路由器知道输入限制,Python后端不进行任何清理。
当然,当你遇到它时会很不方便。

ny6fqffe

ny6fqffe2#

我认为显而易见的解决方案是允许启动器在没有路由器的情况下运行,然后让基准测试者自行调用预热。
我将进行一次PR。

oknrviil

oknrviil3#

为什么需要关闭路由器?

相关问题