- Hỗ trợ WebGPU (nhanh hơn WASM tới 100 lần)
- Các định dạng lượng tử hóa mới
dtypes
- Hỗ trợ 120 kiến trúc
- 25 dự án ví dụ và template mới
- Hơn 1200 mô hình đã được chuyển đổi sẵn
- Tương thích với Node.js (ESM + CJS), Deno và Bun
Hỗ trợ WebGPU
- WebGPU là tiêu chuẩn web mới dành cho đồ họa tăng tốc và tính toán
- Cho phép nhà phát triển sử dụng trực tiếp GPU của hệ thống trong trình duyệt để thực hiện các phép tính hiệu năng cao
- Là thế hệ kế thừa của WebGL, cho phép tương tác trực tiếp hơn với GPU hiện đại nên hiệu năng được cải thiện đáng kể
- Đồng thời hỗ trợ tính toán GPU đa dụng nên rất phù hợp cho machine learning
- Tính đến tháng 10 năm 2024, tỷ lệ hỗ trợ WebGPU trên toàn thế giới vào khoảng 70%
- Tùy trình duyệt, có thể cần dùng cờ tính năng để kích hoạt WebGPU
- Cách dùng WebGPU trong Transformers.js v3
- Nhờ hợp tác với ONNX Runtime Web, chỉ cần đặt
device: 'webgpu' khi tải mô hình là có thể bật tăng tốc WebGPU
- Có thể dùng WebGPU cho tính toán text embedding, nhận dạng giọng nói, phân loại hình ảnh, v.v.
Các định dạng lượng tử hóa mới (dtypes)
- Trước Transformers.js v3, với tùy chọn
quantized chỉ có thể chọn biến thể mô hình quantized (q8) hoặc full-precision (fp32)
- Giờ đây có thể chọn từ danh sách phong phú hơn nhiều thông qua tham số
dtype
- Danh sách lượng tử hóa khả dụng khác nhau tùy mô hình, nhưng nhìn chung gồm full-precision (
"fp32"), half-precision ("fp16"), 8-bit ("q8", "int8", "uint8"), 4-bit ("q4", "bnb4", "q4f16") v.v.
dtypes theo từng mô-đun
- Một số mô hình encoder-decoder như Whisper hay Florence-2 đặc biệt nhạy với thiết lập lượng tử hóa, nhất là ở encoder
- Vì vậy đã bổ sung tính năng cho phép chọn
dtypes theo từng mô-đun bằng cách cung cấp ánh xạ từ tên mô-đun sang dtype
120 kiến trúc được hỗ trợ
- Trong bản phát hành này, tổng số kiến trúc được hỗ trợ đã tăng lên 120, bao phủ nhiều dạng đầu vào và tác vụ khác nhau
- Một số kiến trúc mới đáng chú ý: Phi-3, Gemma & Gemma 2, LLaVa, Moondream, Florence-2, MusicGen, Sapiens, Depth Pro, PyAnnote, RT-DETR, v.v.
25 dự án ví dụ và template
- Là một phần của bản phát hành này, 25 dự án ví dụ và template mới đã được ra mắt, tập trung trình diễn hỗ trợ WebGPU
- Bao gồm các demo như Phi-3.5 WebGPU, Whisper WebGPU, v.v.
Hơn 1200 mô hình đã được chuyển đổi sẵn
- Tính tại thời điểm phát hành, cộng đồng đã chuyển đổi hơn 1200 mô hình để tương thích với Transformers.js
- Nếu muốn chuyển đổi mô hình riêng hoặc bản fine-tune của mình, có thể dùng script chuyển đổi được cung cấp
- Sau khi tải các tệp được tạo lên Hugging Face Hub và thêm thẻ
transformers.js, người khác có thể dễ dàng tìm thấy và sử dụng
Tương thích với Node.js (ESM + CJS), Deno và Bun
- Transformers.js v3 hiện tương thích với ba runtime JavaScript phía máy chủ phổ biến nhất
- Node.js: runtime JavaScript phổ biến được xây dựng trên V8 của Chrome, hỗ trợ hệ sinh thái thư viện và framework rộng lớn
- Deno: runtime hiện đại cho JavaScript và TypeScript với bảo mật tốt theo mặc định, dùng ES module và cũng cung cấp hỗ trợ WebGPU thử nghiệm
- Bun: runtime JavaScript nhanh, tối ưu cho hiệu năng, cung cấp sẵn bundler, transpiler và package manager
Ngôi nhà mới trên NPM và GitHub
- Transformers.js giờ sẽ được phát hành dưới tên
@huggingface/transformers trong tổ chức Hugging Face chính thức trên NPM (thay cho @xenova/transformers đã dùng ở v1 và v2)
- Kho mã nguồn cũng đã được chuyển sang tổ chức Hugging Face chính thức trên GitHub (https://github.com/huggingface/transformers.js), và đây sẽ là ngôi nhà mới
1 bình luận
Transformers.js - chạy Transformer trên trình duyệt
Transformers.js có thể chạy trực tiếp trên trình duyệt