Jakaria commited on
Commit
a5749f2
·
1 Parent(s): 34e5a0f

Add Bangla model API

Browse files
Files changed (1) hide show
  1. app.py +9 -6
app.py CHANGED
@@ -1,22 +1,25 @@
1
  from fastapi import FastAPI
 
2
  import joblib
3
 
4
  app = FastAPI()
5
 
6
- # Load your model, vectorizer, label encoder
 
 
 
7
  model = joblib.load("bangla_model.pkl")
8
  vectorizer = joblib.load("bangla_vectorizer.pkl")
9
  label_encoder = joblib.load("bangla_label_encoder.pkl")
10
 
11
- # Root route to avoid 404
12
  @app.get("/")
13
  def root():
14
  return {"message": "Bangla model API is running!"}
15
 
16
- # Example predict endpoint
17
  @app.post("/predict")
18
- def predict(text: str):
19
- vect = vectorizer.transform([text])
20
  pred = model.predict(vect)
21
  label = label_encoder.inverse_transform(pred)
22
- return {"prediction": label[0]}
 
 
1
  from fastapi import FastAPI
2
+ from pydantic import BaseModel
3
  import joblib
4
 
5
  app = FastAPI()
6
 
7
+ class PredictRequest(BaseModel):
8
+ text: str
9
+
10
+ # Load models
11
  model = joblib.load("bangla_model.pkl")
12
  vectorizer = joblib.load("bangla_vectorizer.pkl")
13
  label_encoder = joblib.load("bangla_label_encoder.pkl")
14
 
 
15
  @app.get("/")
16
  def root():
17
  return {"message": "Bangla model API is running!"}
18
 
 
19
  @app.post("/predict")
20
+ def predict(request: PredictRequest):
21
+ vect = vectorizer.transform([request.text])
22
  pred = model.predict(vect)
23
  label = label_encoder.inverse_transform(pred)
24
+ # Convert numpy type to Python native type
25
+ return {"prediction": str(label[0])}