Skip to content
Matilda TrainDocsOpen workspace
DocumentationStart here

Start here

Your first experiment

Connect your client, submit a real Slurm run and keep its results.

On this page

A little preparation

Matilda Train connects your research client to Australian compute. You can prepare files, launch Slurm jobs, monitor training and inspect results through MCP. The website handles your identity and client connections.

  1. Get access

    Sign in with Matilda or create an account; no invitation is needed. Use your personal workspace or join your company’s team with an invitation. Add compute credits in Billing before a paid run.

  2. Connect your client

    Follow Connect your research client. Add the remote server URL and complete Matilda sign-in.

  3. Choose funding and start small

    Ask the client to check research_profile and research_workspaces, choose the paying workspace and request a quote for a tiny allocation.

The call-request form shows a confirmation when your enquiry is received. If submission fails, your details stay in the form so you can retry. You can also contact hello@maincode.com.

Run a tiny, real job

A first prompt for your research client
Check my Matilda Train profile and available workspaces. Confirm which workspace should pay. Prepare a batch run named My first experiment with 1 CPU, 4096 MiB memory, 5 minutes and 1 GPU. Have it print a greeting, write a JSON metric and save a result in MATILDA_RUN_DIR. Request research_quote for those resources and the selected organization_id, show me the maximum cost and available credits, then submit once using that rate_card_id and maximum_micros as maximum_charge_micros. Monitor it to completion.

The client uses research_validate to check limits and research_submit to create the run. Credits must cover the maximum allocation cost; only actual allocated seconds are charged and unused credit returns after final accounting. Every submission has a UUID request_id. If a connection drops, retry exactly the same request ID and arguments to recover the existing run.

The batch script can be this small
python3 - <<'PY'
import json, os
from pathlib import Path
output = Path(os.environ["MATILDA_RUN_DIR"])
print("Hello from my Slurm allocation", flush=True)
(output / "metrics.jsonl").write_text(json.dumps({"step": 1, "result": 42}) + "\n")
(output / "result.txt").write_text("hello research\n")
PY

Read the output. Keep the result.

  1. Follow run state

    research_run returns the native job state, Slurm number and suggested polling interval. Closing the chat does not stop a submitted run.

  2. Read logs and metrics

    research_logs returns a bounded log page. Keep its next_offset for the next read. research_metrics reads complete JSON records from the run’s metrics.jsonl.

  3. Find your outputs

    research_artifacts lists the run directory. Ask the client to inspect result.txt, or use the authenticated download endpoint for binary artifacts.

Run outputs live under runs/<run-id> in your persistent workspace. They remain after compute is released, subject to your account’s hard storage quota.