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

Pluri Media Group beta Chat bot Laybia
Laybia is
lame-O 1
pedestrian 2
pretty engaging 1
the chat bot of my dreams! 6
Total Votes: 10
You must be a logged-in member to vote

Laybia is our chat bot beta- a work in progress.  Please stop by and give her a spin- we are using this beta phase as an opportunity to tweek her quirky personality- thanks!

Feedback welcome (take poll even)!


  [ # 1 ]

cool, seen your directory posting. We’ll come back to this shortly.

First feedback: Make the text box wider, center the whole website, center the text box, and add the repons below the text box instead of above.

Also, reduce font size of the explanatory text or remove it at all after a few sentence. They soon start to irritate.

Don’t forget to professionalize your profile! Add a picture and your real name. It’s quite common here on the forum and you definitely get more feedback!


  [ # 2 ]

Thanks, we have already incorporated some of your excellent suggestions.


  [ # 3 ]

I’d like to see a vertically scrollable text box which would contain a history of the conversation.

Some nice response lines in this thing.. I liked “That is a very original thought for an analog.”


  [ # 4 ]

Agree with Vic, history is always nice to have. Or an option button: ‘show my conversation history’, which simply shows the history from that moment on.


  [ # 5 ]

Yes, it would be nice to have.  I would have liked to copy and paste my conversation here and comment on things that it did well at, and things you need to work on.  It would have provided great feedback.


  [ # 6 ]

It just seems like a pretty standard ALICE clone with a bit of sex content.

User: Who is Dr Wallace?
Laybia: He is a famous computer scientist, the author of ALICE, and a graduate of Carnegie Mellon.

User: sing
Laybia: Daisy, Daisy.
Give me your answer do.
I am half crazy.
All for the love of you.
It won’t be a stylish marriage.
I can’t afford a carriage.
But you’ll look sweet. Upon the seat.
Of a bicycle built for two.

User: What are you wearing?
Laybia: Nothing but my soaking wet panties- oh I am so horny!


  [ # 7 ]

@Steve: many chatbots hosted on the Pandora platform are very similar to ALICE. Actually I’d like to add ‘platform’ to our directory so visitor can easily see that. Now, it’s simply something that should have been added to the directory text (suffering a bug in the search function in the directory tab right now :-( ).


  [ # 8 ]
Steve Worswick - Feb 4, 2011:

It just seems like a pretty standard ALICE clone with a bit of sex content.


Steve- well, yes of course, the generic design is based on both Alice and Chompsky. 

The beta is being used, in part, to tweek away the generics and make Laybia more of her own personality (that better reflects the back story of the Pluri Media Group and provides some “AI” feedback to visitors). 

I figured you guys/gals have the most experience in how to make a bot interesting and engaging I appreciate your feedback so far!


  [ # 9 ]
Erwin Van Lun - Feb 4, 2011:

Agree with Vic, history is always nice to have. Or an option button: ‘show my conversation history’, which simply shows the history from that moment on.

That is something I am currently implementing.


  [ # 10 ]
C B - Feb 4, 2011:
Erwin Van Lun - Feb 4, 2011:

Agree with Vic, history is always nice to have. Or an option button: ‘show my conversation history’, which simply shows the history from that moment on.

That is something I am currently implementing.

There is now a link on the bottom of the page for chat history review.


  [ # 11 ]

I just ran a few standard test questions past Laybia, and the results showed that there are still traces of ALICE in her system. This, in and of itself, isn’t a huge deal. What I’ve found that is the biggest problem at this point is the over 1 second response time for every question I asked. This sort of performance issue is something that needs to be addressed as soon as possible.

As the site seems to be driven by PHP, I’m wondering if you’re using the Program O interpreter, or some other PHP based AIML interpreter to run Laybia. If you’re using Program O, I may be able to make some suggestions that may (or may not) improve response times. Of course, it may also be that the lag is caused by a problem/misconfiguration of the web host, as well. It’s really hard to say, based on only a few interactions.


  [ # 12 ]

“Standard test questions” - one reason I came here! 

When she gets stuff like “Well met, fair maiden. How are you?” all I think is “Tyoe C Client”, and ‘Oh sh*t, this is gunna be embarrassing!’ :(

It is indeed an implementation of Program-O (open source php AIML interpreter). 

I couldn’t figure out why the response time is so long- any suggestions would be greatly appreciated- there does seem to be some inefficiency in the code- I’m no wiz at php, but I can fake it ok wink so I should be able to follow along.


  [ # 13 ]

Ok, so maybe my “standard test questions” weren’t so “standard”, after all, lol. But as I said, that portion of Laybia’s personality isn’t really all that important right now.

Since you’re using Program O, there are some suggestions that I can make to help improve performance. The first is to update the debugging script to more accurately report the timings of the various stages that the script goes through. Over at the Program O forums, I’ve posted an improved debugging script that reports the exact time that each call to runDebug() is made. This will show you where any bottlenecks are occurring. You can find the improved debugging script at,201.0.html. Download the attached file (debugging.txt), check it for viruses (always! For every file you download, no matter what the source!), change the extension to php, and copy it into your “bot” directory (be sure to backup the old file first!). I’m fairly certain that no other “tweaks” are necessary, but I posted that file a while ago, so my memory may not be perfect here. :)

Anyway, once you get the file copied, look at the first few lines of the new file. You’ll see that you now have the option to save the output of the debugger to a file (enabled by default. You’ll want to disable file output during normal operations, to improve performance). The default location for the debugger’s saved file is in a directory named “txt”, within the “bot” directory. If this directory doesn’t exist, either create it, or change the setting in debugging.php to reflect a destination that does exist, and you should be good to go. Then, it’s just a simple matter to run a test question, and examine the file, to see where all the time is going. Of course, if you have any trouble, just holler, and I’ll see what I can do to help determine the problem.

[edit]By the way, Liz has recently announced that she’s nearing completion of “Program O 2.0”, and that she’ll possibly have it out by the end of March. I’m hopeful that this new version will incorporate some of the improvements that I’ve suggested over the past several months (the vast majority you can read about in the forums over there).[/edit]


  [ # 14 ]

Thanks again for the feedback-

Dave Morton - Feb 9, 2011:

...Since you’re using Program O, there are some suggestions that I can make to help improve performance. The first is to update the debugging script.. Of course, if you have any trouble, just holler, and I’ll see what I can do to help determine the problem.

I created a debug file and it just seems like there are a lot of needless recursions, but not sure where they are coming from except some long if else if bits.  I have attached a typical exchange debug output, can you just give it a quick scan and let me know if you see anything unusual?

Dave Morton - Feb 9, 2011:

..Liz has recently announced that she’s nearing completion of “Program O 2.0”...

I look forward to the new version!

File Attachments
laybia_debug.txt  (File Size: 33KB - Downloads: 176)

  [ # 15 ]

I see two distinct problems within the debug file that have an effect on the script’s execution time. The details are as follows:

02:39:28.5277 02:39:41.654113.1264 seconds Total execution time

Detected bottlenecks

02:39:28.548 02:39:29.048:  0.500 seconds SQL execution

:39:29.4073 02:39:40.856311.449 seconds minClean()

02:39:40.8659 02:39:41.37030.5071 seconds SQL execution

Total bottleneck lag
12.4761 seconds

Remaining time used
0.6503 seconds 

Before I get into the numbers, I’d like to point out that , due to an omission on my part in my earlier post, some of the proper information isn’t getting to the debug script correctly. The upgraded debugging script has been re-designed to show exactly which line, in what function, of which file, the runDebug function was called, but it requires all of the function calls to be modified to look like the following:


The above function call uses PHP’s “Magic Constants” to supply runDebug with the name of the file, the name of the function the call was made from, and the line number of the call itself. This proves to be extremely useful for debugging, but only if the call is properly structured. The first value is the “debug level” (3 is default, and most common), which is explained in the comments in debugging.php - The 2nd through 4th should be fairly self-explanatory and they are all structured the same way, with 2 underscores each, at both the beginning of the constant, and also at the end - That’s a total of four underscores per constant. This is important, if you don’t want your script to break. smile. The last, of course, is the message that’s passed to the debugger for output. I know that there are literally dozens of these function calls (perhaps over a hundred - I never counted them) across a goodly number of files, but if the editor that you use can do a “search and replace” using regular expressions, it’s likely to be a relatively painless process to change all of the function calls over. I’m no good with RegEx, so I did all of mine the “old fashioned” way, and it took me a couple of hours. But in doing so, I’ve EASILY saved that amount of time and more in debugging my version of the script.

Now, on to the bottlenecks I’ve found: I have some questions, first (of course!)

1.) Is the SQL server on the same address (e.g. localhost) as the web server, or is it located elsewhere?
2.) Which version of MySQL and PHP are running? (You can find this easily enough by creating a PHP file (hidden from the public - There is a LOT of data in the resulting page, much of it exploitable by the wrong person) with only the command


within the file. If your MySQL server is on the same web host/address, you’ll see the version info for that on the resulting page, as well. If not, then if you have access to a DB manager like phpMyAdmin you can locate the MySQL version there.
If you have access to phpMyAdmin, or some other database manager, you can also use it to test the execution time of a simple query. This will tell you if there’s a lag/latency problem between your web server and your DB server, or if the DB server is just slow. If it’s just plain slow, there may not be much you can do about it. If there’s a lag problem between the two servers, you may be able to contact your web hosting provider and see if there’s something that can be done.

Now: minClean… This is a prickly problem, because I’ve been plagued with problems here in the past. I’ve made several modifications to my version of Program O; some of which I’ve publicly documented, and I think I’ve even made some changes to this function, as well. The problem is that I’ve also made several fundamental changes to the overall structure of the entire script (such as moving the response array into a session variable, to maintain state across requests - essential when using jQuery, or other AJAX calls with the script), and therefore none of the functions that I’ve modified will simply “drop into” Program O without making some substantial changes. As you’ve said that you’re no PHP wizard, this may prove to be a bit problematic. I’m more than happy to help in any way I can, but something of this nature requires an ability to communicate that exceeds the limitations of a forum. I have a contact page for my website that you can use to email me (or you can use the handy-dandy link under my avatar), that will allow me to send you contact details that I would rather not make public. Also, if you have Skype installed, you are always free to call me that way, too. There’s a button in the left sidebar of this page that you can use for that.

While I’m waiting on the info I’ve requested, I’ll do a side-by-side comparison of my version of minClean(), and the original. If I changed more than the fundamental structure stuff I mentioned, I’ll post a “reverted upgrade” of the script. If all I did was change $response_Array to $_SESSION[‘response_Array’], then there’s no real point in posting it; but I’ll check it out, just to be sure. smile


 1 2 > 
1 of 2
  login or register to react