OpenArchLabOpen Architecture — From Models to Systems

E · Training Architecture

Engram · conditional memory và lookup tables

Cơ chế bộ nhớ có điều kiện (Engram) tách các bảng tra cứu cụm từ tĩnh (n-gram lookup tables) khỏi mạng tính toán để tăng dung lượng tri thức mà không tốn thêm FLOPs.

LESSON ID arch-conditional-memory GROUP Bản đồ nền tảng LLM
Mục lục bài học

1Định nghĩa

Conditional Memory (tiêu biểu là cơ chế Engram) mở rộng dung lượng tri thức của mô hình bằng các bảng tra cứu tham số lớn (lookup tables) được kích hoạt theo ngữ cảnh cục bộ, bổ sung cho hướng mở rộng tính toán của Mixture of Experts (MoE). Nếu MoE dùng router để chọn ma trận nào sẽ nhân, thì Engram dùng chuỗi cụm từ liền kề (token n-grams) qua hàm băm (hash) để tra cứu trực tiếp vector nhớ từ bảng rồi ghép vào luồng ẩn của lớp.

Đặc tính kỹ thuật quan trọng nhất của Engram là chỉ số ô nhớ cần tra chỉ phụ thuộc vào mã token đầu vào từ tokenizer chứ không phụ thuộc vào vector ẩn của lớp trước. Nhờ biết trước địa chỉ cần đọc ngay từ đầu lượt chạy, runtime có thể đặt các bảng nhớ khổng lồ này trên RAM của host CPU và tải trước (prefetch) bất đồng bộ qua PCIe vào GPU mà không làm nghẽn bước tính toán.

Ví dụ đời thường: Cơ chế bộ nhớ Engram giống như cuốn từ điển thuật ngữ đặt ngay cạnh bàn làm việc của người biên tập: khi gặp một cụm từ cố định hay tên riêng quen thuộc (token n-gram), thay vì phải ngồi suy luận phức tạp từ đầu, người biên tập chỉ cần tra đúng mục từ đó trong cuốn từ điển để lấy ngay nghĩa chuẩn ghép vào bài viết.

2Luồng

Sơ đồ luồng (3 bước)
  1. Tạo n-gram keys

    Dùng tokenizer, document boundaries và hash đúng config.

  2. Lookup / prefetch

    Lấy vector table từ memory được bố trí.

  3. Fuse với hidden

    Áp gate/projection/normalization được học.

Mã Mermaid
flowchart TD
  step1["Tạo n-gram keys"]
  step2["Lookup / prefetch"]
  step3["Fuse với hidden"]
  step1 --> step2
  step2 --> step3

Luồng mô tả cơ chế hoặc quy trình kiểm tra. Các ví dụ số là giả định giáo dục; demo Atlas không chạy kiến trúc production này.

3Giải pháp

Theo dõi total table parameters, accelerator residency và lookup traffic riêng active compute. Bảng rất lớn không có nghĩa mỗi token đọc cả bảng.

Engram có paper tháng 01/2026; V4.1 công khai triển khai tables. Không gán Engram vào V4 chỉ vì hai paper cùng nhóm tác giả.

Prefix cache cần phiên bản tokenizer/table/weights. Nội dung retrieved không được tự xem là factual database chính xác; model có thể dùng table sai hoặc collision.

4Profiling

  • Memory & lookup

    Đo table storage, resident fraction, bandwidth, cache hit và p95 lookup latency.

  • Ablation quality

    Kiểm tra factual/local pattern tasks và tokenizer/document-boundary changes.

Mẹo đo lường: ghim số liệu trên workload thật, ghi cả p50/p95/p99 thay vì chỉ trung bình, và luôn ghi lại điều kiện chạy (batch, cache, đồng thời, phần cứng) trước và sau khi tối ưu. Số đo thiếu điều kiện chạy thì không so sánh được.

5Ví dụ

Prefetch minh họa

Khi các token prefix đã biết, khóa cho n-gram trong prefix cũng biết, nên có thể chuẩn bị lookup. Token chưa sinh không có khóa chắc chắn trước prediction.

Bảng ≠ cache request

Hai người dùng cùng token n-gram có thể truy cập cùng learned table. KV của mỗi người chứa hidden ngữ cảnh khác nhau nên không chia sẻ tùy ý.

6Thuật ngữ

N-gram lookup
Lấy embedding dựa trên nhóm token liền kề và hàm hash.
Conditional memory
Truy cập một phần learned tables thay vì kích hoạt một mạng expert.
Glossary (7)
Vector
Danh sách các số biểu diễn một token hoặc đặc trưng.
Model weights
Các tham số số học được học và lưu trong checkpoint.
Tokenizer
Bộ chuyển đổi văn bản và chuỗi mã token theo bảng từ vựng.
Prefix
Phần đầu của một chuỗi token; cache reuse cần phần đầu tương thích.
Cache
Bộ nhớ giữ kết quả có thể dùng lại; trong attention thường giữ key/value vectors.
Latency
Thời gian chờ để nhận một kết quả hoặc một bước kết quả.
Host
Phần chương trình điều khiển thiết bị, thường chạy trên bộ xử lý trung tâm.

7Bài liên quan

8Nguồn