Giới thiệu
OpenArch là bộ implementation PyTorch viết tay cho các kiến trúc LLM mã nguồn mở hiện đại. Mỗi kiến trúc được đặt trong một file dễ đọc để người học nhìn thấy trực tiếp các lựa chọn như attention, normalization, positional encoding, decoder dense hay sparse MoE.
Dự án không cố thay thế transformers và cũng không tối ưu cho inference production. Mục tiêu là clarity: loại bớt sharding, backward compatibility và các lớp tối ưu hiệu năng thường che khuất cấu trúc model trong repository chính thức.
Tính năng chính
Các implementation dựa trên paper, technical report, config.json tham chiếu và tài liệu phân tích kiến trúc. Danh sách hiện có bao phủ nhiều họ model:
- GPT-2 XL với absolute positional embedding và multi-head attention.
- Llama 2 và Llama 3, thể hiện chuyển dịch từ MHA sang grouped-query attention.
- OLMo 2, Qwen 3 và GLM 4.5 với các biến thể QK-Norm.
- DeepSeek R1 và Kimi K2 với multi-head latent attention và MoE.
- Gemma 3, Mistral 3 và GPT-OSS với sliding-window attention.
- PaliGemma ở nhóm multimodal.
Các model được đánh dấu hoàn thành có thể chạy forward pass; một số mục như Grok-2.5, Qwen3 multimodal và DALL-E vẫn đang xây dựng. Toàn bộ roadmap bám theo 72 kiến trúc trong LLM Architecture Gallery.
Mỗi thư mục model chứa model.py và một README mô tả lựa chọn kiến trúc cùng nguồn tham khảo. Cấu trúc này giúp so sánh từng delta mà không phải lần qua một codebase production lớn.
Cách sử dụng
OpenArch phù hợp nhất khi đọc paper hoặc học một kỹ thuật kiến trúc cụ thể:
- Chọn hai model gần nhau, chẳng hạn Llama 2 và Llama 3.
- Mở song song các file
model.pyvà ghi lại khác biệt về attention, norm và RoPE. - Đối chiếu từng khối với paper hoặc
config.jsonchính thức. - Thêm một forward-pass test với official weights nếu muốn kiểm chứng implementation.
Repository cũng gợi ý contributor chọn một kiến trúc chưa hoàn thành, bổ sung README, viết test so output trên vài token hoặc cải thiện docstring. Với thay đổi lớn, tác giả đề nghị mở issue trước để tránh làm trùng.
Lưu ý cho Dev
Đây là tài liệu học, không phải thư viện đã được chứng nhận cho production. Bảng trạng thái chỉ nói implementation có thể chạy forward pass; nó không hứa hẹn độ tương thích đầy đủ, tốc độ, memory efficiency hay kết quả bit-for-bit với code chính thức. Tác giả cũng ghi rõ mọi sai sót có thể thuộc về project và khuyên dùng official implementation hoặc transformers khi triển khai.
Giá trị lớn nhất của OpenArch là biến một bảng so sánh kiến trúc thành code có thể đọc. Dev muốn hiểu vì sao một model dùng GQA, MLA, sliding window, YaRN hay shared experts có thể bắt đầu ở đây, sau đó xác minh bằng paper và repository gốc trước khi đưa kết luận vào thiết kế hệ thống.