AI provider quickstart¶
Experimental — not a public service
AI sharing is implemented and tested locally (single operator). There is no public provider network, no independent provider cohort and no public model gateway. Usage receipts are provider-signed claims, not proof of GPU work. Nothing on this page earns block rewards.
Boundaries¶
flowchart LR
U[Application / wallet] -- OpenAI-compatible HTTP on loopback --> M[MeshLLM runtime<br/>separate process]
M -- signed usage record --> P[Provider agent]
P -- propose usage --> E[(ServiceEscrow<br/>on chain)]
U -- fund / accept / dispute --> E
N[PQWERAI node<br/>consensus + EVM] --- E
M -. never inside .- N
- AI never runs inside consensus. A stopped or compromised MeshLLM cannot stop nodes from validating blocks.
- Prompts and responses never go on chain; only quote hashes, receipt commitments and amounts do.
- Inference only: paid training, training grants and training rewards are out of scope for testnet-rc1.
1. Run MeshLLM locally¶
The project pins upstream MeshLLM (0.78.x) and a GGUF model by SHA-256; the supervisor verifies publisher/product/
native-file hashes before starting it with --local-model-only, isolates its data directory and disables analytics,
default plugins and prompt disk caching. There is no downloader: install the pinned files yourself.
Wallets and clients reach the runtime only on literal loopback: http://127.0.0.1:<port>/v1 (OpenAI-compatible).
2. Opt in with a provider policy¶
The Windows Wallet's AI Sharing page (Advanced mode) writes the same policy the runtime client uses:
| Setting | Meaning |
|---|---|
| Inference / hosting consent | Nothing is served until you opt in |
| GPU, CPU, power, temperature, bandwidth limits | Admission checks before each job (not physical limits) |
| Hours (UTC) | When the node accepts work |
| Minimum price | Lowest pricePerToken you will quote |
| Payout address | Settlement address (separate from mining and validator keys) |
"Ask the model" sends a local test request and shows an unverified, not payable usage observation.
3. Usage records and settlement¶
- The provider signs a quote (job id, payer, provider, model id, max tokens, price per token, expiry, service window) bound to chain ID 77240 and the escrow address.
- The payer funds the job in
ServiceEscrowwith exactlymaxTokens × pricePerToken. - After serving, the provider proposes usage with a receipt commitment (hash of its signed usage record).
- The payer accepts or disputes; a trusted arbiter resolves disputes; unaccepted jobs refund after the window.
- Funds are paid by pull withdrawal. Revenue policy v3: the provider receives the remainder after deployment-configured payees; the testnet default has no payees, so the provider receives 100 %.
The full flow is executable in Build an AI payment application.
Limits you must design for¶
- Finality: an escrow allocation in a non-finalized block can be reorganised away. Deliver irreversible goods only after the settlement block is BFT-finalized.
- Arbiter and payer acceptance are trust assumptions; signed usage authenticates the provider's report, not its truth.
- Multi-operator routing, accountable hardware measurement and model-poisoning evaluation remain open work (known gaps).
Sources at 72057fe3ec: ai/README.md · testnet/release/network/GUIDES.md · apps/pqwerai-wallet-windows/README.md
Found a problem? Report a documentation issue · Build testnet-rc1+72057fe3ec