gpu.js
transformers.js
gpu.js | transformers.js | |
---|---|---|
9 | 27 | |
14,973 | 7,792 | |
0.4% | - | |
0.0 | 9.4 | |
3 months ago | 5 days ago | |
JavaScript | JavaScript | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
gpu.js
-
Deep Learning in JavaScript
You might already be familiar, but a GPU.js backend can provide some speedups via good old WebGL -- no need for WebGPU just yet!
[0]: https://github.com/gpujs/gpu.js/
-
Show HN: Shadeup – A language that makes WebGPU easier
Very cool project.
I learned WebGL three years ago but before I dove into the underlying concepts I used GPU.js [1] to quickly prototype my project. Eventually, the abstraction prevented necessary performance optimizations so I switched to vanilla GLSL and these vanilla GLSL "shaders" were initially ejected from GPU.js.
Writing JS code then looking at the generated WebGPU output is a great way to get familiar with WebGPU. Thanks for this.
[1] https://github.com/gpujs/gpu.js/
-
Gpu.js: GPU Accelerated JavaScript
I used this library on my project but I think it's no longer maintained. I PRed a fix for buggy atan2 over a year ago and no movement [1]. I do highly recommend it if you're a web developer interested in harnessing parallel processing.
[1] https://github.com/gpujs/gpu.js/pull/683
-
Brain.js: GPU Accelerated Neural Networks in JavaScript
Thanks for pointing this out. I've submitted a PR to resolve this: https://github.com/gpujs/gpu.js/issues/757
That being said, if you're not building from source (you're running an LTS version of node on a supported platform), you don't need to worry about python or many of the build deps.
- GPU.js
- For what projects, Nodejs is an absolute No No?
transformers.js
-
Transformers.js: Machine Learning for the Web
We have some other WebGPU demos, including:
- WebGPU embedding benchmark: https://huggingface.co/spaces/Xenova/webgpu-embedding-benchm...
- Real-time object detection: https://huggingface.co/spaces/Xenova/webgpu-video-object-det...
- Real-time background removal: https://huggingface.co/spaces/Xenova/webgpu-video-background...
- WebGPU depth estimation: https://huggingface.co/spaces/Xenova/webgpu-depth-anything
- Image background removal: https://huggingface.co/spaces/Xenova/remove-background-webgp...
You can follow the progress for full WebGPU support in the v3 development branch (https://github.com/xenova/transformers.js/pull/545).
To answer your question, while there are certain ops missing, the main limitation at the moment is for models with decoders... which are not very fast (yet) due to inefficient buffer reuse and many redundant copies between CPU and GPU. We're working closely with the ORT team to fix these issues though!
-
Deep Learning in JavaScript
BTW: you might want to add support for typed arrays.
See: https://github.com/xenova/transformers.js/blob/8804c36591d11...
This is really old, but added as part of the shape of the vector as well: https://github.com/nicolaspanel/numjs/blob/master/src/dtypes...
-
Deja-Vu your AI✦ Bookmarking Tool
Made possible by Xenova and Supabase / gte-small
-
Extracting YouTube video data with OpenAI and LangChain
To build the application, you’ll use the youtube-transcript package to retrieve YouTube video transcripts. You will then use LangChain and the Transformers.js package to generate free Hugging Face embeddings for the given transcript and store them in a vector store instead of relying on potentially expensive OpenAI embeddings. Lastly, you will use LangChain and an OpenAI model to retrieve information stored in the vector store.
- Transformers.js releases Zero-shot audio classification support
-
How to Use AI/ML Models for Your Projects
Transformers.js: A groundbreaking library, Transformers.js brings transformer models like GPT-3, BERT, and Whisper straight to your browser. With the introduction of technologies like webGPU and LLM, Transformers.js has garnered significant attention. If you’d like to learn how to integrate a small model in the UI, check out their code and examples here.
-
Show HN: Tiny LLMs – Browser-based private AI models for a wide array of tasks
The announcement seems somewhat disingenuous. The PR[1] found from their release notes[2] seems to contain only boilerplate and no real support for Mistral models or their weights.
[1]: https://github.com/xenova/transformers.js/pull/379
- Transformers.js
- Transformers.js: Run Machine Learning models directly in the browser
- What is the most cost-efficient way to have an embedding generator endpoint that is using an open-source embedding model? [Q]
What are some alternatives?
numjs - Like NumPy, in JavaScript
onnxruntime - ONNX Runtime: cross-platform, high performance ML inferencing and training accelerator
headless-gl - 🎃 Windowless WebGL for node.js
web-stable-diffusion - Bringing stable diffusion models to web browsers. Everything runs inside the browser with no server support.
math-clamp - Clamp a number
web-ai - Run modern deep learning models in the browser.
aladino - 🧞♂️ Your magic WebGL carpet
spark-nlp - State of the Art Natural Language Processing
math-sum - Sum numbers
memory64 - Memory with 64-bit indexes
Brain.js - 🤖 GPU accelerated Neural networks in JavaScript for Browsers and Node.js
vertex-ai-samples - Sample code and notebooks for Vertex AI, the end-to-end machine learning platform on Google Cloud