Discover and explore top open-source AI tools and projects—updated daily.
ESHyperscaleJax for hyperscale evolutionary strategies
Top 97.3% on SourcePulse
Summary
HyperscaleES provides a Jax codebase for implementing evolutionary strategies at hyperscale, targeting researchers and engineers working with large-scale machine learning models. It enables efficient exploration and optimization of model parameters using evolutionary computation techniques, offering a flexible framework for advanced ML research.
How It Works
The core architecture comprises two main components: the Noiser and the Model. The Noiser perturbs model parameters with noise, offering specialized functions (do_mm, do_Tmm, do_emb) for different parameter types and handling parameter updates based on fitness scores. The Model class defines parameter initialization and the forward pass, distinguishing parameter roles (regular, matmul, embedding, excluded) via es_map and integrating the Noiser for evolutionary updates. This modular design leverages JAX for efficient, large-scale computation.
Quick Start & Requirements
Installation involves creating a Python 3.13 conda environment, activating it, installing JAX with CUDA 12 support (pip install "jax[cuda12]"), and then installing the package (pip install -e .). Alternatively, a Docker image can be built and run after modifying the Dockerfile. Users must set the HF_HOME environment variable for RWKV LLM caching. A Colab notebook (eggroll.ipynb) and an end-to-end test script (tests/end_to_end_test.py) are provided for understanding core concepts.
Highlighted Details
Noiser) from model definition (Model).HF_HOME).nano-egg repository for related work on single-file LLM pretraining.Maintenance & Community
No specific details regarding maintainers, community channels (e.g., Discord, Slack), or roadmaps are provided in the README.
Licensing & Compatibility
The README does not specify the software license, which is a critical omission for assessing commercial use or derivative works.
Limitations & Caveats
The codebase is explicitly designated as a "research preview," indicating potential instability, incomplete features, or ongoing changes.
1 month ago
Inactive
jax-ml
n2cholas
google