Я создал простую модель Keras и внедрил ее в API с помощью Flask, к сожалению, я получаю сообщение об ошибке, показанное ниже:
C:\Users\callu\OneDrive\Documents\Keras>curl -d "{"9","7","9","5","7","6","0","4","6","0","4","7","0","7"}" -H "Content-Type: application/json" -X POST http://localhost:5000
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>400 Bad Request</title>
<h1>Bad Request</h1>
<p>Failed to decode JSON object: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)</p>
Я попытался отключить упорядочение данных с помощью "или", но мне не повезло (я не эксперт в JSON, поэтому слежу за онлайн-уроками)
Вот команда curl:
curl -d "{"9","7","9","5","7","6","0","4","6","0","4","7","0","7"}" -H "Content-Type: application/json" -X POST http://localhost:5000
pause
А вот код Python:
from math import expm1
import joblib
import numpy as np
from flask import Flask, jsonify, request
from tensorflow import keras
from keras.models import load_model
from keras.models import model_from_json
import pandas as pd
app = Flask(__name__)
app.config["DEBUG"] = True
json_file = open('CatModel1.json', 'r')
loaded_model_json = json_file.read()
json_file.close()
loaded_model = model_from_json(loaded_model_json)
# load weights into new model
loaded_model.load_weights("CatModel1.h5")
print("Model Loaded")
@app.route("/", methods=["POST"])
def index():
input = request.json
prediction = loaded_model.predict(input)
return jsonify({"Taste": str(df)})
app.run()