繁中 ▾
取得 API 金鑰

Open WebUI 與 n8n:將聊天串接至無審查 API

Open WebUI 提供聊天視窗,n8n 提供自動化功能,兩者皆可共用同一個 OpenAI 相容的端點。以下是各自的設定方式,以及如何從 n8n 工作流程進行聊天。

更新於

聊天視窗與工作流程面板透過電纜連接至單一 API 伺服器,顯示 Open WebUI 與 n8n 共用端點

重點摘要

  1. 在 Open WebUI 中,於管理員設定或連線處新增 Base URL 與金鑰,或在 Docker 中設定兩個環境變數。
  2. 在 n8n 中,可覆寫 OpenAI 憑證中的基礎 URL,或使用 HTTP Request 節點。
  3. 在兩個工具中使用模型 ID uncensored。
  4. 將 n8n 迴圈中的並行請求數量保持在 8 個以下,並針對 429 回應開啟重試功能。

你正在設定的內容

如果你是輸入 openwebui 如何聊天 n8n 來到這裡,你可能想同時做兩件相關的事:在 Open WebUI 中與模型對話,以及從 n8n 工作流程呼叫該模型。這兩個工具都可以指向遵循 OpenAI 聊天完成格式的伺服器,因此一個帳戶即可涵蓋兩者。

Open WebUI 是一個自託管的聊天介面。n8n 是一個工作流程自動化工具,你可以將節點連接在一起。後方的 API 在兩種情況下都是相同的:

  • Base URL:https://api.nofilteraichat.com/v1
  • 模型 ID:uncensored
  • 驗證:使用 Authorization: Bearer 標頭,並附上你的金鑰

你首先需要一個金鑰。API 金鑰頁面會引導你完成註冊,並提供一鍵取得 $0.50 試用額度,這足以測試以下所有內容。

第一部分:Open WebUI

選項 A:管理員面板

如果 Open WebUI 已在運行,請以管理員身分登入並開啟管理員設定,然後進入連線。新增一個新的 OpenAI API 連線,填入以下值:

  1. URL:https://api.nofilteraichat.com/v1
  2. 金鑰:你的 API 金鑰
  3. 儲存,然後如果你的版本有驗證按鈕,請使用它。

選單名稱在不同版本間可能略有差異,請尋找列出 OpenAI 風格連線的區段。儲存後,開始新的聊天並開啟模型選單。模型 uncensored 應該會出現,因為 Open WebUI 會從 GET /v1/models 載入列表。

選項 B:Docker 中的環境變數

如果你是全新開始,請在啟動容器時傳遞設定:

docker run -d --name open-webui -p 3000:8080 \
  -e OPENAI_API_BASE_URL="https://api.nofilteraichat.com/v1" \
  -e OPENAI_API_KEY="$NOFILTER_API_KEY" \
  -v open-webui:/app/backend/data \
  ghcr.io/open-webui/open-webui:main

開啟 http://localhost:3000,建立第一個本機帳戶,模型就會在選擇器中等待。注意,Open WebUI 會在首次啟動後將連線設定儲存至資料庫。如果你稍後更改變數卻無反應,請改為在管理員面板中編輯連線。

調整聊天設定

你可以在聊天控制項中設定 temperature、top_p、停止序列和系統提示詞。這些參數會傳遞給模型。對於小說和角色扮演,temperature 設為 0.7 到 1.0 可產生更生動的文本。對於事實性問題,請調低。如果模型開始重複短語,請稍微提高頻率懲罰。

第二部分:搭配 OpenAI 節點的 n8n

n8n 擁有原生的 OpenAI 憑證。其設定包含一個基礎 URL 欄位,預設值為官方伺服器。更改它後,該節點就會與你的端點通訊:

  1. 在 n8n 中,建立一個類型為 OpenAI 的新憑證。
  2. 貼上你的 API 金鑰。
  3. 將 Base URL 設為 https://api.nofilteraichat.com/v1。
  4. 儲存並將憑證附加至 OpenAI Chat Model 節點或 AI Agent 工作流程。

關鍵在於模型欄位。某些節點會從模型列表填充下拉選單,有些則將選項限制為已知名稱。如果你無法選取 uncensored,請將欄位切換為運算式模式並手動輸入 ID。如果你的 n8n 版本仍然拒絕,請使用下一節的 HTTP Request 方法,該方法沒有此限制。

憑證運作正常後,你可以將聊天模型附加至 AI Agent 節點並提供工具。API 支援工具呼叫(tools、tool_choice,以及以 role: "tool" 格式回傳結果)。與任何開放權重模型一樣,請在真實輸入上測試 Agent,並將工具描述保持簡短且字面化。

第三部分:從 HTTP Request 節點聊天

最可預測的選項是純淨的 HTTP Request 節點。它會顯示確切發送的內容,且適用於所有 n8n 版本。將節點設定如下:

  • 方法:POST
  • URL:https://api.nofilteraichat.com/v1/chat/completions
  • 驗證:標頭驗證,名稱 Authorization,值 Bearer YOUR_KEY(請將其儲存為憑證,而非放在節點內)
  • 發送主體:開啟,內容類型 JSON

將主體設定為以下內容,使用者文字請使用運算式:

{
  "model": "uncensored",
  "messages": [
    { "role": "system", "content": "You are a concise story assistant for adult fiction writers." },
    { "role": "user", "content": "{{ $json.prompt }}" }
  ],
  "temperature": 0.8,
  "max_tokens": 600
}

回覆文字位於 choices[0].message.content。在下一個節點中,使用運算式 {{ $json.choices[0].message.content }} 讀取它。相同的回應也包含 usage 區塊,因此你可以將 token 計數記錄到試算表或資料庫。

典型的工作流程是 Webhook 觸發器、此 HTTP 節點,以及一個返回文字的回應節點。另一個常見的做法是讀取試算表的資料列,為每一列產生草稿,然後將結果寫回。你也可以先在 n8n 之外使用 curl 測試請求:

curl https://api.nofilteraichat.com/v1/chat/completions \
  -H "Authorization: Bearer $NOFILTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"uncensored","messages":[{"role":"user","content":"Say hello in five words."}]}'

n8n 的限制、重試與批次

完整金鑰允許 8 個並行請求和每分鐘 300 個請求;試用金鑰允許 2 個和 60 個。n8n 很容易超過這些限制,因為節點會處理每個傳入項目,並可能快速觸發它們。

在 HTTP Request 節點中,開啟選項並使用批次處理:設定批次大小為 4 或 6,間隔為 1 秒或 2 秒。在節點設定下,開啟失敗時重試,設定 3 次嘗試和 5000 毫秒的等待時間。這符合 API 的行為:當伺服器短暫過載時,會傳回 HTTP 429 並附上 Retry-After: 5 標頭。其他 429 代碼告訴你觸及了哪個限制:rate_limited 表示每分鐘請求過多,concurrency 表示同時請求過多。

串流輸出值得注意。串流請求會保留其並行槽位直到串流結束。在 n8n 中,請在 HTTP 節點關閉串流,因為工作流程仍會等待完整答案。Open WebUI 預設會串流,這很適合聊天視窗。

工作流程的成本

假設工作流程處理 500 列資料,每列傳送 800 個輸入 token 並取得 250 個輸出 token。輸入:500 × 800 = 400,000 個 token,費用為 400,000 × $0.15 / 1,000,000 = $0.06。輸出:500 × 250 = 125,000 個 token,費用為 125,000 × $0.50 / 1,000,000 = $0.0625。總計費用為 $0.1225,約 12 美分。請參閱定價頁面進行儲值。

故障排除

症狀可能原因修復方法
Open WebUI 未顯示任何模型URL 或金鑰錯誤使用以 /v1 結尾的基礎 URL;使用 curl 測試 GET /v1/models
Docker 環境變數變更被忽略設定已儲存在管理員設定中編輯連線
n8n 傳回 401標頭值缺少 Bearer 字樣值必須為 Bearer、一個空格,然後是金鑰
Docker 中的 Open WebUI 無法連接到本機代理localhost 指向容器使用主機位址,而非 localhost
迴圈中間出現 429並行項目過多對 HTTP 節點進行批次處理並啟用重試
找不到模型名稱輸入錯誤唯一的 ID 是 uncensored

設計流程時請記住產品限制:僅支援文字聊天,提示詞與回覆共用 100,000 token 的上下文視窗,且請求主體為 8 MB。沒有嵌入端點,因此請將任何向量搜尋保留在其他服務上。快速入門提供完整的請求參考,整合指南涵蓋更多前端。透過 API 送出的提示詞不會用於訓練。

嚴格規則適用於所有工具:禁止涉及未成年人的性內容。在合法成人使用範圍內,模型經過調校以不拒絕回答的方式回應,適合成人小說、角色扮演和伴侶應用程式。

問答

我如何為 Open WebUI 新增自訂 OpenAI 端點?

前往管理設定、連線,新增帶有基礎 URL 和您的金鑰的 OpenAI API 連線。或者,在啟動 Docker 容器時設定 OPENAI_API_BASE_URL 和 OPENAI_API_KEY。

n8n 能否為 OpenAI 節點使用不同的基礎 URL?

可以。OpenAI 憑證有一個基礎 URL 欄位。如果模型下拉選單拒絕 uncensored,請以運算式模式輸入,或使用 HTTP Request 節點。

為什麼我的 n8n 迴圈會返回 429 錯誤?

你發送的並行請求超過 8 個,或完整金鑰每分鐘超過 300 個請求。在 HTTP 節點中加入批次處理並啟用失敗時重試。

我可以同時在 Open WebUI 和 n8n 中使用相同的金鑰嗎?

可以,但兩個工具共享 8 個並行請求的限制,因此在聊天時請保持工作流程批次較小。

只差一張表單,即可取得金鑰

建立帳號、複製金鑰、更改基礎 URL。這就是整個設定過程。

取得 API 金鑰