Spaces:
Sleeping
Sleeping
| from fastapi import FastAPI | |
| from pydantic import BaseModel | |
| from fastapi.middleware.cors import CORSMiddleware | |
| from services.predictor import predict_intent | |
| from services.keyword import keyword_correction | |
| from services.response import generate_response | |
| app = FastAPI() | |
| app.add_middleware( | |
| CORSMiddleware, | |
| allow_origins=["*"], | |
| allow_credentials=True, | |
| allow_methods=["*"], | |
| allow_headers=["*"], | |
| ) | |
| class QueryRequest(BaseModel): | |
| text: str | |
| def root(): | |
| return {"message": "Land Registry Chatbot API is running 🚀"} | |
| def predict(request: QueryRequest): | |
| intent, confidence, probabilities = predict_intent(request.text) | |
| corrected_intent = keyword_correction(request.text, intent) | |
| response = generate_response(corrected_intent, request.text) | |
| return { | |
| "query": request.text, | |
| "predicted_intent": corrected_intent, | |
| "confidence": round(confidence, 3), | |
| "response": response, | |
| "probabilities": probabilities.tolist() | |
| } | |