我的功能如下:
@celery.task(name='large_task')
def large_task(self, user_info, data):
# 1. long time to load model based on user information
custom = custom_Class(user_info)
# 2. apply custom_function
results = custom.apply(data)
return results
自定义类加载一个大型神经网络(> 500 mb),其尺寸基于用户的输入。还可以根据用户提供的信息进行微调(10秒)。因此,每个神经网络都是唯一的。因此,不可能仅在芹菜工作者开始时就对其进行预加载,而且它太大而无法序列化并每次都存储在redis上。 目标是初始化和微调神经网络,并将其应用于稍后的时间点以输入数据,这也取决于用户的选择。芹菜任务是通过来自烧瓶的发布请求激活的。