Benedette Otieno
feat: Implement production API for EMR integration with FastAPI and Docker support
a07fdc6 | from __future__ import annotations | |
| from datetime import datetime | |
| from typing import Any | |
| from pydantic import BaseModel, Field | |
| class StartSessionResponse(BaseModel): | |
| session_id: str | |
| status: str | |
| assistant_message: str | |
| decision: dict[str, Any] | |
| risk_profile: dict[str, Any] | |
| llm_summary: str | None = None | |
| created_at: datetime | |
| class SubmitTurnRequest(BaseModel): | |
| clinician_message: str = Field(min_length=1) | |
| class SubmitTurnResponse(BaseModel): | |
| session_id: str | |
| status: str | |
| assistant_message: str | |
| decision: dict[str, Any] | |
| risk_profile: dict[str, Any] | |
| llm_summary: str | None = None | |
| state_updates: dict[str, str] | |
| class ClassificationResponse(BaseModel): | |
| session_id: str | |
| status: str | |
| decision: dict[str, Any] | |
| risk_profile: dict[str, Any] | |
| llm_summary: str | None = None | |
| updated_at: datetime | |
| class FinalizeSessionResponse(BaseModel): | |
| session_id: str | |
| status: str | |
| finalized: bool | |
| final_decision: dict[str, Any] | |
| transcript: list[dict[str, Any]] | |
| finalized_at: datetime | |
| class HealthResponse(BaseModel): | |
| status: str | |
| service: str | |