Metadata-Version: 2.4
Name: saefarer
Version: 0.0.2
License-File: LICENSE
Requires-Python: >=3.8
Requires-Dist: anywidget<0.10,>=0.9.13
Requires-Dist: datasets>=2.21.0
Requires-Dist: einops
Requires-Dist: numba
Requires-Dist: numpy
Requires-Dist: scikit-learn
Requires-Dist: scipy
Requires-Dist: torch
Requires-Dist: transformers
Requires-Dist: umap-learn
Provides-Extra: dev
Requires-Dist: anywidget[dev]>=0.9.13; extra == 'dev'
Requires-Dist: build; extra == 'dev'
Requires-Dist: jupyterlab>=4.3.4; extra == 'dev'
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: ruff>=0.9.3; extra == 'dev'
Requires-Dist: sphinx; extra == 'dev'
Requires-Dist: twine; extra == 'dev'
Provides-Extra: examples
Requires-Dist: openpyxl; extra == 'examples'
Provides-Extra: tensorboard
Requires-Dist: tensorboard; extra == 'tensorboard'
Provides-Extra: wandb
Requires-Dist: wandb; extra == 'wandb'
Description-Content-Type: text/markdown

# SAEfarer

## Development installation

Create a virtual environment and and install saefarer in _editable_ mode with the
optional development dependencies:

```sh
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
```

You then need to install the JavaScript dependencies and run the development server.

```sh
npm install
npm run dev
```

Open `example.ipynb` in JupyterLab, VS Code, or your favorite editor
to start developing. Changes made in `js/` will be reflected
in the notebook.

## References

This project uses code from the following repositories:

- [OpenAI's sparse_autoencoder](https://github.com/openai/sparse_autoencoder)
- [EleutherAI's sae](https://github.com/EleutherAI/sae)
- [SAELens](https://github.com/jbloomAus/SAELens)
- [1L-Sparse-Autoencoder](https://github.com/neelnanda-io/1L-Sparse-Autoencoder)
- [TransformerLens](https://github.com/TransformerLensOrg/TransformerLens)
- [sae_vis](https://github.com/callummcdougall/sae_vis)
- [SAEDashboard](https://github.com/jbloomAus/SAEDashboard)
