Public training run · open weights · Solana
The only chart where down is good.
$LOSS turns its creator fees into GPU hours. The GPUs train an open model in public: every step lowers the loss, every checkpoint ships with open weights, and holders vote on what it learns next.
- Fees
- 100% of creator fees buy GPU hours, via pump.fun fee sharing
- Weights
- Every checkpoint published under an open license
- Proof
- SHA-256 of each checkpoint written to Solana
[eval 12,000] eval/loss 1.468 ppl 4.34 held-out 2.1M tok [ckpt 12,000] ckpt-0006 saved 4 shards sha256 9f2c41…e41a [memo 12,000] hash written tx 4Kq9…Xw2p slot 449,688,824 [step 12,350] loss 1.418 lr 1.8e-5 gnorm 0.61 tok/s 41,150 [step 12,400] loss 1.412 lr 1.8e-5 gnorm 0.58 tok/s 41,200
How it works
How a fee becomes a step.
Six hops, all of them public. The fee side is on chain and verifiable on the pump.fun coin page. The compute side is a ledger of purchases, the training logs, and a hash on Solana for every checkpoint.
-
01
Trade
Someone buys or sells $LOSS on pump.fun, or on PumpSwap after graduation.
-
02
Creator fee
pump.fun charges a creator fee on the trade. It collects in the coin's fee vault.
-
03
Treasury
Fee sharing routes all of it to the training treasury. A distribute call pushes it out once it clears the minimum.
-
04
GPU hours
Once a day, the treasury's new SOL buys on-demand GPU hours. Each purchase is a row in the compute ledger.
-
05
Steps
The run resumes from its last checkpoint and trains until the day's hours are spent. Loss, eval and throughput are logged.
-
06
Checkpoint
Weights are published with an open license, and their SHA-256 goes to Solana in a memo so no file can be swapped later.
If fees stop, the run pauses. No new SOL means no new hours. Training stops at its last checkpoint, optimizer state included, and resumes from exactly there when fees come back.
Fee math
ExampleExample: at $2.40 per H100-hour and SOL at $200, 1 SOL ≈ 83 H100-hours, or about 10.4 hours on one 8×H100 node.
Example rates only. Each real purchase records the price paid and SOL/USD at that moment.
Compute ledger
0 purchases| # | Date (UTC) | SOL in | SOL/USD | GPU | Hours | $/GPU-h | Invoice |
|---|---|---|---|---|---|---|---|
| 000001 | — | — | — | — | — | — | — |
| 000002 | — | — | — | — | — | — | — |
| 000003 | — | — | — | — | — | — | — |
No purchases yet. Purchase #000001 is written on the first day the treasury has new SOL. Each row names the provider and GPU type and carries the SHA-256 of the invoice.
Why down is good
Loss is how surprised the model is by the right answer.
Show the model text it has never trained on. At every token, look at the probability it gave to the token that actually came next. Take the negative log and average it. That is the loss. Lower means less surprised, which means it predicts better.
Every other chart on your screen, you want up. On this one, a lower line is the whole point.
| Loss | Perplexity (eloss) | Typical p(right token) |
|---|---|---|
| 3.0 | 20.1 | 5.0% |
| 2.0 | 7.4 | 13.5% |
| 1.4 | 4.1 | 24.7% |
| 1.0 | 2.7 | 36.8% |
Perplexity is roughly how many equally likely options the model is torn between. Typical p is the geometric mean, e−loss.
Watch the teal points. Train loss is measured on the data the model learns from. Eval loss is measured on held-out text it never trains on. If train keeps falling while eval climbs, the model is memorizing, not learning. The run then rolls back to the best checkpoint and the next data mix changes.
Extract the date and amount as JSON: "Paid 2.5 SOL on 3 March for GPU time."
Paid 2.5 SOL on 3 March for GPU time. Paid 2.5 SOL on 4 March for GPU time. Paid 2.5 SOL on 5 Mar
{"date": "3 March", "amount": 2.5, "unit": "SOL"}
Run spec
The run.
One continuous public fine-tuning run, loss-public-01. These are the planned values.
| Base model | Open-weights decoder-only LLM, 7–8B parametersNamed with its file hashes before step 1. ckpt-0000 is those base weights, unchanged. |
|---|---|
| Base license | Apache-2.0 or equally permissiveNo non-commercial or research-only bases, so every checkpoint can be used by anyone. |
| Method | Supervised fine-tuning, full parametersbf16 mixed precision, sharded across one 8-GPU node. |
| Context | 8,192 tokensPacked sequences, loss on target tokens only. |
| Batch | 64 × 8,192 ≈ 524k tokens per step |
| Optimizer | AdamWβ1 0.9, β2 0.95, weight decay 0.1, gradient clip 1.0. |
| LR schedule | Linear warmup over 500 steps to 1.8e-5, then constantA constant rate suits a run with no fixed end. Each tagged release gets a short decay on its own branch. |
| Data mix | This week's vote winner, blended 70/30 with replayReplay of earlier data keeps the model from forgetting what it already learned. |
| Eval suite | Held-out loss every 2,000 stepsPlus a fixed public set on every checkpoint: knowledge, math, code, instruction following and refusals. Scores are posted next to the hash. |
| Checkpoints | Every 2,000 steps, and whenever the run pausesOptimizer state is kept so a pause costs time, not progress. |
| Hardware | On-demand H100 80GB, 8-GPU nodesBought from whichever provider is cheapest that day. Provider, hours and price go in the ledger. |
| License out | Same as the base modelUse it, fine-tune it, ship it. No token needed. |
| Where weights go | Public model repo on Hugging Face, plus a mirrorsafetensors shards, a SHA256SUMS manifest and a model card per checkpoint. |
Checkpoints
Every checkpoint, hashed on Solana.
Each checkpoint's shards are hashed into a manifest, and the manifest's SHA-256 is written to Solana in a memo. Anyone can download the weights later, hash them, and prove they are the exact files the run produced.
| Checkpoint | Step | Eval loss | Manifest SHA-256 | Solana memo | Weights | Status |
|---|---|---|---|---|---|---|
| ckpt-0000 | 0 | at launch | published at launch | at launch | base weights · published at launch | At launch |
| ckpt-0001 | 2,000 | — | — | — | — | Pending |
| ckpt-0002 | 4,000 | — | — | — | — | Pending |
| ckpt-0003 | 6,000 | — | — | — | — | Pending |
| ckpt-0004 | 8,000 | — | — | — | — | Pending |
Memo format
SpecWritten with the SPL Memo program from the published run wallet. The memo's slot is the checkpoint's timestamp.
Verify it yourself
3 commands# 1. hash every shard of the checkpoint you downloaded $ sha256sum *.safetensors | sort -k2 > SHA256SUMS # 2. hash the manifest $ sha256sum SHA256SUMS # 3. compare with the sha256 in that checkpoint's Solana memo
Holder vote
This week's vote.
Holders pick what the model learns next. Each week has a shortlist of four datasets, each checked for a license that allows training and publishing the resulting weights. The winner is next week's training data.
- MON 00:00 UTC
Shortlist posted with sources, licenses and token counts.
- SNAPSHOT
Balances are read at the open. Your weight is the $LOSS you held at the snapshot.
- SUN 00:00 UTC
Vote closes. The tally is posted in full.
- NEXT WEEK
The winner trains, blended 70/30 with replay of earlier data.
Connect a wallet to vote on the next dataset
The token
$LOSS
Launched on pump.fun. 1,000,000,000 supply. No presale.
Creator fees are routed with pump.fun fee sharing: 10,000 bps (100%) to the training treasury. The split is readable on chain and shown on the pump.fun coin page. Routed fees come from trading, not donations.
Holding $LOSS is a vote. Each week, your balance at the snapshot is your weight on what the model learns next. It is not a claim on fees, revenue or the model. The weights are free for everyone.
Verify the route
The fee-sharing config names the training treasury at 10,000 bps.At launch
At launch the split admin is revoked, so the route can never change.At launch
The treasury address is published here and on X.At launch
The base model and run spec are hashed on Solana.Before step 1
pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6PPDA of "sharing-config" + mintCustody, plainly: the treasury is a wallet the operator controls until its SOL is spent on GPU hours. Every inflow and every purchase is public, so anyone can reconcile the ledger against it.
Roadmap
What ships, in order.
No dates beyond what is live now. The run moves as fast as fees buy hours.
-
Now01
Token and site
- $LOSS launched on pump.fun
- Fee sharing at 10,000 bps to the training treasury, split admin revoked
- Treasury address and this run spec published
- Compute ledger open, empty until the first purchase
-
Next02
Step 1
- Base model named, its hashes written to Solana
- First GPU purchase on the first day with fees
- ckpt-0001 at step 2,000, hash in a memo
- Vote #001 on the first data mix
- This dashboard reads the live run
-
Later03
Open lab
- Eval scores for every checkpoint, side by side
- Tagged releases with model cards
- Holder-proposed datasets through license review
- A second run on a different base, if fees allow
FAQ
Questions, answered plainly.
Which model?
An open-weights base model in the 7–8B class, under Apache-2.0 or an equally permissive license. The exact model and its file hashes are announced before step 1, so it can't be swapped after the fact. ckpt-0000 is those base weights, unchanged.
Who controls the GPUs?
The operator rents them on demand and runs the training job. That part takes trust, so it is made checkable: every purchase is a ledger row (provider, GPU type, hours, price, invoice hash), the training logs are public, and the steps logged each day have to line up with the hours bought.
The treasury is custodial until its SOL is spent. Its address is public, so every inflow and outflow can be traced.
What happens if fees stop?
No new SOL, no new hours. The run pauses at its last checkpoint, optimizer state included, and resumes from exactly there when fees return. Nothing is lost. It waits.
Can I use the model?
Yes. Every checkpoint is published under the base model's permissive license: download it, fine-tune it, ship it, commercially too. You don't need to hold $LOSS to download anything.
Who picks the datasets?
Holders, once a week, from a shortlist of four. The shortlist is where license and safety checks happen; the vote picks among what passed. The full tally is posted after every vote.
Safety and licenses?
Shortlisted data must allow training and publishing the resulting weights: public domain, CC0, CC-BY, permissively licensed code. No personal data and no sources with unclear rights.
Every checkpoint runs the eval suite, including a refusal set, before its weights go up. A checkpoint that regresses there is held back, and the reason is posted.
What does holding $LOSS do?
It is your vote weight on the weekly data mix. That is the whole utility. It is not a share of fees, revenue or the model, and nothing here promises a price.
Help the line go down.
Fees buy GPU hours. Hours become steps. Steps become open weights, hashed on Solana.