Files
DataMate/frontend/src/pages/KnowledgeBase/knowledge-base.model.ts
Jerry Yan fd209c3083 feat(knowledge-base): 添加知识库统计功能
- 后端服务新增 KnowledgeBaseStatisticsResp 和 RagFileStatistics 数据传输对象
- 在 KnowledgeBaseService 中实现 getStatistics 方法提供统计信息查询
- 为 RagFileRepository 添加 getStatistics 接口及其实现
- 通过 MyBatis Mapper 实现数据库层面的统计查询功能
- 在 KnowledgeBaseController 中暴露 /statistics 接口供前端调用
- 前端页面集成统计卡片组件展示知识库、文件数量及总大小信息
- 实现前后端数据同步机制确保统计数据实时更新
2026-01-30 23:17:40 +08:00

61 lines
1.2 KiB
TypeScript

export enum KBFileStatus {
UNPROCESSED = "UNPROCESSED",
PROCESSING = "PROCESSING",
PROCESSED = "PROCESSED",
PROCESS_FAILED = "PROCESS_FAILED",
}
export enum KBType {
UNSTRUCTURED = "unstructured",
STRUCTURED = "structured",
}
export interface KnowledgeBaseItem {
id: string;
name: string;
description: string;
type: KBType;
createdAt: string;
updatedAt: string;
embeddingModel: string;
chatModel: string;
fileCount: number;
chunkCount: number;
embedding: never;
chat: never;
}
export interface KnowledgeBaseStatistics {
totalKnowledgeBases: number;
totalFiles: number;
totalSize: number;
}
export interface KBFile {
id: string;
fileName: string;
name?: string;
relativePath?: string;
createdAt: string;
updatedAt: string;
status: KBFileStatus;
chunkCount: number;
metadata: Record<string, unknown>;
knowledgeBaseId: string;
fileId: string;
updatedBy: string;
createdBy: string;
}
export interface KnowledgeBaseFileSearchResult {
id: string;
knowledgeBaseId: string;
knowledgeBaseName: string;
fileName: string;
relativePath?: string;
status?: KBFileStatus;
chunkCount?: number;
createdAt?: string;
updatedAt?: string;
}