- AI chat with SSE streaming (Microsoft Agent Framework + Qwen) - RAG Q&A with hybrid retrieval (vector + keyword RRF fusion) - Knowledge base CRUD with semantic text chunking - Embedding generation via Azure.AI.OpenAI / LM Studio - Document upload with chunked upload support - Redis caching for chat messages - Chunk/vector preview endpoints - gRPC auth service improvements - Removed demo menus, cleaned up seed data
33 lines
1.0 KiB
C#
33 lines
1.0 KiB
C#
using RAG.Domain.Common;
|
|
using RAG.Domain.Enums;
|
|
|
|
namespace RAG.Domain.Entities;
|
|
|
|
public class Document : BaseEntity, IFullAudit
|
|
{
|
|
public Guid KnowledgeBaseId { get; set; }
|
|
public string Title { get; set; } = default!;
|
|
public string FileName { get; set; } = default!;
|
|
public string FilePath { get; set; } = default!;
|
|
public long FileSize { get; set; }
|
|
public string ContentType { get; set; } = default!;
|
|
public int ChunkCount { get; set; }
|
|
public DocumentStatus Status { get; set; } = DocumentStatus.Pending;
|
|
|
|
// IAuditable
|
|
public string CreatedBy { get; set; } = default!;
|
|
public DateTime CreatedAt { get; set; }
|
|
public string UpdatedBy { get; set; } = default!;
|
|
public DateTime UpdatedAt { get; set; }
|
|
|
|
// ISoftDelete
|
|
public bool IsDeleted { get; set; }
|
|
|
|
// IHasOperatorIP
|
|
public string OperatorIP { get; set; } = default!;
|
|
|
|
// Navigation
|
|
public KnowledgeBase KnowledgeBase { get; set; } = default!;
|
|
public ICollection<DocumentChunk> Chunks { get; set; } = [];
|
|
}
|