我使用 pycaret 作为我的 ML 工作流程,我尝试使用 FastAPI 创建一个 API。这是我第一次进入生产级别,所以我对 API 有点困惑
我有 10 个特征;年龄:float,live_province:str,live_city:str,live_area_big:str,live_area_small:str,sex:float,marital:float,bank:str,salary:float,amount:float和一个标签,其中包含二进制值(0和 1)。
这就是我构建 API 的脚本
from pydantic import BaseModel
import numpy as np
from pycaret.classification import *
import uvicorn
from fastapi import FastAPI
app = FastAPI()
model = load_model('catboost_cm_creditable')
class Data(BaseModel):
age: float
live_province: str
live_city: str
live_area_big: str
live_area_small: str
sex: float
marital: float
bank: str
salary: float
amount: float
input_dict = Data
@app.post("/predict")
def predict(model, input_dict):
predictions_df = predict_model(estimator=model, data=input_dict)
predictions = predictions_df['Score'][0]
return predictions
当我尝试运行uvicorn script:app
并转到文档时,我找不到我的功能的参数,参数只显示模型和 input_dict
如何将我的功能带到 API 中的参数上?