trainer
General purpose model trainer for PyTorch that is more flexible than it should be, by 🐸Coqui.
Decision gist · record as of 2026-08-14
Yes, if you are actively training PyTorch models and want to reduce training loop boilerplate without heavyweight abstractions. The package is dormant (last release December 2023) but has no known vulnerabilities and low install friction. It is suitable for research and production use, though you should verify that its dependencies remain compatible with your PyTorch and Python versions. Not recommended if you require active maintenance or support for the latest PyTorch features.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires PyTorch (torch) to be installed; supports Python 3.8–3.11 only (capped below current Python versions).
- Low install friction with a pure Python wheel.
- The package is dormant (last commit 2024-03-07, 975 days since release), but remains functional for its stated purpose.
License · maintenance · safety
Apache2 (permissive) — Apache 2.0 permissive license allows commercial and private use with minimal restrictions, making it suitable for most projects without legal friction.
last release 2023-12-13 (975 days) · last repo commit 2024-03-07 · 233 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 85,910 downloads/mo, #13,894 on PyPI
Alternatives
Verify before relying
pip install trainer
from trainer import Trainer
from trainer.model import TrainerModel
class MyModel(TrainerModel):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
# define model layers
trainer = Trainer(model=MyModel(), ...)
trainer.fit()- Whether the package is actively maintained or will receive security updates going forward, given dormant status since March 2024.
- Compatibility with recent PyTorch versions and whether the six dependencies have known conflicts with modern Python 3.12+.
- Whether the telemetry collection (opt-out via TRAINER_TELEMETRY=0) is still active and what data is actually collected.
What it is and what it does
Trainer is a PyTorch training framework designed to reduce boilerplate in model training loops while maintaining flexibility for advanced use cases. It wraps the training cycle—forward pass, loss computation, backpropagation, and optimization—into a configurable abstraction that handles mixed precision training, gradient accumulation, and multi-GPU distributed training via DDP or Hugging Face Accelerate.
The package is built around subclassing a TrainerModel base class and defining an optimize() method, which can range from a simple auto-optimized loop to a fully custom training procedure (the documentation shows a GAN example with separate discriminator and generator optimization steps). It integrates experiment logging via Tensorboard, ClearML, MLFlow, Aim, and WandB, supports callbacks for custom hooks at training milestones, and includes utilities like a batch size finder to maximize GPU utilization. The codebase is intentionally kept simple and opinionated to avoid over-abstraction.
Use it for
- Training standard supervised models with automatic optimization and mixed precision support without writing custom training loops.
- Implementing adversarial training (GANs) with separate optimizer steps and gradient accumulation for each component.
- Running multi-GPU distributed training across multiple GPUs or nodes using DDP or Accelerate without managing process spawning.
- Profiling model training with PyTorch profiler and visualizing results in Tensorboard to identify bottlenecks.
- Automatically finding the largest batch size that fits on available hardware to maximize training efficiency.
- Logging training metrics and checkpoints to multiple experiment tracking platforms simultaneously.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are actively training PyTorch models and want to reduce training loop boilerplate without heavyweight abstractions.
The package is dormant (last release December 2023) but has no known vulnerabilities and low install friction. It is suitable for research and production use, though you should verify that its dependencies remain compatible with your PyTorch and Python versions. Not recommended if you require active maintenance or support for the latest PyTorch features.
Install
trainer on PyPI
Before you install
Low install friction with a pure Python wheel. The package is dormant (last commit 2024-03-07, 975 days since release), but remains functional for its stated purpose. Six runtime dependencies—torch, coqpit, psutil, fsspec, tensorboard, soundfile—are standard in the ML ecosystem.
Requires PyTorch (torch) to be installed; supports Python 3.8–3.11 only (capped below current Python versions).
License in practice
Apache 2.0 permissive license allows commercial and private use with minimal restrictions, making it suitable for most projects without legal friction.
Quickstart
pip install trainer
from trainer import Trainer
from trainer.model import TrainerModel
class MyModel(TrainerModel):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
# define model layers
trainer = Trainer(model=MyModel(), ...)
trainer.fit()
Verify before relying
- Whether the package is actively maintained or will receive security updates going forward, given dormant status since March 2024.
- Compatibility with recent PyTorch versions and whether the six dependencies have known conflicts with modern Python 3.12+.
- Whether the telemetry collection (opt-out via TRAINER_TELEMETRY=0) is still active and what data is actually collected.
Package facts
| License | Apache2 permissive |
| Python support | Capped below the current Python release >=3.6.0, <3.12 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 6 packagestorchcoqpitpsutilfsspectensorboardsoundfile |
| Maintenance | Dormant 975 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 85,910 / month, #13,894 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 3 - AlphaEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: trainer-0.0.36-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “pytorch training loop framework”
- trainerTrainer is a PyTorch model training framework that handles the…
- coqui-tts-trainerA PyTorch model trainer framework that handles training loops,…
- mmengineMMEngine is a foundational PyTorch training library that provides a…
Give your agent the search over MCP, or paste the wish link into any chat.
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to call 100+ LLM providers (OpenAI, Anthropic, Gemini, Bedrock, Azure, and others) using OpenAI-compatible API format, available as both a Python SDK and a self-hosted AI Gateway proxy server.
Install it if you need to work with multiple LLM providers or want to centralize LLM routing in your organization.
Client library and CLI tool for downloading, uploading, and managing models, datasets, and repositories on the Hugging Face Hub platform.
Install it if you work with Hugging Face Hub models or datasets.
LangChain provides a framework for building agents and LLM-powered applications by composing language models, tools, and memory through a unified API that abstracts over multiple model providers.
hf-xet provides chunk-based deduplication and efficient file transfer for the Hugging Face Hub, enabling faster uploads and downloads of large files with local disk caching.
Tokenizers converts raw text into token sequences for NLP models, with support for training custom vocabularies and using pre-built tokenizers (BPE, WordPiece) optimized for speed via Rust.
Transformers provides a unified framework for loading, fine-tuning, and running state-of-the-art pretrained models across text, vision, audio, video, and multimodal tasks using PyTorch, JAX, or TensorFlow.
Install it if you need to run or train any transformer-based model for NLP, vision, audio, or multimodal tasks.
See also coqui-tts-trainer · torchtnt · pytorch-ignite · pytorch-lightning · nv-one-logger-pytorch-lightning-integration · lightning · mmengine · pytorch-metric-learning · torch-tb-profiler · accelerate