🔗 API 端點
此指南提供有關如何有效與 API 端點交互的基本資訊,以使用我們的模型實現無縫整合和自動化。請注意,這是實驗性設定,未來可能會進行更新以進一步改進。
身份認證
為了確保安全訪問 API,需要進行身份認證 🛡️。您可以使用 Bearer Token 機制為 API 請求進行身份驗證。從 Open WebUI 的 Settings > Account 中獲取 API 金鑰,或者使用 JSON Web Token(JWT)進行身份驗證。
主要 API 端點
📜 獲取所有模型
-
端點:
GET /api/models
-
描述: 獲取所有通過 Open WebUI 創建或添加的模型。
-
示例:
curl -H "Authorization: Bearer YOUR_API_KEY" http://localhost:3000/api/models
💬 聊天完成
-
端點:
POST /api/chat/completions
-
描述: 作為 OpenAI API 兼容聊天完成端點,用於 Open WebUI 的模型,包括 Ollama 模型、OpenAI 模型和 Open WebUI Function 模型。
-
Curl 示例:
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": "為什麼天空是藍色的?"
}
]
} -
Python 示例:
import requests
def chat_with_model(token):
url = http://localhost:3000/api/chat/completions
headers = {
Authorization: fBearer {token},
Content-Type: application/json
}
data = {
"model": "granite3.1-dense:8b",
"messages": [
{
"role": "user",
"content": "為什麼天空是藍色的?"
}
]
}
response = requests.post(url, headers=headers, json=data)
return response.json()
🦙 Ollama API 代理支持
如果您希望直接與 Ollama 模型交互,包括嵌入生成或原始提示流式處理,Open WebUI 通過代理路由提供到原生 Ollama API 的透明通道。
- 基本 URL:
/ollama/<api>
- 參考: Ollama API 文件
🔁 生成完成(流式處理)
curl http://localhost:3000/ollama/api/generate -d {
"model": "llama3.2",
"prompt": "為什麼天空是藍色的?"
}