HƯỚNG DẪN AI về ngôn ngữ

Đèn FlashChú ý

FlashAttention là một thuật toán tiết kiệm bộ nhớ, tính toán mức độ chú ý chính xác giống như các máy biến áp tiêu chuẩn nhưng không bao giờ ghi ma trận chú ý khổng lồ vào bộ nhớ GPU chậm.

Đọc trong 2 phútCập nhật lần cuối

Tổng quan

It made long-context training and inference dramatically faster and cheaper.

Lặn sâu

Sự chú ý tiêu chuẩn sẽ tính điểm cho mỗi cặp mã thông báo, tạo ra ma trận N x N. Đối với chuỗi 4.000 mã thông báo có 16 triệu điểm và ma trận phải được ghi vào và đọc lại từ bộ nhớ băng thông cao (HBM) của GPU. Lưu lượng bộ nhớ đó, chứ không phải toán học, mới là nút thắt cổ chai thực sự. FlashAttention, được Trí Đạo và đồng nghiệp giới thiệu vào năm 2022, tái cấu trúc cách tính toán để ma trận không bao giờ được hiện thực hóa đầy đủ. Nó xử lý trình tự theo từng ô vừa với SRAM trên chip cực nhỏ, cực nhanh của GPU, tính toán softmax tăng dần khi thực hiện. Kết quả về mặt toán học giống hệt với sự chú ý tiêu chuẩn nhưng sử dụng ít bộ nhớ hơn và chạy nhanh hơn nhiều lần, cho phép các cửa sổ ngữ cảnh dài hơn nhiều.

Hiểu biết kỹ thuật

Bí quyết là 'softmax trực tuyến' kết hợp với ốp lát. FlashAttention tải các khối truy vấn, khóa và giá trị nhỏ vào SRAM, tính toán đầu ra chú ý một phần và định lại tỷ lệ tổng đang chạy khi các khối mới xuất hiện để quá trình chuẩn hóa softmax vẫn chính xác mà không nhìn thấy tất cả điểm cùng một lúc. Bởi vì nó không bao giờ lưu trữ ma trận N-by-N đầy đủ trong HBM, bộ nhớ chia tỷ lệ tuyến tính thay vì bậc hai và hạt nhân được hợp nhất vào một hoạt động GPU duy nhất để giảm thiểu việc đọc và ghi bộ nhớ chậm.

Tác động chiến lược

Tốc độ và tỷ lệ

Quy trình công việc ngôn ngữ có thể di chuyển nhanh hơn mà không làm mất tính nhất quán.

Truy cập và tiếp cận

Nó mở rộng quyền truy cập vào các ngôn ngữ và phong cách giao tiếp.

Quyết định rõ ràng hơn

Các nhóm có thể dành nhiều thời gian hơn để đánh giá trong khi quá trình tự động hóa xử lý sự lặp lại.

Tương lai của FlashAttention

FlashAttention đã trở thành một khối xây dựng mặc định. FlashAttention-2 đã cải thiện khả năng phân vùng công việc GPU và FlashAttention-3 khai thác các tính năng phần cứng Hopper mới hơn như tính không đồng bộ và FP8 có độ chính xác thấp. Mong đợi tiếp tục đồng thiết kế với chip, tích hợp sâu hơn vào máy chủ suy luận cho các tài liệu dài và các biến thể được điều chỉnh để thu hút sự chú ý của cửa sổ trượt hoặc thưa thớt. Khi các cửa sổ ngữ cảnh hướng tới hàng triệu mã thông báo, các hạt nhân nhận biết IO như thế này vẫn cần thiết để duy trì quản lý chi phí đào tạo và phân phối.

Triển khai trong thế giới thực

Đào tạo các mô hình ngôn ngữ lớn như hệ thống kiểu Llama và GPT nhanh hơn và với chi phí GPU thấp hơn

Phục vụ các trợ lý trò chuyện có ngữ cảnh dài, tiếp thu toàn bộ sách hoặc cơ sở mã mà không hết bộ nhớ

Tăng tốc quy trình tóm tắt tài liệu xử lý hàng chục nghìn mã thông báo cùng một lúc

Cung cấp năng lượng cho các máy biến áp tầm nhìn và đa phương thức trong đó các chuỗi hình ảnh dài khiến sự chú ý trở nên đắt giá

Rủi ro & lan can

Sự thật ảo giác có thể lặng lẽ đi vào báo cáo, luồng hỗ trợ hoặc kết quả nghiên cứu.

Sự nhạy cảm kịp thời có thể tạo ra kết quả không nhất quán đối với các yêu cầu tương tự.

Dữ liệu văn bản nhạy cảm có thể bị lộ nếu khả năng kiểm soát quyền truy cập yếu.

Lộ trình thực hiện

1

Xác định định dạng đầu ra, âm thanh và tiêu chuẩn chất lượng trước khi triển khai.

2

Phản hồi mặt đất với các nguồn đáng tin cậy bất cứ khi nào độ chính xác quan trọng.

3

Duy trì điểm kiểm tra đánh giá của con người đối với các kết quả đầu ra có mức độ rủi ro cao.

4

Theo dõi các kiểu lỗi và đào tạo lại các lời nhắc hoặc quy trình làm việc thường xuyên.

Tiếp tục khám phá

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the FlashAttention quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Bắt đầu bài kiểm tra

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Câu hỏi thường gặp

What is FlashAttention?

FlashAttention là một thuật toán tiết kiệm bộ nhớ, tính toán mức độ chú ý chính xác giống như các máy biến áp tiêu chuẩn nhưng không bao giờ ghi ma trận chú ý khổng lồ vào bộ nhớ GPU chậm. Nó làm cho việc đào tạo và suy luận theo ngữ cảnh dài nhanh hơn và rẻ hơn đáng kể.

Nút thắt cổ chai chính mà FlashAttention nhắm đến trong sự chú ý tiêu chuẩn là gì?

Sự chú ý tiêu chuẩn bị giới hạn bởi bộ nhớ: việc chuyển ma trận N-by-N khổng lồ đến và đi từ bộ nhớ băng thông cao chiếm ưu thế về thời gian chứ không phải bản thân số học.

Đầu ra của FlashAttention so với sự chú ý tiêu chuẩn như thế nào?

FlashAttention tính toán các giá trị chú ý giống hệt nhau; nó chỉ tổ chức lại việc tính toán để tránh hiện thực hóa ma trận đầy đủ.

FlashAttention khai thác bộ nhớ GPU nào bằng cách xử lý dữ liệu theo ô?

FlashAttention tải các ô nhỏ vào SRAM trên chip nhanh của GPU, giữ công việc nặng ở gần các đơn vị điện toán.

Kỹ thuật nào cho phép FlashAttention tính toán softmax mà không xem tất cả điểm cùng một lúc?

Softmax trực tuyến duy trì mức tối đa và tổng đang chạy, thay đổi tỷ lệ một phần kết quả khi các ô mới xuất hiện để quá trình chuẩn hóa cuối cùng là chính xác.

FlashAttention-3 đặc biệt tận dụng được lợi thế gì?

FlashAttention-3 được đồng thiết kế với GPU Hopper hiện đại, sử dụng khả năng thực thi không đồng bộ và FP8 có độ chính xác thấp để tăng tốc hơn nữa.