Можем ли мы использовать модели Pydantic (BaseModel) непосредственно внутри model.predict() с использованием FastAPI, а ⇐ Python
Можем ли мы использовать модели Pydantic (BaseModel) непосредственно внутри model.predict() с использованием FastAPI, а
Я использую модель Pydantic (Basemodel) с FastAPI и конвертирую входные данные в словарь, а затем конвертирую их в Pandas DataFrame чтобы передать его в функцию model.predict() для прогнозов машинного обучения, как показано ниже:
из импорта FastAPI FastAPI импортный увикорн из pydantic импорта BaseModel импортировать панд как pd от ввода списка импорта Входные данные класса (BaseModel): f1: плавать, f2: плавать, f3: ул @app.post('/predict') def предсказать (функции: Список [Входные данные]): вывод = [] # зацикливаем список входных объектов для данных в функциях: результат = {} # Конвертируем данные в dict(), а затем в DataFrame данные = данные.дикт() df = pd.DataFrame([данные]) # получить прогнозы предсказание = classifier.predict(df)[0] # получить вероятность вероятность = classifier.predict_proba(df).max() # присваиваем словарю результат["прогноз"] = прогноз результат["вероятность"] = вероятность # добавляем словарь в список (много выходных данных) вывод.append(результат) обратный вывод Он работает нормально, я просто не совсем уверен, оптимизирован ли или правильный ли способ это сделать, поскольку я конвертирую входные данные два раза, чтобы получить прогнозы. Кроме того, я не уверен, будет ли он работать быстро в случае огромного количества входных данных. Есть ли улучшения в этом отношении? Если есть способ (даже помимо использования моделей Pydantic), с помощью которого я могу работать напрямую, избегая преобразований и цикла.
Я использую модель Pydantic (Basemodel) с FastAPI и конвертирую входные данные в словарь, а затем конвертирую их в Pandas DataFrame чтобы передать его в функцию model.predict() для прогнозов машинного обучения, как показано ниже:
из импорта FastAPI FastAPI импортный увикорн из pydantic импорта BaseModel импортировать панд как pd от ввода списка импорта Входные данные класса (BaseModel): f1: плавать, f2: плавать, f3: ул @app.post('/predict') def предсказать (функции: Список [Входные данные]): вывод = [] # зацикливаем список входных объектов для данных в функциях: результат = {} # Конвертируем данные в dict(), а затем в DataFrame данные = данные.дикт() df = pd.DataFrame([данные]) # получить прогнозы предсказание = classifier.predict(df)[0] # получить вероятность вероятность = classifier.predict_proba(df).max() # присваиваем словарю результат["прогноз"] = прогноз результат["вероятность"] = вероятность # добавляем словарь в список (много выходных данных) вывод.append(результат) обратный вывод Он работает нормально, я просто не совсем уверен, оптимизирован ли или правильный ли способ это сделать, поскольку я конвертирую входные данные два раза, чтобы получить прогнозы. Кроме того, я не уверен, будет ли он работать быстро в случае огромного количества входных данных. Есть ли улучшения в этом отношении? Если есть способ (даже помимо использования моделей Pydantic), с помощью которого я могу работать напрямую, избегая преобразований и цикла.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как загрузить файлы и список словарей, используя BaseModel Pydantic в FastAPI?
Anonymous » » в форуме Python - 0 Ответы
- 55 Просмотры
-
Последнее сообщение Anonymous
-