DhanushMahesh's picture
feat: implement FetchSuggestionsRequest model and update suggestion fetching logic
6ebbca3
Raw
History Blame Contribute Delete
1.34 kB
from datetime import datetime
from pydantic import BaseModel, Field
from typing import Any, Dict, List, Optional
from langchain_core.messages import BaseMessage
class ThreadFileResponse(BaseModel):
"""Response model for thread file operations."""
file_id: str = Field(..., description="OpenAI file ID")
filename: str = Field(..., description="Original filename")
bytes: int = Field(..., description="File size in bytes")
purpose: str = Field(..., description="File purpose")
created_at: datetime = Field(...,
description="When file was added to brand")
uploaded_by: str = Field(..., description="User ID who uploaded the file")
openai_created_at: int = Field(...,
description="OpenAI creation timestamp")
class ThreadFileUploadRequest(BaseModel):
"""Request model for uploading thread files."""
purpose: Optional[str] = Field(
default="assistants", description="File purpose for OpenAI")
class ThreadFileDeleteRequest(BaseModel):
"""Request model for deleting thread files."""
file_id: str = Field(..., description="OpenAI file ID to delete")
class FetchSuggestionsRequest(BaseModel):
messages: List[BaseMessage]
state: Dict[str, Any]
class NextSuggestion(BaseModel):
title: str
prompt: str