使用Flowise服務,您可以輕鬆編排個人化的對話流程。通過直觀的圖形介面和靈活的工作流程設計,無論您是開發人員還是非技術人員,都能輕鬆建立複雜的互動式聊天應用,並將其整合到業務情境中,從而提升日常研發和管理效率。此外,在ACK叢集上部署服務,還支援根據業務需求的變化,即時且平滑地進行擴充,助力業務持續發展。
方案概覽

配置一個通用聊天助手,只需3步:
安裝flowise組件:通過Container Service建立一個ACK叢集,並安裝flowise組件。
構建通用聊天助手工作流程:通過訪問Flowise服務,建立通用聊天助手。
編排個人化聊天流程:最後可以通過設定問答模型和提示詞模板,並使用鏈式模型將其串連。

1. 安裝flowise組件
Flowise是一個開源且便於使用的架構,旨在協助開發人員快速而靈活地構建大型語言模型(LLM)應用程式。它通過低代碼或無代碼的操作方式,簡化了 LangChain的使用。Flowise提供了一個直觀的使用者介面,允許使用者通過拖拽可視化組件來構建工作流程,從而輕鬆配置大語言模型的應用。這使得開發人員能夠更快地從測試階段過渡到生產階段。
1.1 環境準備
已通過kubectl工具串連Kubernetes叢集。具體操作,請參見擷取叢集KubeConfig並通過kubectl工具串連叢集。
1.2 組件部署
安裝部署flowise組件。
登入Container Service管理主控台,在左側導覽列選擇叢集列表。
單擊目的地組群,進入叢集詳情頁面,如下圖所示,按照序號依次單擊,為目的地組群配置flowise組件。
您無需為組件配置應用程式名稱和命名空間,單擊⑤下一步後會出現一個請確認的彈框,單擊是,即可使用預設的應用程式名稱(flowise)和命名空間(flowise-system)。

選擇Chart 版本為最新版本,單擊確定即可完成flowise組件安裝。
在參數配置頁簽,配置自訂的username和password。
校正flowise組件是否正常運行。
執行以下命令,查看
flowise-system命名空間下的Pod是否為Running狀態。kubectl get pod -n flowise-system預期輸出如下,表明flowise組件已經安裝成功。
NAME READY STATUS RESTARTS AGE flowise-596fb8bf88-7zdlr 1/1 Running 0 3h flowise-postgresql-0 1/1 Running 0 3h
2. 建立工作流程編排模板
2.1 訪問Flowise服務
為flowise組件開啟公網訪問功能。
如果您使用的是生產環境,為了您的應用資料安全,建議您開啟存取控制功能。

配置完成後,您會看到flowise組件的外部IP地址(External IP),將該外部IP地址輸入瀏覽器地址欄即可訪問Flowise服務。

訪問Flowise服務。
訪問外部IP地址(External IP),請根據頁面提示輸入自訂的Username和Password,來使用服務。

如果在安裝flowise組件時,未自訂username和password的取值,則使用預設值
Username=flowiseuser,Password=flowisepassword訪問服務。
2.2 建立Chatflows
Flowise的強大功能之一是您可以將流程轉變為工具。例如有一個主要流程來協調何時使用哪些必要的工具,並且每個工具都旨在執行一項特定的任務。
首先每個子流程工具將獨立執行,並具有單獨的記憶體以提供更清晰的輸出。其次每個子流程的詳細輸出匯總到最終代理,通常會產生更高品質的輸出。
您可以通過以下方式建立Chatflow。
輸入username和password登入Flowise服務平台。
建立新的Chatflow。
在Flowise服務平台頁面,依次單擊Chatflows > Add New建立新的Chatflow。

3. 編排個人化聊天流程
3.1 配置問答模型Chat Models
在Flowise服務中,可通過建立Node以及構建Node之間的聯絡來編排LLM應用。與積木類似,您可以利用Flowise服務中所有可用的Node,構建一個自訂的大語言模型編排流程、聊天機器人或智能代理等LLM應用。目前Flowise服務支援基於LangChain和LlamaIndex等架構概念,可以從中抽象出Agents、Chains、Chat Models等多種類型的Node。
單擊進入Chat Models面板,拖拽建立ChatOpenAI Custom節點。然後依次單擊Connect Credential下拉選框 > Create New,輸入通義千問的API Key建立新的Connect Credential。

先將Model Name設定為qwen-turbo。然後在Additional Parameters頁面將BasePath設定為
https://dashscope.aliyuncs.com/compatible-mode/v1。
3.2 設定提示詞模板Prompt Template
進入Prompts面板,拖拽建立Prompt Template節點,配置Template資訊如下。
Question: {question}
Answer: Let's think step by step.
3.3 設定鏈式模型LLM Chain
進入Chains面板,拖拽建立LLM Chain節點。

將建立完成的模板的節點串連,即可完成通用型聊天助手的編排。

3.3 驗證效果
完成Chatflow的編排後單擊頁面右上方儲存按鈕,然後可以通過頁面右上方的Message按鈕進行調試,效果如下。

總結
應用到生產環境
如果您想將開發的AI問答助手引入到您企業或個人的生產環境,可以通過以下2種方式操作。
樣本(將AI應用嵌入到網站)
下面將為您詳細介紹如何將開發的LLM應用嵌入到您企業或個人網站,您可以按照以下樣本進行操作。
本樣本作為示範,為了您的應用資料安全,建議您在生產環境同時開啟存取控制功能。
已為flowise組件開啟公網訪問功能,將該外部IP地址輸入瀏覽器地址欄即可訪問Flowise服務。更多操作,請參見訪問Flowise服務。

在ACK叢集中快速構建簡單的Web應用來調試您的通用聊天助手。
下面是一個在ACK叢集中部署Web應用的樣本,它會在您的ACK叢集上運行,您可以嵌入在Flowise服務中開發的LLM應用。
擷取Flowise服務代碼。
如下圖所示,選擇一種方式將聊天應用的對應的代碼嵌入到您的網站中。

在ACK叢集中,建立一個Deployment來運行您的Web應用,並建立Service來暴露應用。
以下是一個簡單的YAML樣本,展示如何部署一個包含靜態HTML的Nginx伺服器。
登入Container Service管理主控台,在組態管理 > 配置項頁面,選擇命名空間為default,然後單擊使用YAML建立資源,將下方YAML內容複寫到模板中,並將
window.difyChatbotConfig、scr、id修改為已擷取的Flowise服務代碼。具體代碼資訊,請參考下方樣本。
成功部署截圖如下所示:

為已部署的服務開啟公網訪問。
為了您的應用資料安全,建議您在生產環境同時開啟存取控制功能。

配置完成後,您會看到web-service服務的外部IP地址(External IP),將該外部IP地址輸入瀏覽器地址欄即可訪問Web服務。
重要如果您想讓其他裝置訪問,請確保您的叢集防火牆或安全性群組中設定允許流量通過80連接埠。具體操作,請參見添加安全性群組規則。
確保您的代碼和第三方代碼是安全的,避免可能的XSS或惡意代碼嵌入。給您提供了一個基本樣本以供示範,您可以根據自己的需求進行擴充和修改。
結果展示。

持續改進
如果您想進一步瞭解如何整合定製化的LLM應用,請參見基於Dify構建網頁定製化AI問答助手。
使用Dify服務您可以實現將企業或個人的知識庫整合到大模型應用中,從而建立出深度定製化的AI問答解決方案,並且可將其整合到您的業務情境,助力您提升日常研發管理效能。
計費相關
使用本功能會收取ACK Pro叢集管理費用和阿里雲雲產品資源費用。使用本功能涉及的阿里雲雲產品有:ECS雲端服務器、CLB負載平衡、EIPElastic IP Address、NAS檔案儲存體等,您需要按照各雲產品計費規則為使用的資源付費,費用由各雲產品收取。關於叢集管理費和雲產品資源費用的更多資訊,請參見計費概述。