Spaces:
Sleeping
Sleeping
File size: 1,270 Bytes
911d300 40b1f16 911d300 40b1f16 5cb9852 a07193f 911d300 78cb0b1 911d300 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
from fastapi import FastAPI
import models
from schema import Prediction
from sentence_transformers import util
app = FastAPI()
@app.get("/")
def home_page():
return {"Home": "Welcome to prediction hub"}
@app.get("/embeddings")
def display_embedding(message : str = "Hello guys enter a text to get embeddings"):
try:
embedding = models.get_embedding(message)
dimension = len(embedding)
return {"Dimension" : {dimension : embedding.tolist()}}
except Exception as e:
return {f"Unable to fetch the embeddings. Error :{e}" }
@app.post("/prediction")
def display_prediction(prediction : Prediction):
message = prediction.message
embedding = models.get_embedding([message])
loaded_model = models.load_model('log_reg_model.pkl')
result = loaded_model.predict(embedding).tolist()
return {"Prediction": f"{message} is a {result}"}
@app.post("/cosine_similarity")
def display_cosine_similarity(prediction : Prediction):
message = prediction.message
message_1 = prediction.message_1
embendding = models.get_embedding([message,message_1])
similarity = util.cos_sim(embendding[0], embendding[1]).item()
return {f"Cosine Similarity between {message} and {message_1} is" : round(similarity, 4)}
|