File size: 1,785 Bytes
309b968
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# DaisyChain Quickstart

Two ways to run. **Docker** is the most reliable (especially on Windows).

## A. Docker — one command (demo cluster on one machine)

```bash
docker compose -f docker/docker-compose.yml up --build
# open http://localhost:8080
```

This starts 3 node containers + the dashboard on a Docker network — the whole
pipeline, so you can see connectivity, the capacity plan, and live training.
Stop with `docker compose -f docker/docker-compose.yml down`.

Windows: just run `scripts\setup.bat` and pick **[1] Docker**.

## B. Python — real machines

On **every** machine:

```bash
pip install torch numpy psutil
pip install -e .            # from the repo, or `pip install daisychain`
```

Set the cluster env (copy `config/cluster.example.env`), changing only `RANK`
per machine, then run:

```bash
export MASTER_ADDR=100.101.102.10   # coordinator IP (Tailscale 100.x recommended)
export MASTER_PORT=29560
export WORLD_SIZE=3
export RANK=0                        # 1, 2, ... on the others
export GLOO_SOCKET_IFNAME=tailscale0 # your mesh/LAN NIC
daisychain-train
```

Windows: run `scripts\setup.bat` and pick **[2] Python** (it prompts for these).

## Watch it

Run the dashboard anywhere that can reach the nodes:

```bash
# edit config/nodes.example.json with your node hosts, then:
daisychain-dashboard        # http://localhost:8080
```

## Train your own model

The default is a tiny example task. To train **your** model, see
[CUSTOM_TASK.md](CUSTOM_TASK.md) — copy `examples/my_task_template.py`, fill in
`build_model` / `sample` / `loss`, and set `DAISY_TASK=your_module:YourTask`.

**Before you rely on it, read [LIMITS.md](LIMITS.md).** DaisyChain pools compute,
not memory, and is for *small* models on spare hardware — not GPU-class training.