import spaces from transformers import pipeline as tpipeline # from optimum.pipelines import pipeline as opipeline #@spaces.GPU(duration=60) def classify(tweet, event_model, hftoken, threshold): results = {"text": None, "event": None, "score": None} # event type prediction with transformers pipeline event_predictor = tpipeline(task="text-classification", model=event_model, batch_size=512, token=hftoken, device="cpu") tokenizer_kwargs = {'padding': True, 'truncation': True, 'max_length': 512} prediction = event_predictor(tweet, **tokenizer_kwargs)[0] # with onnx pipeline # onnx_classifier = opipeline("text-classification", model=event_model, accelerator="ort", # batch_size=512, token=hftoken, device="cpu") # prediction = onnx_classifier(tweet)[0] results["text"] = tweet if prediction["label"] != "none" and round(prediction["score"], 2) <= threshold: results["event"] = "none" results["score"] = prediction["score"] else: results["event"] = prediction["label"] results["score"] = prediction["score"] return results