在人工智能進展的如火如荼的今天,我們如果不嘗試去接觸新鮮事物,馬上就要被世界淘汰啦~
本文擬使用Python開發語言實現類似于WIndows平臺的“小娜”,或者是IOS下的“Siri”。最終達到人機對話的效果。
【實現功能】
這篇文章將要介紹的主要內容如下:
1、搭建人工智能--人機對話服務端平臺
2、實現調用服務端平臺進行人機對話交互
【實現思路】
AIML
AIML由Richard Wallace發明。他設計了一個名為 A.L.I.C.E. (Artificial Linguistics Internet Computer Entity 人工語言網計算機實體) 的機器人,并獲得了多項人工智能大獎。有趣的是,圖靈測試的其中一項就在尋找這樣的人工智能:人與機器人通過文本界面展開數分鐘的交流,以此查看機器人是否會被當作人類。
本文就使用了Python語言調用AIML庫進行智能機器人的開發。
本系統的運作方式是使用Python搭建服務端后臺接口,供各平臺可以直接調用。然后客戶端進行對智能對話api接口的調用,服務端分析參數數據,進行語句的分析,最終返回應答結果。
當前系統前端使用HTML進行簡單地聊天室的設計與編寫,使用異步請求的方式渲染數據。
【開發及部署環境】
開發環境:Windows 7 ×64 英文版
JetBrains PyCharm 2017.1.3 x64
測試環境:Windows 7 ×64 英文版
【所需技術】
1、Python語言的熟練掌握,Python版本2.7
2、Python服務端開發框架tornado的使用
3、aiml庫接口的簡單使用
4、HTML+CSS+Javascript(jquery)的熟練使用
5、Ajax技術的掌握
【實現過程】
1、安裝Python aiml庫
pip install aiml
2、獲取alice資源
Python aiml安裝完成后在Python安裝目錄下的 Lib/site-packages/aiml下會有alice子目錄,將此目錄復制到工作區。
或者在Google code上下載alice brain: aiml-en-us-foundation-alice.v1-9.zip
3、Python下加載alice
取得alice資源之后就可以直接利用Python aiml庫加載alice brain了:
import aimlos.chdir('./src/alice') # 將工作區目錄切換到剛才復制的alice文件夾alice = aiml.Kernel()alice.learn("startup.xml")alice.respond('LOAD ALICE')注意加載時需要切換工作目錄到alice(剛才復制的文件夾)下。
4、 與alice聊天
加載之后就可以與alice聊天了,每次只需要調用respond接口:
alice.respond('hello') #這里的hello即為發給機器人的信息 5. 用Tornado搭建聊天機器人網站
Tornado可以很方便地搭建一個web網站的服務端,并且接口風格是Rest風格,可以很方便搭建一個通用的服務端接口。
新聞熱點
疑難解答