So, first let me say I've been using VAM for about six weeks, and I love it! It's brilliant and amazing, and I can't wait for V2, but this version is just fine as it is, for me. I like the ethos of the hub and how everyone works together. Some of the free assets are simply amazing, and I've really enjoyed using them. Everything is has been made so easy and intuitive, compared to Unity. I can only imagine the work that went into deriving and creating VAM from Unity and all the excellent assets on the hub.
A little bit about me, I've been researching how to build chatbots and conversational AI in Unity, and I've tested a number of different types of bots in Unity:
1. IBM Watson Assistant.
2. Unity chatbot that uses AIML code. (AIML is similar to XML and SSML)
3. Attempted to use different dialog systems to create branching narratives to mimic a chatbot.
(All the above were lipsynced to UMA/ RealIusion / Daz 3D models using Salsa, and the lipsync worked well).
Conclusions
IBM Watson turned out to be a nightmare to work with. It's supposed NLP capabilities simply aren't anywhere near as good as IBM claim, at least not out of the box without additional coding. In reality, it's not much better than the Unity Keyword and Grammar recognition. The main problem with IBM Watson Assistant is the time lag in conversations. It can take up to 15 seconds and more to process input and to formulate the reply. The intents' ability to capture semantic meaning can be pretty hit or miss, for example, compared to Voiceflow Alexa, which is a way better system. There's a number of videos on Youtube, showing the conversational lag, one in particular, part of a student's MA thesis of using conversational AI in games. She ditched IBM to complete her thesis. The basic set up at IBM can become expensive when you move to a paid plan, which you need to use text to speech for continuous testing, which you will be doing thousands of hits per month. I seriously, don't recommend IBM. Shame you can't use Voiceflow Alexa as a chatbot in Unity.
The Unity chatbot, costing about £22.00 from the asset store, is surprising good. I integrated it with RTVoice and Salsa, and with a little help from the excellent developer at RTV, the whole system worked flawlessly. There's still a input-output processing lag but nowhere near as bad as as IBM Watson. The only problem with the AIML chatbot is the content, which is based on a chatbot, ALICE, which is now 20 years old . Rosie ,an extended, more recent form of ALICE is available on Github, and, again, this bot's content isn't culturally contemporary. It can be modified but there's thousands of lines of AIML to change, replace or delete. But this way better than IBM Watson. The best part about this chatbot is there's no service provider costs and it's all on your desktop.
If you really want to know how the dialog systems worked out, PM me. They can be on a par with an NLP bot. I can share videos of them in action.
Also, if anyone is super interested in how far the limits of conversational AI can be pushed, check out the research into virtual humans at Utrecht University. This stuff is way above my grade, but some of you might understand what they are trying to do.
So, now here's the thing, I'm quite happy to build a bot for free for VAM users, however my coding skills in C# aren't brilliant. My main problem with Unity wasn't building the bots, these can be done without C#, codelessly, and using AIML, which is easy to understand. My problem was with C# and the continual 999 red warnings, which looking back, I can only laugh at my initial ridiculous level of overconfidence combined with my total ineptitude in coding.
As I see it there are two ways of implementing a bot in VAM.
1. Simply, lipsync ( or even trigger Keyword/Grammar actions and behaviors) from the audio output of a webpage. Now, I have researched this topic, and as far as I could determine using SALSA AudioSource, and according to the Salsa dev, it can't be done, in Unity. However, I asked the developer of the Unity Vuplex webpage asset, he said it can be done, theoretically, but he's on such a high intellectual plane, he only talks to asset users in C# and JavaScript, not natural language, so I couldn't understand what he was trying to tell me. My fault entirely, he's bright guy.
2. I'm quite happy to work though a training course on Windows Speech Recognition which I believe can mimic some of the complexity and commercial standards of an NLP conversational bot, IF it can be integrated into VAM, and I'll deliver a free prototype chatbot to the hub. But I would need others to help with integrating and other aspects of the coding. In short, I'll learn how to write the XML content for the bot, if others can help with the rest of the coding to integrate and make it work in VAM. I have no problem with anything, any code which I can relate back to language and storytelling.
So, if anyone does have any ideas about how to AddAudioSource a webpage in VAM, that can be lipsynced, or wants to help all us develop a conversational AI/Virtual human for the hub perhaps using XML and Windows Speech Recognition, please reply or PM me. If you are already working on a similar project for free use on the hub, then I might be able to help you.
Why would I do this for free? Well, I'm an old guy and I don't want the hassle of upset, irate paid customers when the bot breaks, which they frequently do, even the ones at high end conversational AI companies like Soul Machines; they run out of bandwidth and try to shift you on from voice interaction to text messaging. The current value of a virtual human with the kind of capability I want to build is around $3000.00 pm to hire (yep, that's per month) . Even that kind of money wouldn't tempt me to do this as paid work! Remember: bots will break, so always bear that in mind. But when they work, it can seem like magic.
Anyway, I'm excited to meet and chat with other VAM users and likeminded folk. Fantastic site!
A little bit about me, I've been researching how to build chatbots and conversational AI in Unity, and I've tested a number of different types of bots in Unity:
1. IBM Watson Assistant.
2. Unity chatbot that uses AIML code. (AIML is similar to XML and SSML)
3. Attempted to use different dialog systems to create branching narratives to mimic a chatbot.
(All the above were lipsynced to UMA/ RealIusion / Daz 3D models using Salsa, and the lipsync worked well).
Conclusions
IBM Watson turned out to be a nightmare to work with. It's supposed NLP capabilities simply aren't anywhere near as good as IBM claim, at least not out of the box without additional coding. In reality, it's not much better than the Unity Keyword and Grammar recognition. The main problem with IBM Watson Assistant is the time lag in conversations. It can take up to 15 seconds and more to process input and to formulate the reply. The intents' ability to capture semantic meaning can be pretty hit or miss, for example, compared to Voiceflow Alexa, which is a way better system. There's a number of videos on Youtube, showing the conversational lag, one in particular, part of a student's MA thesis of using conversational AI in games. She ditched IBM to complete her thesis. The basic set up at IBM can become expensive when you move to a paid plan, which you need to use text to speech for continuous testing, which you will be doing thousands of hits per month. I seriously, don't recommend IBM. Shame you can't use Voiceflow Alexa as a chatbot in Unity.
The Unity chatbot, costing about £22.00 from the asset store, is surprising good. I integrated it with RTVoice and Salsa, and with a little help from the excellent developer at RTV, the whole system worked flawlessly. There's still a input-output processing lag but nowhere near as bad as as IBM Watson. The only problem with the AIML chatbot is the content, which is based on a chatbot, ALICE, which is now 20 years old . Rosie ,an extended, more recent form of ALICE is available on Github, and, again, this bot's content isn't culturally contemporary. It can be modified but there's thousands of lines of AIML to change, replace or delete. But this way better than IBM Watson. The best part about this chatbot is there's no service provider costs and it's all on your desktop.
If you really want to know how the dialog systems worked out, PM me. They can be on a par with an NLP bot. I can share videos of them in action.
Also, if anyone is super interested in how far the limits of conversational AI can be pushed, check out the research into virtual humans at Utrecht University. This stuff is way above my grade, but some of you might understand what they are trying to do.
So, now here's the thing, I'm quite happy to build a bot for free for VAM users, however my coding skills in C# aren't brilliant. My main problem with Unity wasn't building the bots, these can be done without C#, codelessly, and using AIML, which is easy to understand. My problem was with C# and the continual 999 red warnings, which looking back, I can only laugh at my initial ridiculous level of overconfidence combined with my total ineptitude in coding.
As I see it there are two ways of implementing a bot in VAM.
1. Simply, lipsync ( or even trigger Keyword/Grammar actions and behaviors) from the audio output of a webpage. Now, I have researched this topic, and as far as I could determine using SALSA AudioSource, and according to the Salsa dev, it can't be done, in Unity. However, I asked the developer of the Unity Vuplex webpage asset, he said it can be done, theoretically, but he's on such a high intellectual plane, he only talks to asset users in C# and JavaScript, not natural language, so I couldn't understand what he was trying to tell me. My fault entirely, he's bright guy.
2. I'm quite happy to work though a training course on Windows Speech Recognition which I believe can mimic some of the complexity and commercial standards of an NLP conversational bot, IF it can be integrated into VAM, and I'll deliver a free prototype chatbot to the hub. But I would need others to help with integrating and other aspects of the coding. In short, I'll learn how to write the XML content for the bot, if others can help with the rest of the coding to integrate and make it work in VAM. I have no problem with anything, any code which I can relate back to language and storytelling.
So, if anyone does have any ideas about how to AddAudioSource a webpage in VAM, that can be lipsynced, or wants to help all us develop a conversational AI/Virtual human for the hub perhaps using XML and Windows Speech Recognition, please reply or PM me. If you are already working on a similar project for free use on the hub, then I might be able to help you.
Why would I do this for free? Well, I'm an old guy and I don't want the hassle of upset, irate paid customers when the bot breaks, which they frequently do, even the ones at high end conversational AI companies like Soul Machines; they run out of bandwidth and try to shift you on from voice interaction to text messaging. The current value of a virtual human with the kind of capability I want to build is around $3000.00 pm to hire (yep, that's per month) . Even that kind of money wouldn't tempt me to do this as paid work! Remember: bots will break, so always bear that in mind. But when they work, it can seem like magic.
Anyway, I'm excited to meet and chat with other VAM users and likeminded folk. Fantastic site!
Last edited: