Emily CLI Documentation

Release-v3.0.3

Emily combines the powers of Python and Docker to build stable and consistent machine learning and datascience python environments. Emily is useful for large cross-team project development as well as for simply running a single jupyter notebook or python script.

Download emily@v3.0.3
See earlier versions
$ emily build [options]

Start a new project Valid Emily images: base | slim | cv | nlp torch-slim | torch-cv | torch-nlp | tf-slim tf-cv | tf-nlp | cuda-base | cuda-slim cuda-cv | cuda-nlp |cuda-torch-slim| cuda-torch-cv cuda-torch-nlp| cuda-tf-slim | cuda-tf-cv | cuda-tf-nlp

$ build
Project name: >>

An Emily template is a pre-build template,
which contain essential software that can assist in the development of microservices.
These templates include various relevant API endpoints, depending on which template you choose.


Which Emily template do you want to use?

| API - Simple project with API set up and ready
| Machine learning API [API, Pytorch] - Machine learning template with API and pytorch
| Machine learning [API, DVC, MLFlow, Pytorch] - Machine learning template with API, Data version control (DVC), MLFlow experiment tracking and pytorch
| Machine learning [gRPC] - Machine learning template with gRPC
| Machine Learning Tracking - Machine learning tracking template
>>

Emily project types are pre-build docker images, which contain essential packages
useful in the development of microservices.
These images include only the relevant packages for the type of project you choose.


Which project type best fits your case?

| Slim (contains essential Machine Learning packages)
| Computer Vision
| Natural Language Processing
>>

Which editor do you want to use?
| Visual Studio Code

| Jupyter Notebook
| Jupyter Lab
>>

Creating a new Emily project in ...


Running Emily Build

To build a new Emily project, run emily build in your terminal. You will be asked to provide a project name, choose a project template (e.g. Default, API, ML-API, etc.), a project image (see Emily Docker Images) and an editor (e.g. VSCode, PyCharm, Jupyter Notebook or Jupyter Lab).

$ build
$ build -n my-project-name -i base -t ml-api -e lab

If you want to build a project without automatically starting a docker container use the flag --no-autostart

    Options

  • -h,--help

    Display help for command

  • -a,--access-token<token>

    The access token to use for authentication

  • -eu,--emily-user<name>

    The email address for the Emily user related to the access token if provided (only required when --access-token is passed)

  • -n,--project-name<project-name>

    The project name.

  • -o,--out-dir<path>

    The directory in which to create the project.

  • -t,--template<template>

    The Emily template to use.

  • -i,--image<image>

    The Emily image to use.

  • -ho,--host<host>

    The host address to listen for requests on.

  • -p,--port<port>

    The port to listen for requests on.

  • -nh,--notebook-host<host>

    The Jupyter notebook server host.

  • -np,--notebook-port<port>

    The Jupyter notebook port.

  • -a,--autostart(--no-autostart)

    Automatically start Docker container and open in editor. (default: true)

  • -e,--editor<editor>

    The editor to use [vscode | pycharm | notebook | lab].

  • -g,--gpu(--no-gpu)

    Enable GPU capabilities within the container.

  • -d,--detach

    Detached mode: Run container in the background. Requires manual shutdown.

  • -s,--silent

    Execute Emily silently. (default: false)

  • -u,--update(--no-update)

    Prompt for update if newer version found. (default: true)

  • -vb,--verbose

    Print detailed information while running commands.