中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用Python做一個智能聊天機器人

發布時間:2021-10-26 18:02:10 來源:億速云 閱讀:698 作者:柒染 欄目:編程語言

這期內容當中小編將會給大家帶來有關如何用Python做一個智能聊天機器人,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

伴隨著自然語言技術和機器學習技術的發展,越來越多的有意思的自然語言小項目呈現在大家的眼前,聊天機器人就是其中最典型的應用,今天小編就帶領大家用不到20行代碼,運用兩種方式搭建屬于自己的聊天機器人。

1.神器wxpy庫

首先,小編先向大家介紹一下本次運用到的python庫,本次項目主要運用到的庫有wxpy和chatterbot。

wxpy是在 itchat庫  的基礎上,通過大量接口優化,讓模塊變得簡單易用,并進行了功能上的擴展。什么是接口優化呢,簡單來說就是用戶直接調用函數,并輸入幾個參數,就可以使用了,不需要關心函數的底層實現。

Chatterbot是一個基于機器學習的聊天機器人引擎,基于python編寫而成,它可以自可以從已有的對話中進行記憶匹配。

Wxpy因為采用大量的接口集成,所以在使用的時候非常方便,下圖是簡單的wxpy使用,通過進入交互式界面,可以與指定的好友進行交談。代碼及效果如下圖所示:

如何用Python做一個智能聊天機器人

上述的代碼中print_msg函數采用了wxpy庫的裝飾器,裝飾器在這里的作用可以查閱其源碼進行查看,主要是用于注冊消息的配置。例如print_msg函數,可以將對方的回復消息進行輸出。而在手機微信上我們同樣看到了雙方之間交流,所以從某個層面上來講,wxpy就是PC端的微信。

2.圖靈聊天機器人

下面我們將會實現***個聊天機器人,該機器人是wxpy內集成的圖靈機器人,由于圖靈機器人的高度專業,所以制作出來的聊天機器人交流也非常的順暢。那如何將圖靈機器人嵌入到我們的交流中呢?首先我們需要去圖靈機器人官網注冊得到我們自己的機器人,注冊完成后,我們便可以生成圖靈機器人,并得到一個api_key,如下圖所示:

如何用Python做一個智能聊天機器人

這個api_key便是我們后續制作聊天機器人的關鍵。圖靈聊天機器人的代碼和效果圖如下圖所示:

如何用Python做一個智能聊天機器人

由上圖右邊的聊天記錄來看,依托圖靈機器人的聊天機器人效果非常的出色,而且還可以進行天氣查詢等功能。

3.自己訓練的聊天機器人

下面我們不依托于圖靈機器人,而是依靠ChatterBot來制作一款機器人,這款機器人,雖然效果較上一款性能差距較大,但是它可以訓練我們自己的語料庫,下面是代碼和效果的展示。

如何用Python做一個智能聊天機器人

由上圖可以看出,或許是受制于語料庫資源過少,而且也不能夠主動上網查詢。所以要想使其能夠回答和提問基本吻合還需要大量的工作。

難道除了這些我們就沒有其它可以做的了嗎?當然不是,ChatterBot為我們提供了可以訓練的方式,我們可以提供素材來讓其進行訓練。代碼和效果如下圖所示:

如何用Python做一個智能聊天機器人

我們首先定義了一個chatbot,然后將訓練數據加入進去,讓模型匹配我們的問題,得到訓練的結果。

右邊的圖展示了我們的結果,由結果可以看出,由于我們的訓練集中沒有“在”這個數據,所以得到的回答很莫名其妙,而對于“你好”和“你叫什么名字?”這兩個問題的回答則得到了很***的答復,這就是加入訓練數據集的優勢所在。

trainer.train([ "你好", "你好,很高興認識你", "你叫什么名字?", "我叫chat-robot-2.",])

(訓練集的數據)

你也可以加入你想要訓練的語料庫進行訓練,一樣會得到不錯的效果。有的同學可能會問這是如何訓練的呢?答案就在chatterbot的源碼里,打開源碼我們可以這里的chatbot選擇的訓練方法是“BestMatch”,也即最匹配方式,從訓練的對話中找到最相識的語句,然后根據對話提供回答。

如何用Python做一個智能聊天機器人

Python做機器學習的項目是不是很有趣。

上述就是小編為大家分享的如何用Python做一個智能聊天機器人了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

陇南市| 寻甸| 榆林市| 文登市| 繁昌县| 大同县| 高阳县| 光山县| 西藏| 京山县| 稻城县| 临汾市| 新津县| 洛浦县| 徐州市| 临朐县| 尼勒克县| 海淀区| 南陵县| 蒙阴县| 宿州市| 长汀县| 枣庄市| 富裕县| 务川| 临洮县| 江津市| 平和县| 长寿区| 蓝山县| 金华市| 红桥区| 达日县| 余姚市| 同德县| 万年县| 双江| 东台市| 南华县| 德清县| 犍为县|