首页 > 解决方案 > 如何去除 GPU 内存中的变压器模型

问题描述

from transformers import CTRLTokenizer, TFCTRLLMHeadModel
tokenizer_ctrl = CTRLTokenizer.from_pretrained('ctrl', cache_dir='./cache', local_files_only=True)
model_ctrl = TFCTRLLMHeadModel.from_pretrained('ctrl', cache_dir='./cache', local_files_only=True)
print(tokenizer_ctrl)
gen_nlp  = pipeline("text-generation", model=model_ctrl, tokenizer=tokenizer_ctrl, device=1, return_full_text=False)

你好,我的代码可以将transformer模型,例如这里的CTRL,加载到gpu内存中。如何在使用后将其从 GPU 中删除,以释放更多的 gpu 内存?

显示我使用torch.cuda.empty_cache()

谢谢。

标签: pytorchhuggingface-transformers

解决方案


您可以简单地del tokenizer_ctrl然后使用torch.cuda.empty_cache().

请参阅 pytorch 论坛中讨论它的这个线程


推荐阅读