Module 2 • Bài 645 phút

Context Window và vì sao AI "quên"

Context window là ngân sách token cố định mỗi lượt gọi, bản chất hiện tượng AI 'quên' trong hội thoại dài và 3 chiến lược lưu giữ thông tin cốt lõi.

Bản chất Context Window (ngân sách token cố định không tự giãn)
Phân biệt ứng dụng cắt tỉa lịch sử vs. Model suy giảm trí nhớ
Thiết kế 3 cơ chế giữ thông tin sống sót qua hội thoại dài

Context Window - khung nhìn giới hạn khiến AI có vẻ như "quên"

Ở Bài 5, ta đã biết mọi thứ model xử lý đều được đo bằng token. Context Window chính là ngân sách token cố định cho một lần gọi model - giới hạn này giải thích hiện tượng AI có vẻ "quên" thông tin trong các phiên chat dài.

1. Context Window là gì: Ngân sách token cố định cho một lần gọi

Context Window là tổng số token tối đa model có thể xử lý trong một lần gọi - bao gồm: System Prompt + Lịch sử hội thoại + Tin nhắn mới + Output chuẩn bị sinh ra.

Quy luật cốt lõi: Con số này cố định theo từng model (ví dụ 128k, 200k token) và không tự giãn ra theo nhu cầu, dù cuộc hội thoại kéo dài bao lâu.

Cửa sổ chỉ trượt tới - không bao giờ giãn ra

Khi có tin nhắn mới, tin nhắn cũ nhất trôi khỏi tầm nhìn. Model chỉ thấy đúng phần còn nằm trong khung.

System prompt

Luôn được gửi kèm - không bao giờ trượt ra

Context window (5 tin nhắn gần nhất)

Tin nhắn #1
Tin nhắn #2
Tin nhắn #3
Tin nhắn #4

Minh hoạ đơn giản hoá theo số tin nhắn - ngân sách thật tính bằng token, không phải theo số tin.

Cửa sổ trượt tới - tin nhắn rơi ra bên trái không còn được gửi cho model ở lượt gọi này dù đã diễn ra trước đó.

2. Vì sao AI "quên": Do ứng dụng cắt bớt, không phải model mất trí nhớ

Khi hội thoại dài dần và vượt ngân sách token, ứng dụng (không phải model) bắt buộc phải cắt tỉa dữ liệu - giữ lại các tin nhắn gần nhất và loại bỏ (hoặc tóm tắt) tin nhắn cũ nhất:

  • Model không "quên" theo nghĩa suy giảm trí nhớ sinh học - đơn giản là nó không còn được cung cấp phần dữ liệu đã bị cắt trong lần gọi đó.
  • Ẩn dụ: Context Window như khung cửa sổ toa tàu đang chạy: bạn chỉ nhìn thấy cảnh vật lọt vào khung cửa lúc này, cảnh vật đã trôi qua sẽ mất hẳn khỏi tầm mắt dù vẫn tồn tại trong thực tế.

3. Phân biệt Context Window với tính năng "Memory" dài hạn

Trong một phiên chat đơn, thông tin bị đẩy ra ngoài Context Window sẽ mất hoàn toàn - trừ khi ứng dụng chủ động xây dựng cơ chế lưu trữ riêng (RAG hoặc Persistent Memory).

Nếu sản phẩm không có cơ chế này, model hoàn toàn không thể truy xuất lại dữ liệu cũ đã bị cắt bỏ.

4. Ứng dụng: Chatbot HR tự mâu thuẫn và chiến lược phòng tránh

Tình huống: Nhân viên HR chat hơn 60 tin nhắn với AI để xây quy trình onboarding. Ở tin nhắn #3 quy định "chỉ có 2 loại hợp đồng: chính thức và thử việc, không có thời vụ". Đến tin nhắn #58, HR yêu cầu "soạn checklist cho hợp đồng thời vụ 3 tháng", AI vẫn soạn bình thường vì tin nhắn #3 đã trượt khỏi khung nhìn!

Tin nhắn #3 rơi khỏi khung khi tới tin nhắn #58

Đúng cơ chế cửa sổ trượt ở minh hoạ trên, áp vào ví dụ chatbot HR.

Tin nhắn #3 (đầu buổi)

“Công ty mình chỉ có 2 loại hợp đồng: chính thức và thử việc, không có hợp đồng thời vụ.”

đã ngoài khung ở #58
55 tin nhắn ở giữa
Tin nhắn #58 (sau đó rất lâu)

“Soạn checklist onboarding cho một bạn hợp đồng thời vụ 3 tháng.”

còn trong khung

Kết quả: AI soạn checklist đúng như yêu cầu - mâu thuẫn với tin nhắn #3, không phải vì bất cẩn, mà vì nó không còn thấy tin nhắn đó nữa.

Không tin nhắn nào sai - mâu thuẫn xuất hiện vì tin nhắn #3 đã trượt khỏi context window trước khi tin nhắn #58 tới.