Scaffold V2 backend foundation
This commit is contained in:
42
ai_knowledge_base_v2/apps/backend/app/schemas/chat.py
Normal file
42
ai_knowledge_base_v2/apps/backend/app/schemas/chat.py
Normal file
@@ -0,0 +1,42 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from datetime import datetime
|
||||
|
||||
from pydantic import BaseModel, ConfigDict, Field
|
||||
|
||||
from app.schemas.common import ORMModel
|
||||
|
||||
|
||||
class CreateSessionResponse(BaseModel):
|
||||
sessionId: int
|
||||
|
||||
|
||||
class ChatSessionRead(ORMModel):
|
||||
model_config = ConfigDict(from_attributes=True, populate_by_name=True)
|
||||
|
||||
id: int
|
||||
title: str
|
||||
messageCount: int = Field(alias="message_count")
|
||||
updatedAt: datetime = Field(alias="updated_at")
|
||||
|
||||
|
||||
class ChatMessageRead(ORMModel):
|
||||
id: int
|
||||
role: str
|
||||
content: str
|
||||
message_status: str
|
||||
created_at: datetime
|
||||
|
||||
|
||||
class UpdateSessionTitleRequest(BaseModel):
|
||||
sessionId: int
|
||||
title: str = Field(min_length=1, max_length=100)
|
||||
|
||||
|
||||
class ChatCompletionRequest(BaseModel):
|
||||
sessionId: int
|
||||
message: str = Field(min_length=1, max_length=4000)
|
||||
|
||||
|
||||
class StopChatRequest(BaseModel):
|
||||
sessionId: int
|
||||
Reference in New Issue
Block a user