Spaces:
Sleeping
Sleeping
from fastapi import FastAPI, HTTPException | |
from pydantic import BaseModel | |
from typing import Dict, Any, Optional | |
from final import AIAgent | |
app = FastAPI( | |
title="Healthcare AI Assistant", | |
description="An AI-powered healthcare assistant that handles appointment booking and queries", | |
version="1.0.0" | |
) | |
# Initialize the AI agent | |
agent = AIAgent() | |
class QueryRequest(BaseModel): | |
query: str | |
language: Optional[str] = None | |
class QueryResponse(BaseModel): | |
routing_info: Dict[str, Any] | |
api_response: Dict[str, Any] | |
user_friendly_response: str | |
detected_language: str | |
sentiment: Dict[str, Any] | |
async def process_query(request: QueryRequest): | |
""" | |
Process a user query and return a response | |
""" | |
try: | |
response = agent.process_user_query(request.query) | |
return response | |
except Exception as e: | |
raise HTTPException(status_code=500, detail=str(e)) | |
async def health_check(): | |
""" | |
Health check endpoint | |
""" | |
return {"status": "healthy", "service": "healthcare-ai-assistant"} | |
async def root(): | |
return {"message": "Hello World"} | |
if __name__ == "__main__": | |
import uvicorn | |
uvicorn.run(app, host="0.0.0.0", port=8000) |