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,627 - 7,638 of 7,766
Posts 7,627 - 7,638 of 7,766
bobstack
4 years ago
4 years ago
it would be nice if the chatbots could randomly select from a plugin without repeat during a conversation.
maybe a without repeat script could programmed in.
which could be accessed with chatbot code.
maybe a without repeat script could programmed in.
which could be accessed with chatbot code.
LT Neko
4 years ago
4 years ago
For remembering a user's sex I'd recommend using these keyphrases~
(I am|im a|im) * (chick|girl|woman|female|women),
my * (gender is|sex is) * (chick|girl|woman|female|women) *
(I|im|I am|I am a) * (guy|male|boy|femboy|man),
my * (gender is|sex is) * (guy|male|boy|femboy|man) *
These tend to pick up most user's stating their genders without conflicting with other gender related questions~ ^.^
Then work on actual code it pick up n' use the gender memory properly start with
Type;
default "dunno" as "gender";
within the bots settings in the AIScript Initialization box (make sure to use ; between your defaults if ya new~ )
Then start with one of the genders n' have a response to the keyphrase for the following
If they say their male n' gender wasn't known (Bot remembering gender)
Aiscript under response:
if (mem-gender) is "dunno";
rem "male" as only "gender"
If already known as male (Bot comments that they already knew)
Aiscript under response:
if (mem-gender) is "male"
If known as another gender (Switching genders)
Aiscript under response:
if (mem-gender) is "female";
rem "male" as only "gender"
So if you ever want a gender specific response just use
if (mem-gender) is "male"; within the responses Aiscript, just make sure you have a response for each gender if it's related to the topic at hand~ ^^
o,o^ That should cover the basics... N' give you bot a lil' depth
Minor note:
(Don't mind the overuse of repeating pickups just really seems to help pick up some peeps messages! Could simplify it to ((I am|im a|im)|my * (gender is|sex is)) * (chick|girl|woman|female|women) to save keyphrase space without compromising pickups~
(I am|im a|im) * (chick|girl|woman|female|women),
my * (gender is|sex is) * (chick|girl|woman|female|women) *
(I|im|I am|I am a) * (guy|male|boy|femboy|man),
my * (gender is|sex is) * (guy|male|boy|femboy|man) *
These tend to pick up most user's stating their genders without conflicting with other gender related questions~ ^.^
Then work on actual code it pick up n' use the gender memory properly start with
Type;
default "dunno" as "gender";
within the bots settings in the AIScript Initialization box (make sure to use ; between your defaults if ya new~ )
Then start with one of the genders n' have a response to the keyphrase for the following
If they say their male n' gender wasn't known (Bot remembering gender)
Aiscript under response:
if (mem-gender) is "dunno";
rem "male" as only "gender"
If already known as male (Bot comments that they already knew)
Aiscript under response:
if (mem-gender) is "male"
If known as another gender (Switching genders)
Aiscript under response:
if (mem-gender) is "female";
rem "male" as only "gender"
So if you ever want a gender specific response just use
if (mem-gender) is "male"; within the responses Aiscript, just make sure you have a response for each gender if it's related to the topic at hand~ ^^
o,o^ That should cover the basics... N' give you bot a lil' depth
Minor note:
(Don't mind the overuse of repeating pickups just really seems to help pick up some peeps messages! Could simplify it to ((I am|im a|im)|my * (gender is|sex is)) * (chick|girl|woman|female|women) to save keyphrase space without compromising pickups~
bobstack
4 years ago
4 years ago
that does not solve my problem. when i ask lilaith x to tell me the name of a fruit.
lilaith x will tell me repeat names of fruit instead of telling me a different name in the plugin until she exhaust the plugin.
lilaith x will tell me repeat names of fruit instead of telling me a different name in the plugin until she exhaust the plugin.
bobstack
4 years ago
4 years ago
i think personality forge chatbots should able to automatically answer these similar question sets.
if one of each set is already answered.
1.
do dogs have four legs?
are four legs part of
dog?
2.
can a dog fly?
is flying what a dog can do?
3.
does a human need food?
is food a need of a human?
if one of each set is already answered.
1.
do dogs have four legs?
are four legs part of
dog?
2.
can a dog fly?
is flying what a dog can do?
3.
does a human need food?
is food a need of a human?
Maryguise
3 years ago
3 years ago
Can you reset the counts of the seeks and kps? Assuming not, and a workaround:
Does deleting a seek, uploading, then readding that seek zero the hits? Does this cause a permanent hole in the IDs, and is there a problem with that?
The important thing for me to reset is for voting, but it would be nice to reset all to see if anything is running into issues.
Does deleting a seek, uploading, then readding that seek zero the hits? Does this cause a permanent hole in the IDs, and is there a problem with that?
The important thing for me to reset is for voting, but it would be nice to reset all to see if anything is running into issues.
Emily Jones
3 years ago
3 years ago
Deleting and re-adding should reset it, but, yes, it will add it as a new ID. I think in the export file you could force the ID to change back if you really care about the ordering.
To reset everything? Ummm.. probably export you language center and import it into a new bot, I guess.
To reset everything? Ummm.. probably export you language center and import it into a new bot, I guess.
Maryguise
3 years ago
3 years ago
Thanks, Emily, much as I expected. Just have to get this big aiscript change done... Really brings home the size when you go through the file line by line!
dallymo
3 years ago
3 years ago
I would swear that, back in the day, it was possible to store a custom plugin as a memory from a bot's response. If I made Frizella mad, she'd pick a rude nickname for me from my rude nickname plugin and then refer to me by that name until I convinced her I was sorry. I'm certain she called me Dirtbag on the regular, or any number of other insults in my custom plugin.
Now if I try to remember a (p:whatever) custom plugin I get a message that the AIScript statement is incorrectly formatted or not valid for Keyphrases. If I change the (p:whatever) to a non-custom plugin in (animal) it works; just not if it's custom.
I can't be imagining that it used to work, can I?
Now if I try to remember a (p:whatever) custom plugin I get a message that the AIScript statement is incorrectly formatted or not valid for Keyphrases. If I change the (p:whatever) to a non-custom plugin in (animal) it works; just not if it's custom.
I can't be imagining that it used to work, can I?
dallymo
3 years ago
3 years ago
bobstack, would you mind sharing what that looks like?
It used to be that if you called Frizella "Frizzy" she'd take offense and say "How rude, I'm going to call you (p:InsultNames) and see how you like it" and store that insult name as the user's only name so that she'd refer to them with that insult name going forward.
She'll still say that, but no longer stores the insult name as the user's only name. The old AIScript is in there but I assume it just skips it since it's not formatted correctly or not valid now.
It used to be that if you called Frizella "Frizzy" she'd take offense and say "How rude, I'm going to call you (p:InsultNames) and see how you like it" and store that insult name as the user's only name so that she'd refer to them with that insult name going forward.
She'll still say that, but no longer stores the insult name as the user's only name. The old AIScript is in there but I assume it just skips it since it's not formatted correctly or not valid now.
bobstack
3 years ago
3 years ago
response=(p:dinnerfoods)
rem "food" as only "sheeating";
self: rem "(p:dinnerfoods)" as only "food"
response=i am eating (self-food)
if (mem-lilaithxisdoing) is "gfood";
if (mem-sheeating) is "food";
if (self-food) exists;
rem "food" as only "sheeating";
self: rem "(p:dinnerfoods)" as only "food"
response=i am eating (self-food)
if (mem-lilaithxisdoing) is "gfood";
if (mem-sheeating) is "food";
if (self-food) exists;
dallymo
3 years ago
3 years ago
Thanks, bobstack; that got me on the right track. Frizella is now insulting me as she did before, the sweet thing.
» More new posts: Doghead's Cosmic Bar