Stream LLM Completion
Stream LLM Completion 是用於呼叫大型語言模型並產生串流式自然語言輸出的 processor。
基本用法
執行 Stream LLM Completion 時,會將設定的 Prompt 發送給指定的 Completion Model,模型會即時產生回應並以「逐字輸出」的方式呈現,模擬真人打字效果。此 processor 已內建訊息輸出功能,無需額外連接 Push Message。適用於需要自然對話體驗的 AI 聊天機器人、即時客服回應、互動式問答等場景。
配置參數
Name
顯示在畫布上的名稱,用於在工作流程中識別此 processor。
Description
用於補充此 processor 的用途,提升工作流程的可讀性。
Properties
Completion Model(必填)
選擇要使用的 Completion Model 資源名稱。需要先 建立 Completion Model 資源,支援 OpenAI GPT、Claude、Gemini 等模型。
Prompt(必填)
發送給 AI 模型的提示詞,用於提供資料補充背景和必要的記憶。
設定類型
- Literal:直接輸入固定提示內容
- Expression:使用 JavaScript 表達式動態產生提示
- Template:使用模板語法組合提示內容
- Template (Advance):進階模板模式,支援複雜的模板語法和內建函數
詳細的取值方式說明請參考:Expression 介紹 - 取值方式
MaxTokens(必填)
設定模型提示 + 生成回應的最大 Token 數量,用於控制回應長度和成本。
ImageBlobId
提供給模型分析的圖片檔案 Blob ID,僅在使用支援視覺功能的 Completion Model 時可用。
Await
控制工作流程是否等待 LLM 完全輸出完成後才繼續執行。開啟時等待完整回應生成,關閉時模型開始輸出第一個 Token 就繼續執行。
Temperature
(可選) 模型的溫度值,控制回答的隨機性。數值越高,回答越隨機多樣;數值越低,回答越確定一致。數值範圍限制隨著使用的 completion model 會有所不同,需依照該模型的限制填入。省略時會自動採用模型的預設值。注意:某些模型不支援溫度值參數,請勿在此類模型中設定此欄位。
Toolsets
(可選) 模型可以使用的 toolset 名稱,可從下拉選單選擇。當有設定 toolsets 時,會賦予模型調用這些工具集之下的所有工具。多數情況下,為了使模型更清楚何時該正確的調用何種工具,建議也要於 prompt 處進行向模型相關的調用說明。
Enable OpenAI Web Search
(可選) 是否啟用 OpenAI Web Search 功能。僅限支援 Web Search 的 OpenAI 模型使用。啟用後,模型可搜尋網路資訊來回答問題。(詳細資訊可參考:OpenAI 官方文件)
OpenAI Web Search Context
(可選) 控制從網路檢索多少內容來協助工具產生回應。可選值:'low'(低)、'medium'(中)、'high'(高)。只有在啟用「Enable OpenAI Web Search」設定時,才可以進一步設定此設定值。
Payload
附加的資料內容或元資料,可包含額外的結構化資料供前端使用。
isDebug
標記此訊息是否為除錯用途,預設值為 false
。
Template
Message template 設定,用於定義輸出訊息的呈現格式,可設定按鈕、圖片、快速回覆等豐富的訊息格式。
連接關係
Success
- Await 模式:當 AI 模型完全生成完整回應後,工作流程會從此連接點繼續執行
- Non-Await 模式:當 AI 模型開始生成第一個 Token 時,工作流程立即從此連接點繼續執行
Failure
當 AI 模型呼叫失敗時,工作流程會從此連接點繼續執行,並產生 prevError
變數儲存錯誤資訊。
使用範例
AI 聊天機器人
建立即時回應的 AI 聊天機器人,使用串流輸出提供自然的對話體驗。Prompt 使用 Template (Advance) 結合對話歷史:
你是友善的助手,請根據以下對話歷史回應使用者:
{{{history -5 -1}}}
使用者:{{{prevMessage}}}
助手: