Context engineering là gì?
Khác prompt engineering (tập trung viết hướng dẫn cho 1 prompt), context engineering quản toàn bộ trạng thái context qua nhiều turn inference.
Nguyên tắc gốc
"Tìm tập hợp token nhỏ nhất có tín hiệu cao nhất."
Không nhồi nhét. Context là tài nguyên hữu hạn — mỗi token thêm vào tiêu tốn "ngân sách chú ý" của model.
6 nguyên tắc Anthropic đúc kết
1. Context là tài nguyên hữu hạn
LLM có hiện tượng "context rot" — khả năng nhớ thông tin giảm khi context dày lên. Bằng chứng từ benchmark: cùng prompt, đặt trong context 200K vs 50K → kết quả khác.
2. System prompt phải ở "độ cao" tối ưu
Tránh 2 cực:
- Quá cụ thể (hardcode if-else): dễ vỡ, khó bảo trì
- Quá mơ hồ (chung chung): model không hiểu ý
→ Đủ hướng dẫn behavior, đủ linh hoạt cho model suy luận.
3. Tool design — token-efficient
Tool definition là "hợp đồng" giữa agent và data. Yêu cầu:
- Rõ mục đích sử dụng
- Không chồng chéo
- Output token-efficient
❌ Anti-pattern: tool set quá lớn / chức năng trùng → agent nhầm.
4. Few-shot examples > danh sách rule
Thay vì liệt kê 100 trường hợp, đưa 3-5 ví dụ canonical. Model học pattern tốt hơn.
"With LLMs, examples are worth a thousand words."
5. Just-in-time loading (không tải hết upfront)
Giữ identifier nhẹ (file path, URL), load nội dung khi cần.
Ví dụ Claude Code:
- Dùng
head,tail,grepthay vìcatcả file - Query SQL có WHERE thay vì SELECT *
Mirror cách con người tư duy — không nhớ hết, chỉ nhớ chỉ mục.
6. Long-horizon task — 3 kỹ thuật
a) Compaction — tóm tắt history, giữ quyết định + lỗi chưa fix, bỏ tool output dư.
b) Structured note-taking — agent ghi NOTES.md, pull lại khi cần. Vd: Claude chơi Pokémon ghi "đã train Pikachu Route 1, 1234 bước, +8 level..."
c) Sub-agent architecture — chia thành agent chuyên biệt. Mỗi agent context sạch, làm xong tóm tắt 1000-2000 token gửi parent.
| Khi nào dùng cái nào | |
|---|---|
| Compaction | Tương tác thường xuyên, conversation dài |
| Note-taking | Phát triển lặp lại, có milestone rõ |
| Multi-agent | Research phức tạp, khám phá song song |
Anti-pattern cần tránh
| Anti-pattern | Fix |
|---|---|
| Prompt "list tất cả rule" | Dùng ví dụ canonical |
| Tool set bloated | Tối thiểu, rõ mục đích |
| Load hết data từ đầu | Just-in-time retrieval |
| Compaction quá tích cực | Ưu tiên recall trước precision |
| Prompt quá specific (if-else) | Tìm "độ cao" tối ưu |
Nguồn chính thống: anthropic.com/engineering/effective-context-engineering-for-ai-agents