API công khai
Libre WebUI cung cấp API tương thích OpenAI, vì vậy SDK, trình soạn thảo và script hiện có chỉ cần đổi URL cơ sở.
Xác thực
Tạo token API có scope trong Cài đặt → Tài khoản → Token API (tiền tố lwk_, lưu dưới dạng hash). /v1 yêu cầu scope chat. Gửi token theo lược đồ Bearer:
export OPENAI_BASE_URL="https://your-instance/v1"
export OPENAI_API_KEY="lwk_..."
Giới hạn là 600 yêu cầu mỗi phút cho mỗi token, cộng với giới hạn chat dùng chung.
Endpoint
| Endpoint | Mục đích |
|---|---|
GET /v1/models | Các model local và provider khả dụng |
POST /v1/chat/completions | Chat stateless có hoặc không streaming |
POST /v1/chat/completions nhận model, messages (system/user/assistant), stream, temperature, top_p, max_tokens/max_completion_tokens, seed và stop. Streaming gửi SSE chat.completion.chunk đến data: [DONE]; phản hồi không streaming chứa usage nếu provider báo cáo.
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."}]
}'
Các giới hạn có chủ ý
/v1 là inference stateless: không tạo chat, thay đổi kho tri thức hay chạy tool. Hội thoại stateful, event durable, hủy gắn với danh tính, hàng đợi idempotent và vòng lặp tool native nằm ở /api/chat, khả dụng cho cùng token với scope chat. Role ngoài system/user/assistant, chẳng hạn tool, bị từ chối.