Qwen
Qwen copied to clipboard
[BUG] <title>本地部署千问模型,推理时显存叠加且不释放问题
是否已有关于该错误的issue或讨论? | Is there an existing issue / discussion for this?
- [X] 我已经搜索过已有的issues和讨论 | I have searched the existing issues / discussions
该问题是否在FAQ中有解答? | Is there an existing answer for this in FAQ?
- [X] 我已经搜索过FAQ | I have searched FAQ
当前行为 | Current Behavior
私有化部署qwen-14b-chat模型,进行推理问答。输入长度为7k-8k token的文本作为上下文进行推理,显存会激增且在推理结束后显存不会释放。首次用7k-8k的文本作为上下文进行推理时可能正常输出,但在进行2-3次问答之后模型就不输出啦!!
刚部署时显存占用情况:
推理1次后显存占用情况:
期望行为 | Expected Behavior
qwen模型在推理结束后,是否可以进行显存释放?类比chatglm3-6b模型在本地部署后就会进行显存释放,不会存在显存一直叠加不释放问题。
复现方法 | Steps To Reproduce
No response
运行环境 | Environment
- OS: CentOS Linux release 7.9.2009 (Core)
- Python: 3.10
- Transformers: 4.32.0
- PyTorch: 2.0
- CUDA (`python -c 'import torch; print(torch.version.cuda)'`): 12.0
备注 | Anything else?
No response
怎么部署的呢?web_demo/cli_demo/openai_api/fastchat+vllm?确认下对话历史里别把好几轮的7k-8k的都放进去了。
怎么部署的呢?web_demo/cli_demo/openai_api/fastchat+vllm?确认下对话历史里别把好几轮的7k-8k的都放进去了。
我使用的是openai_api的方式进行部署的,然后我使用了torch.cuda.empty_cache()也并不能清除显存,问几个问题,显存很快就满了,请问该怎么修改呢?
用类似cli_demo的方式部署的,是分几次用大约7-8k的上下文带着对应的问题去问的模型,第一、二次还能输出,到后面显存占满之后,再输入长上下文就不输出了。因为是通过fastapi的方式做成接口提供推理能力,发现同时做一个接口,使用torch.cuda.empty_cache()清理一下显存就可以继续推理了。 @jklj077
怎么部署的呢?web_demo/cli_demo/openai_api/fastchat+vllm?确认下对话历史里别把好几轮的7k-8k的都放进去了。
本repo的cli_demo/web_demo/openai_api是会在每次对话/请求处理结束后清理pytorch的cache的,不用单独写torch.cuda.empty_cache()。
多轮对话情况(≠多次单轮对话)下显存增加是正常现象。
其它情况请提供复现方法。