Files
leaudit-platform-backend/fastapi_modules/fastapi_leaudit/domian/vo/ragDatasetVo.py
T

144 lines
4.0 KiB
Python

from pydantic import BaseModel, Field
class RagDatasetItemVO(BaseModel):
id: int = Field(...)
name: str = Field(...)
description: str = Field("")
area: str = Field("")
tenantCode: str = Field("")
tenantName: str = Field("")
isPublic: bool = Field(False)
isDefault: bool = Field(False)
documentCount: int = Field(0)
totalChunks: int = Field(0)
status: int = Field(1)
sortOrder: int = Field(0)
createdAt: int = Field(0)
updatedAt: int = Field(0)
appId: int | None = Field(default=None)
appName: str = Field("")
appIsDefault: bool = Field(False)
class RagDatasetPageVO(BaseModel):
data: list[RagDatasetItemVO] = Field(default_factory=list)
total: int = Field(0)
class RagDatasetDetailVO(BaseModel):
id: int = Field(...)
name: str = Field(...)
description: str = Field("")
area: str = Field("")
tenantCode: str = Field("")
tenantName: str = Field("")
isPublic: bool = Field(False)
isDefault: bool = Field(False)
status: int = Field(1)
documentCount: int = Field(0)
totalChunks: int = Field(0)
chunkMaxSize: int = Field(800)
chunkMinSize: int = Field(20)
sortOrder: int = Field(0)
retrievalModel: dict = Field(default_factory=dict)
createdAt: int = Field(0)
updatedAt: int = Field(0)
appId: int | None = Field(default=None)
appName: str = Field("")
appIsDefault: bool = Field(False)
class RagDatasetDocumentItemVO(BaseModel):
id: int = Field(...)
datasetId: int = Field(...)
name: str = Field(...)
fileType: str = Field("")
fileSize: int = Field(0)
chunkCount: int = Field(0)
indexingStatus: str = Field("waiting")
error: str = Field("")
enabled: bool = Field(True)
hitCount: int = Field(0)
createdBy: int | None = Field(None)
createdAt: int = Field(0)
updatedAt: int = Field(0)
class RagDatasetDocumentPageVO(BaseModel):
data: list[RagDatasetDocumentItemVO] = Field(default_factory=list)
total: int = Field(0)
page: int = Field(1)
limit: int = Field(20)
hasMore: bool = Field(False)
class RagDatasetUploadDocumentVO(BaseModel):
document: dict = Field(default_factory=dict)
batch: str = Field("")
class RagDatasetBatchDeleteFailedItemVO(BaseModel):
id: int = Field(...)
name: str = Field("")
reason: str = Field("")
class RagDatasetBatchDeleteResultVO(BaseModel):
result: str = Field("success")
requestedCount: int = Field(0)
deletedCount: int = Field(0)
skippedCount: int = Field(0)
deletedIds: list[int] = Field(default_factory=list)
skipped: list[RagDatasetBatchDeleteFailedItemVO] = Field(default_factory=list)
class RagDatasetSegmentItemVO(BaseModel):
id: str = Field(...)
position: int = Field(0)
documentId: str = Field("")
content: str = Field("")
wordCount: int = Field(0)
hitCount: int = Field(0)
enabled: bool = Field(True)
status: str = Field("completed")
createdAt: int = Field(0)
class RagDatasetSegmentPageVO(BaseModel):
data: list[RagDatasetSegmentItemVO] = Field(default_factory=list)
total: int = Field(0)
limit: int = Field(20)
hasMore: bool = Field(False)
class RagDatasetRetrieveDocumentVO(BaseModel):
id: str = Field("")
dataSourceType: str = Field("upload_file")
name: str = Field("")
docType: str | None = Field(default=None)
class RagDatasetRetrieveSegmentVO(BaseModel):
id: str = Field(...)
position: int = Field(0)
documentId: str = Field("")
content: str = Field("")
answer: str = Field("")
wordCount: int = Field(0)
hitCount: int = Field(0)
enabled: bool = Field(True)
status: str = Field("completed")
createdAt: int = Field(0)
document: RagDatasetRetrieveDocumentVO | None = Field(default=None)
class RagDatasetRetrieveRecordVO(BaseModel):
segment: RagDatasetRetrieveSegmentVO = Field(...)
score: float = Field(0.0)
class RagDatasetRetrieveResponseVO(BaseModel):
query: dict = Field(default_factory=dict)
records: list[RagDatasetRetrieveRecordVO] = Field(default_factory=list)