iT邦幫忙

2024 iThome 鐵人賽

DAY 24
0
生成式 AI

Python 新手的 AI 之旅:從零開始打造屬於你的 AI / LLM 應用系列 第 24

【Day24】Dify 工作流 (7): 新增聊天功能,讓使用者體驗 🆙🆙🆙 (貓貓狗勾猜測機器人)

  • 分享至 

  • xImage
  •  

今天的 DSL github 連結

前言

昨天我們做了一個可以根據形容特徵來給出狗狗圖片的機器人,你只要給他一些特徵,他就會幫你分析可能的品種,然後從 Dog CEO 上找到圖片的 URL,今天我們來把它寫成一個聊天工作流,最後加上一些 Dify 內建的聊天功能,讓整個 APP 更完整~

整合工作流到 Chatflow

因為我們多了一個輸入,所以要把使用者問的問題放到這個 workflow

然後利用 Http 請求和迭代,來將所有圖片顯示在聊天框框上

不過這邊我還想要為每個出現的狗勾加上品種的名字,而不是只有照片,讓使用者知道牠們是誰,所以在迭代中增加了取得 url 中包含的品種名稱的節點

這邊我順便在一開始將沒有成功取得圖片的字串移除了,為什麼會這樣呢?因為在「隨機拿多張狗勾的照片 URL」那邊的 LLM 表現不如預期,還是會輸出一些不在 breed list 中的品種。不過只要把 not found 的品種字串移除即可

Debug 小技巧:可以透過日誌觀察每次迭代的物件

感覺還是有點單調,加上一個 LLM 來介紹狗狗品種

效果如下

例外處理

  1. 處理空的結果

這邊有兩種處理方式,一種是加上 if else 節點,另一種是直接用問題分類器來避免這樣的情形發生

新增功能

除了告訴你的親朋好友這是一個可以藉由輸入特徵來獲得狗狗品種介紹和圖片的機器人外,我們還可以利用 Dify 內建的功能,新增一些小提示

對話開場白

利用對話開場白來提示使用者要輸入的內容

新增說明,還有提示使用者的輸入

測試一下~效果很讚歐

如果你不希望使用者看到 LLM 工作流的過程,也可以到 Web App 設定把它取消掉

下一步問題建議

Dify 會根據之前你的提問,來給出下一步建議,但目前這個功能似乎不太穩定,很常出現錯誤

相關 issue

希望有大佬可以幫忙修 ><

內容審查

基於安全性、使用者體驗、法規等等需求,我們可能會需要用到敏感詞審查功能

可以直接設定你不希望使用者輸入的內容,也可以直接用 OpenAI 的安全審核。(有關安全審核,可以參考官網)

測試一下

內容審查蠻重要的,特別是如果是幫別人做 Chatbot 的開發者,有這樣的功能十分方便。

小結

今天應該是最後一天介紹 Dify 了,我原本想要再用 Dify 做一個記帳小助手 (可以記帳,也可以查詢,搭配 Notion 使用,全程使用自然語言),但發現這樣 Dify 的篇幅好像太多了XD,所以之後應該會介紹其他工具像是專門為 LLM 爬蟲的工具、Prompt injection、OpenAI 最新的動態等等雜七雜八,都是和 LLM 應用相關的,期待一下吧~


上一篇
【Day23】Dify 工作流 (6):用「變量聚合器」來簡化流程!(貓貓狗勾猜測機器人)
下一篇
【Day25】LLM 時代下的爬蟲 (1):利用 Firecrawl 或 Jina AI 把網頁變成 LLM 讀得懂的 Markdown 格式、在 Dify 中使用吧!
系列文
Python 新手的 AI 之旅:從零開始打造屬於你的 AI / LLM 應用30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言