Dora Search is an experiment management tool developed by Facebook Research, designed to simplify grid searches and hyperparameter tuning for machine learning projects. It helps organize experiments, log results, and ensure reproducibility. Currently at version 0.1.12, it has an active development pace with frequent minor updates, focusing on robust experiment tracking and launch capabilities.
pip install dora-searchVerified import paths — ran on the pinned version, not inferred.
This quickstart defines a simple `train_model` function that accepts a configuration dictionary. It then sets up a hyperparameter grid using `dora.xp.arg` and uses `dora.main` to launch multiple experiments, one for each combination in the grid. Dora automatically creates and manages experiment directories, passing configuration parameters and internal metadata (like `_xp_id` and `_xp_dir`) to your function.
Always use `dora.main(your_experiment_function, grid=your_grid)` for production-grade experiment launches and grid searches.
Ensure your experiment entry point is defined with a single dictionary argument, e.g., `def my_experiment_func(config: Dict): ...`.
Use external tools like `conda`, `virtualenv`, `poetry`, or Docker to containerize and manage your experiment's dependencies for true reproducibility. Document your environment carefully.
Avoid using keys that start with an underscore (`_`) in your custom grid definitions to prevent clashes with Dora's internal parameters.
Install the `dora-search` package using pip: `pip install dora-search`.
Ensure `dora-search` is updated (`pip install -U dora-search`) and check the `dora-search` GitHub issues for version-specific guidance related to `hydra` integration, or consider alternative experiment setup if running in constrained notebook environments.
Specify the training package using the `-P` flag (e.g., `dora run -P my_package`) or set the `DORA_PACKAGE` environment variable to the name of your package.
Ensure `dora-search` is installed in your active Python environment (`pip install dora-search`) and that your shell's PATH includes the directory where pip installs scripts (e.g., `~/.local/bin` or a virtual environment's `bin`/`Scripts` folder).
No dependency data recorded yet.