Bỏ qua để đến nội dung

Quản lý ngữ cảnh

Bài viết được dịch tự động từ bài viết gốc, chưa được kiểm tra lại bởi con người. Chỉ những bài viết có dấu tick xanh cạnh tiêu đề là đã được kiểm tra.

Ngữ cảnh (context) là bộ nhớ làm việc của Claude. Mỗi file nó đọc, mỗi lệnh nó chạy, mỗi tin nhắn bạn gửi - tất cả đều chiếm chỗ trong cửa sổ ngữ cảnh.

Hãy hình dung cửa sổ ngữ cảnh như dung lượng bộ nhớ mà Claude có thể giữ. Mỗi khi bạn nhập prompt, Claude đọc một file, chạy một tool call, hoặc nhận kết quả từ tool call - tất cả đều được cộng vào cửa sổ ngữ cảnh. Vì dung lượng có giới hạn, việc tối ưu cách sử dụng nó trở nên quan trọng.

Sơ đồ minh họa cửa sổ ngữ cảnh dưới dạng lưới token - một phần đã dùng, phần lớn còn trống Cửa sổ ngữ cảnh minh họa dưới dạng lưới token - phần đã dùng và phần còn trống.

Khi tiến gần giới hạn, cửa sổ ngữ cảnh sẽ tự động được compact (nén). Compaction tóm tắt các chi tiết quan trọng và loại bỏ kết quả tool call không cần thiết để giải phóng dung lượng. Lưu ý quá trình này có thể làm mất một số chi tiết.

Bạn có thể chủ động chạy compaction bằng lệnh /compact. Lệnh này nén toàn bộ nội dung tính đến thời điểm đó. Rất hữu ích khi bạn muốn giải phóng dung lượng ngữ cảnh nhưng vẫn giữ lại bộ nhớ về những gì đã làm trước đó.

Claude Code hiển thị bản tóm tắt ngắn gọn của hội thoại trước đó, gồm các khái niệm kỹ thuật và file chính Claude Code hiển thị bản tóm tắt hội thoại trước đó sau khi compact, gồm các khái niệm kỹ thuật và file chính.

Lệnh /compact trong menu gợi ý lệnh của Claude Code Lệnh /compact trong menu gợi ý lệnh của Claude Code.

Nếu muốn bắt đầu lại hoàn toàn, không còn ghi nhớ gì về phiên trước, chạy /clear. Lệnh này xóa sạch mọi thứ.

Chạy lệnh /clear trong Claude Code để bắt đầu một phiên làm việc mới Chạy /clear trong Claude Code để bắt đầu một phiên mới.

Để kiểm tra tình trạng ngữ cảnh hiện tại, chạy /context. Bạn sẽ nhận được tổng quan về dung lượng ngữ cảnh, các hạng mục chiếm nhiều chỗ nhất, và một biểu đồ trực quan thể hiện cách phân bổ.

Kết quả lệnh /context hiển thị chi tiết mức sử dụng ngữ cảnh kèm biểu đồ trực quan Kết quả lệnh /context, hiển thị mức sử dụng ngữ cảnh kèm biểu đồ trực quan.

Quy tắc chung:

  • Dùng /compact khi bạn đang làm một tính năng cụ thể và sắp chạm giới hạn ngữ cảnh nhưng cần tiếp tục. Việc giữ ngữ cảnh liên quan tới tính năng hiện tại là quan trọng.
  • Dùng /clear khi bạn muốn bắt đầu một tính năng mới. Bạn không muốn hội thoại trước đó tạo ra thiên kiến (bias) cho một việc hoàn toàn mới. Với những gì bạn muốn Claude nhớ xuyên suốt các phiên, hãy đưa vào file CLAUDE.md để nó không phải khám phá lại từ đầu.

Một file CLAUDE.md gồm các mục command, ghi chú quan trọng, và kiến trúc project Một file CLAUDE.md điển hình với các mục command, ghi chú quan trọng, và kiến trúc.

Cụ thể, rõ ràng. Một prompt mơ hồ trông có vẻ nhỏ gọn, nhưng thực ra tốn nhiều ngữ cảnh hơn về lâu dài. Thiếu chỉ dẫn rõ ràng, Claude buộc phải khám phá codebase nhiều hơn và tự suy luận - việc này tốn ngữ cảnh hơn nhiều so với một prompt chi tiết.

Quản lý MCP server. MCP server nạp toàn bộ tool khả dụng của nó vào ngữ cảnh theo mặc định, ngay cả khi bạn không dùng tới. Nếu bạn có server được cấu hình cho những việc không liên quan tới project hiện tại, hãy cân nhắc tắt chúng. Bạn cũng có thể thử dùng “Skill”, hoạt động tương tự MCP server nhưng không nạp mọi thứ vào ngữ cảnh ngay từ đầu.

Dùng subagent. Subagent chạy song song với main agent nhưng có cửa sổ ngữ cảnh hoàn toàn riêng biệt. Với các việc mà bạn chỉ cần câu trả lời - như “các endpoint xác thực nằm ở đâu?” - một subagent sẽ làm việc và trả về đúng bản tóm tắt cho main agent, giữ ngữ cảnh chính của bạn sạch sẽ.

Quản lý ngữ cảnh trong Claude Code là điều then chốt. Dùng /compact để tóm tắt các phiên dài, và /clear để bắt đầu lại từ đầu. Để dùng cửa sổ ngữ cảnh hiệu quả: viết prompt cụ thể, kiểm tra những gì đang chiếm ngữ cảnh hiện tại, và dùng subagent để giao việc cho những tác vụ chỉ cần kết quả cuối.

Xem thêm: Cửa sổ ngữ cảnh · Context engineering