Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Centralize all of our prompts in one place so people can change it easily #3858

Closed
1 task done
waynehamadi opened this issue May 5, 2023 · 13 comments
Closed
1 task done

Comments

@waynehamadi
Copy link
Contributor

waynehamadi commented May 5, 2023

Duplicates

  • I have searched the existing issues

Summary 💡

We need help from someone to put all of our prompts (text format) in a centralized place visible to everyone. This way people can beat the challenges just by modifying one central place

If interested helping with that please DM me.
Discord (merwanehamadi)
Join Auto-GPT's discord channel: https://discord.gg/autogpt

@anonhostpi
Copy link

I suggest putting the prompts into a dictionary-like config file. I frequently use JSON and YAML for this.

@anonhostpi
Copy link

I also recommend storing the prompts as format/template-strings so they can be formatted dynamically

@waynehamadi
Copy link
Contributor Author

waynehamadi commented May 7, 2023

@Eggrolling-hu is going to take it

@Boostrix
Copy link
Contributor

Boostrix commented May 7, 2023

I also recommend storing the prompts as format/template-strings so they can be formatted dynamically

As mentioned elsewhere, ideally we'd support a dedicated sub-folder for "prompt profiles" with the corresponding json to map directories to each profile - that way, we can have our cake and eat it, and still close 10+ PRs in the process, because these would then all become custom prompt profiles - without any chance to step on anyone's toe. Besides, this would also mean having 10+ different ways to benchmark/test the system in conjunction with different prompts EASILY: #1874 (comment)

Dynamic prompts (#3937) will particularly benefit from this capability

@waynehamadi
Copy link
Contributor Author

@Boostrix yeah great idea. could you create an issue for prompt profiles ?

@Boostrix Boostrix mentioned this issue May 7, 2023
1 task
@Boostrix
Copy link
Contributor

Boostrix commented May 7, 2023

@Boostrix yeah great idea. could you create an issue for prompt profiles ?

@DGdev91
Copy link
Contributor

DGdev91 commented May 8, 2023

There was already my PR, for a couple of weeks ago. #3375
My idea wasn't just moving the prompts in a separate file, i wanted to make them configurable.
I used a yaml file, more or less the same code already used for the ai_config file.

I also like Boostrix's idea, and it would be already compatibile with my PR without changing a single bit.

And yes, we can expand it by moving the prompt config files in a different folder and maybe also adding new files for different situations for covering #3937

@Boostrix
Copy link
Contributor

Boostrix commented May 8, 2023

My thought was one top level directory with a Json that then links up sub directories to give those a symbolic name.
If this top level directory could be set via a CLI arg or env var, people could also tinker with separate prompt configs outside the project tree

@DGdev91
Copy link
Contributor

DGdev91 commented May 8, 2023

My thought was one top level directory with a Json that then links up sub directories to give those a symbolic name. If this top level directory could be set via a CLI arg or env var, people could also tinker with separate prompt configs outside the project tree

My PR already allows to set the config file to use both in .env and by the CLI (--prompt-settings or -P)

I don't understand why the sub-folder + json structure.
We can just set different yaml files as config when needed and put them where we want

@Boostrix
Copy link
Contributor

Boostrix commented May 8, 2023

It was my understanding that prompt configs may span over several files - at which point a folder would seem natural (sharing / maintenance etc) - it's frankly also what I am used to when it comes to thinking about a profile of a complex app (Firefox, libre Office etc).
But maybe you're right and a single yaml will suffice?

i18n of a use case specific prompt file set would spring to mind?

Also the dynamic prompting idea is all about adapting prompts as needed, which might involve switching within an active profile?

@DGdev91
Copy link
Contributor

DGdev91 commented May 8, 2023

Let's talk about this in #3954

@github-actions
Copy link
Contributor

github-actions bot commented Sep 6, 2023

This issue has automatically been marked as stale because it has not had any activity in the last 50 days. You can unstale it by commenting or removing the label. Otherwise, this issue will be closed in 10 days.

@github-actions github-actions bot added the Stale label Sep 6, 2023
@github-actions
Copy link
Contributor

This issue was closed automatically because it has been stale for 10 days with no activity.

@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Sep 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants