API publik
Libre WebUI menyediakan API yang kompatibel dengan OpenAI, sehingga SDK, editor, dan skrip yang ada hanya perlu mengganti URL dasar.
Autentikasi
Buat token API bercakupan di Pengaturan → Akun → Token API (berawalan lwk_, disimpan sebagai hash). /v1 memerlukan cakupan chat. Kirim token dengan skema Bearer:
export OPENAI_BASE_URL="https://your-instance/v1"
export OPENAI_API_KEY="lwk_..."
Batasnya 600 permintaan per menit per token, ditambah batas bersama chat.
Endpoint
| Endpoint | Tujuan |
|---|---|
GET /v1/models | Model lokal dan penyedia yang tersedia |
POST /v1/chat/completions | Chat stateless, dengan atau tanpa streaming |
POST /v1/chat/completions menerima model, messages (system/user/assistant), stream, temperature, top_p, max_tokens/max_completion_tokens, seed, dan stop. Streaming mengirim SSE chat.completion.chunk hingga data: [DONE]; respons non-streaming menyertakan usage jika dilaporkan penyedia.
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."}]
}'
Batas yang disengaja
/v1 adalah inferensi stateless: tidak membuat chat, mengubah basis pengetahuan, atau menjalankan alat. Percakapan stateful, event durable, pembatalan terikat identitas, antrean idempoten, dan loop alat native berada di /api/chat, tersedia bagi token yang sama dengan cakupan chat. Peran selain system/user/assistant, misalnya tool, ditolak.