heroku上celery /redis任务的bert(蒸馏)模型应用

kdfy810k  于 2021-06-08  发布在  Redis
关注(0)|答案(0)|浏览(720)

我正在使用一个抽象的bert模型来进行问答
https://huggingface.co/distilbert-base-cased-distilled-squad
在本地,这一切都工作得很好,但是在我的celery 任务中尝试使用该模型时,工作线程日志显示
2020-09-24t03:50:05.794556+00:00应用程序[工人1]:72%|███████▏ | 187m/261m[00:14<00:04,15.5mb/s]2020-09-24t03:50:19.779019+00:00 heroku[worker.1]:进程运行mem=652m(123.2%)2020-09-24t03:50:19.781651+00:00 heroku[worker.1]:错误r14(超出内存配额)
下面的代码是我导入、加载模型和执行任务的地方。删除导入和加载可以解决内存问题。

from transformers import AutoTokenizer, AutoModelForQuestionAnswering
import torch

tokenizer = AutoTokenizer.from_pretrained("distilbert-base-cased-distilled-squad")
model = AutoModelForQuestionAnswering.from_pretrained("distilbert-base-cased-distilled-squad")
@app.task
def evaluateQuestionAnswer():

我想知道我是否需要像tensorflow这样的服务
https://www.tensorflow.org/tfx/guide/serving
或者我是不是错过了制作模型的准备工作?
使用docker可以缓解这个加载问题吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题