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 7,295 - 7,306 of 7,766

6 years ago #7295
Is there a way for the bot to give responses depending on the user's given age?

I tried: rem (key1) as only "age" for the keyphrase AiScript
and: if "mem-age" is (13, 14, 15) for one of the responses' AiScript

I also tried "equals" and "is equal to" instead of "is", but it didn't accept any of them.

6 years ago #7296
You almost have it. I think it should be:
if (mem-age) is "13";
if (mem-age) is "14";
if (mem-age) is "15"
Although it's possible that this will require all of these values to be stored for the response to come up. I'm not certain about that yet, but I suspect it is probably the case based on how its been working out with my bots.

Alternatively, you could remember something like "teen" as "youare", or whatever you want, when certain ages are matched. You could do this with a plug-in in the age keyphrase (and you might want to make your own custom one, in this case), or just list the specific ages in the keyphrase if it's a very narrow range.
So:
Keyphrase: I am (p:age-13-15) years old.
AI script: rem (key1) as only "yourage"; remember "teen" as "youare"

And then this AI script, whenever it is relevant:
If (mem-youare) is "teen"

6 years ago #7297
I'm trying to store keywords used that trigger "xcommand". I've tried (prekey), (postkey), and (key1) and got nothing. Any ideas?

Also, can conditionals apply to memories instead of responses? I'm trying to get a counter to work. Something like "if (counter1) is "false" then rem (counter1) as "true";if (counter1) is "true" then rem (counter2) as "true""

6 years ago #7298
(command) inserts the command into the Response. For example, "I don't want to (command)."


Try throwing this in your xcommands.

Okay, I (command)

That should work.


As for xmemories... yes you can add conditions in the ai script.. However be warned, I've found them to be completely unreliable. When I first started my bot I relied on memories only to find that they stopped popping midway through the day and wouldn't pop again till the daily reset. I ended up making all of them xnones.

Admittedly this was awhile back, about eight months, so it might have gotten fixed.

6 years ago #7299
thank you for the (command) thing

As far as the memories thing goes. That isn't what I was asking. As an example, if I wanted to keep track of the number of times someone has said hi, is there a way to do that without having 3 different responses for each counter.

6 years ago #7300
My bad. Honestly I don't know how to accomplish what your trying to do without a creative use of XNOMATCH to force the user down the road you want to go.

There is no THEN in personality forge. You might want to email the Professor on this one. He might have an idea or two.

Sorry.

6 years ago #7301
darn, (command) works if you use it immediately, but you can't store it in memory.

If we had THEN and INT, this would be a pretty badass AI engine

6 years ago #7302
Is anyone here familiar with regular expressions?

I can create the keyprase "If I believe I can fly does that make it true?"

But I can't create a keyphrase for "If I believe I can fly, does that make it true?"

As far as I can tell this has to do with the way the language processor breaks things up. It simply looks for keyprases If I believe I can fly. And when it doesn't find one it searches for, does that makie it true while ignoring the possibility that it can match the entire sentence.

Raw mode doesn't impact commas, but I thought there was perhaps a regular expression that would allow me to match them.

6 years ago #7303
I know next to nothing about them, but from the book of AI examples it looks like the square brackets might play a part. However, all my tests so far have failed. I was last trying:
If I believe * [a-z+, ] does that [a-z+]

6 years ago #7304
The regular expression

If I believe * [a-z,]+ does that

Does not work either. I thought maybe the brackets could help, since they contained a comma in one of the examples, but that was for a number, so maybe that's why it doesn't work in this case.

6 years ago #7305
Thanks for trying, I really appreciate it.

I've done a lot of testing as well just because I believe that the ability to address questions that have qualifiers in them would be huge. But the problem as far as I can see is that the engine identifies commas as separating keyphrases to the point of overriding even regular expressions.

It would be cool if we could have a special plug in such as (comma) which could serve the purpose of catching commas without mucking up the processor.

6 years ago #7306
Nathan S, you're the creator of Thessaly right? Probably my favourite bot on this site, just wanted to say.

On topic, is there a more exhaustive list of the language/guide to the AI Engine than the Book of AI?


Posts 7,295 - 7,306 of 7,766

» More new posts: Doghead's Cosmic Bar