diff --git a/app/__pycache__/main.cpython-314.pyc b/app/__pycache__/main.cpython-314.pyc new file mode 100644 index 0000000..90865a6 Binary files /dev/null and b/app/__pycache__/main.cpython-314.pyc differ diff --git a/app/api/__pycache__/routes.cpython-314.pyc b/app/api/__pycache__/routes.cpython-314.pyc new file mode 100644 index 0000000..6018e11 Binary files /dev/null and b/app/api/__pycache__/routes.cpython-314.pyc differ diff --git a/app/api/__pycache__/schemas.cpython-314.pyc b/app/api/__pycache__/schemas.cpython-314.pyc new file mode 100644 index 0000000..7e7d419 Binary files /dev/null and b/app/api/__pycache__/schemas.cpython-314.pyc differ diff --git a/app/api/routes.py b/app/api/routes.py new file mode 100644 index 0000000..0780542 --- /dev/null +++ b/app/api/routes.py @@ -0,0 +1,14 @@ +from fastapi import APIRouter +from app.api.schemas import ChatRequest, ChatResponse +from app.services.orchestrator_service import OrchestratorService + +router = APIRouter() +service = OrchestratorService() + +@router.post("/chat", response_model=ChatResponse) +async def chat(request: ChatRequest): + result = await service.handle_message( + message=request.message, + user_id=request.user_id + ) + return ChatResponse(response=result) diff --git a/app/api/schemas.py b/app/api/schemas.py new file mode 100644 index 0000000..b8a9044 --- /dev/null +++ b/app/api/schemas.py @@ -0,0 +1,8 @@ +from pydantic import BaseModel + +class ChatRequest(BaseModel): + message: str + user_id: str + +class ChatResponse(BaseModel): + response: str diff --git a/app/main.py b/app/main.py new file mode 100644 index 0000000..9185651 --- /dev/null +++ b/app/main.py @@ -0,0 +1,6 @@ +from fastapi import FastAPI +from app.api.routes import router + +app = FastAPI(title="AI Orquestrador") + +app.include_router(router) diff --git a/app/services/__pycache__/orchestrator_service.cpython-314.pyc b/app/services/__pycache__/orchestrator_service.cpython-314.pyc new file mode 100644 index 0000000..c4fdc32 Binary files /dev/null and b/app/services/__pycache__/orchestrator_service.cpython-314.pyc differ diff --git a/app/services/orchestrator_service.py b/app/services/orchestrator_service.py new file mode 100644 index 0000000..18b3e56 --- /dev/null +++ b/app/services/orchestrator_service.py @@ -0,0 +1,10 @@ +class OrchestratorService: + + async def handle_message(self, message: str, user_id: str) -> str: + # Aqui futuramente: + # - chamada ao Gemini + # - verificação de intenção + # - chamada de tools + # - integração com banco + + return f"Mensagem recebida do usuário {user_id}: {message}" diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..27eaecc Binary files /dev/null and b/requirements.txt differ