Context engineering
Kỹ thuật thiết kế và quản lý context window giúp AI hiểu đúng, nhớ lâu và xử lý thông tin phức tạp hiệu quả — bước tiến hóa từ prompt engineering thuần túy.
Định nghĩa
Context engineering là nghệ thuật và khoa học thiết kế cấu trúc thông tin đầu vào (input) nhằm tối ưu hóa cách Large Language Model (LLM) tiếp nhận, xử lý và trích xuất kiến thức từ ngữ cảnh. Khác với prompt engineering chỉ tập trung vào cách diễn đạt câu lệnh, context engineering quản lý toàn bộ không gian ngữ cảnh (context window) — quyết định AI "nhìn thấy" gì, "nhớ" gì và quên gì trong giới hạn token.
Giải thích chi tiết
Context window không phải bộ nhớ vô hạn
Nhiều người nhầm tưởng AI "hiểu" toàn bộ dữ liệu đã train. Thực tế, khi inference, LLM chỉ xử lý context window — một khung trượt có giới hạn (thường 4K–200K token tùy model). Context engineering chính là việc architect thông tin trong khung hẹp này để:
- Giữ lại thông tin quan trọng nhất
- Loại bỏ nhiễu (noise) và redundancy
- Duy trì coherence qua nhiều lượt tương tác
Các chiến lược cấu trúc ngữ cảnh
Hierarchical context injection
Thay vì dump toàn bộ dữ liệu vào prompt, kỹ sư chia thông tin thành các tầng:
- System context: Persona, constraints, output format (chiếm 10–20% window)
- Retrieved context: Dữ liệu từ RAG/RAG-like systems, được re-rank và cắt gọn (60–70%)
- Conversation history: Tóm tắt (summary) thay vì transcript nguyên bản (10–20%)
- User query: Câu hỏi hiện tại, được rewrite nếu cần thiết để khớp context trên
Dynamic context compression
Khi ngữ cảnh vượt quá limit, context engineering áp dụng:
- Summarization chain: Tóm tắt phần đầu hội thoại, chỉ giữ key facts
- Entity extraction: Trích xuất entities và relationships thay vì giữ nguyên văn bản
- Sliding window with overlap: Trượt khung qua document dài, giữ 200–500 token overlap để duy trì coherence
State management trong multi-turn conversations
AI Agent cần "nhớ" trạng thái. Context engineering thiết kế:
- Working memory: Thông tin ngắn hạn (few-shot examples, tool outputs gần nhất)
- Episodic memory: Thông tin trung hạn, lưu dưới dạng vector embedding, được retrieve khi cần
- Semantic memory: Kiến thức nền tảng, thường ở ngoài context window, inject qua RAG
Mối quan hệ với RAG và Tool use
Context engineering không thay thế RAG hay Tool use trong AI, mà là lớp orchestration phía trên:
- RAG retrieve thông tin
- Context engineering quyết định cách sắp xếp thông tin đó trong window
- Function calling xảy ra khi AI cần bổ sung context từ external source
Ví dụ thực tế
Hệ thống phân tích hợp đồng pháp lý (Legal Contract Analysis)
Một công ty luật tại Việt Nam cần AI review hợp đồng 50 trang. Thay vì gửi toàn bộ file (vượt quá context window 128K của GPT-4), kỹ sư áp dụng context engineering:
- Tầng 1: System prompt với persona "Luật sư chuyên doanh nghiệp" + schema JSON cho output
- Tầng 2: Retrieve 3 điều khoản liên quan nhất từ vector DB (dựa trên query của user), mỗi điều khoản được trích xuất clause + annotation
- Tầng 3: Lịch sử trao đổi được compress thành bullet points: "User đã hỏi về điều 5.2 → AI giải thích rủi ro thanh toán → User hỏi tiếp về phạt vi phạm"
Kết quả: AI trả lời chính xác điều khoản cụ thể, không bị "ngộp" bởi 50 trang văn bản, latency giảm 60% so với gửi full text.
Chatbot hỗ trợ khách hàng có nhớ dài hạn (Long-term Memory)
Fintech startup Việt Nam xây dựng chatbot tư vấn tài chính. Khách hàng chat lại sau 3 ngày, bot vẫn nhớ họ đang quan tâm đến "vay mua nhà lãi suất thả nổi".
Context engineering triển khai:
- Session start: Inject summary từ lần chat trước: "User: 28 tuổi, thu nhập 25tr/tháng, quan tâm vay nhà, đã từ chối gói 20 năm"
- Dynamic update: Mỗi 5 lượt hội thoại, background job tóm tắt và cập nhật vector DB
- Context eviction: Khi user chuyển chủ đề sang "mở thẻ tín dụng", hệ thống đánh dấu mortgage context là "stale" và giảm weight trong retrieval
Trợ lý lập trình hiểu cả codebase (Code Assistant)
Developer dùng AI để sửa bug trong project Django 200 file. Context engineering không gửi cả repo, mà:
- Parse tree-sitter để lấy dependency graph
- Inject chỉ 3 file liên quan: file lỗi + 2 file import nó
- Thêm "project context" ngắn: "Django 4.2, dùng PostgreSQL, custom User model ở apps/auth/models.py"
- Giữ 3 turn chat gần nhất về bug cụ thể
AI đưa ra fix chính xác mà không bị confuse bởi các module không liên quan.
Ứng dụng
Dành cho kỹ sư AI và Developer
- Tối ưu RAG pipeline: Không chỉ dừng ở việc retrieve đúng, mà phải present đúng — cách sắp xếp chunks trong prompt ảnh hưởng đến accuracy 15–30%
- Giảm latency và cost: Context ngắn hơn = inference nhanh hơn + tiết kiệm token (đặc biệt quan trọng với GPT-4, Claude 3 Opus)
- Xây dựng Agent phức tạp: Kết hợp Prompt chaining với context state management để agent thực hiện task multi-step không bị "lạc trôi"
Dành cho doanh nghiệp triển khai AI
- Chatbot enterprise: Quản lý ngữ cảnh qua 20–30 lượt tương tác, đảm bảo bot không quên thông tin khách hàng đã cung cấp từ đầu
- Phân tích tài liệu dài: Xử lý báo cáo tài chính 200 trang, hợp đồng EPC, hay luận văn tiến sĩ bằng kỹ thuật "sliding context window" + hierarchical summarization
Dành cho researcher và AI Engineer
- Thí nghiệm với long-context models: So sánh performance giữa "dump full context" vs "engineered context" để đo lường "lost in the middle" effect — hiện tượng LLM bỏ qua thông tin ở giữa context window dài
- Phát triển kỹ thuật mới: Nghiên cứu context compression algorithms, learned sparse attention, hay selective memory mechanisms
So sánh
| Kỹ thuật | Trọng tâm | Phạm vi | Mục tiêu chính |
|---|---|---|---|
| Prompt engineering | Cách diễn đạt câu lệnh, wording, formatting | Single query | Tối ưu câu hỏi để AI hiểu đúng intent |
| Context engineering | Cấu trúc và quản lý thông tin trong context window | Multi-turn, multi-source | Tối ưu thông tin AI "nhìn thấy" để suy luận chính xác |
| RAG (Retrieval-Augmented Generation) | Tìm kiếm thông tin bên ngoài từ knowledge base | External data | Đảm bảo AI có thông tin mới, chính xác, verifiable |
| Fine-tuning | Điều chỉnh trọng số model | Toàn bộ parameter space | Thay đổi behavior/knowledge cố định của model |
Kết luận: Context engineering là cầu nối giữa raw data và LLM. Bạn có thể có RAG tốt nhất thế giới, nhưng nếu dump 10 documents không có cấu trúc vào context window, AI vẫn sẽ hallucinate. Ngược lại, với context được engineer tốt, ngay cả model nhỏ (7B–13B parameters) cũng có thể outperform model lớn với context bừa bãi.
Bài viết liên quan
Cùng cụm
- Prompt chaining là gì? — Ghép nhiều prompt để xử lý task phức tạp, thường đi kèm với kỹ thuật quản lý context giữa các bước
- Tool use trong AI — Khi AI cần gọi API hoặc tra cứu database, context engineering quyết định cách đưa kết quả tool vào ngữ cảnh hiện tại
- Function calling là gì? — Mở rộng khả năng AI bằng cách cấu trúc output để trigger external tools, sau đó inject kết quả vào context
- AI memory là gì? — Các kiến trúc bộ nhớ dài hạn cho AI, nền tảng để triển khai context engineering trong hệ thống production
Đọc tiếp
- RAG pipeline — Hiểu sâu về retrieval trước khi tối ưu cách present thông tin trong context
- Embedding và vector search — Nền tảng để hiểu cách retrieve đúng thông tin cần inject vào context
- Token và context window — Tham số kỹ thuật giới hạn context, cần nắm vững để calculate và optimize
AI memory là gì?
Khám phá cơ chế bộ nhớ AI: từ context window đến vector database, giúp LLM 'nhớ' thông tin dài hạn và cá nhân hóa trải nghiệm người dùng.
Đánh giá mô hình AI
Hệ thống hóa phương pháp đánh giá mô hình AI — từ chọn metrics phù hợp đến xây dựng evaluation pipeline, giúp bạn tránh bẫy overfitting và chọn đúng model cho production.