Will the real Suzette please stand up....

  • 79 Replies
  • 30395 Views
*

Art

  • At the end of the game, the King and Pawn go into the same box.
  • Trusty Member
  • **********************
  • Colossus
  • *
  • 5865
Re: Will the real Suzette please stand up....
« Reply #45 on: May 04, 2009, 01:26:23 am »
Sorry to interject but yes, I did vote for Suzette for 10th position (not that my voting was secret nor private), but the whole contest is IMHO, flawed.


Bruce, good luck with Suzette and thanks for sharing your time and thoughts with us! It's nice to have some new members that bring a spark to the discussion forum. Sharing ideas = we all benefit.

« Last Edit: May 10, 2009, 03:40:09 am by Art »
In the world of AI, it's the thought that counts!

*

wgb14

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 143
Re: Will the real Suzette please stand up....
« Reply #46 on: May 04, 2009, 02:57:02 am »
I guess its difficult to understand what someone has been doing for the past (what 2 years?) in a few posts. However I am trying hard to. In any way, I am starting to develop some picture on the complexity of your engine but without the actual code/schematics, the picture is far from clear. Perhaps you should ask AC to jointly publish a paper on a large conference (you could try this one http://iva09.dfki.de/), that way you can let the people know about your work and have the copyright of it. For now, all I want is to understand one of the tests that you are running the parse test. I am getting very close to it but still have some questions (or rather clarifications):

1) You write "And I could write a chat-I pattern like this one:  s: ( |subject=you * |timephrase)   What else do you like to do _#1 . It is obvious that this pattern has labels (i.e., subject,timephrase) possibly designed to capture data from the parser. Although in your example you assign a keyword (i.e., you) to the label subject you don't assign a keyword to the label timephrase. Or does the asterix (*) works like an AIML wildcard that captures whatever timephrase the parser has spit out?

2) From what you have written so far, you use the parser mainly for user fact aquisition. Does it work with other facts as well? For example, if i input the fact ("All biological beings eventually die") will the system be able to process it? Harry is another chatbot I know off that works extremely well with fact aquisition (in any form). Here is another forum with extensive discussion on him (http://www.vrconsulting.it/vhf/topic.asp?TOPIC_ID=743)

3) If * is something like a wildcard what do these ? or ! or even [] or {} do?   

I think if you answer me these questions i learnt everything i needed to know. Again impressive work, I am glad i spent my weekend researching it (i learnt a lot) and please please please kepp us posted with regular updates. Do you think that it would be possible to publish in this forum regularly and inform us about the progress of your work? I am daying to see some screeshots from your system and further developments. GUILE3d in virtual human forum is developing a commercial system but he is kind enough to let us all know about his progress. I know that requires permision from your company buy you can always ask them...........

Art excellent find... keep them coming!!!!!!!!!  

« Last Edit: May 04, 2009, 03:41:08 am by wgb14 »

*

one

  • Starship Trooper
  • *******
  • 313
Re: Will the real Suzette please stand up....
« Reply #47 on: May 04, 2009, 06:54:10 am »
wgb 14, how long did you say it takes "companies' to "vanish' ?
Today Is Yesterdays Future.

*

Freddy

  • Administrator
  • **********************
  • Colossus
  • *
  • 6859
  • Mostly Harmless
Re: Will the real Suzette please stand up....
« Reply #48 on: May 04, 2009, 03:28:08 pm »
One, I split your chats with Suzette into another topic.  I thought this topic is trying to cover enough subjects already and that further chat logs would just cause some confusion.  I believe that although valuable they diverted away from the main topics that this thread is focusing on presently.

By the way, there is a section for chat-logs, so feel free to use that without hinderance.

Carry on gents, fascinating stuff  :)
« Last Edit: May 04, 2009, 03:58:13 pm by Freddy »

*

bruce wilcox

  • Trusty Member
  • ***
  • Nomad
  • *
  • 72
Re: Will the real Suzette please stand up....
« Reply #49 on: May 04, 2009, 06:02:43 pm »
good morning. Thank you for all your chat with suzette, it will give me lots to debug.

One--- the server is linux and the logins case sensitive- you now have two identities with suzette- One and one.  I will change this in the future to force a common casing.

Wgb14- your vote doesnt complete until you confirm an email they ship you.   ANd I've been working on this chatbot for just over a year.

Fact acquisition using parser data is the same whether it is 3rd person data or 2nd person data. I tend to store it differently in the knowledge base, because YOU facts are much more importand and the ownership is already known (YOU).  For facts about third persons, like "The red cat walked down the street", one has to create a unique instance of a cat to bind the data two, and then later determine if future cats with data are the same or different. Hence I split off recogniztion of YOU data from 3rd party data as separate problems to address (albeit with a lot of similar or shared script).

I'm glad you've split off the chats themselves into another thread, I get my own copies of the logs and will pay no attention to that thread, so if you have questions to me, they should stay in this thread.

I THOUGHT I had posted this, which would have answered questions about [] ~ {}.... but I cant find it.  So here it is again....

The syntax of my gamasutra article is, naturally, obsolete. But the concepts
remain. Here is an example of the revised syntax:

(< what [is are] {a} *1 >)
Words in parens must be matched in sequence, starting anywhere in the sentence.
< and > are start and end of sentence delimiters which restrict matching at the
boundaries. Here, the word what must be at the start of the input. Square
brackets represent a mandatory choice from any word in the collection, so the
next word must be is or are. Squiggly brackets represent an optional choice from
a collection, so if one matches it will be swallowed but if none match there is
no failure.

Matching is actually done simultaneously against the original word and its
canonical equivalent. If your pattern uses the canonical form of a word, it will
match the canonical or its derivative forms in the input, but if your pattern
uses a derivative form, it can only match input exactly. Since is and are are
derivative forms of the verb be, they must match exactly and other forms like
were, be, am will not match. But the optional a will match a or an since a is
the canonical form of an.

Next we have a wildcard *1 which will match exactly one word. * would match any
number including zero, *2 would match two, etc. *~ is a wildcard that matches a
short gap (zero, one, or two words). Since following the wildcard is the
sentence terminator mark, the wildcard must match the last word of the sentence.

So the original pattern can match:
What is a turtle?
What are elephants?
What is heresy?
And it cannot match:
What was a turtle?
What is that sound?
What is a turtle doing here?
We could modify the pattern to match all of the above sentences by writing this
pattern:
(< what be {that a the } [*3 *2 *1] >)
The input below would still not match, because it fails the end terminator test.
What was a turtle doing here then?

Patterns where you can only name explicit words are quite restricting. CHAT-L
allows you to use sets of words as well. You can either use an existing set
implied by the WordNet ontology or you can define your own. Wordnet ontologies
are designated using a word with a trailing ~ and number (e.g., animal~2) to
indicate the synset of the Wordnet word is being used. All words below that
synset meaning are encompassed into the set. A concept declaration allows you to
define your own set.

Sets of words match at the same speed as a single word, so we could make the
most recent pattern run faster and cover all sorts of determiners via:
Concept: ~determinerlist (the a those these that which some ~number )
(< what be { ~determinerlist } [*3 *2 *1] >)
~number is the system set of all numbers, so it will recognize any number word
(in digit or word format) as a determiner. Thus the pattern would match:
What were twenty-three turtles doing here?

The following takes advantage of sets and the ability to say a word is not in
the input using the ! operator.
concept: ~like (love want wish desire enjoy prefer adore lust)
( you *~ ~like !ferret *~ animal~3 )
The pattern finds you, then accepts a short range gap of up-to-two words til it
can find one of the ~like words. After the ~like word it requires that ferret
not show up anywhere in the rest of the sentence, and after a short gap, it
requires finding any animal from the Wordnet ontology. So this pattern matches
thousands of patterns where you express some kind of liking for an animal, as
long as that animal is not a ferret. And the animal can be in singular or
plural, since the original words are all the canonical singular forms of
animals. The following sentences match the pattern:
I love bobcats
I really like your dog, though I don't care for them usually
I can only like green cats on Tuesdays

Matching a set is as fast as matching a single item, making it a powerful tool
for generalization.

----------
Note on wildcards.... there are things I call gaps that use *,  *1 , *~ etc.   And there are things that bind onto a local variables the content they match.  These are wildcards that use _ instead of *.  In fact, many things bind onto autonumbered local variables.
Regular english words do not generate bindings because you knew what the word was already. So a pattern like:
s: ( I  * ~love _  |directobject)   will  the matching word for ~love onto a variable named _#0.   The _ wildcard will bind whatever words it matches onto _#1.  Then the parser-found directobject will be bound onto _#2.

A test condition can be existenc only, in which case it is just by itself, like "I",  and "love" and "|directobject".  Or a test condition can be a relationship (usually equality/membership.  It makes no SENSE to use a relationship when you know the word (though you can), so I=I is just a waste. A real pattern might be
s: (I * ~~action=~goodaction _ |directobject=~livingbeing)   
where we say that it needs to find a member of the ~~action set, BUT that that member must also be a member of the ~goodaction set.  and that the parser-found directobject must be a member of the ~livingbeing set.


*

wgb14

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 143
Re: Will the real Suzette please stand up....
« Reply #50 on: May 04, 2009, 06:10:49 pm »
 <<ANd I've been working on this chatbot for just over a year.>>

You have done a lot of work for  only a year. How many hours have you put into this? Anyway... thanks for answering the questions.. you gave me some amazing ideas... as i said please keep us posted!!!

*

bruce wilcox

  • Trusty Member
  • ***
  • Nomad
  • *
  • 72
Re: Will the real Suzette please stand up....
« Reply #51 on: May 04, 2009, 06:16:25 pm »
I'm a contractor, charging for all hours I work, so I am limited to 40 hours a week. On the other hand, I only charge for direct hours working on a computer, not for random thinking time standing in line somewhere, chatting on this website, etc.

And I will try to keep this site up-to-date as I make siginficant changes.

*

bruce wilcox

  • Trusty Member
  • ***
  • Nomad
  • *
  • 72
Re: Will the real Suzette please stand up....
« Reply #52 on: May 04, 2009, 06:26:19 pm »
Server architecture...

There is a single suzette server, which handles chat round-robin with whoever is connected to it. That is, when you send your message a new http connection is opened, your message is sent, your identity is brought into memory, she replies to you, writes out your identity (erasing it from core) and closes your http connection.  Therefore she doesn't care how long you take to make your next statement and does not have a concept of you logging out.   When you "login" you send a message which tells her you are starting up a new conversation. It's funny to watch people saying goodbye, she sometimes says goodbye, they say goodbye again, she launches more conversation, they get dragged back into conversation and on it goes.  People seem to think that when they say goodbye that she will hang up on them. 

*

bruce wilcox

  • Trusty Member
  • ***
  • Nomad
  • *
  • 72
Re: Will the real Suzette please stand up....
« Reply #53 on: May 04, 2009, 09:38:23 pm »
General note to One--- Anyone can claim any name for a login. Suzette assigns you a login based on the name you supply AND your IP address.  Hence, if you come at her from a different IP, she thinks you are a different person.. so again you get old information.


*

one

  • Starship Trooper
  • *******
  • 313
Re: Will the real Suzette please stand up....
« Reply #54 on: May 04, 2009, 11:09:18 pm »
Bruce,
THANK YOU,,, I force DHCP to assign a new address every so often at random intervals or the lease on an address is renewed by default every 4 days for the next 8 days ,,, knowing this HELPS I wish their was a better way than using IP's as I like what I have in place and yes dial up does exist (no I don't have dial up :))
Today Is Yesterdays Future.

*

bruce wilcox

  • Trusty Member
  • ***
  • Nomad
  • *
  • 72
Re: Will the real Suzette please stand up....
« Reply #55 on: May 04, 2009, 11:42:58 pm »
If this were Blue Mars, then you'd have a blue mars id and it would never change, so your identity would be secure. But for this open web access, tying IP and name together was all I could think of the provide a reaonably secure id.

*

one

  • Starship Trooper
  • *******
  • 313
Re: Will the real Suzette please stand up....
« Reply #56 on: May 05, 2009, 12:01:17 am »
Bruce,
How about a cookie with a long expiration life or assign a number as new IP / name configurations come into request a connection to the server. then log in with the number? yea people always want more.
Today Is Yesterdays Future.

*

bruce wilcox

  • Trusty Member
  • ***
  • Nomad
  • *
  • 72
Re: Will the real Suzette please stand up....
« Reply #57 on: May 05, 2009, 12:07:51 am »
Yes, they always do.

But this was only supposed to be here for the competition. I'm probably not going recode the login phase right now.

HOWEVER---
One-  you currently have 4 distinct identiis.  I have attempted to merge them into one. If you want to try it (no guarantees) login as "two".  it should acquire the merged file and keep going forward
(I couldnt merge all topics in detail, but it should have most of every topic you have opened). If this works out for you, I could then delete the other One's and rename the two file to a one file.

bruce

*

wgb14

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 143
Re: Will the real Suzette please stand up....
« Reply #58 on: May 05, 2009, 12:20:20 am »
Bruce just voted for you (and validated my vote this time). i had to try it some times because my spam filter kept deleting the email. Its ok now... you will find it as wgb14.... Hope it helps

*

one

  • Starship Trooper
  • *******
  • 313
Re: Will the real Suzette please stand up....
« Reply #59 on: May 05, 2009, 12:50:00 am »
Bruce,
sounds good I will try in a while (is IP rule still same?)

thanks for the effort  :)
Today Is Yesterdays Future.

 


AI controlled F-16, for real!
by frankinstien (AI News )
June 15, 2024, 05:40:28 am
Open AI GPT-4o - audio, vision, text combined reasoning
by MikeB (AI News )
May 14, 2024, 05:46:48 am
OpenAI Speech-to-Speech Reasoning Demo
by MikeB (AI News )
March 31, 2024, 01:00:53 pm
Say good-bye to GPUs...
by MikeB (AI News )
March 23, 2024, 09:23:52 am
Google Bard report
by ivan.moony (AI News )
February 14, 2024, 04:42:23 pm
Elon Musk's xAI Grok Chatbot
by MikeB (AI News )
December 11, 2023, 06:26:33 am
Nvidia Hype
by 8pla.net (AI News )
December 06, 2023, 10:04:52 pm
How will the OpenAI CEO being Fired affect ChatGPT?
by 8pla.net (AI News )
December 06, 2023, 09:54:25 pm

Users Online

244 Guests, 0 Users

Most Online Today: 408. Most Online Ever: 2369 (November 21, 2020, 04:08:13 pm)

Articles