Kiến trúc LLM hiện đại
Kiến trúc LLM hiện đại
Transformer công bố năm 2017 và đến giờ vẫn là bộ xương. Nhưng gần như mọi mô hình mở bạn tải về hôm nay đã đổi khác ở nhiều chỗ, và mỗi chỗ đổi đều để giải một bài toán rất cụ thể.
Bạn đã học self-attention và positional encoding ở môn Nền tảng AI, rồi giải mã và perplexity ở môn NLP. Môn này bắt đầu từ đúng chỗ đó: cái gì đã thay đổi kể từ transformer nguyên bản, và vì sao phải thay đổi.
Vì sao môn này khác các môn kia
Các môn trước tính được mọi thứ từ dữ liệu nhỏ ngay trong trình duyệt. Ở đây không thể: không ai chạy một mô hình 70 tỉ tham số trong tab của bạn. Nên môn này chọn một góc khác, và đó là góc mà trực giác của phần lớn người học đang hổng nhất.
Phần lớn quyết định kiến trúc hiện đại là bài toán kế toán. Bao nhiêu byte cho mỗi token trong bộ đệm. Bao nhiêu tham số thật sự chạy cho mỗi token. Bao nhiêu VRAM cho một độ dài ngữ cảnh. Cắt bao nhiêu bit thì mất gì. Những con số đó tính được chính xác từng chữ số bằng số học phổ thông, và chúng giải thích gần hết những gì bạn đọc trong báo cáo kỹ thuật của các mô hình mở.
Nên mỗi bài ở đây là một bảng tính sống: bạn sửa cấu hình, con số tính lại ngay, và mọi phép tính đều bị một cổng kiểm số canh.
Ba điều phải nói trước
Sim không phải mô hình. Không có bài nào ở đây chạy một mô hình thật. Chúng tính đúng cơ chế trên cấu hình bạn đặt. Một sim nói cho bạn biết GQA cắt bộ đệm đi bao nhiêu lần, nhưng không nói được nó làm chất lượng giảm bao nhiêu, vì cái đó phải huấn luyện mới biết.
Số của mô hình có tên thật đều kèm ngày. Mỗi sim có sẵn vài preset mang tên mô hình cụ thể, kèm ngày lấy số và nguồn. Lĩnh vực này đổi rất nhanh, nên hãy coi các preset đó là ví dụ đã đóng băng thời điểm, không phải sự thật vĩnh viễn. Mọi tham số đều sửa được, nên nếu bạn có số mới hơn thì gõ vào là kiểm lại được ngay.
Cổng kiểm số canh phép tính, không canh lời khẳng định. Nó bảo đảm rằng nếu cấu hình là như vậy thì con số phải là như vậy. Nó không bảo đảm mô hình X ngoài kia đúng có cấu hình đó.
Lộ trình
Cả tám chương đã học được:
| Chương | Nội dung | Con số bạn tự tính được |
|---|---|---|
| 1 | Chú ý rẻ đi bằng cách nào | byte KV cache mỗi token, MHA tới MQA tới GQA, MLA nén tiềm ẩn, cửa sổ trượt |
| 2 | Trộn chuyên gia | 671 tỉ tham số tổng so với 37 tỉ hoạt động, mất cân bằng tải, chuyên gia chia sẻ |
| 3 | Vị trí và ngữ cảnh dài | RoPE quay vector, nới ngữ cảnh kiểu nội suy, NTK và YaRN |
| 4 | Sinh nhanh hơn | giải mã đầu cơ, dự đoán nhiều token, KV phân trang |
| 5 | Số ít bit hơn | từng bit của FP8 và INT4, lượng tử hoá theo nhóm, ngoại lệ |
| 6 | Huấn luyện và hậu huấn luyện | 6ND ra bao nhiêu giờ GPU và bao nhiêu tiền, bộ nhớ huấn luyện gấp 9,1 lần suy luận, LoRA còn 0,0849% tham số, hàm mất mát theo sở thích |
| 7 | Đọc một mô hình mở | cộng từ config.json ra đúng 8.030.261.248 tham số, tệp 16,1 GB chia thành 4 mảnh, và mô hình này không vừa một thẻ 24 GiB trừ khi cắt ngữ cảnh xuống 56.664 token |
| 8 | Tra cứu | bảng 94 thuật ngữ phủ đủ 23 bài, và bảng tính xem mỗi kỹ thuật cắt được bao nhiêu byte cho đúng cấu hình bạn đang gõ |
Môn này nằm ở đâu
Cần nền toán của attention thì học Nền tảng AI: toán và mạng nơ-ron. Cần hiểu token, perplexity và các độ đo thì học NLP: thuật ngữ và độ đo. Muốn dùng mô hình để làm việc chứ không phải mổ nó ra thì xem Prompt · Skill · Agent.