ai16z / eliza

Conversational Agent for Twitter and Discord
https://ai16z.github.io/eliza/
MIT License
1.73k stars 443 forks source link

Feature: when getting style guidelines should always add all of them to context #438

Open o-on-x opened 2 hours ago

o-on-x commented 2 hours ago

when adding postDirections on chatDirections should grab all of the guidelines to follow this is so it does not ignore requests that are extremely important to follow for how the character behaves really instead of random for the character file the agent should be able to select what it puts into its context as part of the shouldRespond logic or some other way

in runtime.ts

            postDirections:
                this.character?.style?.all?.length > 0 ||
                this.character?.style?.post.length > 0
                    ? addHeader(
                            "# Post Directions for " + this.character.name,
                            (() => {
                                const all = this.character?.style?.all || [];
                                const post = this.character?.style?.post || [];
                                const shuffled = [...all, ...post].sort(
                                    () => 0.5 - Math.random()
                                );
                                return shuffled
                                    .slice(0, conversationLength / 2)
                                    .join("\n");
                            })()
                        )
                    : "",*

postDirections:
this.character?.style?.all?.length > 0 ||
this.character?.style?.post.length > 0
? addHeader(
"# Post Directions for " + this.character.name,
(() => {
const all = this.character?.style?.all || [];
const post = this.character?.style?.post || [];
return [...all, ...post].join("\n");
})()
)
: "",
odilitime commented 2 hours ago

how about 2 rules settings: "always respect", "maybe respect" ? just off load it to the character designer. We should also have platform (discord, x/twitter, telegram, etc) specific rules since hashtag can be specific to x/twitter. And then maybe a matrix of the two: always_discord, maybe_discord?

we can instruct people to keep the always to be very small and light as it affects all contexts

we could also do a follow up prompt asking if the output followed the rules