Я надеюсь, что вы можете помочь мне со следующей ошибкой. Я обучил модель и мариновал ее, чтобы сохранить в хранилище GCP. Когда я запускаю следующую функцию, она выдает мне ошибку. Заранее спасибо за совет.
Мне кажется, что это связано с .predict_proba, когда он возвращается в массив, потому что у него нет проблем при вызове .predict.
Ошибка:
File "/usr/local/lib/python3.8/site-packages/fastapi/encoders.py", line 101, in jsonable_encoder
encoded_value = jsonable_encoder(
File "/usr/local/lib/python3.8/site-packages/fastapi/encoders.py", line 151, in jsonable_encoder
raise ValueError(errors)
ValueError: [TypeError('cannot convert dictionary update sequence element #0 to a sequence'), TypeError('vars() argument must have __dict__ attribute')]
Функция:
client = storage.Client(request.GCP_Project)
bucket = client.get_bucket(request.GCP_Bucket)
blob = bucket.blob(request.GCP_Path)
model_file = BytesIO()
blob.download_to_file(model_file)
loaded_model = pickle.loads(model_file.getvalue())
request_data = {'A': [request.A],
'B': [request.B],
'C': [request.C]}
df_resp = pd.DataFrame(data=request_data)
response = loaded_model.predict_proba(df_resp)
output = {"Rating": response[0]}
return output