Umbra routes your prompts through a network of independent GPUs — but the relay never reads them, no one stores them, and every worker is slashed for dishonest inference. Pay in USDC. Owned by no one.
Centralized providers log your prompts and censor their models. The "decentralized" ones still pipe every prompt through one operator in plaintext, and have no way to tell if a worker actually ran the model. Umbra fixes both.
Your browser encrypts each prompt to the assigned worker's key using a NaCl sealed-box. The relay forwards ciphertext it physically cannot open, and the worker seals every token back to a one-time key only you hold. No operator sees your prompt. Nothing is stored. The competition admits their relay reads plaintext "to route it" — ours can't.
Every worker stakes $UMBRA and is continuously hit with canary challenges indistinguishable from real traffic. The relay recomputes the honest answer and compares. Run a cheaper model, fake your output, or cut corners and you fail the audit — your stake is slashed and you're ejected. Reputation, not just speed, decides who gets paid.
Your browser encrypts the prompt to the worker's public key.
It picks a worker by reputation × speed and forwards opaque bytes.
It decrypts, runs the model, and seals each token back to you.
Tokens stream into your tab. The relay saw nothing but ciphertext.
Every model has had refusal behavior removed. Flat per-request pricing — you know the cost before you send. 1 credit = $0.01, bought with USDC.
You don't need $UMBRA to use Umbra — inference is paid in USDC. $UMBRA is how the value flows back. Every job's margin and trading fees collect in a treasury that splits daily.
Stake $UMBRA to earn USDC, claim a daily free-credit allowance, and (if you run a worker) lift your cut from 70% to 80%. Workers stake against their own honesty — and lose it if they cheat.
Point any framework at Umbra by changing two things — base_url and api_key. Uncensored models, never logged, anonymous to the worker.
# pip install openai — then just repoint it from openai import OpenAI client = OpenAI( base_url="https://umbracompute.com/api/v1", api_key="sk-umbra-...", # get one at umbracompute.com → settings → API ) resp = client.chat.completions.create( model="umbra-max", # uncensored 27B, sealed to the worker messages=[{"role": "user", "content": "Hello!"}], ) print(resp.choices[0].message.content) # resp.umbra → { worker, worker_reputation, sealed: true }