ตัวอย่าง python, machine learning และ chatbot

Last modified date

Comments: 0

ผมลองศึกษาข้อมูลในเน็ต แล้วรวบรวมมาเป็นตัวอย่างรวบยอดในโปรแกรมเดียว ตาม code ด้านล่างนี้ครับ

from chatterbot import ChatBot

bot = ChatBot(
"Terminal",
storage_adapter="chatterbot.storage.SQLStorageAdapter",
logic_adapters=[
"chatterbot.logic.MathematicalEvaluation",
"chatterbot.logic.TimeLogicAdapter",
"chatterbot.logic.BestMatch"
],
input_adapter="chatterbot.input.TerminalAdapter",
output_adapter="chatterbot.output.TerminalAdapter",
database="../database.db"
)

from chatterbot.trainers import ListTrainer

conversation = [
"Hello",
"Hi there!",
"How are you doing?",
"I'm doing great.",
"That is good to hear",
"Thank you.",
"You're welcome."
]

bot.set_trainer(ListTrainer)
bot.train(conversation)

boon_info=[]

boon_info.append(["ชื่อ","บุญประเสริฐ"])
boon_info.append(["เรียน จบ การศึกษา ปริญญา ตรี","วิศวกรรมศาสตร์ พระจอมเกล้าลาดกระบัง"])
boon_info.append(["เรียน จบ การศึกษา ปริญญา โท","คอมพิวเตอร์ ABAC"])
boon_info.append(["สถาน ที่ ทำงาน","มหาวิทยาลัยมหิดล"])
boon_info.append(["สถาน ที่ ทำงาน","คณะแพทยศาสตร์โรงพยาบาลรามาธิบดี"])
boon_info.append(["สถาน ที่ ทำงาน","สถาบันการแพทย์จักรีนฤบดินท์"])
boon_info.append(["?","กรุณาถามใหม่ครับ"])

for idx, val in enumerate(boon_info):
#print(idx, val)
bot.train(boon_info[idx])

'''
bot.train([
"อาชีพ",
"ไอที วิศวกร",
])
'''

print("Type something to begin...")

# The following loop will execute each time the user enters input
while True:
try:
# We pass None to this method because the parameter
# is not used by the TerminalAdapter
bot_input = bot.get_response("โปรดถามใหม่ครับ?")

# Press ctrl-c or ctrl-d on the keyboard to exit
except (KeyboardInterrupt, EOFError, SystemExit):
break

bot.trainer.export_for_training('./export.json')

เดี๋ยวเรามาค่อยๆสรุปกันว่าในโปรแกรมตัวอย่างนี้เราเรียนรู้อะไรกันบ้าง

How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote count:

Leave a Reply

Your email address will not be published. Required fields are marked *

Post comment