国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

使用Python AIML搭建聊天機器人的方法示例

2020-02-15 22:15:23
字體:
來源:轉載
供稿:網友

AIML全名為Artificial Intelligence Markup Language(人工智能標記語言),是一種創建自然語言軟件代理的XML語言,是由RichardS. Wallace 博士和Alicebot開源軟件組織于1995-2000年間發明創造的。AIML是一種為了匹配模式和確定響應而進行規則定義的 XML 格式。

AIML的設計目標如下:

    AIML應當為大眾所易學易會。 AIML應當使最小的概念得以編碼使之基于L.I.C.E支持一種刺激-響應學科系統組件。 AIML應當兼容XML。 書寫AIML可處理程序文件應當簡單便捷。 AIML對象應當對人而言具有良好的可讀性和清晰度。 AIML的設計應當正式而簡潔。 AIML應當包含對其他語言的依附性。

關于AIML詳細的初級讀物,可翻閱Alice Bot's AIML Primer。你同樣可以在AIML Wikipedia page了解更多 AIML 的內容以及它能夠做什么。借助 Python 的 AIML 包,我們很容易實現人工智能聊天機器人。

1、安裝Python aiml庫

pip install aiml

2、獲取alice資源

Python aiml安裝完成后在Python安裝目錄下的 Lib/site-packages/aiml下會有alice子目錄,這個是系統自帶的一個簡單的語料庫。

3、Python下加載alice

取得alice資源之后就可以直接利用Python aiml庫加載alice brain了。

# -*- coding: utf-8 -*-import aimlimport sysimport os  def get_module_dir(name):  path = getattr(sys.modules[name], '__file__', None)  if not path:    raise AttributeError('module %s has not attribute __file__' % name)  return os.path.dirname(os.path.abspath(path))  alice_path = get_module_dir('aiml') + '/alice'#切換到語料庫所在工作目錄os.chdir(alice_path) alice = aiml.Kernel()alice.learn("startup.xml")alice.respond('LOAD ALICE') while True:print alice.respond(raw_input("Enter your message >> "))

上述流程非常的簡單,接下來我們要自己從0開始創建自己的機器人。

創建標準啟動文件

標準的做法是,創建一個名為std-startup.xml的啟動文件,作為加載AIML文件的主入口點。在這個例子中,我們將創建一個基礎的文件,它匹配一個模式,并且返回一個相應。我們想要匹配模式load aiml b,然后讓它加載我們的aiml大腦作為響應。我們將在一步內創建basic_chat.aiml文件。

<aiml version="1.0.1" encoding="UTF-8">  <!-- std-startup.xml -->   <!-- Category是一個自動的AIML單元 -->  <category>     <!-- Pattern用來匹配用戶輸入 -->    <!-- 如果用戶輸入 "LOAD AIML B" -->    <pattern>LOAD AIML B</pattern>     <!-- Template是模式的響應 -->    <!-- 這里學習一個aiml文件 -->    <template>      <learn>basic_chat.aiml</learn>      <!-- 你可以在這里添加更多的aiml文件 -->      <!--<learn>more_aiml.aiml</learn>-->    </template>   </category> </aiml>            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洛阳市| 武清区| 浠水县| 新巴尔虎左旗| 莫力| 金阳县| 河东区| 承德市| 乐平市| 来凤县| 县级市| 顺平县| 罗平县| 筠连县| 岱山县| 张家口市| 岳阳县| 翁源县| 新野县| 南召县| 荥经县| 易门县| 确山县| 渝北区| 玉林市| 凤翔县| 孟连| 武穴市| 育儿| 进贤县| 三穗县| 特克斯县| 通渭县| 乌拉特前旗| 永修县| 射洪县| 措美县| 石河子市| 康马县| 河源市| 沛县|