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,966 - 6,977 of 7,766

13 years ago #6966
It would be not too difficult to write a little program that creates hundreds of regexes to do that, but that's not quite what you have in mind, I suppose. Otherwise, as long as <?PF if (key1) <= (key2) ?> isn't accepted, I have no idea.

13 years ago #6967
Speaking of which, should I be able to use (key1), (key2), etc. in AIScript conditionals? I seem to recall doing so, but currently, this:

<?PF if (key1) is "apple"; ?>

Returns this error:

ERROR: The following AIScript statement is incorrectly formatted: "if (key1) is "apple"". Please correct this and try again.

13 years ago #6968
I could be wrong but I think you have to save the (key1) as a memory. like memsomething then use
<?PF if (mem-memoryname) is "memoryvalue"; ?>
Thus needing to use two AI scripts.

13 years ago #6969
Iirc, memories are set only after a response has been formed, so this would probably fail if you use these scripts in the same keyphrase response pair.

If you want to compare a key to a fixed string, you could as well replace the wildcard in the keyphrase by that string. (If you want to compare a key to a memory that would be a different matter, but this seems to be impossible as discussed above.)

13 years ago #6970
Gotcha, I was only trying it to further break down the responses to a keyphrase without adding more keyphrases, for organizational purposes. So many keyphrases with incredibly minor differences, I have...

13 years ago #6971
I wonder why cardinal numbers in words are transformed to figures (e. g. fifteen to 15), but ordinal numbers are not.

A keyphrase like
20-second letter * alphabet
looks a bit strange to me.

13 years ago #6972
Where can I download the personality forge engine? I want to run my bot offline, and make some changes so that if my bot is given a command like, "Open Google", it runs a command in cmd which opens google.

13 years ago #6973
Is there a way to put two keys into a memory?


I have a keyphrase

(do|did) (not|) you know (that|) (*) (vp)

and want to keep what the chatter told my bot in a memory, like

<?PF rem (key4) (key5) as "youtoldme"; ?>

But this yields only a syntax error.

This keyphrase:

<?PF rem (key4) as "youtoldme"; ?>

would work, but then my bot would act funny if someone says to it things like,

"Do you know my sister?"

(It would say, "Didn't you tell me that your sister?" later on.)

12 years ago #6974
On a related note, how is it that the relationship text is generated in the Chat Bot Finder? Surely it doesn't just play Mad Libs with memories, but just by looking at what existing bots are saying about me, I can't tell whether they're responses pulled from xmemory or something the engine is doing out of the line of botmaster sight.

12 years ago #6975
Mome Rath
I haven't found a way. I just make keyphrases for all
you know (*)
you know my (*)
you know that (*)

Saerain. There is an auto memory in the engine

Automatic Memory: Memories are stored when AIScript tells the bot to do so (See Expert Section). But there is a low-level "Automatic Memory" built into each bot. (This is in part for backwards compatibility). The following Keyphrases, if they are added to your bot, will automatically store memories:

Memory Created: iam
Triggered by the following Keyphrases: you are, you are (np)

Memory Created: youare
Triggered by the following Keyphrases: i am, i am (adj), i am (np) ,i feel, i feel (adj)

Memory Created: youlike
Triggered by the following Keyphrases: i like, i want, i love, i like (np) ,i love (np), i want (np)

Memory Created: youdislike
Triggered by the following Keyphrases: i hate, i do not like, i dislike, i hate (np), i do not like (np), i dislike (np)

Memory Created: youhave
Triggered by the following Keyphrases: my, i have a, my (np), i have a (np)

12 years ago #6976
This might be a dumb question, but how can I change the emotion of a word?
Every time this specific word is mentioned to my bot, it answers with xinsult. And this is what I get in debug -

Emotional Meaning: Pos: 0 Amp: 0 Neg 1
Negative: -1 (1+0)
Emotional Charge: -1
Current Emotion: 5

Any way to change this? Thanks.

12 years ago #6977
How can I get the chatbot to remember something, and than immediately use that memory to respond with?

I can't seem to just say "remember (key1) as "x"" and in the responses say "blahblahblah" "if (mem-x) is "y"". When I do that, it doesn't give the "blahblahblah" response until the next user input is sent.


Posts 6,966 - 6,977 of 7,766

» More new posts: Doghead's Cosmic Bar