feat: add rag backend and review access fixes
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class RagChatSendMessageDTO(BaseModel):
|
||||
query: str = Field(..., min_length=1, description="用户问题")
|
||||
conversationId: str | None = Field(None, description="会话ID")
|
||||
appId: int | None = Field(None, description="聊天应用ID")
|
||||
|
||||
|
||||
class RagConversationRenameDTO(BaseModel):
|
||||
name: str = Field(..., min_length=1, max_length=500, description="新会话名称")
|
||||
|
||||
|
||||
class RagMessageFeedbackDTO(BaseModel):
|
||||
rating: str | None = Field(None, description="反馈: like/dislike/None")
|
||||
@@ -0,0 +1,59 @@
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class RagChatAppVO(BaseModel):
|
||||
appId: str = Field(..., description="应用ID")
|
||||
appName: str = Field(..., description="应用名称")
|
||||
description: str = Field("", description="应用描述")
|
||||
isDefault: bool = Field(False, description="是否默认应用")
|
||||
|
||||
|
||||
class RagChatAppListVO(BaseModel):
|
||||
data: list[RagChatAppVO] = Field(default_factory=list)
|
||||
total: int = Field(0)
|
||||
|
||||
|
||||
class RagConversationItemVO(BaseModel):
|
||||
id: str = Field(..., description="会话ID")
|
||||
name: str = Field(..., description="会话名称")
|
||||
introduction: str = Field("", description="会话简介")
|
||||
createdAt: int = Field(0, description="创建时间戳")
|
||||
updatedAt: int = Field(0, description="更新时间戳")
|
||||
|
||||
|
||||
class RagConversationPageVO(BaseModel):
|
||||
data: list[RagConversationItemVO] = Field(default_factory=list)
|
||||
hasMore: bool = Field(False)
|
||||
limit: int = Field(20)
|
||||
|
||||
|
||||
class RagMessageItemVO(BaseModel):
|
||||
id: str = Field(...)
|
||||
conversationId: str = Field(...)
|
||||
query: str = Field(...)
|
||||
answer: str = Field(...)
|
||||
feedback: dict | None = Field(None)
|
||||
retrieverResources: list[dict] | None = Field(None)
|
||||
createdAt: int = Field(0)
|
||||
|
||||
|
||||
class RagMessagePageVO(BaseModel):
|
||||
data: list[RagMessageItemVO] = Field(default_factory=list)
|
||||
hasMore: bool = Field(False)
|
||||
limit: int = Field(20)
|
||||
|
||||
|
||||
class RagConversationRenameVO(BaseModel):
|
||||
result: str = Field("success")
|
||||
name: str = Field(...)
|
||||
|
||||
|
||||
class RagOperationResultVO(BaseModel):
|
||||
result: str = Field("success")
|
||||
|
||||
|
||||
class RagAppParametersVO(BaseModel):
|
||||
openingStatement: str = Field("", description="开场白")
|
||||
suggestedQuestions: list[str] = Field(default_factory=list)
|
||||
userInputForm: list[dict] = Field(default_factory=list)
|
||||
fileUpload: dict = Field(default_factory=lambda: {"image": {"enabled": False}})
|
||||
@@ -0,0 +1,18 @@
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class RagDatasetItemVO(BaseModel):
|
||||
id: int = Field(...)
|
||||
name: str = Field(...)
|
||||
description: str = Field("")
|
||||
area: str = Field("")
|
||||
isPublic: bool = Field(False)
|
||||
isDefault: bool = Field(False)
|
||||
documentCount: int = Field(0)
|
||||
totalChunks: int = Field(0)
|
||||
status: int = Field(1)
|
||||
|
||||
|
||||
class RagDatasetPageVO(BaseModel):
|
||||
data: list[RagDatasetItemVO] = Field(default_factory=list)
|
||||
total: int = Field(0)
|
||||
Reference in New Issue
Block a user