torch-ttt is a package designed to work with Test-Time Training (TTT) techniques and make your networks more generalizable. It aims to be modular, easy to integrate into existing pipelines, and collaborative— including as many methods as possible. Reach out to add yours!
>> You can find our webpage and documentation here: torch-ttt.github.io
torch-ttt is in its early stages, so changes are expected. Contributions are welcome—feel free to get involved! If you run into any bugs or issues, don’t hesitate to submit an issue.
This package provides a streamlined API for a variety of TTT methods through Engines, which are lightweight wrappers around your model. These Engines are:
- Easy to use – The internal logic of TTT methods is fully encapsulated, so you only need to wrap your model with an Engine, and you're ready to go.
- Highly modular and standardized – Each Engine follows the same interface, allowing methods to be used interchangeably, making it easy to find the best fit for your application.
- Minimal changes required – Enabling a TTT method for your model requires only a few additional lines of code.
Check out the Quick Start guide or the API reference for a more detailed explanation of how Engines work and their core concepts.
torch-ttt requires Python 3.10 or greater. Install the desired PyTorch version in your environment.
For the latest development version you can run,
pip install git+https://github.com/nikitadurasov/torch-ttt.git
While we do not support PyPI yet, support is expected very soon!
We provide a Quick Start guide to help you get started smoothly. Take a look here: Quick Start and see how to integrate TTT methods into your project.
We offer a variety of tutorials to help users gain a deeper understanding of the implemented methods and see how they can be applied to different tasks. Visit the Tutorials page to explore them.
Our aim is to provide comprehensive documentation for all included TTT methods, covering their theoretical foundations, practical benefits, and efficient integration into your project. We also offer tutorials that illustrate their applications and guide you through their effective usage.