API pubblica
Libre WebUI espone un'API compatibile con OpenAI, così SDK, editor e script esistenti possono puntare alla tua istanza modificando soltanto l'URL di base.
Autenticazione
Crea un token API con ambiti in Impostazioni → Account → Token API (i token usano il prefisso lwk_ e vengono archiviati sotto forma di hash). La superficie /v1 richiede l'ambito chat. Passa il token come una normale chiave bearer:
export OPENAI_BASE_URL="https://your-instance/v1"
export OPENAI_API_KEY="lwk_..."
Le richieste sono soggette al limite per token (600 richieste al minuto) e al limite condiviso della chat.
Endpoint
| Endpoint | Scopo |
|---|---|
GET /v1/models | Modelli disponibili, locali o basati sui plugin dei provider |
POST /v1/chat/completions | Completamento chat senza stato, in streaming oppure no |
POST /v1/chat/completions accetta il corpo consueto: model, messages (system/user/assistant; le parti di testo multimodali vengono appiattite), stream, temperature, top_p, max_tokens/max_completion_tokens, seed e stop. Le risposte in streaming sono frame SSE chat.completion.chunk terminati da data: [DONE]; le risposte non in streaming includono i conteggi dei token in usage quando il provider li comunica.
curl "$OPENAI_BASE_URL/chat/completions" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "llama3.2",
"messages": [{"role": "user", "content": "One sentence on herons."}]
}'
Limiti intenzionali
La superficie /v1 è destinata all'inferenza senza stato: non crea mai chat, non modifica la tua base di conoscenze e non esegue strumenti. Le conversazioni con stato, eventi persistenti e riproducibili, annullamento tramite identità, accodamenti idempotenti e ciclo nativo degli strumenti risiedono nell'API eventi nativa /api/chat, che gli stessi token possono chiamare con l'ambito chat. I ruoli diversi da system/user/assistant, ad esempio tool, vengono rifiutati anziché accettati silenziosamente.
Documentazione correlata
- Autenticazione — account, sessioni e token API
- Strumenti di chat — il ciclo nativo degli strumenti nell'API eventi