openclaw infer è l’interfaccia headless canonica per l’inferenza supportata dai provider. Espone famiglie di funzionalità (model, image, audio, tts, video, web, embedding), non nomi RPC grezzi del Gateway o ID degli strumenti dell’agente. openclaw capability ... è un alias per la stessa struttura di comandi.
Motivi per preferirlo a un wrapper specifico per un singolo provider:
- Riutilizza provider e modelli già configurati in OpenClaw.
- Fornisce un formato stabile
--jsonper script e automazioni gestite da agenti (vedi Output JSON). - Per la maggior parte dei sottocomandi, esegue il normale percorso locale senza il Gateway.
- Per le verifiche end-to-end dei provider, utilizza la CLI distribuita, il caricamento della configurazione, la risoluzione dell’agente predefinito, l’attivazione dei plugin inclusi e il runtime condiviso delle funzionalità prima di inviare la richiesta al provider.
Trasformare infer in una skill
Copia e incolla questo testo in un agente:openclaw infer ... alle alternative di livello inferiore e non documenta nuovamente l’intera interfaccia di infer nel corpo della skill.
Struttura dei comandi
infer list / infer inspect --name <capability> mostrano questa struttura sotto forma di dati (ID della funzionalità, trasporti, descrizione).
Attività comuni
Comportamento
- Usa
--jsonquando l’output viene passato a un altro comando o script; altrimenti usa l’output testuale. - Usa
--providero--model provider/modelper fissare un backend specifico. - Usa
model run --thinking <level>per sostituire una tantum il livello di pensiero/ragionamento:off,minimal,low,medium,high,adaptive,xhighomax. - Per
image describe,audio transcribeevideo describe,--modeldeve usare il formato<provider/model>. - Per
image describe,--fileaccetta percorsi locali e URL HTTP(S); gli URL remoti passano attraverso la normale politica SSRF per il recupero dei contenuti multimediali. - I comandi di esecuzione senza stato (
model run,image *,audio *,video *,web *,embedding *) utilizzano il percorso locale per impostazione predefinita. I comandi di stato gestiti dal Gateway (tts status) utilizzano il Gateway per impostazione predefinita. - Il percorso locale non richiede mai che il Gateway sia in esecuzione.
- Il comando locale
model runesegue un completamento del provider essenziale e una tantum: risolve il modello e l’autenticazione dell’agente configurato, ma non avvia un turno dell’agente di chat, non carica strumenti e non apre i server MCP inclusi. model run --fileallega i file immagine al prompt (con rilevamento automatico del tipo MIME); ripeti--fileper più immagini. I file che non sono immagini vengono rifiutati: usa inveceinfer audio transcribeoinfer video describe.model run --gatewayverifica l’instradamento del Gateway, l’autenticazione salvata, la selezione del provider e il runtime incorporato, ma rimane una verifica diretta del modello: nessuna trascrizione della sessione precedente, nessun contesto bootstrap/AGENTS, nessuno strumento e nessun server MCP incluso.model run --gateway --model <provider/model>richiede una credenziale del Gateway per un operatore attendibile, poiché chiede al Gateway di eseguire una sostituzione una tantum di provider/modello.
Modello
Inferenza testuale e ispezione di modelli/provider.<provider/model> con --local per eseguire uno smoke test di un provider senza avviare il Gateway o caricare l’interfaccia degli strumenti dell’agente:
- Il comando locale
model runè lo smoke test CLI più mirato per verificare lo stato di provider/modello/autenticazione: per i provider diversi da ChatGPT-Codex invia solo il prompt specificato. - Il comando locale
model run --model <provider/model>può risolvere righe esatte del catalogo statico incluso, le stesse mostrate daopenclaw models list --all, prima che il provider venga scritto nella configurazione. L’autenticazione del provider è comunque necessaria; le credenziali mancanti generano errori di autenticazione, nonUnknown model. - Per le verifiche di ragionamento con Mistral Medium 3.5, lascia la temperatura non impostata/predefinita. Mistral rifiuta
reasoning_effort="high"contemperature: 0; usa la temperatura predefinita o un valore diverso da zero, ad esempio0.7. - Le verifiche locali con OAuth OpenAI ChatGPT/Codex (API
openai-chatgpt-responses) aggiungono un’istruzione di sistema minima affinché il trasporto possa valorizzare il campo obbligatorioinstructions: nessun contesto completo dell’agente, strumento, memoria o trascrizione della sessione. model run --fileallega direttamente il contenuto dell’immagine al singolo messaggio dell’utente. I formati comuni (PNG, JPEG, WebP) funzionano quando il tipo MIME viene rilevato comeimage/*; i file non supportati o non riconosciuti generano un errore prima della chiamata al provider. Usa inveceinfer image describequando vuoi l’instradamento e i fallback dei modelli di immagini di OpenClaw anziché una verifica diretta di un modello multimodale.- Il modello selezionato deve supportare l’input di immagini; i modelli solo testuali potrebbero rifiutare la richiesta a livello del provider.
model run --promptdeve contenere testo diverso da soli spazi; i prompt vuoti vengono rifiutati prima di qualsiasi chiamata al provider o al Gateway.- Il comando locale
model runtermina con un codice diverso da zero quando il provider non restituisce output testuale, così provider non raggiungibili e completamenti vuoti non appaiono come verifiche riuscite. - Usa
model run --gatewayper verificare l’instradamento del Gateway o la configurazione del runtime dell’agente mantenendo invariato l’input del modello. Usaopenclaw agento un’interfaccia di chat per ottenere il contesto completo dell’agente, gli strumenti, la memoria e la trascrizione della sessione. --thinking adaptivecorrisponde al livellomediumdel runtime di completamento;--thinking maxcorrisponde amaxper i modelli OpenAI che supportano nativamente lo sforzo massimo, altrimenti axhigh.model auth login,model auth logoutemodel auth statusgestiscono lo stato di autenticazione salvato del provider.
Immagine
Generazione, modifica e descrizione.-
Usa
image editquando parti da file di input esistenti;--size,--aspect-ratioo--resolutionaggiungono indicazioni geometriche per i provider/modelli che le supportano. -
--output-format png --background transparentcon--model openai/gpt-image-1.5produce un’immagine PNG OpenAI con sfondo trasparente;--openai-backgroundè un alias specifico di OpenAI per la stessa indicazione. I provider che non dichiarano il supporto per lo sfondo la segnalano come opzione ignorata (vediignoredOverridesnell’involucro JSON). -
--quality low|medium|high|autofunziona con i provider che supportano le indicazioni sulla qualità delle immagini, incluso OpenAI. OpenAI accetta anche--openai-moderation low|auto. -
image providers --jsonelenca quali provider di immagini inclusi sono rilevabili, configurati e selezionati, nonché le funzionalità di generazione/modifica esposte da ciascuno. -
image generate --model <provider/model> --jsonè il test rapido in ambiente reale più mirato per le modifiche alla generazione di immagini:La risposta riportaok,provider,model,attemptse i percorsi degli output scritti. Quando è impostato--output, l’estensione finale può seguire il tipo MIME restituito dal provider. -
Per
image describeeimage describe-many, usa--promptper un’istruzione specifica per l’attività (OCR, confronto, ispezione dell’interfaccia utente, didascalia concisa). -
Usa
--timeout-msper modelli di visione locali lenti o per gli avvii a freddo di Ollama. -
Per
image describe, un--modelesplicito (deve essere un<provider/model>con supporto per le immagini) viene eseguito per primo, quindi, se la chiamata non riesce, vengono provati i fallback configurati inagents.defaults.imageModel.fallbacks. Gli errori di preparazione dell’input (file mancante, URL non supportato) causano un errore prima di qualsiasi tentativo di fallback e il modello deve supportare le immagini nel catalogo dei modelli o nella configurazione del provider. -
Per i modelli di visione Ollama locali, scarica prima il modello e imposta
OLLAMA_API_KEYsu un valore segnaposto qualsiasi, ad esempioollama-local. Vedi Ollama.
Audio
Trascrizione di file (non gestione di sessioni in tempo reale).--model deve essere <provider/model>.
TTS
Sintesi vocale e stato del provider/persona TTS.tts statussupporta solo--gateway(riflette lo stato TTS gestito dal Gateway).- Usa
tts providers,tts voices,tts personas,tts set-provideretts set-personaper esaminare e configurare il comportamento TTS.
Video
Generazione e descrizione.video generateaccetta--size,--aspect-ratio,--resolution,--duration,--audio,--watermarke--timeout-ms, inoltrati al runtime di generazione video.- Per
video describe,--modeldeve essere<provider/model>.
Web
Ricerca e recupero.web providers elenca i provider disponibili, configurati e selezionati per la ricerca e il recupero.
Incorporamento
Creazione di vettori e ispezione dei provider di incorporamento.Output JSON
I comandi Infer normalizzano l’output JSON in un involucro condiviso:okcapabilitytransportprovidermodelattemptsinputs(allegati immagine inviati con la richiesta, quando applicabile)outputsignoredOverrides(chiavi delle indicazioni non supportate da un provider, quando applicabile)error
outputs contiene i file scritti da OpenClaw. Per l’automazione, usa path, mimeType, size e le eventuali dimensioni specifiche del contenuto multimediale presenti nell’array, anziché analizzare lo stdout leggibile dall’utente.