AI Zone Admin Forum Add your forum

NEWS: Chatbots.org survey on 3000 US and UK consumers shows it is time for chatbot integration in customer service!read more..

Introduction
 
 
  [ # 16 ]
Steve Worswick - Oct 2, 2012:

I must admit I would love a wildcard in AIML which represented either something or nothing. For example:

DO YOU LIKE EGGS ~

Would match:

Do you like eggs
and
Do you like eggs for breakfast

May have just got this working at: http://Elizabot.com/entry  Though it needs alpha testing.

http://Elizabot.com/entry - Apr 19, 2014:

Judge: Do you like eggs
Elizabot: What is not to like about that?

Judge: Do you like eggs for breakfast
Elizabot: What is not to like about that?

So, for the sake of discussion, if this is correctly implemented, what is the advantage, Steve?

 

 

 
  [ # 17 ]

Well, for one thing (and in keeping with the “for discussion purposes only” theme), The “do you like eggs” example probably isn’t the best one to use. But even so, it’s (sort of) usable. Either way, you don’t have to create anywhere near as many response categories when using “zero-based” wildcards. In AIML 1.0.1, in order to match those two inputs with the same response, you need more than one category. With a zero-based wildcard (one that matches on 0 or more words/characters, etc., rather than only matching if there’s ~SOMETHING~ there), you would only need one category. To illustrate:

<!-- the old way: -->
<
category>
  <
pattern>DO YOU LIKE EGGS</pattern>
  <
template>YesI like eggs very much.</template>
</
category>

<
category>
  <
pattern>DO YOU LIKE EGGS *</pattern>
  <
template><srai>DO YOU LIKE EGGS</srai></template>
</
category>

<!-- 
With a Zero-Based wildcard (~) -->
<
category>
  <
pattern>DO YOU LIKE EGGS ~</pattern>
  <
template>YesI like eggs very much.</template>
</
category

Please note that there are better examples of how this would be useful, but I’m in no condition to work my brain that hard at present, so we’re stuck with eggs. raspberry

BTW, 8Pla, 2 things:

1.) Quick transcripts from a short conversation at coventry:

Dave: do you like eggs
Elizabot: What is not to like about that?

Dave: Do you like eggs that have been sauteed in weasel spit?
Elizabot: What is not to like about that?

Dave: Do you like eggs stuffed into your ears and set on fire?
Elizabot: Yes I am proud of my that.

2.) Out of curiosity, why did you bring up a comment from a year and a half ago? big surprise

 

 
  [ # 18 ]

Dave has it. It would have been useful at the time to allow the botmaster to create 2 patterns in one.

I am tired
I am tired today

would have been covered by I AM TIRED ~

However, AIML 2.0 now has zero or more wildcards and so this is old news now.

 

 
  [ # 19 ]

Steve’s comments may have been from 2012, Dave, but they were certainly useful in 2014 for chatbot contest preparation. Oh and thanks so much for posting your test results Dave. That was terrific! As always, you and Steve are good sports about helping other contestants fine tune their chatbot entries.

OK, so now I have a better idea on how to interpret alpha testing.  Still keeping a close eye on it, but, it appears to be working correctly at least partially. I hope this is a new way to use the old way. 

http://Elizabot.com/entry - Apr 19, 2014:

Steve: I am tired today
Elizabot: Maybe you should get some sleep now, Steve.

Steve: I am tired
Elizabot: Better get some rest.

Another question for you gurus… What about if the wildcard is in the middle such as, “Do you like * eggs?” for wildcards “fried” or “scrambled” or “hard-boiled”?  Or, “I am * tired.” for wildcards “so” or “sick and” or “not that”?  How would “zero-based” wildcards be used in these cases, if at all?  Can you think of any advanced cases of “zero-based” wildcards for alpha testing purposes?  Thanks!

 

 
  [ # 20 ]

8pla - This is an ideal situation for a zero or more wildcard. Instead of 2 patterns:

Do you like eggs
Do you like * eggs

The botmaster can just write the 1 pattern which will call “do you like eggs”.

Advanced case? How about:
I went to the shoe shop last Friday

If you had a pattern “I WENT TO THE ~ SHOP ~”. This could call, “I went to the shops” and would cover cases like:

I went to the shop
I went to the shoe shop
I went to the shop earlier
I went to the shoe shop earlier

4 styles of pattern are now covered by just 1.

This was introduced in AIML 2.0. Now, the 2 new wildcards # and ^ can be used as zero or more replacements for _ and *

 

 
  [ # 21 ]
Steve Worswick - Apr 19, 2014:

Advanced case? How about:
I went to the shoe shop last Friday

If you had a pattern “I WENT TO THE ~ SHOP ~”. This could call, “I went to the shops” and would cover cases like:

I went to the shop
I went to the shoe shop
I went to the shop earlier
I went to the shoe shop earlier

4 styles of pattern are now covered by just 1.

Here are the results of your advanced alpha test, Steve:

http://Elizabot.com/entry - Apr 20, 2014:

Steve: I went to the shoe shop last Friday
Elizabot: Was any good?

Steve: I went to the shoe shop earlier
Elizabot: Was any good?

Steve: I went to the shop earlier
Elizabot: Was any good?

Steve: I went to the shoe shop
Elizabot: Was any good?

Steve: I went to the shop
Elizabot: Was any good?

Wow!  Thanks for suggesting this advanced alpha test.

 

 
  [ # 22 ]

Nice work 8man. Are you entering it in the Robochat Challenge?

 

 
  [ # 23 ]

Chatbot contests are invaluable for validating a brand new chatbot intepreter, having it successfully play in a chatbot contest. Once contest-proven, it can be said that a new chatbot is stable.

This new chatbot interpreter is an intermediate design.  When it played against advanced designs in the Chatterbox Challenge Contest (CBC) it finished in 14th place, which was about average. However, it now has a transcript on public display on the official site for anyone to see that each of its responses were clean and reader-friendly.

To navigate back to Doug’s totally amazing topic… I may be inspired by this quote, to try to build a web based avatar for my contest entry.  But there may not be enough time before the contest starts.  Rendering 3D avatars is time consuming.

Doug Danforth - Sep 30, 2012:

Our primary reason to switch to Unity was to achieve higher fidelity avatars which display emotional responses and facial expressions based the dialogue. Plus we wanted a web based version as well as a stand-alone option for the interface.

 

 
  [ # 24 ]
Steve Worswick - Apr 19, 2014:

Advanced case? How about:
I went to the shoe shop last Friday

If you had a pattern “I WENT TO THE ~ SHOP ~”. This could call, “I went to the shops” and would cover cases like:

I went to the shop
I went to the shoe shop
I went to the shop earlier
I went to the shoe shop earlier

4 styles of pattern are now covered by just 1.

Here are more results of your advanced alpha test with an algorithm I am designing:

http://Elizabot.com/entry - Apr 22, 2014:

Steve: I went to the shop
Elizabot: Was it any good? A course of instruction in a trade (as carpentry or electricity). Small workplace where handcrafts or manufacturing are done. shop at, browse, mercantile establishment, sales outlet, toyshop, comparison-shop.

Steve: I went to the shoe shop
Elizabot: Was it any good? Do one’s shopping at; do business with; be a customer or client of. A mercantile establishment for the retail sale of goods or services. grass, frequent, back up, look for, pawnshop, blucher.

Steve: I went to the shop earlier
Elizabot: Was it any good? Before now. Shop around; not necessarily buying. tell on, in the first place, work, back up, bakehouse, tobacconist.

Steve: I went to the shoe shop earlier
Elizabot: Was it any good? A mercantile establishment for the retail sale of goods or services. Furnish with shoes. stag, before, garment, fit out, apothecary’s shop, anklet.

Steve… It is still rough. Any advice for training it would be very much appreciated.

I wonder if Doug Danforth may have one of his virtual patients join a chatbot contest?

 

 
  [ # 25 ]
∞Pla•Net - Apr 22, 2014:

Steve… It is still rough. Any advice for training it would be very much appreciated.

I wonder if Doug Danforth may have one of his virtual patients join a chatbot contest?

Do you mean something like the Loebner contest? I don’t think my patients would do very well since they are good at telling you about their aches and pains but are not good at general chit chat. They can chat biefly about the weather and sports but other than that you get a lot of “I’m sorry I don’t understand that question. Could you repeat it?”

If you can define the parameters of the conversation then they might do OK.  Bruce might know more. He is sometimes bemused at the type of dialogues I have to account for. My current patient (selected by the physicians teaching the case, not me) is Greta Schmidt, a 55 year old lesbian with vaginitis.

Doug

 

 
  [ # 26 ]
∞Pla•Net - Apr 20, 2014:

To navigate back to Doug’s totally amazing topic… I may be inspired by this quote, to try to build a web based avatar for my contest entry.  But there may not be enough time before the contest starts.  Rendering 3D avatars is time consuming.

Doug Danforth - Sep 30, 2012:

Our primary reason to switch to Unity was to achieve higher fidelity avatars which display emotional responses and facial expressions based the dialogue. Plus we wanted a web based version as well as a stand-alone option for the interface.

We built our avatars from scratch because there weren’t off the shelf options you could buy at the time and it was the Masters Thesis for one of my students. Now we are largely just purchasing avatars and animations. Mixamo has some very nice options for this.

https://www.mixamo.com/faceplus

Doug

 

 
  [ # 27 ]
∞Pla•Net - Apr 20, 2014:

To navigate back to Doug’s totally amazing topic… I may be inspired by this quote, to try to build a web based avatar for my contest entry.  But there may not be enough time before the contest starts.  Rendering 3D avatars is time consuming.

there is always unity3d free + makehuman + blender ( or cheetah3d which I use ) - oh wait, you said time….  wink

The animation locking with the script is the hard part, as Doug said you can just purchase prefabs in unity store for a fraction of the cost it would take you in time.  Even generating your own puppet with free makehuman, cleaning them up in cheetah which imports directly into unity isn’t that much work.

Getting reasonable animation synched with the chat is the hard part.  The Mixamo link Doug sent looks very intere$$$ting….

 

 
  [ # 28 ]

Really a great set of responses.  I had to comment that I too appreciate greatly Bruce’s un-ending patience in answering my naive questions.  (glad to know I’m not alone).

What I’m working on is building a Florence Nightingale bot for our nursing students that will appear in the nursing museum we are doing in Unity (thanks to John Lester and Reaction Grid).  I do agree it is pretty useful to code chatscript to learn how to do one bot..  We have a pretty nice AIML bot called Maura (My Anytime University Resource Assistant) that the folks at Pandorabots helped put together.  Whether it can move easily to Chatscript, I’m uncertain about whether to do and how to do.

John Bourne
Chief Innovation Officer
American Sentinel University

 

 
  [ # 29 ]

Todd,

You are a life saver!  I had forgotten I was playing
around with 3D avatar models in Blender a while back…

http://elizabot.com/avatar

This is much lower poly, for example, than what Doug Danforth
is doing with the Virtual Patient which is so much more realistic. 

I decided to go with a gamer rig, simple to work with in Blender,
with a very basic face armature to open and close its mouth.

However, I don’t think I will get around to lip syncing it in time
for the contest, which is only a few days away.  Wish me luck!

http://www.elizabot.com/entry

Sincerely,
8pla

 

 < 1 2
2 of 2
 
  login or register to react