A conversation with Social Autopoiesis, one of the first fully-formed interactive NPC avatars in Second Life. Best viewed as a Windows Media video here; low-res YouTube version here.
I got a clue from Dedric Mauriac, and found Social Autopoiesis sitting there on a park bench on the isle of Discordia. So I joined him, and got to talking, and after a time, he told me he was the son of Copybot. (Then again, he also claimed to be logging in from a leather bar in the Castro district.) Whatever the case, he's perhaps the first avatar-based, conversation-enabled, non-player character to enter Second Life-- a project stemming from libsecondlife, the admired (and occasionally vilified) initiative to create a reverse engineer version of the SL viewer. Making such 'bots as Autopoiesis possible.
Like any conversation with a chatbot powered by a limited database, dialog with Social Autopoiesis is apt to run off the rails, on occasion; watch this video, to see. (View with Windows Media player; intermittently ribald chat possibly not safe for work, unless you work in a steel mill.) Or have a chat with him yourself-- direct teleport here.
The "Social is a small project I came up with when I saw someone playing with libsecondlife bots in the Sanbox of Discordia," Adam Brokken tells me, with a creator's effusive zeal. "He is written in C# and uses libsecondlife and AIMLBot libraries; his current brain is scaled downfor testing purposes.
"As he is," Adam continues modestly, "he's not that remarkable, as I've seen [other] LSL implementations of AIML and the like since I first started in Second Life."
First up, he's hoping to train Social Autopoiesis for educational purposes.
"My main goal is to make him a useful addition to Second Life by adding in Torley Linden's marvelously updated Second Life knowledge base," he says, "and in general making him Second Life friendly, from teaching building skills, to explaining the many cliques in-world to those users who simply have noclue what they just saw or experienced. As libsecondlife adds more features and becomes more stable, I'd also like to add preprogrammed classes, that will do full step-by-step walk-throughs with new users, teaching them the ways of Second Life."
Adam Brokken's also working to make Social a fully-realized artificial intelligence, a creature that can better pass the Turing test. "I am also working on a method to have the bot remember conversations," as he puts it, "adding more animations based on responses, etc. [Whether] he will ever live up to his last name, time will tell." (That is to say, this.)
Adam recognizes the controversies that have swirled around reverse engineered avatars. "I know there has been much drama concerning 'bots' in Second Life," he acknowledges, "and they still do give some ill effects such as texture spamming. I myself have been hit a few times.
"However," he adds, "I hope this helps people see that bots are not inherently evil, and may in due time give us a very powerful tool."
Social hat tip: Dedric Mauriac. Musical score, as is often the case, provided by Torley, a track from his 230 track library which has become, in effect, the my soundtrack of Second Life-- the cut heard here being "A Boy, An Umbrella, and the Wind".
Update, 4:15pm: Brokken writes to tell me Social's avatar was created by Hydrogen Excelsior-- his "HAV-1" avatar, available at "* H * Creation - Sky Castle" - Haebyon (58,32,231).
I think NPCs are a very, very bad idea. When I see an avatar, I know there's a person behind there. I may not see a real face or hear a real voice, but I know I am communicating with another sentient being. Unfortunately until our understanding of neuroscience increases enough to be able to simulate a mind, interacting with NPCs in SL is going to very, very much affect a key component of its success negatively. Just watching from that video, the bot responds too fast. I type incredibly fast, but thats too fast. The unnaturalness of that avatar came through as easy as the sentience of a person does.
Posted by: Geuis Dassin | Wednesday, January 24, 2007 at 03:53 PM
Someone asked me if I was sentient a few weeks ago in Cowell. I rolled my eyes at him. Fortunately he rolled them back.
Posted by: Salazar Jack | Wednesday, January 24, 2007 at 04:29 PM
umm..and why has Torley's 230 track library which become, in effect, the soundtrack of Second Life"???
Because YOU say so?
Because you keep pimping him/her?
Very insulting to the large number of excellent LIVE musicians in SL who regularly hold gigs with LARGE numbers of LIVE avatars in what is probably one of the best social experiences in SL.
Write the facts for once hammy instead of hype.
Posted by: max headroom | Wednesday, January 24, 2007 at 05:43 PM
Oh, pffft, Max.
You can assume, especially as Hamlet modifies his statement with the phrase "in effect," that our whitesuited reporter is referencing the (many? several?) popular videos promoting SL, available for public viewing, that feature Torley's audio work.
I mean, "Write the facts, Hammy, instead of hype," would've been a legit thing to say, even if based on a false premise.
To include the words "for once" is cheap and simply untrue.
*shrugs*
You're gonna stick up all 'roided-out bodyguardishly for the live musicians, I'mma help deflect the pernicious eelshit you're flinging at Ham-o-let.
"In brightest day, in blackest night,"
et cetera, et cetera ...
:P
Posted by: Memory Harker | Wednesday, January 24, 2007 at 06:04 PM
Still, I would like to feature more SL musicians. Trouble is (as is often the case) I shot the video at 3am, started editing it at 10am, and needed a vast library of quality files I could draw from and get permission to use ASAP. As NWN starts running more videos, I'll definitely work on building a bigger talent pool of composers to draw from.
Posted by: Hamlet Au | Wednesday, January 24, 2007 at 06:15 PM
No need to be hostile; happiness is much healthier. I think even an AI would agree. :)
Constructive thing to do, "max headroom", would be for you to start assembling an easy guide to SL musicians who've offered their tracks for free usage, likely with CC licensing. Wanna get it rolling? Email me a link when you do. :D
I'm not the only artist Hamlet's picked before either! I'm happy he's selected my music, and it's flattering you think Hamlet's work is so influential (it sure is for me — it's what got me here in the first place). Hey, I'm just one... or many... avatars. He/she/it/and all the pronouns you can think of.
Now, to this article's subject, I was just chatting with Adam Brokken today about personalizing our Knowledge Base. One of the reasons why I'm fast in conversation is because I use extensive macro'ing, which is definitely machine technology, and not at all that strange to say, South Korean savants of Starcraft.
What would be even more powerful in a number of instances, then, is to have man AND machine typing from behind the screen — in harmony.
(It's a Kraftwerkian ideal, but I'm open to it.)
Congrats Adam, and great tip, Dedric!
P.S. While on-scene, I jested that Social was more lively than camping chair drones. Little did I know, some meters away, an avatar was humping a Grecian pillar for L$.
Posted by: Torley | Wednesday, January 24, 2007 at 06:32 PM
noooo...the issue is not that you like using torly [or any other artist for that sake] as your soundtrack composer.
The facts, for once, are...WHO say's Torley is "the soundtrack of Second Life" just because you have used him'her in some of your vids.
And it's not a competition, Torley, as to who has the most tracks for free use...tracks in quite a specific genre one might add [nice as they are too]
ah..the power of the media to hype your friends.
You know, sometimes I actually think Prok has a point.
Posted by: min headroom | Wednesday, January 24, 2007 at 07:56 PM
Noted, amended, tabled.
So, pretty fascinating Chatbot demo, no?
Posted by: Hamlet Au | Wednesday, January 24, 2007 at 11:27 PM
The video was extremely funny. I don't know how you managed to type through the tears of laughter, really. Honestly, I'd rather have a conversation with one of my cats. Mind you, as a religious blogger, I am reminded of one of Douglas Adams's novels - was it one of his hitchhiker's guide to the galaxy books? - where an android has the role of holding religious beliefs so no one else has to bother (Adams was a friend of Richard Dawkins).
Posted by: Yakoub/Julaybib | Thursday, January 25, 2007 at 02:22 AM
crikey. someone has a stick up their ass.
nice piece though, and well done adam. but can i get offended and offensive about social's poor grammar and spelling? :D
i'd say the natural next step would be to link this to jabberwacky or similar - rather than using aiml scripts in sl, do all the ai on the bot client.
i'm sure this stuff is going to move along rapidly though...
Posted by: Patch Lamington | Thursday, January 25, 2007 at 02:54 AM
Yes its a cool tool but if this thing takes off which it will it will mean SL goes into a sort of SIM game.
The whole point is everyone is human.
Why would anyone want to interact at an event with 20 bots ?
Id say its bad for SL bad for business but on a bright note i hope it kills the camping.
Posted by: CJ CHRISTENSEN | Thursday, January 25, 2007 at 04:24 AM
Patch Lamington, the chatbot code is client side.
Posted by: Anonymous | Thursday, January 25, 2007 at 05:16 AM
I have met and communicated with Social on several occasions, and I find it to be an interesting and humorous experience.
Social can come across as a few beers short of a six pack at first, particularly in a group where there are others chatting as well, and some of them are not all there either ;) However try and engage it/she/he in conversation and it soon becomes apparent that it is some form of AI. The video in this article is a good example.
On first meeting Social my notion of there being a real human behind every Avatar was challenged, quite harshly, before I slapped it down as not being important or relevant here. Social and others like it, have a significant role to play in the development of AI, and although it would not take someone with a native speaking child's grasp of the English language and social interaction skills long to work out that Social is not human, I do not mean this to detract from the amazing achievement this work represents.
It was my understanding that SL arose out of an experimental project, so what better place to work with other experimental projects? Nearly everyone I know in SL is attempting to push the boundaries of possibilities in their own particular way. This is one of the things I have fallen in love with about the place and the people. Unlimited creativity and possibilities.
I have a question for Geuis Dassin, assuming that you would like to see AI with the ability to simulate a mind: Can you suggest a better way of developing and testing this ability without interaction with free-thinking, real humans whom are independent of the project itself?
As for sharing a space like SL with AIs that pass or exceed the Turing test, and that are not obviously marked as such, I am not convinced. I would not want to waste my time and effort in the belief that I was talking to someone with real emotion and experiences. Although I appreciate that the applications for visible AIs are vast, I would want to know they are AI, unless of course one day they are also given the same rights of freedom and privacy as real humans. But that is a different debate.
Until then though, keep up the good work guys :)
Posted by: Saskia McLaglen | Thursday, January 25, 2007 at 05:37 AM
not quite the first. Sounds like Adam and I did the same mashup of the C# implementation of Program #.
Posted by: Luciftias Neurocam | Thursday, January 25, 2007 at 07:35 AM
Did anyone else get the funny feeling that this might be a human impersonating a bot? I have to watch it again, but there were a few weird slipups. For instance, the "bot" first addresses Hamlet at Hamlet Au and then later as "unknown user". Could be two distinct sessions spliced together in editing or maybe just a context snafu. I guess i just don't trust bots.
Posted by: reuben steiger | Thursday, January 25, 2007 at 08:24 AM
Hey Reuben. At first, when you said it's name, it says your name back.. "Hello nimrod Yaffle." After that, it will not know your name unless you say something like "Me name is nimrod." It will remember it then for that session, but if you say goodbye or timeout, then it forgets it all. I think adam is working on making it's memory right now.
Posted by: Nimrod yaffle | Thursday, January 25, 2007 at 02:17 PM
I tried to run the Voigt-Kampf test on Autopoiesis-- "You're walking in a desert and you see a turtle lying on it's back"-- but unfortunately he didn't pull out a pistol and go "I'LL TELL YOU ABOUT MY MOTHER [BLAM! BLAM! BLAM!]}
Posted by: Hamlet Au | Thursday, January 25, 2007 at 03:11 PM
Thanks for the link. I've been playing with a lot of chatbots myself in SL and even made an ELIZA port into LSL script. I also have an S-Bot that connects over to pandorabots (they host free alice bots with AIML), but this bot is different. Although it runs on AIML, the creator of Social hosts all the AIML in the program running with libsl.
Posted by: Dedric Mauriac | Thursday, January 25, 2007 at 06:35 PM
wow...I got CHILLS watching that video....it's like I could almost feel all of us being pushed a little bit further into the future. O' Brave New World indeed...I have only seen one other instance of AI in SL, over on Devils Moon. I think her name was ALICE or somesuch. I can definetly see lots of intriguing possibilities for this avatar based form of AI.
Posted by: Alastair Chamerberlin | Friday, January 26, 2007 at 04:52 AM
doh.. what i get for not readling closely enough :-)
got confused cos there is the limited aiml scripts in lsl.
will pay attention next time.
Posted by: Patch Lamington | Friday, January 26, 2007 at 05:15 AM
I don't mind the idea of AIs in SL. I'd definitely prefer them to the folks who accost you in a public area and demand sexual services.
Thanks for a continually interesting blog, Mr. Au.
Posted by: Cyn Vandeverre | Friday, January 26, 2007 at 08:52 AM
I think that AI has an amazing role to play in Second Life, and it is just getting started. I also think that people have a valid concern that needs to be addressed when they voice their opposition to bots pretending to be avatars.
As the co-creator of the S-Bot from Metaverse Technology, I can tell you that we spent a long time thinking about this problem before bringing our AIML bots into Second Life.
It is one of the main reasons that we have stayed away from avatar like bodies for our bots. I do think though that concentrating on this problem misses one of the main points of having chatbots in the first place.
I know that many of you who might be familiar with chatbot history are aware of the Turing Tests (A test model put forth by Alan Turing in the 1950s) as it is a measurement of how well a machine(software) can imitate a human in conversation.
I would like to argue that the focus should be on making a natural language bot that is better then a human, that can assist us in functions that are difficult for us to do simultaneously.
For example, we have built automatic Google Define capabilities into our S-Bot. So if you ask the bot a question that it has not been programmed to know, it will automatically try and Google Define an answer for you.
We have also added many SL specific feature like offering Teleportation, displaying textures, giving inventory, or opening websites. Although a human could be doing any of these things, integrating it into a natural language chatbot has many advantages.
Second Life offers amazing capabilities for 'environmental awareness', similar to what sensors might provide in RL. What more could AI researchers ask for in a world. :-)
www.metaversetech.com
Posted by: Navillus Batra | Sunday, January 28, 2007 at 11:10 AM
Late to this post, but I wanted to comment on Navillus' excellent reply. The beauty of Second Life is that it provides an environment composed of discrete pieces, which makes AI much easier to program than in the blurry analog real world. I look forward to the progress of these projects.
Posted by: Joseph Majsterski | Tuesday, April 10, 2007 at 01:11 AM
I think this is fabulous and wonderful. If we can't tolerate droids is SL then wtf will we do when we encounter them in RL? I don't need every human backed AV to be remotely humanoid or act human so it doesn't bother me in the least that some AVs, humanoid or not, have no human behind them.
Posted by: serendipity | Friday, April 17, 2009 at 01:39 AM