AI Zone Admin Forum Add your forum

NEWS: Chatbots.org survey on 3000 US and UK consumers shows it is time for chatbot integration in customer service!read more..

I’d like to add learning to the chatbot.
 
 

  I was able to download an older version of VertualFem version 2.5.2 which is older but works in windows 7. Not being exactly my type of program I decided I’d like to make some changes, add some conversation skills is one of these.  I downloaded the RebeccaAiml chatbot and after removing the Aiml files in VirtualFem put in the Rebecca Aiml files. After solving a problem with the dictionary I have a working chatbot.  Right now I have Learn1 learn2 and learn3 Aimls and I expected her to start learning from the conversation.  This is not happening as far as I can see although i did notice her asking additional questions about a topic.
  In the past I had been using Ultra Hal from Zabaware. Hal is capable of learning from conversations and will write things in his brain files which is what I expected to see from the Rebecca chatbot but is not.
  I’m still new to the Aiml type bot butI have been able to write a Aiml file with patterns and templates that works.  I’d also like to be able to get her to give the date and time but the learning is the most important
Carl2

 

 
  [ # 1 ]

Most AIML type bots will not automatically learn from conversations.
Some AIML interpreters support a “learn” tag which allows you to dynamically extend the AIML patterns.
With AIML you typically teach the bot new things in a supervised way, i.e. by going through conversations
the bot had with people, and then updating the AIML categories manually.

 

 
  [ # 2 ]

I wrote an AIML file which will allow a pandorabot to learn at http://www.square-bear.co.uk/aiml but unfortunately, VirtualFem is a standalone application and doesn’t not support the <learn> tags.

With it, the following conversation is possible:

This allows users to teach your bot new facts rather than just correcting its replies using badanswer.aiml. The user should say LEARN then the fact. For example:

Human: Learn the sun is hot
Bot: Ok I will learn that the sun is hot.
Human: Learn London is in England
Bot: Ok I will learn that London is in England.
Human: Learn a cat has four legs.
Bot: Ok I will learn that a cat has 4 legs.
Human: What has 4 legs?
Bot: a cat.
Human: What is the sun?
Bot: hot.
Human: Learn the sun is hot and yellow
Bot: Ok I will learn that the sun is hot and yellow.
Human: What is hot and yellow?
Bot: the sun.
Human: What is the sun?
Bot: hot and yellow.
Human: Where is London?
Bot: in England.
Human: What is in England?
Bot: London.
Human: Learn Dr Wallace is an AI expert
Bot: Ok I will learn that Dr Wallace is an AI expert.
Human: What is an AI expert?
Bot: Dr Wallace.
Human: Who is an AI expert?
Bot: Dr Wallace.
Human: Who is Dr Wallace?
Bot: an AI expert.
Human: What is hot?
Bot: the sun.
Human: What does a cat have?
Bot: 4 legs.
Human: My car is red
Bot: ok.
Human: What color is my car?
Bot: red
Human: Johnny said he likes pizza.
Bot: ok.
Human: What did Johnny say?
Bot: he likes pizza.

and so on…

 

 
  [ # 3 ]

  Steve,
  I just tried it out this morning, it looks and sounds great but as you said Virtual fem doesn’t support the learn.  When loading the learn.aiml it reported an error <eval><star index=“3”><eval>  I tried changing the number 3 without sucess.
I also tried removing that portion, the whole category, and recieved an error from another portion. I’m not sure if the aiml was loaded or discarded but the result was she did not learn.
  I’ve been doing some reading on the internet about Aiml and believe there are system files for the date and time, do they also have read and write commands?  I’m actualy hoping to use you’re file with modifications to (force read write commands) to have her learn. 
  At this time she is able to converse fairly well, a big improvement over the original for me at least.  You can still see that some improvement is needed in different areas it’s just finding the right template.  I’ll also mention I am getting mood tags comming through with the response, useful with an MS agent I believe.
  Anyways it’s a great Aiml you have written, wish I had that programing capability. not looking forward to making an update to get her up to speed every so often.
Carl2

 

 
  [ # 4 ]
Steve Worswick - Apr 27, 2011:

Human: My car is red
Bot: ok.
Human: What color is my car?
Bot: red
Human: Johnny said he likes pizza.
Bot: ok.
Human: What did Johnny say?
Bot: he likes pizza.

and so on…

Okay, this adds a couple things to the dialog posted at http://www.chatbots.org/ai_zone/viewthread/447/.  The first is interesting because red is not explicitly associated with color. The second seems to allow the bot to handle any verb, whereas my logic agent mostly handles “is” and “has” relations, and I have to add others on an ad hoc basis. But this dialog inspired me to revisit a generic method of adding new verbs at runtime I had worked on before. It’s not quite as easy as I want to make it, yet, but it can handle adding new verbs like “said”, “bit”, etc. Anyway, I’ve written some notes about this dialog here.

 

 
  [ # 5 ]

I have to add new verbs (including “said”) to the script and it only contains the most common at the moment.

 

 
  [ # 6 ]

  Since I am still new to using Aiml I’ll give you my thoughts,  I have VirtuaFem with virtualfem aiml files, I also have Rebecca with rebecca aiml files. The Rebecca engine will support the learn aiml files,  from trial the virtualfem will work with the rebecca aiml files but the virtualfem engine will not support the learn aiml.  This is my understanding, if I am incorrect please let me know.  I’ll mention again that when I start the program and it loads the files it has an error message caused by line 156 <eval><star index=“3”></eval>. 
  I been spending some time chatting with her and she may be getting better or I’m getting use to her.  Some of her responses were pretty good when talking about Christmas and a few other subjects.  I did get one response from her that was a bit shocking, something that sounded like it would come from a virtualfem aiml.  I’ve got to start saving the dialog and probably add some random replies in a few places.
  I’d looked at the links above, seems like some pretty good work on material that is needed. I still want to learn more about the aiml system files.
Carl2

 

 
  login or register to react