chore: 从汽车AI客服项目拷贝骨架并清理(blog页/redis)
Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
from datetime import datetime
|
||||
|
||||
from pydantic import BaseModel
|
||||
|
||||
from app.models.database import ConversationStatus, ConversationSource, MessageRole, IntentLevel
|
||||
|
||||
|
||||
class MessageCreate(BaseModel):
|
||||
role: MessageRole
|
||||
content: str
|
||||
|
||||
|
||||
class MessageOut(BaseModel):
|
||||
id: str
|
||||
role: MessageRole
|
||||
content: str
|
||||
created_at: datetime
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
|
||||
class ConversationCreate(BaseModel):
|
||||
source: ConversationSource = ConversationSource.standalone
|
||||
client_info: dict | None = None
|
||||
|
||||
|
||||
class ConversationOut(BaseModel):
|
||||
id: str
|
||||
session_id: str
|
||||
status: ConversationStatus
|
||||
source: ConversationSource
|
||||
client_info: dict | None
|
||||
created_at: datetime
|
||||
messages: list[MessageOut] = []
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
|
||||
class CustomerProfileOut(BaseModel):
|
||||
raw_info: dict | None
|
||||
summary: str | None
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
|
||||
class EvaluationOut(BaseModel):
|
||||
intent_level: IntentLevel
|
||||
reasoning: str | None
|
||||
contact_info: dict | None
|
||||
email_sent: bool
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
|
||||
class ChatMessage(BaseModel):
|
||||
session_id: str
|
||||
content: str
|
||||
Reference in New Issue
Block a user