常見問題 聊天機器人
自動獲得答案真是太神奇了!它是真正的人工智慧(還記得圖靈測試嗎?)
該專案是一個基於簡單問答(原子查詢)的聊天機器人框架。使用基於不同向量化器的相似性來找到匹配的問題,然後用相應的答案進行回應。
應用範圍:
- 處理日常查詢的龐大需求
- 秤(槓桿、自動化、被動)
- 白話聊天機器人沒有太多工作(服務人類)
筆記:
- 這個聊天機器人首先基於類別分類,然後基於所選類別內的相似性。
- 與流行的開源聊天機器人框架 Rasa 不同,Rasa 的 NLU 基於意圖和實體,而對話管理基於序列/LSTM 預測。
- 從概念上講,它類似於 Microsoft 的 QnA Maker。但最大的差別在於,如果你獲得整個 github 程式碼庫,你的模型將是本地的。伺服器上什麼都沒有。因此,更好的安全性尤其適用於人力資源或財務等敏感資料聊天機器人。
版權所有 (C) 2019 Yogesh H Kulkarni
待辦事項
- 透過 HuggingFace 或 Spacy 實現句子嵌入
- 使用可切換嵌入建立完整的常見問題解答聊天機器人平台
- 【新增】LangChain + Vector Db(如GPT-Index或Pinecone(雲))可用於執行FAQ
它的工作原理:
- 您以 csv(逗號分隔文件)的形式提供常見問題解答,每行都有問題-答案類別(例如“牙膏的 GST 稅率是多少?,12,費率”)
- 問題與分類器模型一起進行向量化並準備好進行匹配 [X=向量(問題),y=類別]
- 一旦使用者查詢到來,它的「類別」就會使用分類器模型進行預測,並且在類別內,向量化查詢將與現有的向量化問題進行匹配。
- 無論哪一個最相似,它的答案都會呈現給使用者。
腳本:
- app.py:使用 Flask 建構的聊天機器人 UI,使用 templates/*.html
- bankfaqs.py:聊天機器人核心邏輯以及知識庫。
其他數據:
- 常見問題:包含問題和答案的 csv 文件
- 靜態與範本:Flask UI 相關文件
運行:
- 執行app.py
- 在瀏覽器中開啟http://127.0.0.1:8080/
- 開始聊天
依賴項:
- 需要 Python 3.6、numpy、scipy、sklearn
參考
- Bhavani Ravi 的事件機器人代碼,Youtube 視頻
- 銀行常見問題機器人代碼
免責聲明: