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..

ChatScript vs RiveScript

Hello. First post here. I am looking to develop a chat bot and this forum has been much help already, so thanks a lot!!

I am wondering if anyone has used both of these and can comment on the pros and cons of either.

It seem maybe chatscript is more powerful/can do more. Is this correct? or can they basically achieve the same?

I will most likelf be coding in python/Nodejs and would take advantage of NLTK and other AI libraries available for python. So for this reason rivescript would be good. Has anyone used chatscript with python? How do these work with database? Or do they.



  [ # 1 ]

Hello, Jonovono (interesting name, BTW), and welcome to! Please feel free to update your profile with an image of yourself, so we can put a face to the name. smile

Right now (so far as I know, at least), the only ChatScript engine (the software necessary to interpret ChatScript files) is a Linux/Windows stand-alone application, written in C (I forget which “flavor”). the chatScript engine can be run as a server (in fact, that’s the default action in Linux), so just about any scripting language can access it. I’ve toyed with the notion of creating a ChatScript interpreter/engine in PHP, but frankly, my time is too limited to do so. I also think that attempting to do something like this should only be done with Bruce’s blessing/approval.

That said, however, there’s nothing stopping anyone from writing an interface in Python that pre-processes the input using tools like the NLTK before accessing a ChatScript server and retrieving the results, and then presenting the output to the user. In fact, I think that may be something to pursue, if you’re of a mind to do so. smile


  [ # 2 ]

I would say that ChatScript has much more power than Rivescript.
HOWEVER—- it’s not at all obvious you need all the capabilities in ChatScript.

And I would strongly discourage anyone from reimplementing chatscript in another language. You are talking about a system of over 25K lines of code, that continues to advance in capabilities. Wayyyyy to much work to casually decide to reimplement it.  Nevertheless no one needs my permission or blessing. The source is there and the license is “do whatever you want with it”.


  [ # 3 ]

I was debating with myself over further admitting that writing a PHP version of the ChatScript engine would be beyond my skillset, and had decided to omit that possibility. But upon hearing about the sheer amount of coding involved, I certainly have to say it now. smile I have enough trouble staying focused on the Program O project, and it doesn’t have half that many lines of code!

However, I still think that a Python interface is a good idea. However, I haven’t even done a “hello world!” script in the language, so that lets me out. cheese


  [ # 4 ]

Sound like a challenge for Tom Joyce. He’s always keen on implementing new ways of working.

You up for it Tom?


  [ # 5 ]

@Dave Morton. Thanks. I shall do that soon! Also, found your tutorial on chatbots helpful.

@Bruce Wilcox. Thanks. Ive been looking through the manuels and downloaded the software. It looks awesome and can’t imagine the amount of work that went into it. Thanks a lot!!


  [ # 6 ]

You are quite welcome; and thanks for your kind words about my tutorial. It’s always nice to see others making good use of one’s efforts. smile


  [ # 7 ]

Hi everyone,

I am new to Chatbots and starting a project.

Jumping in for a quick question under this theme - I need to develop a transactional chatbot where most of the user inputs will be chosing from string options OR specifying numbers. I will be using the inputs to carry out machine learning processes and generate further custom bot messages/questions.

I am getting a sense that Chatscript is much more comprehensive as a coversational chatbox platform and suited language processing chatbot, and Rivescript is bare bones more suited to my needs.

Dave, please throw some light on this and suggest which one should I pick up.

Much thanks!


  [ # 8 ]

It’s pretty bad form to bump up a 4 year old thread with your question…
Please start a new topic.


  [ # 9 ]

Can any one say the difference between AIMl, ChatScript and RiveScript and which is easy and perfect to use..?


  [ # 10 ]

Chatscript is easy to use and saves lot’s of time.  It can match on concepts that you can create.  This saves you from writing lots of variations and combinations for the same thing.  For example to create a pattern to respond to someone declaring they have a pet you could write following single pattern to handle all kinds of pets.

CONCEPT: ~PET ( dog cat hamster pony parakeet canary snake goldfish )

topic: ~OWNPET ( have ~PET )

u: ( I have {a an} _~PET ) That is great! What is your pet ^join( _0 ‘s) name?
a: (*) That is a nice name.

The output looks like this:

alaric: > I have a goldfish
HARRY:  That is great! What is your pet goldfish’s name?
alaric: > Goldilocks
HARRY:  That is a nice name.

I recommend downloading it and trying it out.  Just start with the basic manual and make something simple.  You can get started in a day.  And you can always post your questions to this website.  Have fun coding.



  [ # 11 ]


This rule is excessive:
u: ( I have {a an} _~PET ) That is great! What is your pet ^join( _0 ‘s) name?

The cleaner rule is
u: ( I have {a} _~PET ) That is great! What is your pet ^join( _0 ‘s) name?
because “an” and “the” have “a” as their canonical form.


  login or register to react
‹‹ Pandorabots English Tutor      Realtime AIML ››