【发布时间】:2021-11-28 06:57:53
【问题描述】:
我是 FastAPI/模型部署的新手,我设法创建了一个模型,该模型可以使用本地服务器/笔记本电脑中的 FastAPI 文档路径返回结果。
我的问题是,我如何在 jupyter notebook 中访问这个模型?
尝试关联其他 API 请求,例如 Foursquare API。如何包装 params 字典
尝试了以下方法,但它不起作用
import requests
url = 'http://127.0.0.1:8000/predict'
params = { 'title' : ['Product Operations Software Engineer (DevOps / SRE)']}
result = requests.post(url, params)
<Response [422]>
result.text
'{"detail":[{"loc":["body"],"msg":"value is not a valid dict","type":"type_error.dict"}]}'
我的代码
from fastapi import FastAPI
import numpy as np
import dill
import pandas as pd
import uvicorn
import re
from pydantic import BaseModel
app = FastAPI()
class JobTitle(BaseModel):
title: list
#load model
with open("logisticmodel", "rb") as to_load:
logistic_model = dill.load(to_load)
@app.get("/")
def home():
return 'welcome'
@app.post("/predict")
def predict(request: JobTitle):
X = pd.Series(request.title)
result = logistic_model.predict(X)
return {'Type' : list(result) }
【问题讨论】:
-
您的服务器在另一台设备上吗?然后,AFAIK,您不能使用
http://127.0.0.1来引用它。您必须使用外部 IP 或本地网络 IP(如果连接到同一网络)。