Spaces:
Sleeping
Sleeping
| from slowapi import Limiter | |
| from config import ACCESS_RATE | |
| from .controller import handle_file_sentence, handle_sentence_level_analysis, nepali_text_analysis | |
| from .inferencer import classify_text | |
| from fastapi import APIRouter, File, Request, Depends, HTTPException, UploadFile | |
| from fastapi.security import HTTPBearer | |
| from slowapi import Limiter | |
| from slowapi.util import get_remote_address | |
| from pydantic import BaseModel | |
| from .controller import handle_file_upload | |
| router = APIRouter() | |
| limiter = Limiter(key_func=get_remote_address) | |
| security = HTTPBearer() | |
| # Input schema | |
| class TextInput(BaseModel): | |
| text: str | |
| async def analyse(request: Request, data: TextInput, token: str = Depends(security)): | |
| result = classify_text(data.text) | |
| return result | |
| async def upload_file(request:Request,file:UploadFile=File(...),token:str=Depends(security)): | |
| return await handle_file_upload(file) | |
| async def upload_file(request:Request,data:TextInput,token:str=Depends(security)): | |
| return await handle_sentence_level_analysis(data.text) | |
| async def analyze_sentance_file(request: Request, file: UploadFile = File(...), token: str = Depends(security)): | |
| return await handle_file_sentence(file) | |
| def health(request: Request): | |
| return {"status": "ok"} | |