eval_chat_quality() Đã Được Kết Nối Với Trình Chạy Sai
Một Lỗi 10 Ngày Đáng Lẽ Ra Dừng Lại Vào Ngày 3
ANDREA-120M v1 được huấn luyện trong 16.1 ngày trên RTX 4090 ở 130W liên tục. Các đầu ra mẫu được lưu mỗi 200 bước nhưng không bao giờ được phân tích trong quá trình chạy. Đến bước 80K (ngày 4), các mẫu đọc region region region region region. Đến bước 110K, ''''' ''''' '' ''' ''. Huấn luyện tiếp tục thêm 11 ngày nữa trước khi bị dừng thủ công ở bước 165K.
Điều Gì Đã Sai Với Báo Cháy
eval_chat_quality() đã tồn tại trong codebase. Nó chấm điểm chất lượng mẫu. Nó thậm chí hoạt động đúng. Nhưng nó chỉ được kết nối với legacy multi-phase runner. v1 firehose curriculum sử dụng một code path khác & không bao giờ gọi eval. Đèn báo khói nằm ở phòng khác với cửa đóng kín.
The Cost
16.1 ngày compute. 130W liên tục. ~50 kWh điện. Mô hình không sản xuất output khả dụng ở bất kỳ điểm nào. Loss EMA chạm đáy ở 3.23 tại step 110K, sau đó tăng trở lại 4.54 tại step 165K khi training dừng. Số học hợp lý; ngữ nghĩa rỗng tuếch.
Xác suất ngẫu nhiên cho từ vựng 8449-token là 9.04. v1 đạt EMA loss 3.23 trong khi sản xuất region region region. Loss alone cannot detect coherence collapse. Một mô hình giảm thiểu cross-entropy bằng cách lặp lại một token high-frequency được thưởng số học cho failure mode.
Tại Sao Loss Curves Lừa Dối
Chấm Điểm Mọi Mẫu Trên Bốn Trục
Điểm Số Tổng Hợp
v2 triển khai một cổng mạch lạc chấm điểm mọi mẫu (lấy mỗi 100 bước trong quá trình huấn luyện firehose) trên bốn metrics:
| Chỉ số | Phạm vi | Những gì nó phát hiện |
|---|---|---|
| Bigram diversity | 0-35 | Lặp lại ở mức hai token (region region) |
| Trigram diversity | 0-35 | Lặp lại ở mức ba token (a, b, a, b, a, b) |
| English word presence | 0-20 | Trôi vào ngôn ngữ không phải tiếng Anh (CJK, Cyrillic, gibberish) |
| Character diversity | 0-10 | Sụp đổ thành một ký tự duy nhất (''''', ... ... ...) |
Tổng điểm có thể đạt được: 100. Ngưỡng: 30.
Tại sao Sử dụng Bốn Chỉ số, Không Phải Một
Mỗi chỉ số phát hiện một chế độ thất bại khác nhau:
- Một mô hình sụp đổ thành một bigram lớn sẽ thất bại ở Đa dạng Bigram nhưng vượt qua Đa dạng Ký tự.
- Một mô hình tạo ra nhiễu dấu câu (''''' ''''' '') sẽ thất bại ở Đa dạng Ký tự nhưng có thể vượt qua Đa dạng Bigram nếu các cặp dấu câu thay đổi.
- Một mô hình trôi vào ngôn ngữ không phải tiếng Anh (ô nhiễm huấn luyện dịch thuật) thất bại ở mặt hiện diện từ tiếng Anh nhưng vượt qua sự đa dạng Bigram & Trigram nếu nó tạo ra tiếng Quan Thoại ngữ pháp.
- Một mô hình tạo ra a, b, a, b, a, b vượt qua Bigram (a-b & b-a xuất hiện) nhưng thất bại Trigram (a-b-a, b-a-b thống trị).
Cùng nhau, bốn chỉ số bao quát không gian thất bại. Một điểm tổng hợp dưới 30 có nghĩa là ít nhất một trục đã sụp đổ đủ nghiêm trọng để kéo toàn bộ mẫu xuống.
Bộ Đếm Liên Tiếp
Tự động dừng kích hoạt sau 5 mẫu liên tiếp có điểm dưới 30. Các mẫu xấu đơn lẻ có thể xảy ra trong quá trình chuyển pha hoặc kéo nguồn hiếm; năm liên tiếp có nghĩa là mô hình đã ngừng phục hồi. Với các mẫu lấy mỗi 100 bước, 5 mẫu suy thoái liên tiếp = 500 bước sụp đổ tính mạch lạc đã xác nhận.
Tính toán một Điểm số
V1 Sẽ Trông Như Thế Nào
Kích Hoạt Kiểm Tra Ngược
Dựa trên các mẫu lưu trữ của v1, áp dụng cổng coherence của v2 một cách hồi tố cho thấy cổng sẽ kích hoạt tại bước 132K. v1 chạy đến bước 165K trước khi chấm dứt thủ công. Cổng sẽ dừng huấn luyện sớm hơn 33.000 bước.
Số Bước Đã Tiết Kiệm
RTX 4090 huấn luyện ở ~6 bước/phút trong FP16 cuBLAS. 33.000 bước / 6 bước/phút = 5.500 phút = 91,6 giờ = 3,8 ngày tính toán đã tiết kiệm. Ở 130W liên tục, đó là ~12 kWh điện, cộng thêm 3,8 ngày hao mòn GPU.
Tại Sao Bước 132K & Không Phải Bước 80K
v1 tạo ra region region region ở bước 80K. Tại sao cổng không kích hoạt lúc đó?
Vì các mẫu tốt ngắt quãng xuất hiện giữa các mẫu xấu. Bandit xoay vòng qua các nguồn mỗi 7-42 bước. Ngay cả một mô hình suy thoái cũng thỉnh thoảng tạo ra đầu ra đa dạng hơn khi lấy mẫu từ nguồn khác, tạm thời đặt lại bộ đếm liên tiếp. Đến bước 132K, mô hình đã suy thoái đủ sâu đến mức 5 mẫu suy thoái liên tiếp (500 bước) trở nên không thể tránh khỏi.
Bài học: Kết nối Báo khói với Mọi Đường chạy
v2 kết nối eval_chat_quality() trực tiếp vào đường xử lý mẫu của chương trình học firehose, không chỉ runner cũ. Mọi mẫu, mọi lần chạy, mọi đường mã: cùng một cổng kiểm soát. Bản sửa mất ~30 dòng mã.