Skip to content

Run ParleML

Time: about 5 minutes, plus the download · You need: Docker Desktop (Windows or macOS) or Docker Engine (Linux), and 8 GB of free memory. You'll end with: ParleML open at http://localhost:8000, with an agent ready to work.

ParleML is one container: the app, its API, the machine-learning engine and the documentation you are reading. There is nothing else to install.

1. Start the container

docker run -d --name parleml -p 8000:8000 \
  -v parleml-data:/app/data_root \
  ghcr.io/parleml/parleml:0.8.0
docker run -d --name parleml -p 8000:8000 `
  -v parleml-data:/app/data_root `
  ghcr.io/parleml/parleml:0.8.0

The first run downloads the image (about 7.7 GB once unpacked). -v parleml-data:/app/data_root keeps your workspaces, models and settings in a Docker volume named parleml-data, so they survive when the container is removed or upgraded.

On a Mac with Apple silicon (M1 and later)

The image is built for Intel/AMD (linux/amd64). Docker Desktop runs it through emulation: open Docker Desktop → Settings → General and turn on Use Rosetta for x86_64/amd64 emulation, then add --platform linux/amd64 to the command above. Give Docker at least 8 GB under Settings → Resources. Training is slower than on a native machine, but everything works.

2. Open it

Go to http://localhost:8000. The app is ready when Home shows its welcome card. On a laptop this takes about a minute after the container starts.

Home on a fresh installation, with the sample datasets.

You can use every part of ParleML now: open a sample, explore it, train and explain models by hand. Your first model shows how.

Agents frame your problem, build and explain models, and ask you before anything that matters. They run on an agent CLI inside the container, signed in with your account or API key. ParleML never sees or stores the key.

Use the AI subscription you already pay for

If you have a ChatGPT, Claude or Google AI plan, the agents can run on it: a fixed monthly price instead of a per-token bill. An ML session reads a lot of results, which adds up fast on an API key, so a subscription is usually the cheapest way to work with agents. If the plan's usage limit is reached, the session pauses, and it can resume by itself once the limit resets.

The image includes Codex and Gemini CLI. Pick one:

Sign in once inside the container, and keep the login in its own volume. Start the container with that volume added:

docker rm -f parleml
docker run -d --name parleml -p 8000:8000 \
  -v parleml-data:/app/data_root \
  -v parleml-codex:/root/.codex \
  ghcr.io/parleml/parleml:0.8.0

Then sign in:

docker exec -it parleml codex login --device-auth

It prints a link and a short code. Open the link, sign in with the ChatGPT account on your plan, and enter the code. Your data stays in its own volume throughout.

With a Google account, use Gemini CLI instead: add -v parleml-gemini:/root/.gemini, run docker exec -it parleml gemini and choose Sign in with Google. For a Claude plan, see Use Claude Code below.

Remove the container and start it again with the key in its environment. Your data stays in the volume.

docker rm -f parleml
docker run -d --name parleml -p 8000:8000 \
  -v parleml-data:/app/data_root \
  -e OPENAI_API_KEY=<your-openai-key> \
  ghcr.io/parleml/parleml:0.8.0

For Gemini CLI, use -e GEMINI_API_KEY=<your-gemini-key> instead. On a team server, use a key that belongs to the team: every session on the server uses it.

Check it in the app: Settings → Agents shows the agent as signed in.

Use Claude Code, Cursor or extra libraries

Some options are not in the standard image because of their licence or size: Claude Code, Cursor, the names-dataset corpus and the fast.ai model family. Build your own image on top of the standard one with a single command. It reads the recipe from the image itself, so you don't need anything else:

docker run --rm ghcr.io/parleml/parleml:0.8.0 cat /opt/parleml/Dockerfile.extended \
  | docker build --build-arg WITH_CLAUDE=1 -t parleml-claude -

Add --build-arg WITH_CURSOR=1, --build-arg WITH_NAMES=1 or --build-arg WITH_FASTAI=1 for the others. Then run parleml-claude instead of the standard image, with Claude Code as the default agent and its login kept in a volume:

docker run -d --name parleml -p 8000:8000 \
  -v parleml-data:/app/data_root \
  -v parleml-claude:/root/.claude \
  -e PARLEML_AGENTS_HOST_ADAPTER=claude-cli \
  parleml-claude

Sign in with your Claude Pro or Max plan, so sessions draw on your subscription (run claude, then type /login), or pass -e ANTHROPIC_API_KEY=<your-key> to docker run instead:

docker exec -it parleml claude

Everyday commands

To Run
Stop ParleML docker stop parleml
Start it again docker start parleml
See what it is doing docker logs -f parleml
Upgrade to a new version docker rm -f parleml, then the docker run command with the new tag. Your data is in the volume.
Something went wrong?
  • The page does not load. Wait a minute and refresh. docker logs parleml shows the server starting; it is ready at the line Application startup complete.
  • Port 8000 is taken. Use -p 8080:8000 and open http://localhost:8080.
  • Training stops with an out-of-memory error. Give Docker more memory (Docker Desktop → Settings → Resources), or pick a lighter template such as Quick Explore.
  • An agent session says the agent is not signed in. Repeat step 3, then check Settings → Agents.

Install and operate ParleML covers backups, upgrades, a reverse proxy, single sign-on, GPUs and MaxMind geolocation data.

Next

Your first model: train and explain a churn model in 10 minutes.