Machine learning 如何预下载变压器模型

Machine learning 如何预下载变压器模型,machine-learning,flask,amazon-elastic-beanstalk,transformer,huggingface-transformers,Machine Learning,Flask,Amazon Elastic Beanstalk,Transformer,Huggingface Transformers,我想在flask应用程序中执行文本生成任务,并将其托管在web服务器上。但是,当下载GPT模型时,elastic beanstalk管理的EC2实例会崩溃,因为下载需要太多的时间和内存 from transformers.tokenization_openai import OpenAIGPTTokenizer from transformers.modeling_tf_openai import TFOpenAIGPTLMHeadModel model = TFOpenAIGPTLMHeadM

我想在flask应用程序中执行文本生成任务,并将其托管在web服务器上。但是,当下载GPT模型时,elastic beanstalk管理的EC2实例会崩溃,因为下载需要太多的时间和内存

from transformers.tokenization_openai import OpenAIGPTTokenizer
from transformers.modeling_tf_openai import TFOpenAIGPTLMHeadModel
model = TFOpenAIGPTLMHeadModel.from_pretrained("openai-gpt")
tokenizer = OpenAIGPTTokenizer.from_pretrained("openai-gpt")
这些是引起问题的线路。GPT约为445MB。我正在使用变形金刚图书馆。我不想在这一行下载模型,而是想知道是否可以对模型进行pickle处理,然后将其打包为存储库的一部分。这个图书馆有可能吗?否则,如何预加载此模型以避免出现问题?

方法1:

从以下链接下载模型:

pytorch型号:

张量流模型:

配置文件:

资料来源:

您可以手动下载案例TensorFlow model.h5中的模型和config.json文件,将其放入存储库中的一个文件夹(比如模型)中。您可以尝试压缩模型,然后在需要时将其解压缩到ec2实例中

然后,您可以直接从路径加载web服务器中的模型,而不是下载包含.h5和config.json的模型文件夹:

方法2:

您可以使用传统方法在本地计算机上下载模型,而不是使用链接进行下载

from transformers.tokenization_openai import OpenAIGPTTokenizer
from transformers.modeling_tf_openai import TFOpenAIGPTLMHeadModel
model = TFOpenAIGPTLMHeadModel.from_pretrained("openai-gpt")
tokenizer = OpenAIGPTTokenizer.from_pretrained("openai-gpt")
这将下载模型。现在,您可以使用save_pretrained函数将权重保存在文件夹中

model.save_pretrained'/content/'保存在内容文件夹中

现在,内容文件夹应该包含一个.h5文件和一个config.json

只需将它们上载到存储库并从中加载即可。

方法1:

从以下链接下载模型:

pytorch型号:

张量流模型:

配置文件:

资料来源:

您可以手动下载案例TensorFlow model.h5中的模型和config.json文件,将其放入存储库中的一个文件夹(比如模型)中。您可以尝试压缩模型,然后在需要时将其解压缩到ec2实例中

然后,您可以直接从路径加载web服务器中的模型,而不是下载包含.h5和config.json的模型文件夹:

方法2:

您可以使用传统方法在本地计算机上下载模型,而不是使用链接进行下载

from transformers.tokenization_openai import OpenAIGPTTokenizer
from transformers.modeling_tf_openai import TFOpenAIGPTLMHeadModel
model = TFOpenAIGPTLMHeadModel.from_pretrained("openai-gpt")
tokenizer = OpenAIGPTTokenizer.from_pretrained("openai-gpt")
这将下载模型。现在,您可以使用save_pretrained函数将权重保存在文件夹中

model.save_pretrained'/content/'保存在内容文件夹中

现在,内容文件夹应该包含一个.h5文件和一个config.json

只需将它们上传到存储库并从中加载。

打开并搜索所需的模型。单击模型名称,最后单击列出模型中的所有文件。您将获得可下载文件的列表。

打开并搜索所需型号。单击模型名称,最后单击列出模型中的所有文件。您将获得可下载文件的列表