Skip to content

Data, RAG và Retrieval

Tầng Data/RAG biến tri thức của tổ chức thành context có kiểm soát cho model. Đây là nơi documents, databases, tickets, policies, code và product knowledge trở thành evidence có thể retrieve.

RAG không chỉ là vector database. RAG là toàn bộ pipeline biến dữ liệu doanh nghiệp thành context có kiểm soát cho model.

Layer này sở hữu điều gì

Mối quan tâmQuyền sở hữu
Source selectionSystem và document nào được phép đi vào AI context
IngestionContent đi vào index như thế nào
ParsingPDFs, HTML, code, tables, docs, tickets biến thành text/metadata ra sao
ChunkingContent được chia nhỏ như thế nào để retrieve
Embedding và indexingMeaning và keywords trở thành searchable như thế nào
RetrievalChọn đúng chunks như thế nào
RerankingSắp xếp candidates theo relevance ra sao
GroundingAnswer cite và dùng retrieved context như thế nào
FreshnessStale content được phát hiện hoặc loại bỏ ra sao
PermissionsUser access được enforce tại retrieval time như thế nào

RAG pipeline

mermaid
flowchart LR
    A[Source systems] --> B[Ingestion]
    B --> C[Parsing and chunking]
    C --> D[Embedding]
    D --> E[Vector store / hybrid index]
    E --> F[Retriever]
    F --> G[Reranker]
    G --> H[Prompt context]
    H --> I[LLM answer]
    J[Permissions and freshness policy] -. controls .-> B
    J -. controls .-> E
    J -. controls .-> F

Permission-aware retrieval

Permission-aware retrieval nghĩa là hệ thống chỉ retrieve những gì user, tenant, role hoặc service hiện tại được phép xem.

Đừng dựa vào model để "tự bỏ qua" nội dung bị cấm. Retriever phải filter trước khi context đi vào model.

PatternKhi nào dùng
Metadata filterTenant, department, role, document type
ACL syncEnterprise documents có access rules sẵn
Query-time policy checkSensitive systems hoặc mixed data classes
Separate indexesHard isolation giữa tenants hoặc regulated domains
Redaction pipelinePII, secrets, contractual data

RAG quality levers

LeverCó thể lỗi gìCách cải thiện
Source qualitydocuments cũ, trùng, mâu thuẫnsource curation và freshness rules
Parsing qualitymất tables/code/imagesdocument-aware parsing
Chunk size và overlapcontext quá nhỏ hoặc quá nhiễuevaluate chunk settings theo query type
Embedding modelsemantic matches yếuso sánh embeddings trên real queries
Vector vs hybrid retrievalkeyword-heavy queries failkết hợp vector và keyword retrieval
Rerankingcandidates tốt bị chôn dướirerank top-k candidates
Citation và groundingmodel trả lời không evidencebắt buộc citations và context checks
Freshnesspolicies cũ trả lời câu hỏi hiện tạiversion và expiry metadata
Access controldata leakagefilter trước prompt construction
Eval datasetsquality không đo đượctạo golden queries và expected evidence

LangChain và LlamaIndex nằm ở đâu

LangChain có thể orchestrate RAG flow bên trong AI application: loaders, retrievers, tools, prompts và chains. LlamaIndex thường hợp khi data/indexing layer là trọng tâm, đặc biệt là document ingestion, indexing abstractions, retrieval strategies và knowledge workflows.

Các framework này không thay governance. Dùng OpenSpec hoặc Spec Kit để định nghĩa RAG feature, AI-DLC cho high-risk delivery và eval/observability tools để chứng minh behavior.

Hướng dẫn implement RAG step-by-step

  1. Định nghĩa lớp câu hỏi của user: support, policy, product docs, code search, analytics.
  2. Định nghĩa allowed sources và data owners.
  3. Định nghĩa permissions trước khi indexing.
  4. Tạo golden dataset nhỏ: 30-100 câu hỏi đại diện với expected source evidence.
  5. Ingest một source set hẹp trước.
  6. Parse và chunk với metadata: source, owner, freshness, tenant, ACL, version.
  7. So sánh retrieval strategies: vector, keyword, hybrid, rerank.
  8. Build answer generation có citations.
  9. Thêm refusal behavior khi thiếu evidence.
  10. Chạy evals trong CI trước khi đổi chunking, prompts, retrievers hoặc models.

Failure modes

Failure modeDấu hiệuCách sửa
Xem vector DB là toàn bộ RAG systemanswers không ổn định, khó debugthiết kế full pipeline
Không golden datasetmỗi prompt change đều cảm tínhtạo query/evidence evals
Không permission filterconfidential chunks lọt vào promptenforce ACL trước retrieval output
Stale indexpolicy cũ được citefreshness metadata và re-index jobs
Retrieved context quá nhiềumodel bỏ qua facts quan trọngreranking và context compression
Không yêu cầu citationhallucination trông rất tự tingrounded answer format

References

Built as a static bilingual AI engineering stack guide.