Run vs Observe
Weco's two modes - let Weco drive the optimization (weco run), or track a loop you drive yourself (weco observe) - and what runs on your machine versus in the cloud.
Weco works in two modes. They differ in who drives the optimization.
weco run | weco observe | |
|---|---|---|
| Who optimizes? | Weco | You (or your agent) |
| Who evaluates? | Weco, using your eval command | You evaluate externally |
| What Weco provides | End-to-end optimization | Dashboard, tree visualization, tracking |
| Use it when | You want Weco to do the experimenting | You are running your own loop and want it tracked |
Which to use
Reach for weco run when you have code and a metric and want Weco to find a better version. Weco proposes the changes, runs your evaluation, and iterates. The Quickstart and Optimize with the CLI walk through it.
Reach for weco observe when you, a training script, or an agent are already iterating, and you want the solution tree, code diffs, and metric tracking in the Weco dashboard without handing over the loop. Track any loop is the guide.
Both modes produce the same solution tree. The only difference is who runs the experiments.
What runs where
In both modes your code and your evaluation run on your machine. Weco never executes your code or reads your data itself. What Weco receives depends on the mode.
- With
weco run, the code being optimized is sent to Weco's service, which uses an LLM to generate each next change. Your machine runs each candidate, and after every step your evaluation's output goes back up to guide the next one. So whatever your evaluation prints, the metric and anything else, leaves your machine. - With
weco observe, Weco generates nothing. It receives only what you choose to log: your metrics, and the code snapshots you pass, so it can show the tree and the diffs in the dashboard.
Your datasets are never uploaded in either mode. Keep secrets and raw sensitive data out of anything your evaluation prints or you log. Bring your own model keys (BYOK) to choose which LLM provider weco run uses to generate the changes.
How Weco compares to Weights & Biases
Weights & Biases tracks how a model's weights change as it trains, for a fixed piece of training code. Weco tracks how the code itself changes to get better results. They sit at different levels: W&B inside the training run, Weco a step above it, over the code. Teams that use both tend to use them together.
See also
- Quickstart to start a
weco run. - Track any loop for the
weco observerecipe. - How Weco works for the search loop and the solution tree.
How Weco works
The mental model behind Weco - autoresearch, the solution tree, and the vocabulary (run, step, node, branch, subtree, lineage, baseline) used throughout the docs.
Dashboard: Watch, share & manage runs
Use the Weco dashboard to watch optimizations in real time, explore the solution tree, share runs, and manage runs remotely.