Maison >développement back-end >Tutoriel Python >Comment utiliser des modèles d'apprentissage automatique pour la prédiction de données dans FastAPI
Comment utiliser des modèles d'apprentissage automatique pour la prédiction de données dans FastAPI
Introduction :
Avec le développement de l'apprentissage automatique, de plus en plus de scénarios d'application nécessitent l'intégration de modèles d'apprentissage automatique dans des systèmes réels. FastAPI est un framework Web Python hautes performances basé sur un framework de programmation asynchrone. Il fournit une méthode de développement d'API simple et facile à utiliser et est très adapté à la création de services de prédiction d'apprentissage automatique. Cet article explique comment utiliser les modèles d'apprentissage automatique pour la prédiction de données dans FastAPI et fournit des exemples de code pertinents.
Première partie : Préparation
Avant de commencer, nous devons terminer quelques préparatifs.
pip install fastapi pip install uvicorn pip install scikit-learn
from sklearn.linear_model import LinearRegression import numpy as np # 构建模型 model = LinearRegression() # 准备训练数据 X_train = np.array(...).reshape(-1, 1) # 输入特征 y_train = np.array(...) # 目标变量 # 训练模型 model.fit(X_train, y_train)
Partie 2 : Création de l'application FastAPI
Une fois les préparatifs terminés, nous pouvons commencer à créer l'application FastAPI.
from fastapi import FastAPI from pydantic import BaseModel # 导入模型 from sklearn.linear_model import LinearRegression
class InputData(BaseModel): input_value: float class OutputData(BaseModel): output_value: float
app = FastAPI()
POST
pour gérer la demande de prédiction de données et utiliserons InputData
comme données d'entrée de la demande. POST
方法来处理数据预测请求,并将InputData
作为请求的输入数据。@app.post('/predict') async def predict(input_data: InputData): # 调用模型进行预测 input_value = input_data.input_value output_value = model.predict([[input_value]]) # 构造输出数据 output_data = OutputData(output_value=output_value[0]) return output_data
第三部分:运行FastAPI应用
在完成FastAPI应用的构建后,我们可以运行应用,并测试数据预测的功能。
uvicorn main:app --reload
POST
请求到http://localhost:8000/predict
,并在请求体中传递一个input_value
{ "input_value": 5.0 }
Après avoir terminé la construction de l'application FastAPI, nous pouvons exécuter l'application et tester la fonction de prédiction des données.
{ "output_value": 10.0 }
Initiez une demande de prédiction de données
POST
à http://localhost:8000/predict
et incluez dans le corps de la requête. Passez un paramètre input_value
.
Par exemple, l'envoi du corps de requête suivant :
from fastapi import FastAPI from pydantic import BaseModel from sklearn.linear_model import LinearRegression import numpy as np # 创建模型和训练数据 model = LinearRegression() X_train = np.array([1, 2, 3, 4, 5]).reshape(-1, 1) y_train = np.array([2, 4, 6, 8, 10]) model.fit(X_train, y_train) # 定义输入输出数据模型 class InputData(BaseModel): input_value: float class OutputData(BaseModel): output_value: float # 创建FastAPI应用实例 app = FastAPI() # 定义数据预测的路由 @app.post('/predict') async def predict(input_data: InputData): input_value = input_data.input_value output_value = model.predict([[input_value]]) output_data = OutputData(output_value=output_value[0]) return output_data🎜🎜Afficher les résultats de la prédiction🎜 devrait recevoir une réponse contenant les résultats de la prédiction. 🎜🎜rrreee🎜Conclusion : 🎜Cet article explique comment utiliser des modèles d'apprentissage automatique dans FastAPI pour la prédiction de données. En suivant les conseils de cet article, vous pouvez facilement intégrer votre propre modèle d'apprentissage automatique dans votre application FastAPI et fournir des services de prédiction. 🎜🎜Exemple de code : 🎜rrreee🎜J'espère que grâce à l'introduction et à l'exemple de code de cet article, vous pourrez utiliser avec succès des modèles d'apprentissage automatique pour la prédiction de données dans FastAPI. Je vous souhaite du succès ! 🎜
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!