# 自然語言理解 (Natural Language Understanding) 問句 = input("請輸入你的問題: ") 使用者動作.意圖 = 意圖識別(問句) 使用者動作.一組槽位 = 槽位填充(問句, 使用者動作.意圖) # 對話狀態追蹤 (Dialogue State Tracking) if (使用者動作.意圖 == Null) 對話狀態.意圖 = 得到意圖(對話歷史) 對話狀態.一組槽位 = 更新對話狀態(使用者動作.一組槽位, 對話歷史) else 對話狀態 = 使用者動作 填充個性化槽位(對話狀態.一組槽位, 使用者畫像) 意圖所缺的槽位填入預設值(對話狀態) # 對話策略學習 (Dialogue Policy Learning) if (對話狀態.意圖 == Null) 系統動作.意圖 = "不明" else if (對話狀態.意圖 == 特定服務) if (槽位是否缺失(對話狀態)) 系統動作.意圖 = "對空白槽位提問" 系統動作.一組槽位 = 對話狀態.一組槽位 else 系統動作.意圖 = 特定服務 系統動作.一組槽位 = 查詢服務API(系統動作.意圖, 對話狀態.一組槽位) # 自然語言生成 (Natural Language Generation) if 系統動作.意圖 == "不明" 問句 = input("我不懂你的意思,請換個方式告訴我: ") else if 系統動作.意圖 == "對空白槽位提問" 系統提問 = 提問生成(系統動作) 問句 = input(系統提問) else if 系統動作.意圖 == 特定服務 print(回答生成(系統動作, 回答模板))
在〈[對話式AI-6] 模組化的任務導向對話系統實作方法〉中有 1 則留言
留言功能已關閉。