我在本地主机上使用 Celery + Redis 和 Django Rest API 来运行分类任务,如何从 Axios 帖子获取数据。现在我正在尝试将其部署到谷歌云,并且我没有找到在App Engine上运行Redis和Celery的明确方法,所以我听说了Google任务队列,但我没有找到将其添加到视图和触发器的方法当视图被调用时,我如何创建一个函数来调用我在 celery 上的这个谷歌云任务,或者只是知道如何做到这一点,这些是我的代码:
from celery import shared_task
from celery_progress.backend import ProgressRecorder
from snakeimage.models import Prediction,UploadedSnake,SnakeClass
from snakeimage.classification_codes.classification_codes.prediction_func import predict_classes
#import json
#import time
#from django.conf import settings
#from google.cloud import tasks_v2beta3
#from google.protobuf import timestamp_pb2
@shared_task(bind=True)
def image_progress(self,image_path, X, Y, metadata,image_id):
progress_recorder = ProgressRecorder(self,)
predictions = predict_classes(image_path, X, Y, metadata)
print(predictions)
for prediction in predictions:
print(prediction[0])
image = UploadedSnake.objects.get(id=image_id)
class_name = SnakeClass.objects.get(index=(prediction[0]+1))
print('>>>>>>>>>>>>>>>>>>>>>',prediction[1])
Prediction.objects.create(image=image,class_name=class_name,predict_percent=prediction[1])
progress_recorder.set_progress( 1, 3, description='Prediction Result …Run Code Online (Sandbox Code Playgroud) google-app-engine django-views celery django-celery google-cloud-tasks