Skip to main content

NeMo Run is a powerful tool designed to streamline the configuration, execution, and management of machine learning experiments across various computing environments. NeMo Run has three core responsibilities:

  1. Configuration
  2. Execution
  3. Management

To learn more, click on each link. This represents the typical order that NeMo Run users follow for setting up and launching experiments.

Why Use NeMo Run?

Please see this detailed guide for reasons to use NeMo Run.

Install NeMo Run

pip install git+https://github.com/NVIDIA-NeMo/Run.git

Get Started

To get started with NeMo Run, follow these three steps based on the core responsibilities mentioned above. For this example, we'll showcase a pre-training example in Nemo 2.0 using Llama3.

  1. Configure your function:
from nemo.collections import llm
partial_func = llm.llama3_8b.pretrain_recipe(name="llama3-8b", ckpt_dir="/path/to/store/checkpoints", num_nodes=1, num_gpus_per_node=8)
  1. Define your Executor:
import nemo_run as run
local_executor = run.LocalExecutor()
  1. Run your experiment:
run.run(partial_func, executor=local_executor, name="llama3_8b_pretraining")

Design Philosophy and Inspiration

In building NeMo Run, we drew inspiration from and relied on the following primary libraries. We would like to extend our gratitude for their work.

Apart from these, we also build on other libraries. A full list of dependencies can be found in pyproject.toml.

NeMo Run was designed keeping the following principles in mind:

Pythonic

In NeMo Run, you can build and configure everything using Python, eliminating the need for multiple combinations of tools to manage your experiments. The only exception is when setting up the environment for remote execution, where we rely on Docker.

Modular

The decoupling of task and executor allows you to form different combinations of execution units with relative ease. You configure different remote environments once, and you can reuse it across a variety of tasks in a Pythonic way.

Opinionated but Flexible

NeMo Run is opinionated in some places, like storing of metadata information for experiments in a particular manner. However, it remains flexible enough to accommodate most user experiments.

Set Up Once and Scale Easily

While it may take some time initially for users to become familiar with NeMo Run concepts, the tool is designed to scale experimentation in a fluid and easy manner.

Tutorials

Hello world

The hello_world tutorial series provides a comprehensive introduction to NeMo Run, demonstrating its capabilities through a simple example. The tutorial covers:

  • Configuring Python functions using Partial and Config classes.
  • Executing configured functions locally and on remote clusters.
  • Visualizing configurations with graphviz.
  • Creating and managing experiments using run.Experiment.

You can find the tutorial series below:

Contributing

Please see the contribution guide to contribute to NeMo Run.

FAQs

Please find a list of frequently asked questions here.

Metadata

Release files for nemo-run 0.12.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nemo-run 0.12.0
File Size Uploaded Provenance Actions
nemo_run-0.12.0.tar.gz 242.6 kB Without provenance Details for nemo_run-0.12.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for nemo-run 0.12.0
File Interpreter ABI Platform Actions
nemo_run-0.12.0-py3-none-any.whl Python 3 none any Details for nemo_run-0.12.0-py3-none-any.whl

Total release size: 561.6 kB

Release files / nemo_run-0.12.0.tar.gz

Download URL nemo_run-0.12.0.tar.gz
Size 242.6 kB
Tags Source
SHA-256 checksum
How to use checksums
ea11bb8b7a247d87ef0435c384e0a7f0da368f24a62b7f26dd289846c86d06bb
BLAKE2b-256 checksum
How to use checksums
3e688ecb51c2fd3579bc9d2f51a50c7ec8017ac88b17c45e6b7658a213d97b8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.14.4

Release files / nemo_run-0.12.0-py3-none-any.whl

Download URL nemo_run-0.12.0-py3-none-any.whl
Size 319.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ce6205b2caa37333ef67c4507d9e3b299728905276c0eda39b20feb2616c66a1
BLAKE2b-256 checksum
How to use checksums
8f7c3181049ce87cbde9cef998224b0cb873d1ebe78183fed9da3a285d800a5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.14.4

Security for nemo-run 0.12.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page