Đề gốc: DE-BAI.md
⚠️ Toàn bộ file này là đề xuất thiết kế của nhóm, không phải nội dung đề. Đề chỉ nêu tech stack và yêu cầu đầu ra ở mức gợi ý, không quy định flow làm việc. Sửa thoải mái.
Flow ban đầu (Requirement → Design → DB → Model → Repository → Service → Agent → API → UI) đúng về thứ tự phụ thuộc, nhưng đặt AI Agent ở gần cuối.
Rủi ro của đề này không nằm ở CRUD. Repository/Service là phần chắc chắn làm được. Rủi ro nằm ở câu hỏi: RAG trên tài liệu tuyển sinh có đạt nổi accuracy ≥85% không? Nếu chunking sai, reranker không hiệu quả, hoặc tài liệu gốc lộn xộn → phải đổi cả hướng thiết kế. Theo flow tuyến tính thì tới tuần 5–6 mới phát hiện.
→ Tách 2 nhánh chạy song song sau bước thiết kế.
Đặc tả yêu cầu (Requirement Specification)
│
▼
Thiết kế hệ thống (Architecture Design)
├── Thiết kế DB
├── Thiết kế API (API Spec)
├── Thiết kế Agent ← xem Phần B
├── Thiết kế Prompt/Workflow
└── Thiết kế UI ← nhóm đang ở đây
│
├──────────────────────┬──────────────────────────┐
▼ ▼
┌─ NHÁNH 1: RAG CORE ─┐ ┌─ NHÁNH 2: APP ─────────┐
│ (ưu tiên, làm sớm) │ │ │
│ │ │ Xây dựng Database │
│ Thu thập tài liệu │ │ ▼ │
│ tuyển sinh chính │ │ Model (Entity/ORM) │
│ thức │ │ ▼ │
│ ▼ │ │ Repository │
│ Ingestion pipeline │ │ (Data Access) │
│ parse → chunk → │ │ ▼ │
│ embed → pgvector │ │ Service │
│ ▼ │ │ (Business Logic) │
│ Retrieve + Rerank │ │ │
│ ▼ │ └────────────────────────┘
│ Bộ test có nhãn │ │
│ (~100–200 câu) │ │
│ ▼ │ │
│ Eval script │ │
│ answer rate + │ │
│ accuracy │ │
│ ▼ │ │
│ ĐO ACCURACY TRẦN │ │
│ (chưa cần API/UI) │ │
└─────────┬───────────┘ │
│ │
└──────────┬───────────────┘
▼
AI Agent (tích hợp)
├── Tools
├── Memory
├── Planner / Router
├── LLM
└── Workflow + Guardrails
▼
API (Controller)
▼
Hook / SDK / Client
▼
UI
▼
Deploy (Docker + cloud)
▼
Chạy lại eval trên hệ thống thật
→ đối chiếu KPI
| Mảng | Vì sao cần | Thuộc bước nào |
|---|---|---|
| Ingestion pipeline | RAG không có gì để trả lời nếu chưa nạp tài liệu. Khác với “Xây dựng Database” (schema user/conversation/handover) | Nhánh 1, đầu tiên |
| Eval harness + bộ test có nhãn | Đề lấy answer rate ≥70% / accuracy ≥85% làm KPI. Không tự sinh ra ở đâu khác | Nhánh 1, làm sớm |
| Deploy Docker + cloud | Nằm trong yêu cầu “Cơ bản” của đề | Cuối, nhưng dựng khung sớm |
Lưu ý: thứ tự build ≠ luồng chạy. Trong sơ đồ build,
Tools / Memory / Planner / LLM / Workflowlà danh sách thành phần cần code. Dưới đây là trình tự thực thi khi người dùng chat.