Suy luận Llama2 nhanh và di động trên edge dị chủng
(secondstate.io)Ngăn xếp Rust+Wasm: lựa chọn thay thế mạnh mẽ cho Python
- Ứng dụng Rust+Wasm có kích thước chỉ bằng 1/100 so với Python, nhanh hơn 100 lần và có thể chạy an toàn ở mọi nơi mà không cần thay đổi bất kỳ phần tăng tốc phần cứng nào.
- Rust là ngôn ngữ cho AGI (trí tuệ nhân tạo tổng quát), và một chương trình Rust đơn giản được tạo ra để suy luận mô hình llama2 ở tốc độ gốc.
- Ứng dụng nhị phân được biên dịch sang Wasm (2MB) hoàn toàn có thể di chuyển giữa các thiết bị có nhiều bộ tăng tốc phần cứng khác nhau.
- Runtime Wasm (WasmEdge) cung cấp môi trường thực thi an toàn và bảo mật trong môi trường đám mây.
Cài đặt và chạy chương trình Rust
- Step 1. Cài đặt WasmEdge và plugin GGML: Trên thiết bị Linux hoặc Mac, cài đặt bằng các lệnh dưới đây.
- Step 2. Tải ứng dụng Wasm dựng sẵn và mô hình: Tải mô hình llama2 ở định dạng GGUF; ví dụ sử dụng phiên bản mô hình llama2 7B chat-tuned được lượng tử hóa với trọng số 5-bit.
- Step 3. Chạy: Dùng WasmEdge để chạy ứng dụng suy luận wasm, truyền mô hình GGUF vào và nhập câu hỏi để trò chuyện với mô hình.
Cấu hình cách mô hình hoạt động
- Có thể dùng các tùy chọn dòng lệnh để thiết lập cách tương tác với mô hình.
- Ví dụ, có thể chỉ định độ dài ngữ cảnh cụ thể, đặt số token tối đa cần dự đoán trong mỗi phản hồi, in thống kê và cấu hình để stream phản hồi của mô hình ra
stdout. - Chương trình tạo khoảng 25 token mỗi giây trên một MacBook M2 cấu hình thấp.
Tác nhân và ứng dụng LLM
- Tạo máy chủ API tương thích OpenAI bằng Rust và WasmEdge.
- Nhờ đó có thể dùng các công cụ phát triển tương thích OpenAI để tạo tác nhân và ứng dụng LLM.
Lợi ích của Rust+Wasm thay cho Python
- Ngăn xếp Rust+Wasm là một lựa chọn thay thế mạnh mẽ cho ngăn xếp Python trong các ứng dụng suy luận AI, đồng thời cung cấp hạ tầng điện toán đám mây.
- Siêu nhẹ: Ứng dụng suy luận chỉ nặng 2MB, đã bao gồm mọi phụ thuộc.
- Rất nhanh: Cung cấp tốc độ C/Rust native cho mọi phần của ứng dụng suy luận.
- Tính di động: Cùng một ứng dụng bytecode Wasm có thể chạy trên mọi nền tảng điện toán lớn hỗ trợ tăng tốc phần cứng dị chủng.
- Dễ cài đặt, phát triển và triển khai: Không có phụ thuộc phức tạp; có thể build một tệp Wasm duy nhất bằng công cụ tiêu chuẩn trên laptop và triển khai ở bất cứ đâu.
- An toàn và sẵn sàng cho đám mây: Runtime Wasm được thiết kế để cô lập mã người dùng không đáng tin cậy, có thể được quản lý bởi công cụ container và dễ dàng triển khai trên nền tảng cloud-native.
Chương trình suy luận Rust
- Chương trình suy luận demo được viết bằng Rust và biên dịch sang Wasm.
- Mã nguồn Rust rất đơn giản, chỉ gồm 40 dòng code.
- Chương trình Rust quản lý đầu vào người dùng, theo dõi lịch sử hội thoại, chuyển đổi văn bản sang chat template của llama2 và thực hiện tác vụ suy luận bằng API WASI NN.
Chạy trên đám mây hoặc edge
- Khi đã có tệp bytecode Wasm, có thể triển khai nó lên bất kỳ thiết bị nào hỗ trợ runtime WasmEdge.
- WasmEdge được cài cùng plugin GGML và tự động tận dụng nhiều kiểu tăng tốc phần cứng khác nhau để chạy mô hình llama2.
Các bước tiếp theo
- Công cụ WasmEdge GGML hiện đã có sẵn và đang được khách hàng cloud-native sử dụng, nhưng vẫn còn ở giai đoạn đầu.
- Nếu quan tâm đến việc đóng góp cho dự án mã nguồn mở và định hình hướng đi của hạ tầng suy luận LLM trong tương lai, có một số công việc cấp thấp mà bạn có thể tham gia.
Các mô hình AI khác
- WasmEdge và WASI NN cho phép xây dựng các ứng dụng suy luận vừa nhẹ vừa nhanh, có tính di động và an toàn như một lựa chọn thay thế cho Python.
- Ví dụ, dự án mediapipe-rs cung cấp API Rust+Wasm cho các mô hình mediapipe Tensorflow của Google.
Ý kiến của GN⁺
Điểm quan trọng nhất của bài viết này là đưa ra một lựa chọn thay thế cho Python trong suy luận AI bằng Rust và WebAssembly (Wasm), với các lợi thế nổi bật về kích thước, tốc độ, tính di động và bảo mật. Ngăn xếp công nghệ này tích hợp hạ tầng điện toán đám mây để cải thiện hiệu năng trên nhiều thiết bị và môi trường đám mây, đồng thời giải quyết các vấn đề phụ thuộc phức tạp và đơn giản hóa việc phát triển cũng như triển khai. Cách tiếp cận này có thể tạo ra tác động đáng kể, đặc biệt đối với tương lai của điện toán edge và suy luận AI, khiến nó trở thành một chủ đề rất đáng chú ý với những người quan tâm đến công nghệ.
1 bình luận
Ý kiến Hacker News