Я создаю предсказатель теста Flask, используя AllenNLP.
Я передаю предсказателю «переход» и «вопрос» из файла .json.
Однако, когда я передаю файл json с помощью curl, он не возвращает ответ. Есть ли во Flask специальный возврат за его получение?
Код выглядит так:
from allennlp.predictors.predictor import Predictor as AllenNLPPredictor
from flask import Flask
from flask import request
app = Flask(__name__)
@app.route("/", methods=['GET','POST'])
def hello():
return "<h1>Test app!</h1>"
class PythonPredictor:
def __init__(self, config):
self.predictor = AllenNLPPredictor.from_path(
"https://storage.googleapis.com/allennlp-public-models/bidaf-elmo-model-2018.11.30-charpad.tar.gz"
)
def predict(self, payload):
if request.method == "POST":
prediction = self.predictor.predict(
passage=payload["passage"], question=payload["question"]
)
return prediction["best_span_str"]
Команда curl выглядит так: curl http://127.0.0.1:5000 -X POST -H "Content-Type : application / json "-d @ sample.json
http://127.0.0.1:5000/predict
- person v25   schedule 02.04.2020