1 簡介
?Open WebUI?(網址是openwebui.com)是一個高度可擴展、功能強大且用戶友好的自托管Web用戶界面,專為完全離線操作設計,編程語言是python。它支持對接Ollama和OpenAI兼容的API的大模型。?
Open WebUI?在架構上是一種中間層,屏蔽了后端具體的大模型,最終對外體現為OpenAI兼容的API。
2 主要功能和特性
- 直觀的界面?:Open WebUI的聊天界面靈感來自于ChatGPT,確保了用戶友好的體驗?。
- 響應式設計?:在桌面和移動設備上都能享受無縫的體驗?。
- ?快速響應?:享受快速且響應迅速的性能?。
- ?輕松設置?:使用Docker或Kubernetes(kubectl、kustomize或helm)無縫安裝,提供無憂的體驗?。
- ?代碼語法高亮?:通過語法高亮功能享受增強的代碼可讀性?。
- ?全面的Markdown和LaTeX支持?:提升LLM體驗,豐富互動?。
- ?本地RAG集成?:支持檢索增強生成(RAG)技術,將文檔交互無縫集成到聊天體驗中?。
- ?網絡瀏覽能力?:將網站無縫集成到聊天體驗中,增強互動的豐富性和深度?。
- ?提示預設支持?:使用聊天輸入中的/命令即時訪問預設提示,加速互動?。
- ?RLHF注釋?:通過點贊和點踩賦予消息力量,促進人類反饋強化學習(RLHF)的數據集訓練?。
- ?對話標記?:分類和定位特定聊天,方便快速參考和簡化數據收集?。?
- 模型管理?:直接從Web UI中輕松下載或移除模型,創建Ollama模型?。
- ?多模型支持?:無縫切換不同的聊天模型,進行多樣化的互動?。
3 API
?Open WebUI?的API接口文檔是:
https://docs.openwebui.com/getting-started/api-endpoints
3.1 API 認證
訪問API需要認證,在設置 -> 賬號中獲取API_KEY,或者直接使用JWT,放在HTTP Authorization頭中。
3.2 聊天API
聊天API是一個OpenAI API兼容的API,真的和openai的聊天接口一模一樣。
curl -X POST http://localhost:3000/api/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "llama3.1","messages": [{"role": "user","content": "Why is the sky blue?"}]}'
3.3 獲取大模型列表的API
curl -H "Authorization: Bearer YOUR_API_KEY" http://localhost:3000/api/models