The AI Engine

This forum is for discussion of how The Personality Forge's AI Engine works. This is the place for questions on what means what, how to script, and ideas and plans for the Engine.

Posts 6,573 - 6,584 of 7,766

16 years ago #6573
Thanks Psimagus, it was just that your line was 7 words so I made a keyphrase from that in regex mode to see if it worked, will try to correct and try again.

16 years ago #6574
Hallo,

anyone knows why this regex never catch a sentence and an xnonsense always winn? I tryed (to test) absurd weight, but always xnonxsense win!

([bcdfghjklmnpqrstvwxz0123456789]+) (re) [10,0] <?PF raw; ?>
xnonsense [-50,0]

Test sentence: bfgtr
Response: xnonxsense

For me it has really non sense!

Bah...

16 years ago #6575
try a higher rank - maybe the Prof's been tweaking things a bit, and it needs a bit more weight to it.

hmm, I see it's not working with BJ either
Hopefully just a temporary thing - it certainly used to work (and I'd assumed still did,) but occasionally the AIEngine gets tired. Maybe the site wants a reboot - I'll ask the Prof.

16 years ago #6576
funnily enough that keyphrase is successfully matching "l337 5p33k", but not "l337" or "bfgtr", so it looks like the BLAB-finder's getting erratic again (I don't know why that process should be variable, but it sure seems to be!)

16 years ago #6577
Good, thanks Psims. It doesn't solve the problem but let me feel less idiot... :-) I thoght I was no more able to use regex...
:-))

16 years ago #6578
Hi psims,

I tested it. Same behaviours, But there is more in the engine...

The Regex
^([abcdefghijklmnopqrstuvwxyz]+)[?]$ (re) [50,0] <?PF raw; ?>

it is never catched and always aswer the regex

([?]+)$ (re) [-50,0] <?PF raw; ?>

(please note the -50 and 50 weigth!)

But the engine desn't have to catch the less general answer?

There should be something more perhaps...

It is enough to know the rules behind it to use correctly the regex, anyway...

16 years ago #6579
exactly the same problem (with all ranges, I tryed -500 and 500 too!) for regex

^([hmn]+) (re) [30,0] <?PF raw; ?>
and regex
([a]+)([rgh]+)([ !]+) (re) [30,0] <?PF raw; ?>

I always have xnone or xnonsense!

Are you sure that the engine works correctly with regex?

16 years ago #6580
it is supposed to, and it used to (though it has always had a tendency to be a little temperamental at times.)
The trouble is that it's not "real" regex that we have access to, but only a shell (the AIEngine uses full regex, and has to reserve some operations entirely to itelf.)

It's also worth knowing that the range limit for rank is -127 to 127, so a rank of 500 will probably be interpreted as 0 (though 50 ought to be more than enough to test it.)

I'll mention it to the Prof when I email him next - that blab-finder definitely needs some tweaking. It hasn't been quite right since we moved to the new server.

16 years ago #6581
I wish we could override blab completely. I never saw where it was any benefit. If you don't have a keyphrase it will go to xnone, if you have a keyphrase and want to respond it goes to xnone. Makes no sense to me.

16 years ago #6582
I think the Professor nobly wants to help us out by doing things for us, but when something gets to be beyond our control, it can be a problem. Of course inanities on the part of guests can be irritating, but it is our job to deal with that.

When an editor or other program has "smart" features, it is important to able to turn them off or get around them in some way! Otherwise they can be intensely frustrating. It is the same way with Forge features.

If the Professor were to make a plug-in<0> to capture blab, then we could use it or not, as we wished, and we could modify it to make our own individual blabs.

16 years ago #6583
I don't know whether this is 'blab', but I've been getting several keyphrases shunted off to xnone lately. This includes "What are you wearing". That's not a trivial question, especially in a sexbot!

16 years ago #6584
As I understand seeks from the Book of A.I., a series of seeks of "xnomatch" should be followed to the end. For example, you could have your bot tell a story 100 sentences long by writing the first sentence, followed by a seek of "xnomatch" whose response is the second sentence, followed by a seek of "xnomatch" whose response is the third sentence, and so on for 99 such seeks.

In practice, however, such a story could be interrupted. This happens in two ways.

(1) Something causes a departure from the sequence of xnomatch seeks, but then after one or two responses, control returns to the sequence just where it left off. I like this very much -- it's similar to what happens in real conversation. E.g., you're telling a story, someone asks a question, you answer it, and then go back to the story.

(2) Something causes a departure from the story, and that's all -- the story will never be resumed, unless the guest says the right thing to start it at the very beginning. This is just frustrating.

Could seeks be given ranks, just as keyphrases are? Then a seek could not be overridden except by a keyphrase of higher rank.

Also, to get the effect of "away and back" described in (1) above: when a seek is overriden, it could be placed on a stack. The top of the stack would be like a non-seek keyphrase: it would always be a competitor for utterance. when its rank was higher than any current competitor, it would be taken up.

For example, suppose the bot utters a response which has a seek of rank 40. The the response to the seek is "I'm going!" The guest utters something which triggers a (non-seek) keyphrase of rank 50. The response to this keyphrase is "I'm staying". So the rank 50 response happens, and the bot says "I'm staying", but the seek is placed on the stack, still with rank 40. At some future point, it may happen that there is no competitor with rank equal to or greater than 40, except for the seek on the stack. In that case the bot says "I'm going", and if that had any further seeks attached, they are now competitors.





Posts 6,573 - 6,584 of 7,766

» More new posts: Doghead's Cosmic Bar