AI Zone Admin Forum Add your forum

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

I’m super new. Not even used AIML code yet

Hi everyone. I’m totally new to this. I’m really just interested at this point because I have not done any AIML coding yet. I took parts of a few online classes in python and C# and Unity with no results and pretty much forgot everything I learned because it was a few years ago and I haven’t done any programming since. I used to make Mad Libs in BASIC way back in the early 90s when I was 11 or 12 but that is really the extent of my knowledge besides what I have been reading these past few days. I did always want to write a program that you could talk to and it would talk back with enough complexity that it could make you think, “is this thing alive?” but had no idea it even was possible UNTIL A FEW DAYS AGO! Yes believe it or not I had no idea about this stuff. I used to think about how you could make something that could learn if you did it the correct way. So I have some motivation for making a chatbot but don’t know much about it and have zero experience although I know how basic code works in general so I have that in my favor. I have spent the last 3 days getting familiar with the “Docs” section of the Pandorabots site and Intend to read it all before I start messing around.
I am developing some questions already however. For one, I read on the sets section of the Docs on this:

“Note that currently on the Pandorabots platform, set files cannot be dynamically updated using AIML. You will have to build this feature in your application using our bot development APIs (i.e. retrieve file, upload file, compile bot).”

Could someone explain what this means? Does this mean my bot will not be able to simulate a real feel? Something that doesn’t retain knowledge unless reprogrammed is not useful to me. I would like it to modify and even create files if it needs to. Should I be using AIML for this? I would like to. If it simply won’t do what I need what should I look in to?

Also I can’t find where all the knowledge IS going for the things the BOT DOES remember. I’m guessing not a sets file. I’m confused on this. I’m thinking someone here knows for sure.

That’s all I need to say for now. I’m glad I found this site. It seems like a perfect fit for what I need and after reading some posts it seems everyone is real friendly. Hope someone can help me out.

  - Pete


  [ # 1 ]

In AIML, sets contain groups of similar objects like colours, countries, people’s names etc and you wouldn’t usually want the bot to modify them. Any new entries should be entered by yourself.

To get your bot to learn new information, you should use the <learn> tag to get your bot to create new categories. New knowledge is stored in memory unless you use the <learnf> tag. This writes new categories to a file called pand_learn.aiml

If you can give an example of a conversation where you want your bot to learn, I can help guide you.


  [ # 2 ]

Hi Steve! We talked on Facebook. I was wanting to know a few things. Looking at the pre-made bots on Pandorabots and trying to learn how they work myself was a struggle because every time I told it something it remembered I could not trace where it was being stored. I couldn’t see the pand_learn.aiml file but then when I downloaded the bot I could see it in the files on my computer. I then reuploaded it and could then see the file after overwriting the pand_learn file I could not see. I’m sure this was not intended by Pandorabots but that is what happened. After that when it showed me things it remembered through conversation it would not show in the pand_learn.aiml file that was visible. Very frustrating. Can I direct the learned info somewhere else? Preferably not (I’m guessing the pand_learn file is hidden for some reason) a hidden file? I would like to keep ALL data in the bot memory in a custom file structure that I would like to make up myself. Also if new files are needed like categories or definitions and links to other files can that be done with the commands/functions available? Not really sure how I want to do all this but that’s the gist of it. Basically I want to make a custom bot. The things it remembered was my name and what I would tell it after saying bad answer. I accidentally caused some kind of loop with that by telling it to say something different after “Bad answer” which was a greeting that triggered something else that I also didn’t want it to say. It was kind of funny that I screwed it up so royally first thing. Thats why I had to edit the hidden pand_learn.aiml file. So sorry for the wall of text. Your turn lol. Oh btw…Did you put any machine/deep learning to use for Mitsuku? I saw someone say something in relation to machine learning as an option to improve bots. Not sure if they were serious but just thought I would ask. I don’t know what’s possible yet.


  [ # 3 ]

I need it to remember everything within reason and forget things it deems unimportant. Also can it erase information? The sets may need to be created by the conversations. I want it to be almost a blank slate.


  [ # 4 ]

For someone who has just started with AIML, you are certainly aiming high and I would strongly advise walking before you can run. It will only add things to pand_learn.aiml if you use <learnf> rather than <learn>

I wrote the badanswer.aiml script and you would need to modify it to use <learnf> if you wish to see what people are teaching your bot.

To learn and remember details, you should use <set> and <get> tags along with <learn>. Mitsuku is created entirely in AIML and doesn’t use any machine learning/neural network type of technology. Could you give an example of a conversation that you would like to have with your bot?

I can’t think of an example where you would want your bot to be able to modify sets on its own.


  [ # 5 ]

It would be like a little child who is always asking, “What’s that mean?”. And you would tell it. It would store what it means. It could give that definition a point. Things will get points the more the fact is verified. The more points = the more certain the thought. The more certain the thought the less likely it will forget. The less it hears about knowledge it heard the sooner it will forget. I basically want to simulate human LIKE thought. I know this would not definitely have a successful result but its something I want to experiment with. I think it would be fun. Is this the wrong language for that?


  [ # 6 ]

I know it sounds kind of crazy to have this goal before learning the code but i want to at least be heading in the right direction. I want to know I am learning the right thing. Even if I fail which is most likely I want to be at least using a language that can do it. Catch my drift?


  [ # 7 ]

BTW…are you the creator of all the Mitsukus on the net or are they from others. There’s one I got on my phone but I don’t talk to it because I feel embarassed someone will hear me lol. There is another one on the web also with an animated avatar. Which ones are yours? I like the Rosie looking one on your site the best. She is more intelligent and believable.


  [ # 8 ]

I’m off to bed soon. Gonna look in to some other languages first. I’m getting the feeling you don’t think AIML is capable of this. Correct me if I’m wrong. I heard a lot of people going to python. I guess I gotta do a little more research first. If you don’t hear back from me until late I went to bed but will get back to you later. Thanks.


  [ # 9 ]

Hi, Peter, and welcome to smile

It isn’t so much that AIML cannot handle what you’re looking for, but in how skillfully the author of the AIML categories that the bot uses. If you haven’t already, have a chat with Steve’s masterpiece chatbot, Mitsuku. And I don’t mean to just say hello and be done with it. Have a true conversation with her, talking about whatever comes to mind, asking her opinions about topics of the day, and really “get to know” her. I think that you’ll find the experience to be pretty amazing.

I bring this up because Mitsuku was written entirely in AIML, and the’s an ideal example of what can be done with the language. The thing is, though, that she’s also a pretty high target to aim for as a beginner, and the learning curve for AIML can be pretty daunting for someone just starting out. My advice to you is to make creating a bot along the lines of Mitsuku a final goal, with LOTS of smaller goals along the way. Take things in slow, comfortable steps of manageable size at first, and as you progress, stretch yourself a little more each time. this will give you the confidence early on to show you that you can do this, and that’s of paramount importance. ALso, ask us LOTS of questions, especially if there’s something you don’t understand. We have a very friendly community here, who are all willing to help, and Steve is a true master of the workings of AIML, and is always willing to provide knowledge and wisdom. I’m also no slouch when it comes to AIML (though Steve makes me look like a floundering beginner, at times), and while I’m not here as often as I used to be, I’m trying to get back into more frequent visits, and AIML is of particular interest to me.

Just remember one thing here, though: All of us live in different places around the globe, and may not see your posts right away, or may be too busy with other aspects of our lives to respond right away.  Please give your posts at least 24 hours before you become concerned that nobody has responded. It takes some of us time to get around to responding. cheese

Again, welcome to, and I hope you find your experiences here to be both educational and enjoyable. We’ll talk soon.


  [ # 10 ]

Thanks for the help. I was just about to switch my focus to python. But you say I can use AIML? Will it be able to create files and edit data in said files all while in a conversation?

Also I have talked to Mitsuku for probably record time a few days ago. The entire day and night. I had never talked to one before and I was thinking she understood me. I was ecstatic for a while and then crushed when she started to mess up and reveal she was not conscious. Yes its embarrassing but I’m glad it happened because it inspired me to go on a mission to make something of my own. So should I not do python? Stick with AIML? It is just as powerful?


  [ # 11 ]

Well, first off, I should clarify something here. AIML, in and of itself, is more of a DATABASE language than an EXECUTION language. This means that you can’t just create some AIML categories, store them in a file or twelve, and have a fully functioning chatbot. You also need an interpreter (e.g. Pandorabots, Program O, Program AB, etc.) that takes a user’s inputs and generates a response based on both that user input, and the AIML files written for the bot. Not all AIML interpreters are created equal (some don’t support the full AIML 2.0 specification), and each requires different skillsets to use (not to mention that each one is geared toward potentially different media/devices), so you have options before you, and choices to make, based on your skills, experience and desires. By far, Pandorabots has the shallowest learning curve, but it’s primarily web-oriented, and has other limitations that may or may not be an issue (free vs. paid plans being chief among them). Not to worry, though. This is all stuff that can be worked out. Steve mentioned that you should walk before you run. Well, this is the crawling stage. cheese


  [ # 12 ]

You can certainly create and edit categories in AIML. That’s how Mitsuku learns from her users.

Human: What is floober?
Mitsuku: No idea
Human: Floober is a type of cake
Mitsuku: Ok, I will learn that
Human: What is floober
Mitsuku: A type of cake

Scientists and researchers have been trying to recreate human consciousness for decades. Nobody has been successful. Unfortunately, your expectations of today’s technology are unrealistic and the best you can hope for is to create a simulation.

To say you are brand new to chatbots in one post and then say you want to simulate human consciousness in another doesn’t tie up. Sorry to be the bearer of bad news but you will be unable to do this, as such a creation would be plastered over every tech website and news TV channel in the world.

I would strongly advise learning AIML and seeing the sort of things it can do to allow you to create a believable chatbot.


  [ # 13 ]

yeah I know I’m getting ahead of myself. I’m just excited. I haven’t been this excited about something in a while. I want it to be something original. Something I had thought of since I was a kid. I know it could take years to develop even after a few years of getting familiar with the language. My issue is I don’t want to get a few years down the road and find out THEN that I cant do what I plan due to language limitations. I want to get it to be as real as a human as possible but not working like the traditional way this stuff seems to work. Its gotta program itself. Yeah I will program it to do that but its going to learn the meanings of things and have goals I’m not certain about yet but I have an idea.

So essentially if I could, it would solve NaturalLanguageUnderstanding (NLU).I want it to understanding english and not just sound like it does half the time. Sounds crazy but the whole world is working on that. I’m not saying I will do it. In fact I’m pretty sure I can’t. It will be fun to try though. BUT I just want to know. Do you think AIML is just as capable as any language to do that. If you found out that someone in the world created a robot that understood English would you expect it would be using AIML or would you think it would use some other language and if so what. That was kind of hard to explain sorry.


  [ # 14 ]

As such a thing doesn’t exist, I would be surprised if a conscious chatbot was created using ANY of today’s technology.

The Loebner Prize is an international competition to find the world’s most humanlike conversational artificial intelligence. AIML has won it a total of 7 times which is far more than any other language. It’s used by hundreds of thousands of developers and the support base is huge, so for me, it is the best of what today can offer.


  [ # 15 ]

Cool. Hope i didnt sound like a jerk there. Was just having a hard time explaining myself and since this is going to be something that takes up a lot of my time I didn’t want to have any doubts. Now I’m certain. I will be getting started with Pandorabots. I already have an account and got the max limit adjusted down while I learn so I don’t get charged. Any suggestions before I get started? Any good guides or anything besides the Pandorabots Docs?


 1 2 3 > 
1 of 3
  login or register to react