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,271 - 7,282 of 7,766

6 years ago #7271
It updates once per day. And while I'm not certain how it's calculated I BELIEVE it's based on the size of the personality file.

Which... when you think about it is kind of sad. There are bots on here with AI scores at nearly 10000 or more who don't do anything other than spew random nonsense at you.


6 years ago #7272
Thanks that's really helpful.

That is kind of sad but I'm not sure how else you could programmatically indicate how 'clever' a bot will be.

6 years ago #7273
Does anyone know if there is an alternative to the -5,+5 emotion scale. I was hoping to be able to increment a memory like (mem-affection)+1 or something

6 years ago #7274
Body Shifter, there are two ways I know of doing this. The first is by taking a page from Tessy's handbook an utilizing his version of the logical or which is explained here: http://chatbottessy.blogspot.com/p/blog-page_21.html


A. The logical OR
AIScript has operators for logical NOT and logical AND, but not logical OR. But there are a few ways that you can get a logical OR.

You can do a logical OR in a single PF tag if there are a finite number of possible values for a memory. Suppose the possible values of (mem-grade) are A,B,C,D,F. Then
"A OR B" would be the same as "(NOT C) AND (NOT D) AND (NOT F)".





In Celine's case, you could grade where the user lies in terms of bases won. D being first base, C being second etc.

This is the most efficient use of memory I know of. The alternative being that you could use the same model as location changes to tailor responses, but that would use more memory.

In either case, the sooner you decide these things the better. There's alot of things with my bot that I would have loved to try but it's too late now since I'm in way too deep.

6 years ago #7275
Wow, thank you, Tessy is exactly the kind of model I was going for. I just figured that since she hadn't been updated in forever, that I wouldn't get any info about her.

I'll get on using this model

6 years ago #7276
After looking through the tips, I don't see how these could help. With Tessy it seemed to take more to get her from one level of emotion to the next. With Celine, I would like to do this because as of now you can just compliment her 5 times and she's at Max affection. It makes creating different transformations for each stage seem pointless

6 years ago #7277
I don't know for certain but I imagine it went something like this. Let's say you had a bot who measured affection in terms of tacos eaten.

KP: Eat this taco.
Response: okay (+1 affection)

XNone: I like you alot so I start to transform for the first time (requires affection 5)
AI Script: if if (mem-affection) is "a";

Seek: (xnomatch)
AI script: rem "b" as only "affection"; (-5 affection)

Response: Ta=da, I have now finished my transformation.

Keyphrase: Have another taco. (+1 affection)


And then the process goes on to affection B, then C etc.

Is that what you were looking for?

6 years ago #7278
Btw, you could in theory have it go as far as -10, requiring them to eat 10 tacos. It's up to you.

You'll note that Tessy mentions he turned XInsults into regular xnones and you will likely have to do the same if you go this route.

6 years ago #7279
botmaster2000 ask sheila strong on botlibre like this,"i would like to play wordplay."It should work then.

6 years ago #7280
Basically all my problems could be solved if the ai engine could handle numbers...

I may know what you are trying to get at. But that would require me to have 2 identical keyphrases (one to flip the bool of +5 affection then reset affection and one to just increment affection) which isn't allowed

6 years ago #7281
It would be easier that's true.

Basically, my idea was to have an xnomatch seek attached to the transformation process so that you could reset affection and transition to the next stage of affection.

Because it's a seek it wouldn't conflict with keyphrases.

6 years ago #7282
Nathan S, I would just like to add that the logical OR can be done as NOT ((NOT A) AND (NOT B)). That way you don't even need a finite list.


Posts 7,271 - 7,282 of 7,766

» More new posts: Doghead's Cosmic Bar