- Từ tháng 8 đến đầu tháng 9, hiện tượng suy giảm chất lượng phản hồi của Claude xảy ra do ba lỗi hạ tầng
- Nguyên nhân chính của từng vấn đề lần lượt là lỗi định tuyến cửa sổ ngữ cảnh, hỏng đầu ra, và lỗi XLA:TPU approximate top-k không được biên dịch
- Mỗi lỗi xuất hiện chồng lấp trên nhiều phần cứng và đường triển khai khác nhau, khiến việc chẩn đoán càng khó hơn
- Các nguyên nhân làm chậm phát hiện và khắc phục bao gồm lỗ hổng trong quy trình xác minh và các hạn chế truy cập do chính sách quyền riêng tư
- Anthropic đang triển khai tăng cường đánh giá và giám sát, cùng phát triển công cụ gỡ lỗi nhanh hơn để ngăn ngừa các sự cố tương tự
Tổng quan và bối cảnh
- Từ tháng 8 đến đầu tháng 9, đã có báo cáo về hiện tượng chất lượng phản hồi của Claude giảm sút không liên tục
- Ban đầu, điều này được xem là biến động bình thường trong phản hồi từ người dùng, nhưng khi số lượng báo cáo tiếp tục tăng, cuộc điều tra đã bắt đầu
- Anthropic khẳng định rõ rằng nguyên nhân của vấn đề không phải do nhu cầu hay tải máy chủ, mà hoàn toàn là do lỗi hạ tầng
- Claude được cung cấp cho hàng triệu người dùng qua nhiều nền tảng (APIs, Amazon Bedrock, Google Vertex AI, v.v.), và có các tiêu chuẩn xác minh nghiêm ngặt để đảm bảo kết quả tương đương trên nhiều phần cứng như AWS Trainium, NVIDIA GPU và Google TPU
- Bài phân tích hậu sự cố này giải thích nguyên nhân lỗi, lý do việc chẩn đoán và khắc phục bị chậm trễ, cũng như các biện pháp phòng ngừa tái diễn
Cách Claude được vận hành ở quy mô lớn
- Dịch vụ Claude duy trì triển khai toàn cầu trên nhiều phần cứng khác nhau (Trainium, GPU, TPU)
- Tiêu chuẩn tương đương trong triển khai để đảm bảo chất lượng đồng nhất trên từng nền tảng là rất nghiêm ngặt
- Khi có thay đổi hạ tầng, cần một quy trình xác minh chặt chẽ trên mọi nền tảng và cấu hình
Dòng thời gian các sự cố chính
- 5/8: lỗi đầu tiên, ảnh hưởng đến khoảng 0,8% yêu cầu Sonnet 4
- 25 và 26/8: lỗi thứ hai và thứ ba lần lượt được triển khai
- 29/8: thay đổi cân bằng tải khiến lưu lượng gặp vấn đề tăng vọt, làm nhiều người dùng bị ảnh hưởng hơn
- Các triệu chứng của từng lỗi chồng lấp nhau, khiến độ khó chẩn đoán tăng rất cao
Ba lỗi chồng lấp và quá trình khắc phục
1. Lỗi định tuyến cửa sổ ngữ cảnh
- Ngày 5/8, một số yêu cầu Sonnet 4 đã bị định tuyến nhầm tới các máy chủ dành cho cửa sổ ngữ cảnh 1M token
- Sau thay đổi cân bằng tải, mức ảnh hưởng tăng lên tối đa 16% yêu cầu Sonnet 4; Amazon Bedrock và Google Vertex AI cũng bị ảnh hưởng nhẹ
- Do phương thức định tuyến là "sticky", một khi đã kết nối nhầm tới máy chủ sai thì các kết nối sau đó tiếp tục bị giữ ở cùng máy chủ đó
- Khắc phục: cải thiện logic định tuyến; bản vá được áp dụng trên nền tảng riêng ngày 4/9, triển khai lên Google Cloud đến ngày 16/9, còn Bedrock đang được áp dụng dần
2. Hỏng đầu ra (bug)
- Ngày 25/8, một cấu hình sai đã được áp dụng lên các máy chủ TPU của Claude API, gây lỗi khi sinh token
- Xuất hiện hiện tượng trộn ký tự lạ như tiếng Thái hoặc tiếng Trung trong câu trả lời tiếng Anh, cũng như chèn các lỗi cú pháp rõ ràng vào mã
- Chỉ ảnh hưởng đến Opus 4.1, Opus 4 và Sonnet 4; các nền tảng bên thứ ba không bị ảnh hưởng
- Khắc phục: hoàn tác thay đổi vào ngày 2/9 và bổ sung kiểm thử phát hiện đầu ra có ký tự bất thường vào quy trình triển khai
3. Lỗi approximate top-k XLA:TPU không được biên dịch
- Ngày 25/8, trong quá trình nâng cấp phương thức chọn token, một lỗi tiềm ẩn trong trình biên dịch XLA:TPU đã bị bộc lộ
- Ảnh hưởng đến Claude Haiku 3.5, một phần Sonnet 4 và Opus 3
- Các nền tảng bên thứ ba không bị ảnh hưởng
- Khắc phục: Haiku 3.5 được hoàn tác ngày 4/9, Opus 3 ngày 12/9; Sonnet 4 không được tái hiện trực tiếp nhưng cũng được hoàn tác như một biện pháp phòng ngừa
- Đồng thời, Anthropic đang phối hợp với đội ngũ XLA:TPU để sửa lỗi trình biên dịch và chuyển sang dùng phương thức top-k chính xác
Phân tích chi tiết lỗi trình biên dịch XLA
- Trong quá trình sinh token, Claude thực hiện tính toán xác suất cho từng ứng viên và lấy mẫu
- TPU hoạt động trong môi trường phân tán, nên việc đồng bộ tính toán xác suất token là cần thiết và khá phức tạp
- Tháng 12/2024, Anthropic phát hiện vấn đề khiến token có xác suất cao nhất bị bỏ sót do sai số phát sinh từ độ chính xác hỗn hợp bf16-32 bit, và đã triển khai một bản sửa tạm thời
- Ngày 26/8, trong quá trình cải tổ mã lấy mẫu để xử lý tận gốc nguyên nhân, một lỗi sâu hơn khiến phép toán approximate top-k cho ra kết quả hoàn toàn sai trong một số trường hợp đã bị lộ ra
- Lỗi này trước đó đã bị bản sửa tạm thời che khuất
- Ngoài ra, lỗi trong phép toán approximate top-k còn biểu hiện không đều tùy theo môi trường vận hành và kích thước batch
- Thay vì approximate top-k, gần đây họ đã chuyển sang exact top-k, vốn hiện nay có chi phí hiệu năng thấp hơn đáng kể, đồng thời cải thiện các phép toán chính bằng cách chuẩn hóa sang fp32
Nguyên nhân chậm phát hiện
- Anthropic đang sử dụng các quy trình như đánh giá tự động định kỳ và triển khai trước cho một nhóm giới hạn
- Những sự cố lần này đã bộc lộ lỗ hổng của quy trình đánh giá. Ví dụ, có những hạng mục đánh giá không phát hiện tốt tình huống lỗi, và các chính sách bảo vệ quyền riêng tư nội bộ (kỹ sư không thể truy cập trực tiếp các yêu cầu cụ thể của người dùng) khiến việc phân tích nhanh trở nên khó khăn
- Do triệu chứng biểu hiện khác nhau theo nền tảng và phiên bản, rất khó xác định một nguyên nhân duy nhất
- Ngay cả khi báo cáo trực tuyến tăng mạnh, mối liên hệ với thay đổi cân bằng tải tiêu chuẩn cũng không được nhận ra ngay lập tức
Cải tiến và biện pháp ứng phó sắp tới
- Phát triển các hạng mục đánh giá có độ nhạy cao, tăng cường đánh giá tự động có thể phân biệt rõ hơn giữa trạng thái hỏng và triển khai bình thường
- Mở rộng hệ thống đánh giá và giám sát ra toàn bộ môi trường vận hành thực tế, chẳng hạn thực hiện các đánh giá tập trung vào vận hành như lỗi định tuyến cửa sổ ngữ cảnh
- Xây dựng công cụ gỡ lỗi nhanh hơn và tinh vi hơn, đồng thời phát triển hạ tầng và công cụ tùy chỉnh để có thể phân tích nhanh phản hồi cộng đồng mà vẫn giữ quyền riêng tư
- Không chỉ đánh giá nội bộ, Anthropic còn nhấn mạnh độ tin cậy của việc liên tục thu thập phản hồi từ người dùng: với các lỗi hoặc bug khó dự đoán, báo cáo từ người dùng thực tế là tín hiệu rất quan trọng
- Họ cũng tích cực khuyến khích sử dụng lệnh
"/bug" hoặc tính năng 'thumbs down', cũng như gửi email để chia sẻ các phương pháp đánh giá chất lượng mô hình
Giải thích tham khảo
- XLA:TPU là trình biên dịch chuyển mã ngôn ngữ tối ưu hóa cấp cao XLA thành lệnh TPU
- Do kích thước mô hình lớn, mô hình được phân chia để triển khai trên nhiều chip thay vì một chip duy nhất; các phép toán như sorting cần được hiện thực theo dạng vector hóa
- Phép toán approximate top-k được dùng để cải thiện hiệu năng, nhưng có thể tiềm ẩn các vấn đề nghiêm trọng như bỏ sót token có xác suất cao nhất
- Hiện tại, phương thức exact top-k đã được áp dụng, và có thể có những thay đổi rất nhỏ trong cách bao gồm các token nằm gần ngưỡng top-p. Trong một số trường hợp, người dùng có thể cần điều chỉnh giá trị top-p
1 bình luận
Ý kiến trên Hacker News
rope_scalingkhi thực sự cần context dài, và cũng nên điều chỉnh factor theo độ dài input trung bình của ứng dụng. Ví dụ, nếu khoảng 520 nghìn token thì đặt factor 2.0 sẽ tốt hơn <br> Nguồn (trang mô tả Qwen3-Next-80B)