[alicebot-general] [pandorabots-general] Bot hosting

mehri foreverlinux at yahoo.com
Fri Jan 5 21:48:37 PST 2007


Well, this is always an interesting subject and there 

are a few bots out there that can statisfy this to a 

certain degree.  However, none of the freely available 

AIML interpreters can accomplish this to the degree 

in which Pandorabot's Program Z has accomplished

this in my humble opinion.  At least not yet ;-)



Become a member of alicebot-general, if you're not already.

There you will meet many people working on new and 

different interpreters of the AIML standard and you would be 

able to perhaps get hints and ideas on subjects such as 

this.



> Would Program E be the best program for this or should I 

> consider one of the other programs available at the Alice 

> Foundation?



Well, really almost none of the interpreters are actually available 
from
the Alice Foundation.  The Alice Foundation just has links to 

the interperter's web pages.  The Alice Foundation also does 

not financially support any of the interpreters as far as I know.  

Quite the contrary, some of the interperter writers and 

companies of the interpreter writers help fund the Alice Foundation.



I can't tell you which interpreter is best for your situation but I 

can outline a list of a few things I would look for when hunting for a 

decent interpreter for your situation.



* Does the interpreter support a multi-user and multi-bot environment 

  with a single brain?



The best scaling is for a single brain to share categories among all 
the users and bots and to do extra book keeping on which users' 
bot(s) has which categories.

Most interpreters don't support this.  They only support one user 
and that 
user can have only one bot per instance of their program.  
Also, 
some do support this but _not_ in a single brain.  Rather each 
new 
user or new bot creates an entirely new "node mapper/graph builder" 

for each user and bot.  That does not scale well.  Most interpreters 

catch on and fix this critical feature as their 
user base begins to grow.

 

* Does the interpreter support multi-threading with each instance 

  of the bot brain?  If so, is the number of threads configurable 

  in the interpreter's configuration?



Multi-threading allows one user to add enormous volumes of 

categories to the interpreter while not "blocking" another user from

querying the interpreter for a response.  It lowers the latency for 
getting answers from the brain and is absoluetly essential if the 
interpreter handles multi-user/mulit-bot mode within a single brain.

Plus, if you begin bringing in serious hardware with mulitiple 

processors only a mulit-threaded bot will be able to take advantage 

of 
the processors.  If the number of the interpreter's threads are 
configurable this also gives you the added benefit of tweaking the 
performance.  

* Does the interpreter support passivation and activation?  If so, 
  are the rules configurable?  Does it support self tuning?

This is where the interpreter will offload in-memory categories to 
the hard drive.  The interpreter typically follows some rules about 
which parts to keep in memory and which parts to offload to the 
hard drive.  Rules such as, "If bot A hasn't been accessed in 10 
minutes offload it the hard drive".  Or other rules more finer grain such 
as, "If category B hasn't been accessed in an hour offload it to the 
hard drive".

Activation is the opposite where an offloaded category becomes 
activated and must be loaded into memory.  The rule is the opposite 
of the ones above.  If bot A is suddenly being asked a question it 
had better be loaded into memory.  if category B is being accessed 
it must be loaded.

Usually these rules are configurable to where you can fine tune them
or turn them off altogether.  Sometimes they also have a property to 
make them fine tune their own rules according to the stress loads on
the interpreter.

This is important for scaling situations where someone comes along 
and creates a bot but then forgets about it and doesn't access it ever 
again.  You _really_ don't want it to stay in memory forever.

* Does the interperter have grid support?

Is it possible to run the interpreter on multiple machines and have the 
machines all act as one brain?  You will be able to load balance a farm 
of interpreters with one common interface to them all.  It will also be 
easier to add more machines to help support additional users and bots 
as your user base increases.  

Typically, at this point you're no longer using desktop machines but 
rather a rack of servers.  Add more servers to the rack as needed.

* Does the interpreter support failsafe capabilities and if so does 
  this include redudancy?

In other words, can you setup the interpreter to run on multiple machines 
and if you shut off one machine the other picks up where the first left off?  
If it does pick up where the first left off, does it have all same categories 
loaded by the users from the first machine where they are all already loaded 
in memory (redudancy).

This is typically a stretch goal but to some important.  Especially latter if 
you need to perform hardware/software upgrades without an outage of 
service.

Hope this helps in your search!  :-)


----- Original Message ----

From: Dekadens <dekadens at gmail.com>

To: pandorabots-general at list.pandorabots.com

Sent: Friday, January 5, 2007 8:56:55 AM

Subject: [pandorabots-general] Bot hosting



Lately I've been pondering the idea of hosting my own bot site, which

would not only be a place to host my own bot but perhaps one that

would be able to allow other people to create and publish their own

bots on my site. I guess it would be kind of like a mini version of

Pandora bots. This would of course be ad free and free of cost. I'm

not looking to make money, I just thought it would be a fun hobby.



Would Program E be the best program for this or should I consider one

of the other programs available at the Alice Foundation?



Any thoughts or suggestions would be welcome.

_______________________________________________

This is the pandorabots-general mailing list

To Post, reply to pandorabots-general at list.pandorabots.com

Unsubscribe and change preferences at http://list.pandorabots.com/mailman/listinfo/pandorabots-general

Learn netiquette at http://www.dtcc.edu/cs/rfc1855.html

Learn to read at http://www.literacy.org/








__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


More information about the alicebot-general mailing list