欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)聊天機(jī)器人的示例代碼

 更新時間:2018年07月09日 08:39:22   作者:海天一樹X  
這篇文章主要介紹了Python實(shí)現(xiàn)聊天機(jī)器人,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

一、AIML是什么

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

二、實(shí)現(xiàn)第一個聊天機(jī)器人

(一)安裝Python aiml庫

pip install aiml

(二)獲取alice資源

Python aiml安裝完成后在Python安裝目錄下的 site-packages的aiml下會有alice子目錄(比如D:\Program Files\Python36\Lib\site-packages\aiml\botdata\alice),這個是系統(tǒng)自帶的一個簡單的英文語料庫。

(三)編程實(shí)現(xiàn)機(jī)器人聊天

1 程序

# -*- coding: utf-8 -*-
import aiml
import sys
import os
 
 
def get_module_dir(name):
 print("module", sys.modules[name])
 path = getattr(sys.modules[name], '__file__', None)
 print(path)
 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') + '\\botdata\\alice'

os.chdir(alice_path)  # 切換到語料庫所在工作目錄

alice = aiml.Kernel()  # 創(chuàng)建機(jī)器人alice對象
alice.learn("startup.xml") # 加載...\\botdata\\alice\\startup.xml
alice.respond('LOAD ALICE') # 加載...\\botdata\\alice目錄下的語料庫
 
while True:
 message = input("Enter your message >> ")
 if("exit" == message):
  exit()
 response = alice.respond(message) # 機(jī)器人應(yīng)答
 print(response)

2 運(yùn)行結(jié)果

三、參考資料

http://www.dbjr.com.cn/article/143395.htm

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python 變量命名規(guī)則和定義變量詳解

    Python 變量命名規(guī)則和定義變量詳解

    這篇文章主要為大家介紹了Python 變量命名規(guī)則和定義變量,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • 詳解基于Scrapy的IP代理池搭建

    詳解基于Scrapy的IP代理池搭建

    這篇文章主要介紹了詳解基于Scrapy的IP代理池搭建,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • pygame實(shí)現(xiàn)俄羅斯方塊游戲(AI篇2)

    pygame實(shí)現(xiàn)俄羅斯方塊游戲(AI篇2)

    這篇文章主要為大家詳細(xì)介紹了pygame實(shí)現(xiàn)俄羅斯方塊游戲AI的第2篇,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • 機(jī)器學(xué)習(xí)python實(shí)戰(zhàn)之手寫數(shù)字識別

    機(jī)器學(xué)習(xí)python實(shí)戰(zhàn)之手寫數(shù)字識別

    這篇文章主要為大家詳細(xì)介紹了機(jī)器學(xué)習(xí)python實(shí)戰(zhàn)之手寫數(shù)字識別,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 淺談Python基礎(chǔ)—判斷和循環(huán)

    淺談Python基礎(chǔ)—判斷和循環(huán)

    這篇文章主要介紹了Python基礎(chǔ)—判斷和循環(huán),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • python使用yield壓平嵌套字典的超簡單方法

    python使用yield壓平嵌套字典的超簡單方法

    這篇文章主要給大家介紹了關(guān)于python使用yield壓平嵌套字典的超簡單方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Python中的Numpy入門教程

    Python中的Numpy入門教程

    這篇文章主要介紹了Python中的Numpy入門教程,著重講解了矩陣中的數(shù)組操作,需要的朋友可以參考下
    2014-04-04
  • 使用python+Flask實(shí)現(xiàn)日志在web網(wǎng)頁實(shí)時更新顯示

    使用python+Flask實(shí)現(xiàn)日志在web網(wǎng)頁實(shí)時更新顯示

    日志是一種可以追蹤某些軟件運(yùn)行時所發(fā)生事件的方法,下面這篇文章主要給大家介紹了關(guān)于使用python+Flask實(shí)現(xiàn)日志在web網(wǎng)頁實(shí)時更新顯示的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • 如何將python代碼生成API接口

    如何將python代碼生成API接口

    這篇文章主要介紹了如何將python代碼生成API接口,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • beam search及pytorch的實(shí)現(xiàn)方式

    beam search及pytorch的實(shí)現(xiàn)方式

    這篇文章主要介紹了beam search及pytorch的實(shí)現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-05-05

最新評論