我是个新手,目前正在为我的最后一个项目工作。我在youtube上看了一段视频,教我如何用google的帕伽索斯库编写抽象文本摘要。,它工作得很好,但我需要它更有效率。
这是密码
from transformers import PegasusForConditionalGeneration, PegasusTokenizer
tokenizer = PegasusTokenizer.from_pretrained("google/pegasus-xsum")
model = PegasusForConditionalGeneration.from_pretrained("google/pegasus-xsum")每次我运行这段代码时,它总是下载大约2.2gb.大小的"Google Pegasus xsum“库。
下面是笔记本中的代码示例:https://github.com/nicknochnack/PegasusSummarization/blob/main/Pegasus%20Tutorial.ipynb
它将运行下载库,如下图所示:

有没有办法先下载库,然后在本地保存它,每次我运行代码时,它都会在本地调用库吗?
类似于缓存或在本地保存库?
谢谢。
发布于 2022-05-15 12:14:51
Mac
使用检查,您可以很容易地找到和定位模块。
import inspect
from transformers import PegasusForConditionalGeneration, PegasusTokenizer
tokenizer = PegasusTokenizer.from_pretrained("google/pegasus-xsum")
model = PegasusForConditionalGeneration.from_pretrained("google/pegasus-xsum")
print(inspect.getfile(PegasusForConditionalGeneration))
print(inspect.getfile(PegasusTokenizer))你会找到他们的路
/usr/local/lib/python3.9/site-packages/transformers/models/pegasus/modeling_pegasus.py
/usr/local/lib/python3.9/site-packages/transformers/models/pegasus/tokenization_pegasus.py现在,如果您查看tokenization_pegasus.py文件中的内容,您将注意到google/pegasus-xsum的模型可能是由下面的行获取的
PRETRAINED_VOCAB_FILES_MAP = {
"vocab_file": {"google/pegasus-xsum": "https://huggingface.co/google/pegasus-xsum/resolve/main/spiece.model"}
}如果你打开这里:
https://huggingface.co/google/pegasus-xsum/resolve/main/spiece.model
您将直接将模型下载到您的机器上。
更新
在Google上搜索了一段时间后,我发现了一些重要的内容,您可以通过以下方式将使用过的模型及其所有相关文件下载到您的工作目录中
tokenizer.save_pretrained("local_pegasus-xsum_tokenizer")
model.save_pretrained("local_pegasus-xsum_tokenizer_model")参考文献:https://github.com/huggingface/transformers/issues/14561
这样,在运行它之后,您将看到以下内容自动保存在您的工作目录中。所以,现在你可以直接给模特打电话了,但你需要找出.

另外,您希望在本地了解其路径的12.2GB文件位于这里
https://huggingface.co/google/pegasus-xsum/tree/main
从屏幕截图中可以看到,将模型下载到您的目录后,它的名称是pytorch_model.bin,因为它是在线命名的。
https://stackoverflow.com/questions/72247682
复制相似问题