vllm [功能]:使用load/unload API在单个GPU示例中运行多个LLMs,

f5emj3cl  于 2个月前  发布在  其他
关注(0)|答案(1)|浏览(67)

🚀 功能、动机和宣传

这个功能请求是在vLLM中添加支持负载/卸载端点/API,以便在单个GPU示例中动态加载和卸载多个LLM。此功能旨在通过允许在同一GPU上并发操作多个LLM来增强资源利用率和可扩展性。
vLLM中的负载/卸载端点促进了以下方面:

  • 增加资源利用率:使单个GPU上可以并发操作多个LLM,优化计算资源和系统效率。
  • 增强可扩展性:根据需求允许动态加载和卸载模型,适应不同的工作负载和用户要求。
  • 提高成本效益:在不进行额外硬件投资的情况下最大化吞吐量和性能,适合预算有限的组织。

替代方案

另外,提供手动模型卸载的API可以提供更精细的资源管理控制。

附加上下文

  • 在我的上下文中,主要的模型是小型LLM(<= 10B)。
  • 几位社区成员已经在vLLM中向unload modelsrelease GPU memory提出了问题。虽然存在解决方法,但它们的有效性并不一致。希望能够实现这些功能的官方支持。
nue99wik

nue99wik1#

当TP=2时,通过vllm重新加载模型可能会引入一个错误

运行时错误:无法在分叉的子进程中重新初始化CUDA。要使用CUDA与多进程一起使用,您必须使用“spawn”启动方法

相关问题