WebSocket 代理
Luker 提供了 WebSocket(WS)代理功能,透過持久的 WebSocket 隧道傳輸 AI 生成請求,替代傳統的 HTTP 請求方式。這在網路不穩定或受限的環境中尤其有用。
什麼是 WS 代理
在傳統模式下,每次 AI 生成請求都是一個獨立的 HTTP 請求。如果網路出現波動,請求可能中斷,導致生成結果遺失。
WS 代理將這些請求透過一條持久的 WebSocket 連線進行傳輸。WebSocket 連線一旦建立,就會保持開啟狀態,所有的生成請求和回應都透過這條連線進行雙向通訊,無需反覆建立新連線。
簡單來說:
- 傳統 HTTP 模式:每次生成 → 建立連線 → 發送請求 → 接收回應 → 關閉連線
- WS 代理模式:建立一次連線 → 所有生成請求複用這條連線 → 持續通訊
為什麼需要 WS 代理
網路不穩定環境
在行動網路、跨國網路或 Wi-Fi 訊號較弱的環境中,HTTP 長連線容易因為短暫的網路波動而中斷。WS 代理透過心跳保活和自動重連機制,能夠更好地應對這些情況。
防火牆和代理限制
某些網路環境中,防火牆或企業代理可能會對長時間的 HTTP 連線進行逾時斷開。WebSocket 協定在建立連線後的通訊方式不同於普通 HTTP,在部分場景下能夠繞過這些限制。
串流生成的可靠性
AI 生成通常使用串流傳輸(SSE),一次生成可能持續數十秒。WS 代理為串流傳輸提供了更可靠的底層通道。
重連與恢復能力
WS 代理內建了多項健壯性機制:
心跳保活
連線建立後,用戶端和伺服器端會定期交換心跳訊息,確保連線處於活躍狀態。如果一方長時間未收到心跳,會主動檢測連線狀態。
斷線自動重連
當 WebSocket 連線意外斷開時,用戶端會自動嘗試重新建立連線,無需使用者手動干預。
串流偏移恢復
如果在 AI 生成過程中連線短暫中斷,WS 代理支援串流偏移恢復——重連後從斷點處繼續接收生成內容,而不是從頭開始。這意味著即使網路閃斷,你也不會遺失已經生成的內容。
使用場景
以下場景特別適合使用 WS 代理:
- 行動裝置使用 — 手機網路切換(Wi-Fi ↔ 行動數據)時保持生成不中斷
- 遠端伺服器部署 — Luker 部署在遠端伺服器上,透過不穩定的網路存取
- 長文字生成 — 生成較長的回覆時,減少因逾時導致的失敗
- 企業網路環境 — 繞過可能干擾長連線的網路設備
TIP
WS 代理是 Luker 的內部傳輸最佳化,對使用者來說是透明的——你不需要進行額外設定,Luker 會在適當的時候自動使用。