41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
|
|
from datetime import datetime
|
||
|
|
|
||
|
|
from pydantic import BaseModel, Field
|
||
|
|
|
||
|
|
|
||
|
|
class KnowledgeDocumentUploadResponse(BaseModel):
|
||
|
|
"""知识文档上传响应:返回文档、任务和 Milvus collection 状态。"""
|
||
|
|
|
||
|
|
document_id: int
|
||
|
|
task_id: int | None = None
|
||
|
|
duplicate: bool = False
|
||
|
|
status: str
|
||
|
|
parse_status: str
|
||
|
|
embedding_status: str
|
||
|
|
chunk_count: int
|
||
|
|
collection_name: str
|
||
|
|
|
||
|
|
|
||
|
|
class KnowledgeDocumentDetailResponse(BaseModel):
|
||
|
|
"""知识文档详情:用于内容管理员查看 PDF 构建结果。"""
|
||
|
|
|
||
|
|
document_id: int
|
||
|
|
institution_id: int
|
||
|
|
file_name: str
|
||
|
|
document_title: str | None = None
|
||
|
|
document_category: str
|
||
|
|
version: str
|
||
|
|
status: str
|
||
|
|
parse_status: str
|
||
|
|
embedding_status: str
|
||
|
|
chunk_count: int
|
||
|
|
error_message: str | None = None
|
||
|
|
created_at: datetime | None = None
|
||
|
|
updated_at: datetime | None = None
|
||
|
|
|
||
|
|
|
||
|
|
class KnowledgeDocumentListResponse(BaseModel):
|
||
|
|
"""知识文档列表:按机构返回最近上传文档。"""
|
||
|
|
|
||
|
|
items: list[KnowledgeDocumentDetailResponse] = Field(default_factory=list)
|