Run trained Keras models directly in the browser with GPU acceleration via WebGL.
Keras.js is a JavaScript library that allows developers to run pre-trained Keras machine learning models directly in web browsers. It solves the problem of server dependency for model inference by enabling client-side execution, with GPU acceleration via WebGL for performance. This makes it possible to deploy interactive AI applications that run entirely in the browser.
Machine learning practitioners and web developers who want to integrate trained Keras models into browser-based applications without relying on server-side APIs.
Developers choose Keras.js for its ability to run complex neural networks client-side with GPU support, reducing latency and server costs while enabling fully interactive, offline-capable machine learning demos and tools.
Run Keras models in the browser, with GPU support using WebGL
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages WebGL 2 to accelerate model computations on the client's GPU, enabling fast inference without server dependency, as demonstrated in interactive demos.
Works with models trained in any Keras backend, including TensorFlow and CNTK, making it versatile for various training environments, as noted in the README.
Runs in both web browsers with GPU support and Node.js in CPU mode, offering flexibility for testing and deployment across platforms.
Demonstrated support for models like ResNet50 and LSTMs in demos, showing capability for image classification and text tasks without server calls.
The project is no longer active, with the README explicitly recommending TensorFlow.js instead, meaning no bug fixes, security updates, or new features.
Limited to Keras 2.1.2, restricting use with newer models and features from recent Keras and TensorFlow releases, as stated in the compatibility note.
While it runs in Node.js, it's limited to CPU mode, missing the performance benefits of GPU acceleration available in browsers, a key trade-off for server-side use.
Requires model conversion steps and WebGL 2 support, adding complexity and potential compatibility issues compared to more integrated solutions like TensorFlow.js.