Public Storage 導入 Open WebUI 後,官方案例記載,一名區域經理把每週四小時的訂位審查流程縮短到約 40 分鐘;首月約一半受邀員工使用。該案例未提及技能,不能將結果歸因於按需載入。當不同部門導入 AI,管理者就得決定哪些規則需要每次可見。Public Storage 案例。

Open WebUI 0.12.4 新增「按需載入已選技能」設定。管理員可以在 Admin Settings > General 開啟,也能透過環境變數 ENABLE_SKILL_LAZY_LOADING 設定;預設為關閉。開啟後,聊天中選取或綁定到模型的技能先以名稱和描述列出,模型判斷任務需要時,才呼叫內建 view_skill(讀取技能內容的工具)取得完整指令。這改變的是技能指令進入上下文的時機,不會替技能增加能力,也不代表答案品質或速度必然提高。

Open WebUI 0.12.4 如何設定技能按需載入?

管理員可在 Admin Settings > General 開啟「Load selected skills on demand」,或設定 ENABLE_SKILL_LAZY_LOADING;功能預設關閉,且需要內建 Skills 工具配合。

這個開關不等同模型編輯器裡的技能綁定選項。模型管理者可在 Workspace > Models 挑選供新對話預選的技能;聊天使用者也能在整合選單為單次對話切換技能。管理員控制全站載入方式,模型管理者安排預設技能,使用者決定當下聊天要不要明確挑選。

Open WebUI 官方發布說明指出,按需載入已選技能預設關閉,並需要內建 Skills 工具。官方文件也說明,技能本身是純文字指令;若要執行程式、呼叫 API 或存取系統,還需要另外具備可執行程式的工具權限。技能說明可以教模型如何使用工具,但不會自行執行程式。

這項界線對自架管理者很實際:如果技能寫著「讀取內部報表後產出摘要」,技能只提供處理步驟,報表是否能被讀取仍由知識庫、檔案工具或其他整合的權限決定。即使模型成功載入了 SKILL.md,也不代表它能碰到指令中提到的檔案。盤點時應把指令內容、技能讀取權限和工具存取權限分開列出,避免把「模型知道怎麼做」誤認為「系統已授權它做」。

「Skills are plain-text instructions」是 Open WebUI 技能文件對技能性質的描述。模型讀到操作指引,不代表它已取得相應資料或系統的存取能力。

Open WebUI 文件指出:「Requests that carry their own tools field, even an empty one, are not affected.」這表示同一個服務的請求入口不同,管理員開關的作用範圍也可能不同;排查時需要檢視實際送出的請求,而不只確認管理介面上的狀態。

三個並列區塊分別代表純文字技能指令、可執行工具,以及系統與資料存取權限。
模型讀到操作指引,不代表工具已取得讀取資料或存取系統的權限。

技能按需載入如何改變代理的上下文流程?

模型先看技能清單中的名稱與描述,判斷需要某項技能時再讀取指令;使用者在訊息以 $ 明確提及的技能仍會立即載入。

過去,聊天中選取或綁定模型的技能會隨每則訊息送出完整指令。啟用按需載入後,清單先提供技能 ID、名稱和描述,模型可藉 view_skill 讀取對應的 SKILL.md。若技能文件較長,工具依讀取上限先回傳內容或預覽,模型再使用讀取或搜尋功能取得所需段落。這讓多項技能可以先被模型辨識,完整內容則待有需要時才載入。

官方文件另列出技能內容讀取上限預設為 20,000 字元,較長文件先回傳預覽。Samsung Semiconductor 的 Open WebUI 案例記載,該公司以 100 名分析人員試行 14 天,並回報研發與軟體開發週期估計縮短 30%。案例沒有提及技能按需載入,不能作為新功能效能證據。Samsung Semiconductor 案例。

使用者以 $ 選取技能代表明確要求,官方文件指出其指令仍會直接注入系統提示,不會因管理員開啟按需載入而延後。每次都必須遵守的規則,應確認會進入模型上下文;低頻技能可依描述觸發,或讓使用者在需要時明確指定。是否預設綁定,則看使用頻率與任務要求。

哪些代理技能適合延後載入?

低頻、用途明確且可由描述辨識的任務型技能,較適合列入按需讀取;高頻或每次都要遵守的規則,應確認載入方式不會讓它被漏用。

Open WebUI 的 Astellas 案例記載,該公司以 Azure 建置內部平台,3,000 多名員工建立 420 多個自訂模型,68% 使用者回報效能改善。案例未提及技能或按需載入;管理者可據此盤點多種工作流程中,低頻任務能否靠描述辨識、高頻工作是否應固定載入。Astellas 案例。

偶爾才用到的資料分析流程、特定格式轉換步驟或疑難排解手冊,可先檢查技能描述是否清楚寫出適用任務,再觀察模型能否在代表性提問中找到它。若描述太籠統,模型可能無法判斷何時呼叫 view_skill;如果技能內容包含不可省略的前置條件,則要確認任務觸發後讀取完整規則的流程可靠。

團隊每次回答都要求遵守的用語、資料處理或審核規則,不宜只因想減少上下文就改成延後載入。可以比較模型綁定與清單的用途,必要時由使用者以 $ 指定。取捨仍取決於呼叫頻率、描述品質和任務後果。

決定前可把技能分成三類:每次都必須遵守的規則,先確認它是否已放在穩定可見的指令中;高頻且任務明確的技能,測試模型描述觸發是否足夠;低頻或使用者知道何時需要的技能,可保留在清單,必要時以 $ 指定。這是管理策略的起點,不是產品保證。若技能含敏感資料處理要求,還要查核每位使用者是否有讀取權限,因為附加技能不會自動繞過 Open WebUI 的存取控制。

啟用前要核對模型、聊天模式與串接條件

不能只看管理員開關。模型必須能使用內建工具、啟用 Skills 類別,並處於支援技能工具的原生功能呼叫流程,按需載入才會生效。

官方文件列出的條件包括:聊天使用內建工具,而且模型的 Skills 類別已開啟。若關閉其中條件,選取、綁定或提及的技能可能改為直接注入完整指令,而非由清單觸發讀取。舊式功能呼叫模式也不提供同樣的清單與按需讀取流程。因此,管理員要逐一核對部署中常用模型的能力設定,不能把全站開關當作所有模型已套用的證明。

網頁聊天與 API(應用程式介面)也要分開驗證。官方文件說明,沒有 Web UI 工作階段、也沒有技能工具的 API 請求,技能指令會完整注入;帶有自己 tools 欄位的請求也不受這項設定影響。若團隊透過 API 串接自架 AI,應用實際請求格式確認行為,不能從網頁介面測得的結果推論 API 也會延後載入。

例如,管理者在網頁聊天看到技能先列出、需要時才讀取,但自有後端透過 API 發送沒有 Skills 工具的請求時,選定技能仍會完整注入。這是兩個不同的真實使用路徑,不代表設定失效,而是功能條件不同。檢查 API 時可記錄請求是否帶 tools 欄位、使用者是否有 Web UI 工作階段、選取技能有哪些,再看模型實際收到的是清單還是完整指令;這些資料比只比較回覆長短更能判斷載入行為。

使用情境模型取得技能的方式管理員檢查重點
網頁聊天,原生功能呼叫與 Skills 工具已啟用清單先進入上下文,需要時讀取完整技能模型能否辨識描述並呼叫技能工具
聊天訊息以 $ 明確提及技能指令立即注入測試手動指定時能否取得必要規則
沒有 Web UI 工作階段、也沒有技能工具的 API 請求已選技能完整注入檢查請求欄位與後端串接模式
流程圖分成兩條路徑:網頁聊天先列技能清單並在需要時讀取指令,缺少技能工具的 API 請求則直接帶入完整指令。
網頁聊天與部分 API 請求的技能載入方式不同,管理員應分開驗證。

管理員如何評估設定是否符合實際流程?

先盤點常用模型與技能,再以代表性任務確認模型能找到、讀取並正確套用技能,同時分別測試網頁聊天與 API。

可先記下哪些技能是高頻必用、哪些只對少數任務有幫助,再檢查模型的內建工具與 Skills 類別、功能呼叫模式,以及使用者是否有讀取技能的權限。選幾個日常任務進行啟用前後對照,觀察模型是否找到應用技能、是否讀到必要指令,以及回答有沒有漏掉工作流程中的關鍵步驟。也可在聊天中以 $ 指定技能,對照模型自動判斷載入時的表現。通過條件應在測試前由管理者依任務風險設定,例如每個必須遵循的步驟都要出現、所有預期技能都要被找到,且網頁聊天與 API 各自符合預定的載入行為;未達任一條件,就先修正技能描述或模型配置,再評估是否擴大啟用。

  1. 盤點技能的使用頻率、必要程度、描述是否包含清楚觸發情境,並標出需要明確指定的技能。
  2. 核對常用模型的內建工具、Skills 類別、功能呼叫模式及使用者讀取權限。
  3. 挑一項低頻技能與一項每次都必須遵守的規則,分別以模型自動判讀、$ 指定及 API 請求測試載入結果。
  4. 記錄必要指令是否被讀取、任務步驟是否漏掉,再按各部署流程決定是否擴大啟用。

Open WebUI 將這項功能描述為節省上下文的方式,但發布說明與產品文件沒有提供不同模型、部署規模下的獨立效能測試。因此,不應由指令延後載入直接推論回覆更快、成本更低或任務成功率更高。記錄上下文使用、載入情形與任務結果後,再決定是否擴大啟用;若 API 與網頁聊天的工作流程不同,兩邊應各自保留檢查結果。

  • 管理員開關預設關閉,啟用後仍須具備內建工具、原生功能呼叫及模型 Skills 類別等條件。
  • $ 明確提及的技能會立即載入;沒有技能工具的部分 API 請求仍可能完整帶入技能指令。
  • 先用代表性任務確認模型找得到技能、讀得到必要規則,再按部署與使用情境決定是否擴大啟用。

常見問題

Q1:Open WebUI 的技能按需載入預設會開啟嗎?

不會。0.12.4 的發布說明標示此功能預設關閉,管理員可在 Admin Settings > General 開啟,或設定 ENABLE_SKILL_LAZY_LOADING。

Q2:使用者用 $ 指定技能,還會延後載入嗎?

不會。官方文件指出,訊息中以 $ 提及的技能仍會立即注入指令,讓模型可以直接使用。

Q3:技能可以代替工具直接執行程式嗎?

不可以。技能提供純文字指令;執行程式、呼叫 API 或存取系統需要另外配置相應工具及權限。