Một dự án nguồn mở đã đưa mô hình ngôn ngữ gồm 28,9 triệu tham số vào một bộ vi điều khiển có giá khoảng 8 USD, tạo ra văn bản hoàn toàn trên chip với tốc độ khoảng 9 mã thông báo mỗi giây mà không cần kết nối mạng. Cuộc trình diễn, được xuất bản trên GitHub và nhanh chóng leo lên trang nhất của Hacker News, cho thấy biên giới của AI địa phương nhỏ đã tiến xa đến mức nào chỉ trong một thời gian ngắn.

Công việc tập trung vào ESP32-S3, một con chip nhúng rẻ tiền được những người có sở thích và nhà sản xuất phần cứng ưa chuộng. Cách đây không lâu, việc chạy một mô hình 28,9 triệu thông số trên một miếng silicon nhỏ như vậy dường như là điều không thể thực hiện được và dự án này đưa ra một minh họa sống động về nỗ lực rộng rãi hơn đối với AI trên thiết bị mà chúng tôi theo dõi trong phạm vi đưa tin hàng ngày của ngành AI. Nơi mà đám mây từng được coi là bắt buộc đối với bất kỳ mô hình ngôn ngữ thực nào, thì các hệ thống có khả năng ngày càng tăng đang tìm kiếm những ngôi nhà ở rìa.

Những con số đằng sau bản dựng

Dự án đưa ra các thông số kỹ thuật một cách rõ ràng. Mô hình lưu trữ 28,9 triệu tham số, trong đó khoảng 25 triệu tham số nằm trong bảng tra cứu flash. Nó chạy trên chip ESP32-S3 với 512KB SRAM nhanh, 8 MB PSRAM và 16 MB bộ nhớ flash. Trong thực tế, nó đạt khoảng 9,5 mã thông báo mỗi giây từ đầu đến cuối hoặc 9,7 mã thông báo mỗi giây tính toán thuần túy và toàn bộ mô hình chỉ chiếm 14,9 megabyte khi được lưu trữ ở độ chính xác 4 bit.

Nổi bật nhất là sự so sánh mà tác giả rút ra với tác phẩm trước đó. Mô hình ngôn ngữ cuối cùng được biết là chạy trên chip thuộc lớp này chỉ chứa 260.000 tham số. Bản dựng mới chứa được nhiều hơn khoảng một trăm lần, một bước nhảy vọt không đến từ con chip lớn hơn mà đến từ việc xem xét lại nơi dữ liệu của mô hình thực sự tồn tại.

Một thủ thuật ghi nhớ mượn từ Gemma

Vấn đề cốt lõi là bộ vi điều khiển hầu như không có bộ nhớ nhanh. ESP32-S3 chỉ cung cấp 512KB SRAM và thông thường, toàn bộ mô hình sẽ cần có thể truy cập được từ đó, đó là lý do tại sao những lần thử trước đó bị kẹt ở vài trăm nghìn tham số.

Cách giải quyết dựa trên một quan sát đơn giản. Hầu hết các tham số của mô hình ngôn ngữ đều nằm trong một bảng nhúng mà mô hình sẽ đọc thay vì tính toán trên đó. Vì vậy, thay vì buộc bảng 25 triệu hàng khổng lồ đó vào bộ nhớ nhanh khan hiếm, dự án để nó trong bộ lưu trữ flash chậm và chỉ lấy một số hàng mà mỗi mã thông báo thực sự cần, khoảng 450 byte mỗi lần. Một phần nhỏ của mô hình thực hiện tính toán thực vẫn nằm trong bộ nhớ nhanh, trong khi phần lớn trọng số chỉ chờ trong flash, được lấy mẫu từng chút một.

Kỹ thuật đó được gọi là Nhúng trên mỗi lớp và nó có nguồn gốc từ các mẫu Gemma của Google, cụ thể là Gemma 3n và Gemma 4, nơi nó được thiết kế cho điện thoại và GPU. Theo tác giả của dự án, trước đây chưa có ai thử cách tiếp cận này trên một con chip nhỏ như thế này.

Nó có thể làm gì và không thể làm gì

Mô hình này được đào tạo trên TinyStories, một tập dữ liệu gồm những câu chuyện đơn giản dành cho trẻ em, vì vậy khả năng của nó bị hạn chế một cách có chủ ý. Nó viết những câu chuyện ngắn, chủ yếu là mạch lạc, nhưng nó sẽ không trả lời các câu hỏi thực tế, làm theo những hướng dẫn phức tạp, viết mã hoặc suy luận về thế giới. Tác giả thẳng thắn cho rằng hạn chế này xuất phát từ phần suy luận nhỏ của mô hình và thủ thuật ghi nhớ không làm thay đổi được phần đó.

Do đó, điều khiến dự án trở nên thú vị không phải là chất lượng đầu ra mà là kiến ​​trúc của nó. Thành tựu này là lắp một mô hình lớn như vậy vào một con chip nhỏ bé này, chứng minh rằng các kỹ thuật tương tự cung cấp năng lượng cho các mô hình hiệu quả trên điện thoại và máy chủ có thể được áp dụng cho đến phần cứng có giá thấp hơn một chiếc bánh sandwich.

Tại sao AI trên thiết bị lại quan trọng

Ý nghĩa của nó vượt xa một bản demo kỹ thuật gọn gàng. Bởi vì mô hình chạy hoàn toàn trên chip nên không có gì được gửi đến máy chủ. Điều đó có nghĩa là hoàn toàn đảm bảo quyền riêng tư, không có dữ liệu nào rời khỏi thiết bị và không phải thanh toán hóa đơn đám mây. Đối với các ứng dụng ở vùng sâu vùng xa, thiết bị có công suất thấp hoặc cài đặt nơi kết nối không đáng tin cậy, sự kết hợp đó thực sự hữu ích.

Nó cũng chỉ ra một tương lai trong đó các mô hình nhỏ, chuyên dụng được phân phối trên hàng tỷ thiết bị nhúng giá rẻ thay vì tập trung ở một số trung tâm dữ liệu khổng lồ. Những áp lực tương tự thúc đẩy sự quan tâm đến AI cục bộ trên máy tính xách tay và điện thoại, cụ thể là độ trễ thấp hơn, chi phí thấp hơn và quyền riêng tư mạnh mẽ hơn, thậm chí còn áp dụng mạnh mẽ hơn ở quy mô vi điều khiển.

Lời mời mở để mày mò

Dự án được phát hành theo giấy phép MIT cho phép và tác giả đã chia sẻ mã đầy đủ trên GitHub cùng với tài liệu chi tiết và kết quả điểm chuẩn. Sự cởi mở đó có nghĩa là các nhà phát triển phần cứng khác có thể nghiên cứu cách tiếp cận, điều chỉnh nó cho phù hợp với các chip khác hoặc đẩy số lượng tham số lên cao hơn nữa.

Được phát hành dưới tên slvDev, tác phẩm đã gây được tiếng vang mạnh mẽ với cộng đồng nhà phát triển, thu thập hàng trăm lượt tán thành trên Hacker News và thúc đẩy cuộc thảo luận về nơi kỹ thuật này có thể phát triển tiếp theo. Nếu xu hướng này được giữ vững, ranh giới giữa một "mô hình ngôn ngữ" và một phần mềm nhúng thông thường sắp trở nên mờ nhạt hơn rất nhiều.

Đi trước AI

Từ những con chip trị giá 8 USD đến các trung tâm dữ liệu trị giá hàng tỷ USD, câu hỏi về việc AI hoạt động ở đâu đang trở nên quan trọng như những gì AI có thể làm. Lớp phần cứng đang phát triển nhanh hơn hầu hết mọi người nhận ra và các dự án trông giống như sự tò mò ngày nay thường xác định xu hướng chủ đạo trong tương lai. Đọc thêm tin tức AI trên AI Buzz Wire để theo dõi mọi bước đột phá trong điện toán biên, hiệu suất mô hình và trí thông minh trên thiết bị.

Theo kịp cuộc cách mạng phần cứng AI — truy cập AI Buzz Wire