日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python aiml_Python:用aiml构建英语聊天机器人

發布時間:2023/12/31 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python aiml_Python:用aiml构建英语聊天机器人 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

寫在前面的話

安裝aiml庫

獲取語料庫路徑

獲取aiml的安裝路徑

補充路徑名稱

切換到語料庫所在工作目錄

(所有的語料庫,是可以自己補充修改的,這里就先用現成的)

創建機器人alice對象

加載語料庫

如果是第一次加載語料庫,讀取數據,同時保存資料至bot_brain.brn

如果是之后再加載語料庫,就不需要讀取所有數據了,直接讀取bot_brain.brn

正式開始聊天

如果遇到用戶輸入exit,就退出聊天

運行界面

聊天界面

前面的加載過程,是為了調試。實際使用的時候,可以全部注釋掉,直接開始對話。

輸入exit,程序會自動退出

安裝庫

pip install aiml

完整代碼

# -*- coding: utf-8 -*-

# 加載庫

import aiml

import sys

import os

# 獲取aiml的安裝路徑

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對象

alice = aiml.Kernel()

print("正在加載語料庫")

# 這里做一個判斷

# 如果是第一次加載語料庫,就進入else部分,讀取數據,同時保存資料至bot_brain.brn

# 如果是之后再加載語料庫,就不需要讀取所有數據了,直接讀取保存數據bot_brain.brn

if os.path.isfile("bot_brain.brn"):

alice.bootstrap(brainFile = "bot_brain.brn")

else:

alice.learn("startup.xml") # 加載...\\botdata\\alice\\startup.xml

alice.respond('LOAD ALICE') # 加載...\\botdata\\alice目錄下的語料庫

alice.saveBrain("bot_brain.brn")

print("數據加載完畢,開始對話\n")

# 正式開始聊天

while True:

message = input("Enter your message >> ")

if ("exit" == message):# 如果輸入exit,程序退出

exit()

response = alice.respond(message) # 機器人應答

print(response)

break # 結束循環

response = alice.respond(message) # 機器人應答

print(response)

參考資料

總結

以上是生活随笔為你收集整理的python aiml_Python:用aiml构建英语聊天机器人的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。