Files
JamBuddy/api/routers/chat.py
T
2026-03-05 16:56:24 +00:00

33 lines
708 B
Python

from fastapi import APIRouter, HTTPException
from pydantic import BaseModel
from api.services.ai import chat
router = APIRouter()
class Message(BaseModel):
role: str
content: str
class ChatRequest(BaseModel):
messages: list[Message]
context: dict | None = None
class ChatResponse(BaseModel):
reply: str
@router.post("/chat", response_model=ChatResponse)
async def chat_endpoint(request: ChatRequest):
try:
reply = await chat(
messages=[m.model_dump() for m in request.messages],
context=request.context,
)
return ChatResponse(reply=reply)
except Exception as e:
raise HTTPException(status_code=500, detail=str(e))