Lập trình trong không gian trọng số: Cách LLM đọc và chỉnh sửa trọng số mạng nơ-ron
Weight-space programming cho phép một LLM đọc và chỉnh sửa trọng số của mạng mà không cần huấn luyện. Thí nghiệm, kết quả, giới hạn của GPT-6 Astra từ MIT và ý nghĩa của chúng.
Lập trình trong không gian trọng số (weight-space programming) là một phương pháp trong đó một mô hình ngôn ngữ lớn (LLM) đa dụng đọc các trọng số thô của một mạng nơ-ron và chỉnh sửa hoặc viết chúng trực tiếp từ một mục tiêu bằng ngôn ngữ tự nhiên, không cần hạ dốc gradient và không có vòng lặp huấn luyện. Trong một bài blog đăng ngày 2 tháng 11, 2026, bốn nhà nghiên cứu của MIT CSAIL báo cáo rằng GPT-6 Astra đã có thể làm điều này: nó chỉnh 0,016% trọng số của Qwen3.5-0.8B và nâng điểm MATH-500 của mô hình từ 7,9% lên 48,1%.
Tác giả là Rikiya Takehi, Jayden Teoh, Alex Zhang và Omar Khattab, người đứng tên đầu trong bài báo gốc về DSPy. Kết quả còn sớm và đến từ một LLM duy nhất, nhưng nhóm đã công bố mọi prompt, phản hồi và đánh giá phía sau chúng.
Trong bài viết này, tôi sẽ trình bày weight-space programming là gì, các thí nghiệm cho thấy gì, phương pháp vấp ở đâu và ý nghĩa của nó với công việc của bạn. Nếu bạn cần nhắc lại về mô hình thực hiện việc chỉnh sửa, hãy xem hướng dẫn về GPT-6 Astra của chúng tôi.
Weight-Space Programming là gì?
Weight-space programming là thực hành yêu cầu một LLM đọc, sửa hoặc viết trực tiếp các trọng số của một mạng nơ-ron dựa trên một đặc tả bằng ngôn ngữ tự nhiên, đôi khi không cần bất kỳ phản hồi nào từ môi trường. LLM tìm ra mỗi phần của mạng đang tính toán gì, hoặc nên tính toán gì, và đặt các con số tương ứng.
Đó là một lộ trình khác với cách trọng số thường được tạo ra. Hiện nay, trọng số đến từ hạ dốc gradient với các bộ tối ưu như Adam hoặc Muon, từ các mạng được huấn luyện để sinh trọng số của mạng khác, hoặc từ các trình biên dịch chuyển chương trình hình thức thành mạng. Trong thiết lập của MIT, GPT-6 Astra không viết vòng lặp huấn luyện. Nó suy luận về trọng số như cách một kỹ sư suy luận về mã nguồn.
LLM đã tối ưu hóa prompt, chương trình và mã huấn luyện. Lập luận của các tác giả là sự tối ưu hóa dựa trên suy luận này giờ đã chạm tới chính các trọng số.
Những gì các nhà nghiên cứu MIT đã chứng minh
8 thí nghiệm rơi vào ba nhóm: đọc trọng số, sửa chúng và viết từ đầu. Phần lớn dùng các mạng nhỏ có trọng số vừa với cửa sổ ngữ cảnh của Astra dưới dạng văn bản; các mạng lớn hơn bổ sung sandbox Python và một số có ngân sách cho các lượt truyền xuôi.
Đọc trọng số của một mạng
Nhóm đã huấn luyện bốn policy bằng proximal policy optimization (PPO), thuật toán học tăng cường chuẩn cho tác tử chơi game, trên các phiên bản lưới của Breakout, Pong, Pac-Man và Freeway, tất cả dùng cùng một kiến trúc có 17.253 trọng số. Mà không được cung cấp danh sách trò chơi, Astra đã gọi đúng tên trò chơi cho cả 4 mạng, đọc các manh mối như trọng số lớp đầu tiên của tác tử Breakout nằm dọc hàng dưới cùng, nơi có thanh trượt.
Hai phiên bản khó hơn theo sau:
Mô hình khuếch tán: Từ trọng số của 3 DDPM nhỏ, không được phép truyền xuôi, Astra xác định cái nào sinh hình tròn, vuông hoặc tam giác. Nó vẽ các hình dạng như nét viền mặc dù các mô hình tạo hình đặc, một gợi ý rằng nó đọc hình học trọng số thay vì mô phỏng mạng.
Mô hình ngôn ngữ: Chỉ được cung cấp 4 block transformer giữa của các mô hình ký tự 7,2 triệu tham số, Astra gọi tên ngôn ngữ huấn luyện (Python, tiếng Nhật romaji hoặc tiếng Anh) cho cả 3, ở cả hai lần thử. Nó cũng tìm thấy mọi “copying head”, còn gọi là “induction head”, và không gọi nhầm head nào khác. Hướng dẫn của chúng tôi về multi-head attention giải thích các head đó làm gì.
Sửa một policy bị hỏng
Một policy PPO được huấn luyện 1 tỷ bước trên màn xe và dốc trong môi trường Kinetix luôn lái thẳng vào dốc và chết máy. Được cung cấp 171.664 trọng số, bối cảnh cảnh và một tập đã ghi, Astra giải thích nguyên nhân lỗi và viết một bản sửa trong một phản hồi duy nhất không cần công cụ. Bản chỉnh sửa thay đổi 3,5% trọng số và nâng tỷ lệ thành công từ 0% lên 100% trên 1.024 tập.
Bản sửa dễ đọc: một nhánh nhỏ bổ sung để lùi xe lại, rồi tắt khi xe vượt qua dải.
Viết mạng từ đầu
Với ba trò chơi MinAtar, Astra nhận luật chơi, mã nguồn và một mạng toàn số 0, rồi viết mọi trọng số dưới dạng văn bản trong một phản hồi, không cần dữ liệu, gradient hay công cụ. Cả ba mạng đều vượt các tác tử PPO được huấn luyện 100 triệu bước.
Trò chơi
PPO, 100M bước
PPO, 500M bước
Astra, một lần viết
Breakout
15,8
25,3
517,4
Seaquest
5,6
88,9
53,1
Asterix
25,8
55,2
53,2
Breakout là ngoại lệ vì Astra viết nó như một chương trình: lớp đầu tính nơi quả bóng sẽ rơi, lớp thứ hai đưa thanh trượt đến đó. Một mạng cờ vây 9x9 với 1.480.274 trọng số, được viết trong sandbox Python, đã vượt mạng PPO cùng kích thước được huấn luyện trên 20 triệu ván khi Astra có 50 lượt truyền xuôi để thử nghiệm đối chiếu.
Sửa các vòng lặp suy luận trong Qwen3.5-0.8B
Kết quả thực tiễn nhất nhắm vào một lỗi đã biết. Thẻ mô hình của chính Qwen cảnh báo rằng Qwen3.5-0.8B dễ mắc các vòng lặp suy nghĩ, và trong các thử nghiệm của MIT, 93,0% câu trả lời MATH-500 của nó chạy tới giới hạn 32.768 token. Làm việc trong một kernel Python với 50 lượt truyền xuôi trên bài tập luyện từ GSM8K và MATH, Astra lần theo các vòng lặp tới một hướng do các MLP của lớp 15 và 19 viết ra và trừ nó khỏi 64 cột đầu ra ở mỗi lớp.
Trọng số đã chỉnh
0,016%
131.072 của 0,8 tỷ
MATH-500
7,9% → 48,1%
Bản gốc so với bản đã chỉnh
GSM8K
13,8% → 67,1%
Bản gốc so với bản đã chỉnh
IFEval
21,0% → 62,3%
Tuân thủ hướng dẫn
Tỷ lệ câu trả lời chạm giới hạn token giảm xuống 33,1%, và vì các vòng lặp không chỉ đặc thù ở toán, khả năng tuân thủ hướng dẫn cũng cải thiện. Ngân sách quan trọng: với 10 hoặc 25 lượt truyền xuôi, các vòng lặp hầu như không biến mất. Ahsen Khaliq của Hugging Face đã dựng lại checkpoint đã chỉnh từ log và chạy lại MATH-500 với cùng thiết lập, đạt 51,0%.
Nơi Weight-Space Programming chưa đáp ứng
Weight-space programming chưa đáp ứng ở những nơi vấn đề không phải là một lỗi đơn lẻ, cục bộ trong trọng số. Các tác giả báo cáo hai thất bại rõ ràng, và cả hai đều mang tính gợi mở.
Nịnh bợ (sycophancy) không thấy rõ trong trọng số. Với một bản fine-tune trung thực và một bản nịnh bợ của Gemma 3 270M, Astra không thể phân biệt chúng chỉ từ trọng số trong cả bốn lần thử. Khi có thể xem mẫu chú ý, nó nhận ra bản nịnh bợ trong cả ba cặp.
Gemma 3 270M không giỏi toán hơn. Gemma hiếm khi lặp, nên không có một lỗi đơn lẻ để loại bỏ, và bản chỉnh sửa tốt nhất của Astra chỉ đưa MATH-500 từ 6,8% lên 7,7%. Như các tác giả nói, chỉnh trọng số có thể loại bỏ một vật cản che giấu khả năng, nhưng không thể thêm một khả năng mà mô hình không có.
Các lưu ý rộng hơn: mọi thí nghiệm dùng một LLM, mạng lớn nhất có 0,8 tỷ trọng số, và đây là bài blog với kết quả sớm, không phải bài báo bình duyệt. Các tác giả cho biết họ vẫn đang xây dựng một bộ chuẩn đánh giá cho nhiệm vụ.
Ý nghĩa với các chuyên gia dữ liệu và AI
Với người làm thực hành, weight-space programming hiện là một tín hiệu nghiên cứu, chưa phải công cụ. Hai phần của nó đáng theo dõi ngay bây giờ.
Thứ nhất là khả năng diễn giải. Các phương pháp quy gán như SHAP giải thích mô hình qua các đầu vào, và diễn giải cơ chế cần các công cụ xây riêng cho nhiệm vụ. Astra khôi phục các induction head với một phương pháp nhân ma trận đã biết mà các nhà nghiên cứu không hề nhắc đến. Nếu điều đó giữ vững trên các mô hình lớn hơn, "hỏi một mô hình tiên phong lớp này làm gì" sẽ trở thành bước đầu trước khi dùng công cụ nặng.
Thứ hai là sửa chữa có mục tiêu. Khi một mô hình nhỏ có một lỗi hẹp, như các vòng lặp của Qwen, cách sửa thường là fine-tune trên dữ liệu mới. Một chỉnh sửa 131.072 trọng số để phần còn lại của mô hình không bị đụng tới, điều mà các tác giả cho là tránh được quên thảm họa do fine-tune gây ra. Tôi sẽ coi đó là giả thuyết: kết quả với Gemma cho thấy chỉnh sửa chỉ hiệu quả khi có một thủ phạm duy nhất để tìm. Danh sách mong muốn rộng hơn của các tác giả, từ kiểm toán backdoor của mô hình mà không cần chạy đến unlearning khả năng mà không cần dữ liệu, vẫn chưa được chứng minh.
Cách tự thử Weight-Space Programming
Cách trực tiếp nhất để kiểm thử weight-space programming là phát lại một trong các thí nghiệm: log chứa chính xác các prompt mà Astra nhận, và GPT-6 Astra có sẵn dưới dạng gpt-6-astra trong OpenAI API, trong Amazon Bedrock và trong các gói trả phí của ChatGPT. Thí nghiệm 1, gọi tên trò chơi từ trọng số của một policy, là nơi dễ bắt đầu nhất:
Lấy log. Clone kho lm_understand-logs. Mỗi thư mục thí nghiệm có một README ánh xạ mọi con số trong bài viết tới tệp nó xuất phát.
Chọn một thí nghiệm không công cụ. Thí nghiệm 1, 2, 4 và 5 không cho Astra công cụ nào, nên một prompt là tái tạo được mỗi lần chạy. Ở Thí nghiệm 1, mỗi thư mục lần chạy có một prompt.txt với mô tả mạng, câu hỏi và toàn bộ 17.253 trọng số dưới dạng văn bản.
Gửi theo cách các tác giả đã làm. Họ gọi gpt-6-astra qua Codex CLI (codex exec, prompt qua stdin) với mọi công cụ tích hợp tắt đi, ở mức nỗ lực suy luận cao cho Thí nghiệm 1. Phần còn lại của cấu hình ở harness/codex_config.toml, nhưng mặc định của nó là gpt-6-luna ở nỗ lực medium, vì vậy hãy đặt model và nỗ lực suy luận cho mỗi lần gọi, như các tác giả đã làm.
So sánh câu trả lời. Mỗi thư mục lần chạy cũng giữ answer.md của Astra, và eval/ chứa việc chấm điểm và đáp án.
Một lần chạy dùng khoảng 73.700 token đầu vào và dưới 2.000 token đầu ra, nên với mức $10 và $50 mỗi triệu token của API, một lần phát lại tốn dưới $1. Các thí nghiệm sandbox Python (3, 6, 7 và 8) cần harness/sandbox.py của các tác giả và nhiều lượt hơn, nên hãy dự trù ngân sách.
Nếu bạn không muốn chạy gì, bản Qwen3.5-0.8B đã chỉnh có trên Hugging Face theo Apache-2.0, với hash của 2 tensor đã thay đổi trên thẻ mô hình. Hugging Face Space cho phép bạn nhập một bài toán và xem mô hình gốc lặp trong khi bản đã chỉnh giải được.
Kết luận
Weight-space programming cho thấy một LLM tiên phong có thể đọc và chỉnh trọng số mạng nơ-ron bằng suy luận, ít nhất với các mạng nhỏ và các lỗi đơn lẻ, cục bộ. Bản sửa Qwen là kết quả sẽ thu hút sự chú ý, và xứng đáng, một phần vì Hugging Face đã tái lập trong vòng một ngày.
Tôi thận trọng hơn với các khẳng định lớn hơn. Một mô hình, các mạng nhỏ và chưa có bộ chuẩn là nền tảng mỏng cho cách đóng khung của các tác giả rằng "trọng số mạng nơ-ron của chúng ta sắp được LLM tối ưu trực tiếp". Dù vậy, các thất bại được báo cáo cẩn thận như các thành công, và điều đó khiến tôi coi trọng các thành công hơn.
Nếu bạn muốn hiểu cặn kẽ nội bộ transformer — nơi các chỉnh sửa này nhắm tới — tôi khuyên bạn theo học lộ trình Developing Large Language Models của chúng tôi.
Câu hỏi thường gặp
Weight-space programming là gì?⌄
Weight-space programming là một phương pháp trong đó một LLM đa dụng đọc các trọng số thô của một mạng nơ-ron và chỉnh hoặc viết chúng trực tiếp từ một mục tiêu bằng ngôn ngữ tự nhiên, không cần hạ dốc gradient hay vòng lặp huấn luyện. Thuật ngữ này đến từ một bài blog tháng 11/2026 của các nhà nghiên cứu MIT CSAIL Rikiya Takehi, Jayden Teoh, Alex Zhang và Omar Khattab, những người đã thử nghiệm nó với GPT-6 Astra.
LLM có thể chỉnh trực tiếp trọng số mạng nơ-ron không?⌄
Có, ít nhất với các mạng nhỏ. Trong các thí nghiệm của MIT CSAIL, GPT-6 Astra đã chỉnh 3,5% trọng số của một policy điều khiển thất bại để đưa nó từ 0% lên 100% thành công, và chỉnh 0,016% trọng số của Qwen3.5-0.8B để cắt các vòng lặp suy nghĩ của nó, với tỷ lệ câu trả lời chạm giới hạn token giảm từ 93% xuống 33%. Nó thất bại khi không có một lỗi đơn lẻ để loại bỏ, như với các lỗi toán của Gemma 3 270M.
GPT-6 Astra đã cải thiện Qwen3.5-0.8B mà không cần huấn luyện như thế nào?⌄
Astra lần theo các vòng lặp suy nghĩ của Qwen3.5-0.8B tới một hướng do các MLP của lớp 15 và 19 viết ra, rồi trừ nó khỏi 64 cột đầu ra ở mỗi lớp, thay đổi 131.072 trọng số. Với 50 lượt truyền xuôi trên bài tập luyện, MATH-500 tăng từ 7,9% lên 48,1%, GSM8K từ 13,8% lên 67,1% và IFEval từ 21,0% lên 62,3%.
Weight-space programming có thay thế cho fine-tune không?⌄
Chưa. Nó hiệu quả với một lỗi đơn lẻ, cục bộ như các vòng lặp suy nghĩ của Qwen, nhưng không thể thêm những khả năng mà mô hình không có, và mới chỉ được thử với một LLM trên các mạng đến 0,8 tỷ trọng số. Hiện tại, fine-tune vẫn là cách thực tiễn để thay đổi hành vi mô hình.
Tôi có thể tự thử weight-space programming không?⌄
Bạn có thể kiểm tra và thử nghiệm kết quả mà không cần truy cập GPT-6 Astra. Các nhà nghiên cứu đã công bố đầy đủ log thí nghiệm trên GitHub, bản Qwen3.5-0.8B đã chỉnh có trên Hugging Face theo Apache-2.0, và một Hugging Face Space cho phép bạn so sánh mô hình gốc và đã chỉnh trên bài toán của chính bạn.
Tom là Biên tập viên Khoa học Dữ liệu tại DataCamp. Anh viết và biên tập các hướng dẫn về AI, so sánh các bản phát hành LLM mới, và xây dựng quy trình làm việc được hỗ trợ bởi AI. Trước đây, anh làm việc trong lĩnh vực khoa học dữ liệu tại Deutsche Telekom. Ngoài công việc, anh dự báo các trận bóng đá bằng học máy.
Học cách xây dựng mạng nơ-ron đầu tiên của bạn, điều chỉnh các tham số siêu (hyperparameters) và giải quyết các vấn đề phân loại và hồi quy trong PyTorch.
Lập trình trong không gian trọng số (weight-space programming) là một phương pháp trong đó một mô hình ngôn ngữ lớn (LLM) đa dụng đọc các trọng số thô của một mạng nơ-ron và chỉnh sửa hoặc viết chúng trực tiếp từ một mục tiêu bằng ngôn ngữ tự nhiên, không cần hạ dốc gradient và không có vòng lặp huấn luyện. Trong một bài blog đăng ngày 2 tháng 11, 2026, bốn nhà nghiên cứu của MIT CSAIL báo cáo rằng GPT-6 Astra đã có thể làm điều này: nó chỉnh 0,016% trọng số của Qwen3.5-0.8B và nâng điểm MATH-500 của mô hình từ 7,9% lên 48,1%.
Tác giả là Rikiya Takehi, Jayden Teoh, Alex Zhang và Omar Khattab, người đứng tên đầu trong bài báo gốc về DSPy. Kết quả còn sớm và đến từ một LLM duy nhất, nhưng nhóm đã công bố mọi prompt, phản hồi và đánh giá phía sau chúng.
Trong bài viết này, tôi sẽ trình bày weight-space programming là gì, các thí nghiệm cho thấy gì, phương pháp vấp ở đâu và ý nghĩa của nó với công việc của bạn. Nếu bạn cần nhắc lại về mô hình thực hiện việc chỉnh sửa, hãy xem hướng dẫn về GPT-6 Astra của chúng tôi.
Weight-Space Programming là gì?
Weight-space programming là thực hành yêu cầu một LLM đọc, sửa hoặc viết trực tiếp các trọng số của một mạng nơ-ron dựa trên một đặc tả bằng ngôn ngữ tự nhiên, đôi khi không cần bất kỳ phản hồi nào từ môi trường. LLM tìm ra mỗi phần của mạng đang tính toán gì, hoặc nên tính toán gì, và đặt các con số tương ứng.
Đó là một lộ trình khác với cách trọng số thường được tạo ra. Hiện nay, trọng số đến từ hạ dốc gradient với các bộ tối ưu như Adam hoặc Muon, từ các mạng được huấn luyện để sinh trọng số của mạng khác, hoặc từ các trình biên dịch chuyển chương trình hình thức thành mạng. Trong thiết lập của MIT, GPT-6 Astra không viết vòng lặp huấn luyện. Nó suy luận về trọng số như cách một kỹ sư suy luận về mã nguồn.
LLM đã tối ưu hóa prompt, chương trình và mã huấn luyện. Lập luận của các tác giả là sự tối ưu hóa dựa trên suy luận này giờ đã chạm tới chính các trọng số.
Những gì các nhà nghiên cứu MIT đã chứng minh
8 thí nghiệm rơi vào ba nhóm: đọc trọng số, sửa chúng và viết từ đầu. Phần lớn dùng các mạng nhỏ có trọng số vừa với cửa sổ ngữ cảnh của Astra dưới dạng văn bản; các mạng lớn hơn bổ sung sandbox Python và một số có ngân sách cho các lượt truyền xuôi.
Đọc trọng số của một mạng
Nhóm đã huấn luyện bốn policy bằng proximal policy optimization (PPO), thuật toán học tăng cường chuẩn cho tác tử chơi game, trên các phiên bản lưới của Breakout, Pong, Pac-Man và Freeway, tất cả dùng cùng một kiến trúc có 17.253 trọng số. Mà không được cung cấp danh sách trò chơi, Astra đã gọi đúng tên trò chơi cho cả 4 mạng, đọc các manh mối như trọng số lớp đầu tiên của tác tử Breakout nằm dọc hàng dưới cùng, nơi có thanh trượt.
Hai phiên bản khó hơn theo sau:
Sửa một policy bị hỏng
Một policy PPO được huấn luyện 1 tỷ bước trên màn xe và dốc trong môi trường Kinetix luôn lái thẳng vào dốc và chết máy. Được cung cấp 171.664 trọng số, bối cảnh cảnh và một tập đã ghi, Astra giải thích nguyên nhân lỗi và viết một bản sửa trong một phản hồi duy nhất không cần công cụ. Bản chỉnh sửa thay đổi 3,5% trọng số và nâng tỷ lệ thành công từ 0% lên 100% trên 1.024 tập.
Bản sửa dễ đọc: một nhánh nhỏ bổ sung để lùi xe lại, rồi tắt khi xe vượt qua dải.
Viết mạng từ đầu
Với ba trò chơi MinAtar, Astra nhận luật chơi, mã nguồn và một mạng toàn số 0, rồi viết mọi trọng số dưới dạng văn bản trong một phản hồi, không cần dữ liệu, gradient hay công cụ. Cả ba mạng đều vượt các tác tử PPO được huấn luyện 100 triệu bước.
Breakout là ngoại lệ vì Astra viết nó như một chương trình: lớp đầu tính nơi quả bóng sẽ rơi, lớp thứ hai đưa thanh trượt đến đó. Một mạng cờ vây 9x9 với 1.480.274 trọng số, được viết trong sandbox Python, đã vượt mạng PPO cùng kích thước được huấn luyện trên 20 triệu ván khi Astra có 50 lượt truyền xuôi để thử nghiệm đối chiếu.
Sửa các vòng lặp suy luận trong Qwen3.5-0.8B
Kết quả thực tiễn nhất nhắm vào một lỗi đã biết. Thẻ mô hình của chính Qwen cảnh báo rằng Qwen3.5-0.8B dễ mắc các vòng lặp suy nghĩ, và trong các thử nghiệm của MIT, 93,0% câu trả lời MATH-500 của nó chạy tới giới hạn 32.768 token. Làm việc trong một kernel Python với 50 lượt truyền xuôi trên bài tập luyện từ GSM8K và MATH, Astra lần theo các vòng lặp tới một hướng do các MLP của lớp 15 và 19 viết ra và trừ nó khỏi 64 cột đầu ra ở mỗi lớp.
Tỷ lệ câu trả lời chạm giới hạn token giảm xuống 33,1%, và vì các vòng lặp không chỉ đặc thù ở toán, khả năng tuân thủ hướng dẫn cũng cải thiện. Ngân sách quan trọng: với 10 hoặc 25 lượt truyền xuôi, các vòng lặp hầu như không biến mất. Ahsen Khaliq của Hugging Face đã dựng lại checkpoint đã chỉnh từ log và chạy lại MATH-500 với cùng thiết lập, đạt 51,0%.
Nơi Weight-Space Programming chưa đáp ứng
Weight-space programming chưa đáp ứng ở những nơi vấn đề không phải là một lỗi đơn lẻ, cục bộ trong trọng số. Các tác giả báo cáo hai thất bại rõ ràng, và cả hai đều mang tính gợi mở.
Các lưu ý rộng hơn: mọi thí nghiệm dùng một LLM, mạng lớn nhất có 0,8 tỷ trọng số, và đây là bài blog với kết quả sớm, không phải bài báo bình duyệt. Các tác giả cho biết họ vẫn đang xây dựng một bộ chuẩn đánh giá cho nhiệm vụ.
Ý nghĩa với các chuyên gia dữ liệu và AI
Với người làm thực hành, weight-space programming hiện là một tín hiệu nghiên cứu, chưa phải công cụ. Hai phần của nó đáng theo dõi ngay bây giờ.
Thứ nhất là khả năng diễn giải. Các phương pháp quy gán như SHAP giải thích mô hình qua các đầu vào, và diễn giải cơ chế cần các công cụ xây riêng cho nhiệm vụ. Astra khôi phục các induction head với một phương pháp nhân ma trận đã biết mà các nhà nghiên cứu không hề nhắc đến. Nếu điều đó giữ vững trên các mô hình lớn hơn, "hỏi một mô hình tiên phong lớp này làm gì" sẽ trở thành bước đầu trước khi dùng công cụ nặng.
Thứ hai là sửa chữa có mục tiêu. Khi một mô hình nhỏ có một lỗi hẹp, như các vòng lặp của Qwen, cách sửa thường là fine-tune trên dữ liệu mới. Một chỉnh sửa 131.072 trọng số để phần còn lại của mô hình không bị đụng tới, điều mà các tác giả cho là tránh được quên thảm họa do fine-tune gây ra. Tôi sẽ coi đó là giả thuyết: kết quả với Gemma cho thấy chỉnh sửa chỉ hiệu quả khi có một thủ phạm duy nhất để tìm. Danh sách mong muốn rộng hơn của các tác giả, từ kiểm toán backdoor của mô hình mà không cần chạy đến unlearning khả năng mà không cần dữ liệu, vẫn chưa được chứng minh.
Cách tự thử Weight-Space Programming
Cách trực tiếp nhất để kiểm thử weight-space programming là phát lại một trong các thí nghiệm: log chứa chính xác các prompt mà Astra nhận, và GPT-6 Astra có sẵn dưới dạng
gpt-6-astratrong OpenAI API, trong Amazon Bedrock và trong các gói trả phí của ChatGPT. Thí nghiệm 1, gọi tên trò chơi từ trọng số của một policy, là nơi dễ bắt đầu nhất:Lấy log. Clone kho lm_understand-logs. Mỗi thư mục thí nghiệm có một README ánh xạ mọi con số trong bài viết tới tệp nó xuất phát.
Chọn một thí nghiệm không công cụ. Thí nghiệm 1, 2, 4 và 5 không cho Astra công cụ nào, nên một prompt là tái tạo được mỗi lần chạy. Ở Thí nghiệm 1, mỗi thư mục lần chạy có một
prompt.txtvới mô tả mạng, câu hỏi và toàn bộ 17.253 trọng số dưới dạng văn bản.Gửi theo cách các tác giả đã làm. Họ gọi
gpt-6-astraqua Codex CLI (codex exec, prompt qua stdin) với mọi công cụ tích hợp tắt đi, ở mức nỗ lực suy luận cao cho Thí nghiệm 1. Phần còn lại của cấu hình ởharness/codex_config.toml, nhưng mặc định của nó làgpt-6-lunaở nỗ lựcmedium, vì vậy hãy đặt model và nỗ lực suy luận cho mỗi lần gọi, như các tác giả đã làm.So sánh câu trả lời. Mỗi thư mục lần chạy cũng giữ
answer.mdcủa Astra, vàeval/chứa việc chấm điểm và đáp án.Một lần chạy dùng khoảng 73.700 token đầu vào và dưới 2.000 token đầu ra, nên với mức $10 và $50 mỗi triệu token của API, một lần phát lại tốn dưới $1. Các thí nghiệm sandbox Python (3, 6, 7 và 8) cần
harness/sandbox.pycủa các tác giả và nhiều lượt hơn, nên hãy dự trù ngân sách.Nếu bạn không muốn chạy gì, bản Qwen3.5-0.8B đã chỉnh có trên Hugging Face theo Apache-2.0, với hash của 2 tensor đã thay đổi trên thẻ mô hình. Hugging Face Space cho phép bạn nhập một bài toán và xem mô hình gốc lặp trong khi bản đã chỉnh giải được.
Kết luận
Weight-space programming cho thấy một LLM tiên phong có thể đọc và chỉnh trọng số mạng nơ-ron bằng suy luận, ít nhất với các mạng nhỏ và các lỗi đơn lẻ, cục bộ. Bản sửa Qwen là kết quả sẽ thu hút sự chú ý, và xứng đáng, một phần vì Hugging Face đã tái lập trong vòng một ngày.
Tôi thận trọng hơn với các khẳng định lớn hơn. Một mô hình, các mạng nhỏ và chưa có bộ chuẩn là nền tảng mỏng cho cách đóng khung của các tác giả rằng "trọng số mạng nơ-ron của chúng ta sắp được LLM tối ưu trực tiếp". Dù vậy, các thất bại được báo cáo cẩn thận như các thành công, và điều đó khiến tôi coi trọng các thành công hơn.
Nếu bạn muốn hiểu cặn kẽ nội bộ transformer — nơi các chỉnh sửa này nhắm tới — tôi khuyên bạn theo học lộ trình Developing Large Language Models của chúng tôi.