Command-line Interface (CLI)


Users can also interact with Determined using a command-line interface. The CLI is distributed as a Python wheel package; once the wheel has been installed (see Installation for details), the CLI can be used via the det command.

Each ML engineer that wants to use Determined should install a copy of the Determined CLI on their local development machine. The CLI can be installed via pip:

pip install determined

The CLI requires Python >= 3.6. We suggest installing the CLI into a virtualenv, although this is optional. To install the CLI into a virtualenv, first activate the virtualenv and then type the command above.

After the CLI has been installed, it should be configured to connect to the Determined master at the appropriate IP address. This can be accomplished by setting the DET_MASTER environment variable:

export DET_MASTER=<master IP>

You may want to place this into the appropriate configuration file for your login shell (e.g., .bashrc).

More information about using the Determined CLI can be found by running det --help.


CLI subcommands usually follow a <noun> <verb> form, similar to the paradigm of ip. Certain abbreviations are supported, and a missing verb is the same as list, when possible.

For example, the different commands within each of the blocks below all do the same thing:

# List all experiments.
$ det experiment list
$ det e list
$ det e
# List all agents.
$ det agent list
$ det a list
$ det a
# List all slots.
$ det slot list
$ det slot
$ det s

For a complete description of the available nouns and abbreviations, see the output of det help. Each noun also provides a help verb that describes the possible verbs for that noun. Or you can provide -h or --help as an argument anywhere will cause the CLI to exit after printing help text for the object or action specified up to that point.

Setting the Master

The CLI should be installed on any machine where a user would like to access Determined. The -m or --master flag determines the network address of the Determined master that the CLI connects to. If this flag is not specified, the value of the DET_MASTER environment variable is used; if that environment variable is not set, the default address is localhost. The master address can be specified in three different formats:

  • (if port is omitted, it defaults to 8080)

  • (if port is omitted, it defaults to 80)

  • (if port is omitted, it defaults to 443)


# Connect to localhost, port 8080.
$ det experiment list

# Connect to, port 8888.
$ det -m e list

# Connect to, port 80.
$ det -m e list

# Connect to, port 443.
$ det -m e list

# Connect to, port 8080.
$ det -m e list

# Set default Determined master address to, port 8888.
$ export DET_MASTER=""


  • det e, det experiment, det experiment list: Show information about experiments in the cluster.

  • det -m e, DET_MASTER= det e: Show information about experiments in the cluster at the network address

  • det t logs -f 289: Show the existing logs for trial 289 and continue showing new logs as they come in.

  • det e label add 17 foobar: Add the label “foobar” to experiment 17.

  • det e describe 493 --metrics --csv: Display information about experiment 493, including full metrics information, in CSV format.

  • det e create -f --paused const.yaml .: Create an experiment with the configuration file const.yaml and the code contained in the current directory. The experiment will be created in a paused state (that is, it will not be scheduled on the cluster until it is activated).

  • det e set max-slots 85 4: Ensure that experiment 85 does not take up more than 4 slots in the cluster.

  • det u create --admin hoid: Create a new user named “hoid” with admin privileges.

  • det version: Show detailed information about the CLI and master. Note that this command does not take both an object and an action.

Environment Variables

  • DET_MASTER: The network address of the master of the Determined installation. The value can be overridden using the -m flag.