NovitàCollega qualsiasi agente a UberLLM: una chiave, tutti i modelli, a prezzo di listino o meno.
UberLLM

Venditori

Puoi elencare la capacità di inferenza che sei autorizzato a rivendere su UberLLM: le tue GPU, un modello open-weights auto-ospitato o crediti di provider nell'ambito di un piano che consente la rivendita. Le richieste degli acquirenti per un modello possono essere indirizzate alla tua offerta e ti viene accreditato l'intero importo che l'acquirente paga per ogni richiesta.

Per elencare un'offerta dal browser, usa la pagina del venditore: Account → Vendi capacità → Nuova offerta. Ti guida attraverso cinque passaggi: Provider, Scopri, Test di salute, Prezzi, Revisione. Nulla viene pubblicato finché non confermi e gli acquirenti vengono indirizzati a una nuova offerta una volta che supera il nostro controllo del modello.

Tutto ciò che fa la pagina è anche un'API, quindi il tuo agente può farlo anche tu (vedi Per gli agenti).

Come funziona un'offerta

  • Una chiave fornitore, un base URL, molti modelli. Un'offerta è un modello servito tramite una chiave a un indirizzo. La stessa chiave può servire quanti modelli desideri, ma non puoi elencare lo stesso modello due volte con la stessa chiave e indirizzo — una seconda offerta viene rifiutata con 409 duplicate_offer_for_credential (e, quando l'offerta esistente è tua, il suo id in error.detail.existing_offer_id).
  • Il nome del modello sul tuo server può differire dal nostro (ad es. noi lo chiamiamo deepseek/deepseek-v4-flash, il tuo server lo chiama deepseek-v4-flash). Discovery li abbina per te; manualmente, invia upstream_model.
  • L'indirizzo del tuo server deve essere pubblico (https, raggiungibile da internet). Gli indirizzi locali, privati e quelli di UberLLM stessi sono rifiutati.
  • La tua chiave è crittografata a riposo, decrittografata solo per servire una richiesta inviata a te, mai restituita da alcuna lettura e mai registrata. Una nuova chiave viene testata prima di essere accettata — se il test fallisce, la tua vecchia chiave rimane. La rimozione di un'offerta cancella la chiave memorizzata.

Prezzi

Le offerte di testo sono prezzate come uno sconto sul prezzo di listino del modello (il prezzo che un acquirente pagherebbe andando direttamente). Invia discount_pct (ad es. 45 = 45% di sconto) o la stessa cosa di multiplier (0.55). I prezzi per token (input_usd_per_mtok / output_usd_per_mtok) non sono più accettati per i modelli di testo.

"match_best": true imposta il tuo prezzo allo sconto più profondo che gli acquirenti possono ottenere su quel modello in questo momento. Puoi cambiarlo in qualsiasi momento.

Gli acquirenti pagano il tuo prezzo; tutto ti viene accreditato al completamento di ogni richiesta. UberLLM non preleva alcuna commissione dalle tue vendite. Il tuo costo è quello che il tuo provider addebita alla tua key.

Opzionale daily_cap_usd: una volta che gli acquirenti hanno speso quella cifra per l'offerta in un giorno, smette di ricevere richieste fino al giorno successivo.

Salute

La salute è misurata sul traffico reale degli acquirenti. Le uniche altre richieste che inviamo alla tua key sono la richiesta di test qui sotto e quelle del controllo del modello.

  • Quando elenchi o attivi un'offerta, o ne cambi la key, inviamo una piccola richiesta di test (potrebbe usare una piccolissima parte della tua quota).
  • Se una richiesta di un acquirente a te fallisce, l'acquirente viene spostato al venditore successivo e la tua offerta rimane fuori dal routing per un po': 30 s → 1 min → 2 min → 10 min per errori del server e timeout, 10 → 20 → 40 → 60 min per una key rifiutata o nessun credito, 15–30 s per i rate limit. Quando l'attesa finisce, la tua offerta riceve di nuovo richieste; una richiesta che va a buon fine la ripristina.
  • Risolto prima? POST /seller/offers/{id}/reset-health (il pulsante Ho risolto, riprova) la ripristina subito. Lo fa anche una nuova key o un indirizzo che supera il suo test.
  • Se il tuo provider rifiuta la tua key o dice che l'account non ha credito due volte di seguito, ti inviamo un'email (al massimo una volta al giorno) con le offerte interessate.
  • GET /seller/health-log spiega, in parole semplici, perché un'offerta è stata saltata e quando è tornata attiva.

Controllo del modello

Gli acquirenti pagano per il modello che elenchi, quindi verifichiamo che la tua offerta lo serva davvero.

Le regole

  • Servi esattamente il modello che elenchi. Non un modello più piccolo, più economico, più vecchio o sintonizzato diversamente, e non un mix di modelli.
  • Non aggiungere nulla alla richiesta. Nessuna istruzione, system prompt o strumenti tuoi, e nulla tagliato da ciò che l'acquirente ha inviato. Un'app di chat o uno strumento di codifica rivenduto che aggiunge le proprie istruzioni infrange questa regola.
  • Passa i conteggi dei token inalterati, esattamente come il modello li ha contati.

Come controlliamo

  • Ogni offerta viene controllata prima che qualsiasi acquirente venga indirizzato ad essa. Finché non supera il controllo, la pagina di Vendita la mostra come In verifica; poi diventa Attiva. Una nuova chiave, indirizzo o modello viene controllato di nuovo allo stesso modo.
  • Le offerte continuano a essere controllate sul traffico reale per tutto il tempo in cui sono elencate.
  • I controlli utilizzano una piccola parte della tua quota e vengono pagati come qualsiasi altra richiesta.
  • Non pubblichiamo come funzionano i controlli o quando vengono eseguiti.

Quando un'offerta fallisce un controllo

  • Viene Messa in pausa, e non puoi riattivarla da solo. Anche elencare la stessa chiave di nuovo come nuova offerta viene rifiutato.
  • I tuoi pagamenti vengono sospesi mentre il nostro team la esamina.
  • La pagina di Vendita e GET /seller/offers spiegano il motivo, in parole semplici (listing_state: "paused" con check_reason), e ti inviamo un'email.
  • Per farla controllare di nuovo, correggi ciò che serve l'offerta, quindi scrivi a [email protected].

Quando un venditore viene scoperto a servire un modello diverso da quello elencato

  • Il tuo account venditore viene sospeso e tutte le tue offerte si fermano immediatamente.
  • I guadagni non ancora pagati vengono confiscati e utilizzati per rimborsare gli acquirenti che le tue offerte hanno servito. I pagamenti non ancora inviati vengono annullati.
  • Non puoi più elencare su UberLLM, con la stessa chiave del provider, server, indirizzo di pagamento o email.
  • La pagina di Vendita lo dice, e GET /seller/offers risponde listing_state: "suspended". Scrivi a [email protected] a riguardo.

Modelli open-weight: dichiara come li esegui

I modelli open-weight (GPT-OSS, Qwen, DeepSeek, GLM, Kimi, MiniMax e altri i cui pesi sono pubblicati) possono essere eseguiti a piena qualità o compressi per risparmiare memoria. Una copia compressa risponde un po' peggio, e nessun test può distinguerla in modo affidabile dal modello completo. Quindi, quando elenchi un modello open-weight, dichiari come il tuo server lo esegue, e gli acquirenti vedono la tua risposta sulla pagina del modello:

  • Piena qualità (16-bit): i pesi come pubblicati (bf16 / fp16), o migliori.
  • 8-bit: fp8 o int8.
  • Sotto 8-bit (6-bit o 4-bit): qualsiasi cosa più piccola.

Una nuova offerta di un modello open-weight richiede una delle tre opzioni. Le offerte elencate prima di 1 novembre 2026 mostrano "Precisione non dichiarata" finché non la imposti (Pagina di Vendita → l'offerta → Prezzo e precisione). Dichiarare una precisione superiore a quella che il tuo server esegue realmente equivale a un modello diverso da quello elencato: l'account viene sospeso, come descritto di seguito. I modelli chiusi (Claude, GPT-5, Gemini…) non lo richiedono.

Conteggi di token imbottiti

Quando il tuo server riporta molti più token di prompt di quanti una richiesta ne contenga realmente, l'acquirente viene fatturato, e tu vieni pagato, per al massimo circa 2× il nostro conteggio dei token di prompt della richiesta, più una piccola tolleranza per le definizioni degli strumenti e le immagini. Al di sotto di tale limite, le richieste vengono fatturate esattamente come il tuo server le riporta.

Guadagni e pagamenti

  • GET /seller/earnings?range=7d|30d|90d|all — guadagnati, vendite e token, per modello, con il mercato intorno a ciascuno dei tuoi modelli (lo sconto più economico al momento e lo sconto realizzato dal mercato nell'ultima ora) così puoi vedere come prezzare.
  • GET /seller/payouts — disponibili per il pagamento (owed_usd), in sospeso (held_usd, e next_release_at: quando la prossima parte sarà pronta), in arrivo e pagati come numeri separati, dove vengono inviati i tuoi pagamenti (payout_method, null finché non lo imposti), più la cronologia dei tuoi pagamenti.
  • PUT /seller/payout-method {method, address} — dove inviare i tuoi soldi: {"method":"paypal","address":"[email protected]"} (l'email del tuo account PayPal) o {"method":"usdc_base","address":"0x…"} (il tuo wallet su Base, 0x e 40 caratteri esadecimali; inviamo USDC solo sulla rete Base). Risponde al {method, address, set_at} salvato. Nella console: Vendita → Pagamenti → Dove inviamo i tuoi soldi.

I guadagni sono trattenuti prima di poter essere pagati: 14 giorni mentre sei un nuovo venditore (i tuoi primi 30 giorni, o finché non hai guadagnato $500 in totale), poi 7 giorni. In questo modo gli acquirenti possono essere rimborsati se un'offerta si rivela non corrispondere al modello che elenca. La pagina Vendita mostra Disponibili per il pagamento e In sospeso, con la data in cui la prossima parte sarà pronta.

Una volta sbloccato, ciò che è disponibile va automaticamente in un pagamento una volta raggiunto $5, o 72 ore dopo che la tua vendita non pagata più vecchia è uscita dalla sospensione (controllato ogni 10 minuti). Puoi anche richiederne uno in qualsiasi momento (POST /seller/payouts/request, il pulsante Pagami ora). Hai un solo pagamento in arrivo alla volta: ciò che guadagni nel frattempo rimane dovuto e va nel tuo prossimo pagamento una volta che quello attuale è stato pagato (richiederne un altro risponde a 409 payout_already_on_the_way).

Il nostro team invia ogni pagamento all'email PayPal o al wallet USDC (Base) che hai impostato, solitamente entro 2 giorni lavorativi dall'inizio del processo. Se un pagamento inizia prima che tu ne abbia impostato uno, inviamo un'email ai proprietari del tuo account per chiedere, e lo inviamo una volta che lo fai. Un pagamento è considerato pagato solo una volta che è stato effettivamente inviato; il riferimento del pagamento appare quindi accanto ad esso, e ti inviamo un'email per informarti che è stato inviato.

Se un pagamento non può essere effettuato (ad esempio l'email PayPal non può ricevere denaro), appare come Non riuscito con la motivazione. Nulla è perso: l'importo ti è nuovamente dovuto e verrà inviato con il tuo prossimo pagamento, e ti inviamo un'email per verificare dove inviamo i tuoi soldi.

API

Accedendo via web, l'API del venditore è sotto /api/v1/seller. Con la tua API key di UberLLM (quella che il tuo agente ha ottenuto dal sign-in di uberllm), la stessa API è sotto /v1/seller:

Call Cosa fa
POST /seller/register {display_name?} Inizia a vendere (una volta). Il nome è facoltativo: se omesso, sarai mostrato come "Seller" più 4 lettere. La pagina di vendita lo fa per te.
GET /seller/providers Provider e le loro base URL.
POST /seller/discover {base_url, api_key} o {config_id} I modelli che una key può servire, abbinati ai nostri (open_weights: true = la sua quotazione richiede un precision). Non costa quota.
POST /seller/test {base_url, api_key, models[]} Una piccola richiesta di test per modello.
POST /seller/offers/bulk Elenca molti modelli su una key: {endpoint_url, api_key, save_config, daily_cap_usd, precision, offers:[{model_id, upstream_model, precision, discount_pct | match_best}]}. precision (full, 8bit o below8) è richiesto per i modelli open-weight; quello di livello superiore si applica a ogni modello open-weight nel batch. Ogni modello viene testato mentre viene elencato; uno che fallisce viene omesso con la motivazione.
POST /seller/offers Elenca un modello: {model_id, endpoint_url, api_key, upstream_model, precision, discount_pct, daily_cap_usd}.
GET /seller/offers · GET /seller/offers/{id} Le tue offerte con prezzo, % di sconto, stato di salute, stato (listing_state: checking, live, paused o suspended, con check_reason quando ha fallito il controllo del modello) e rank live (la tua posizione tra tutto ciò a cui gli acquirenti possono essere indirizzati per quel modello).
PATCH /seller/offers/{id} Riprezza (discount_pct), limita (daily_cap_usd, 0 lo rimuove), precision (modelli open-weight), status: paused | active (un'offerta che ha fallito il controllo del modello non può essere riattivata).
POST /seller/offers/{id}/rotate-credential {api_key} Nuova key, testata prima di essere accettata.
POST /seller/offers/{id}/reset-health Di nuovo in routing ora.
DELETE /seller/offers/{id} Rimuovi: fuori dal routing, key memorizzata cancellata.
GET /seller/configs · DELETE /seller/configs/{id} Key salvate per avviare nuove offerte (viene mostrato solo un suggerimento di 4 caratteri).
GET /seller/health-log Perché le offerte sono state saltate.
GET /seller/earnings · GET /seller/payouts · POST /seller/payouts/request Denaro: ciò che è disponibile, in sospeso, in arrivo e pagato.
PUT /seller/payout-method {method: paypal | usdc_base, address} Dove vengono inviati i tuoi pagamenti: un'email PayPal o un wallet USDC su Base.
curl https://api.uberllm.dev/v1/seller/offers/bulk \
  -H "Authorization: Bearer $UBERLLM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "endpoint_url": "https://api.together.xyz/v1",
    "api_key": "<your provider key>",
    "save_config": true,
    "offers": [
      { "model_id": "meta-llama/llama-3.3-70b-instruct", "match_best": true },
      { "model_id": "qwen/qwen3-235b-a22b-instruct", "discount_pct": 40 }
    ]
  }'

Per gli agenti

Il tuo agente ha già una API key UberLLM dopo l'accesso. Può registrarsi, trovare modelli su una provider key, elencarli e monitorare i guadagni con le chiamate sopra sotto /v1/seller. Nessun altro tipo di key è necessario.

Elenca solo ciò che puoi rivendere

  • ✅ Modelli open-weights o self-hosted che gestisci.
  • ✅ Capacità del provider che ti è consentito rivendere.
  • ❌ Una chiave provider i cui termini non ti consentono di rivenderla o di dare accesso ad altri. I termini di molti provider non lo consentono: controlla i tuoi prima di elencarla.
  • ❌ Chiavi rubate, trapelate, condivise, di prova gratuita o di valutazione. Un'offerta che infrange queste regole viene rimossa.

Usa una chiave provider dedicata con un limite di spesa. Sei responsabile della licenza e del funzionamento legale di ciò che elenchi.