超級干貨:0基礎(chǔ)也可以學(xué)會的AI agent搭建!你的第一個bot教程

jyc
0 評論 323 瀏覽 0 收藏 14 分鐘

自從大模型開啟智能化之后,各大廠家都開始做自己的AI Agent,畢竟這好像是一個比較不錯的應(yīng)用方向和變現(xiàn)模式。這篇文章,我們就來和組綜合學(xué)習一下,如何從0到1打造一款自己的bot。

本節(jié)開始,我們創(chuàng)建一個實戰(zhàn)案例:圖書管理工作流。

溫馨提示:本文內(nèi)容很多,涉及貫穿了搭建扣子應(yīng)用的很多知識。如果學(xué)懂本文,你可以完全掌握了扣子搭建的原理,話不多說,上干貨。??

一、流程分析設(shè)計

圖書管理工作流的作用是:通過判斷圖書管理員的自然語言指令的意圖,來執(zhí)行對應(yīng)的操作。

例如:分析管理員指令,其目的是向數(shù)據(jù)庫增加一本書、或是刪除一本書,還是檢索當前數(shù)據(jù)庫中所有的圖書。

我們期望的效果是:當圖書管理員輸入類似“請幫我查詢有哪些書籍”的時候,工作流就返回當前數(shù)據(jù)庫所有的圖書。

當輸入類似“向數(shù)據(jù)庫錄入XXX(書名)”的時候,就向數(shù)據(jù)庫添加一本書。當輸入刪除指令的時候,就刪除一本書。

通過分析,得出結(jié)論

  1. 如果要分析用戶的意圖,我們需要有一個理解用戶語義的功能節(jié)點,這時候就需要我們的 大模型節(jié)點 出場了。(工作流中使用的節(jié)點在教程中也都有詳細示例+講解)
  2. 判斷完管理員意圖后,我們具體要執(zhí)行哪個操作,是查詢、添加,還是刪除,這里有一個選擇判斷的過程,那當然得用 選擇器節(jié)點 去做這個工作。
  3. 因為我們需要用數(shù)據(jù)庫來存儲書籍列表,數(shù)據(jù)庫節(jié)點 肯定是必不可少的了。

經(jīng)過分析,我們需要用到三個類型的節(jié)點: 大模型節(jié)點 、選擇器節(jié)點、選擇器節(jié)點。
接下來我們就來使用這些節(jié)點來正式開始創(chuàng)建。

二、創(chuàng)建Bot

1. 初始化Bot

通過之前課程的學(xué)習,我們知道,如果要在工作流中使用數(shù)據(jù)庫節(jié)點,一定要先在Bot中創(chuàng)建一個對應(yīng)的數(shù)據(jù)庫。

所以首先,我們要創(chuàng)建一個Bot,然后在Bot中建立一個數(shù)據(jù)庫。

2. 創(chuàng)建數(shù)據(jù)表

點擊 + 按鈕,創(chuàng)建一個數(shù)據(jù)表。

3. 自定義數(shù)據(jù)表

4. 添加字段

到此步驟,數(shù)據(jù)表就創(chuàng)建完成了,接下來開始創(chuàng)建工作流。

三、創(chuàng)建工作流

1. 初始化工作流

創(chuàng)建完Bot之后,我們來進入工作流管理頁面,創(chuàng)建工作流。
點擊 創(chuàng)建工作流 按鈕。

2. 填寫工作流信息

3. 確定工作流所用節(jié)點

這里很關(guān)鍵:我們先把需要用到的節(jié)點先加到視圖里,然后再分別對節(jié)點進行具體的設(shè)置。

從上文得知,需要用到:大模型節(jié)點 、選擇器節(jié)點、選擇器節(jié)點。

為了方便接下來大家的操作,做到心中有數(shù),我們先把搭建好的結(jié)構(gòu)到放這里,讓大家對結(jié)構(gòu)有一個大體的了解,這樣之后搭建起來會更容易操作。

現(xiàn)在正式開始向工作流中加入節(jié)點。

4. 添加大模型節(jié)點

大模型節(jié)點主要有兩個作用:

  • 一個是分析用戶語義,判斷用戶是希望添加、刪除還是查詢書籍。
  • 另一個作用是提取出書籍名稱。

例如當圖書管理員給的指令是:“添加一本《三國演義》”,那這時候大模型需要提取兩個關(guān)鍵信息。一個是 添加,一個是《三國演義》的書籍名稱。

那么接下來我們先添加兩個大模型節(jié)點,分別用來返回 圖書名稱操作類型。(正常情況下,一個大模型節(jié)點也是可以搞定的,返回一個數(shù)據(jù)對象即可,這里大家知道就可以了。為了更直觀的演示流程,這里還是用兩個大模型節(jié)點來演示。)

節(jié)點結(jié)構(gòu)如下:

第一個是提取書名的大模型節(jié)點,它的前置節(jié)點是 開始節(jié)點,直接引用開始節(jié)點中query參數(shù),用來獲取用戶的自然語言指令。

因為要提取書名,所以提示詞這里我們直接寫:提取query中的書名 即可。這里注意,query對應(yīng)的就是輸入?yún)?shù)名。

詳細配置:

第二個大模型節(jié)點用來分析用戶意圖,所以輸入?yún)?shù)這里還是獲取用戶的query。

如果用戶的意圖和添加有關(guān):則返回1 ;

如果和刪除有關(guān),則返回2;

否則返回3。

所以提示詞可以這樣寫

詳細配置:

最后輸出一個type變量,值為1,2或3。

5. 添加選擇器節(jié)點

選擇器節(jié)點的前置節(jié)點是 大模型-操作類型 節(jié)點。選擇器節(jié)點通過獲取type的值來判斷具體執(zhí)行哪個操作。

這里注意要用到兩個選擇器節(jié)點才能做到type的3個值的判斷,因為一個選擇器節(jié)點只能判斷是和否,所以我們要再借助一個選擇器節(jié)點。

整體結(jié)構(gòu)如下:

選擇器-1 配置:

選擇器-2配置:

6. 添加數(shù)據(jù)庫節(jié)點

如之前的教程所講,數(shù)據(jù)庫節(jié)點是用來操作數(shù)據(jù)庫的。
通過之前type的三個值,我們知道,對數(shù)據(jù)庫要有三個操作:查詢,添加和刪除。

所以我們要添加三個數(shù)據(jù)庫節(jié)點,分別用來查詢,添加和刪除。

對數(shù)據(jù)庫的設(shè)置我們之前也講過,如果想學(xué)習,關(guān)注即可獲取免費教程學(xué)習。

設(shè)置數(shù)據(jù)庫添加節(jié)點參數(shù):

使用自動生成SQL功能生成

使用SQL后,我們還需要修改一下SQL的變量,要把‘新添加的書換成’輸入?yún)?shù)名

替換后正確的配置是這樣的:

同樣的方法修改 數(shù)據(jù)庫刪除節(jié)點 參數(shù)配置。

同樣的方法修改 數(shù)據(jù)庫查詢節(jié)點 參數(shù)配置,注意圖中所示,兩個查詢的name字段要對應(yīng)。

7. 結(jié)束節(jié)點設(shè)置

結(jié)束節(jié)點 的前置節(jié)點是 數(shù)據(jù)庫查詢節(jié)點。我們最后希望的是:不管用戶的意思圖是查詢,添加還是刪除,最后我們都把當前數(shù)據(jù)庫中的所有圖書檢索出來。

所以結(jié)束節(jié)點輸出變量這里,要引用前置節(jié)點中outputList這個變量,這個變量一個是數(shù)組對象,簡單說就是一個圖片列表。

到這里為止,我們就把所有的節(jié)點都設(shè)置完成了,接來我們來調(diào)試一下,看看是否符合我們的預(yù)期要求。

8. 調(diào)試工作流

1)測試添加一本書

在工作流中點擊試運行,輸入:增加一本三國演義。然后選擇我們之前創(chuàng)建好的Bot:圖書管理助手。點擊 運行 按鈕。

可以看到,是按照預(yù)期走的 添加 的流程:

最終結(jié)果,可以看到《三國演義》被加到數(shù)據(jù)庫中了。

再增加一本《圍城》

查看結(jié)果:

可以看到《圍城》已經(jīng)被成功添加了,并顯示了當前圖片列表。

2)測試刪除一本書

我們把之前的添加的《三國演義》刪除。點擊 運行 按鈕。

可以看到,按照預(yù)期,《三國演義》被刪除了,并顯示了當前圖片列表,只有一本之前添加《三國演義》,結(jié)果沒有問題。

那么,到此為止,我們的圖書管理工作流就調(diào)試完成了。接下來,我們把這個工作流引入到Bot中。??

四、發(fā)布工作流

在使用工作流之前,我要發(fā)布一下。

五、引入工作流

接下來把工作流引入到Bot中進行使用

找到我們已經(jīng)創(chuàng)建好的圖書管理助手Bot。

點擊 + 引入工作流

選擇 WorkFlow_Books 工作流

編排 人設(shè)與回復(fù)邏輯

六、調(diào)試BOT

添加一本書:

提示圖書已經(jīng)成功被添加了。

那么接下來測試一下,圖書是否確實加入成功了。

可以看到,《三國演義》圖書確實成功加放到了數(shù)據(jù)庫中,說明我們的工作流正確無誤。

七、發(fā)布BOT

調(diào)試好以后,我們接下來就可以把BOT出布出去,讓大家來使用了。

自動生成開場白,點擊 確認 按鈕。

選擇一下想發(fā)布的平臺,我這里選擇的是發(fā)布到扣子商店,然后點擊 發(fā)布 按鈕。

提示審核中,然后點擊 完成 按鈕,一分鐘左右就審核完成了。

好了,到這里,我們終于把Bot和工作流的全部流程學(xué)習完了,希望大家在本文中能有所收獲。??

本文由 @jyc 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)作者許可,禁止轉(zhuǎn)載

題圖來自Unsplash,基于CC0協(xié)議

該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!