Spaces:
Sleeping
Sleeping
Claude Code - Backend Implementation Specialist
Add Docker deployment configuration for Hugging Face Spaces
36bfe21 | from pydantic import BaseModel, Field | |
| from typing import Optional, List, Dict, Any | |
| from datetime import datetime | |
| from uuid import UUID | |
| class ChatQuery(BaseModel): | |
| """Request model for chat queries.""" | |
| query: str = Field(..., min_length=1, max_length=1000) | |
| conversation_id: Optional[UUID] = None | |
| filters: Optional[Dict[str, Any]] = None | |
| class ChatQueryWithContext(BaseModel): | |
| """Request model for chat queries with selected text context.""" | |
| query: str = Field(..., min_length=1, max_length=1000) | |
| selected_text: Optional[str] = None | |
| selection_metadata: Optional[Dict[str, Any]] = None | |
| conversation_id: Optional[UUID] = None | |
| filters: Optional[Dict[str, Any]] = None | |
| class SourceReference(BaseModel): | |
| """Reference to a source document chunk.""" | |
| chapter_number: int | |
| chapter_title: str | |
| section_title: str | |
| url: str | |
| relevance_score: float | |
| class ChatResponse(BaseModel): | |
| """Response model for chat queries.""" | |
| answer: str | |
| sources: List[SourceReference] | |
| conversation_id: UUID | |
| message_id: UUID | |
| class Message(BaseModel): | |
| """Message model.""" | |
| id: UUID | |
| conversation_id: UUID | |
| role: str | |
| content: str | |
| context_used: Optional[List[str]] = None | |
| created_at: datetime | |
| metadata: Optional[Dict[str, Any]] = None | |
| class Conversation(BaseModel): | |
| """Conversation model.""" | |
| id: UUID | |
| created_at: datetime | |
| metadata: Optional[Dict[str, Any]] = None | |
| messages: Optional[List[Message]] = None | |