File size: 858 Bytes
5e41fb6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
from fastapi import FastAPI
from fastapi.responses import HTMLResponse, PlainTextResponse
from fastapi.staticfiles import StaticFiles
from models.request_models import AskRequest
#from services.openai_assistant import OpenAIAssistantService
from services.ai_assistant import HuggingFaceAssistantService
from fastapi.responses import JSONResponse

app = FastAPI()

# Mount static files (UI assets from Java project)
app.mount("/static", StaticFiles(directory="static"), name="static")

# Service instance
assistant_service = HuggingFaceAssistantService()


@app.post("/ask")
async def ask(request: AskRequest):
    result = await assistant_service.ask(request.question, request.model)
    return JSONResponse(content=result)

@app.get("/", response_class=HTMLResponse)
async def serve_index():
    with open("static/index.html") as f:
        return f.read()