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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dedicated Observer/Supervisor Class #4242

Closed
1 task done
Boostrix opened this issue May 16, 2023 · 17 comments
Closed
1 task done

Dedicated Observer/Supervisor Class #4242

Boostrix opened this issue May 16, 2023 · 17 comments
Assignees
Labels
good first issue Good for newcomers Stale

Comments

@Boostrix
Copy link
Contributor

Boostrix commented May 16, 2023

Duplicates

  • I have searched the existing issues

Summary 馃挕

Recently, using separate agents to observe some constraints/performance evaluation is one of the most recurring ideas around here (and on Discord) - so, it might make sense to come up with a dedicated helper class to wrap all related functionality. We could use two types of classes: passive observation and active/enforcing (supervisor).

For starters, look at agent/agent.py and specifically the self_feedback() function there.
This is what we would want to extract (copy/paste) and generalize (GPT?), and maybe make it a part of llm/llm_utils.py

The details of which would be coordinated with the llm folks

The goal would be instantiate arbitrary agents to obtain feedback for some given constraints/requirements and goals

Examples 馃寛

No response

Motivation 馃敠

No response

@Boostrix Boostrix added the good first issue Good for newcomers label May 16, 2023
@dewasahu2003
Copy link

hi @Boostrix 馃憢
can i try this issue

@dewasahu2003
Copy link

so is this similar to how an agent in reinforcement learning evaluate its performance?

@Boostrix
Copy link
Contributor Author

Basically, see self feedback - it's a way to get a different feedback. Imagine it like asking how good a certain response is based on asking another llm session and providing the constraints / evaluation criteria

@dewasahu2003
Copy link

image

  • does this pseudo code make sense if so i can start making changes

@Boostrix
Copy link
Contributor Author

Boostrix commented May 18, 2023

You seem to be on the right track, play around with the idea in conjunction with looking at threads mentioning observer / supervisor / feedback etc
And before doing any significant amount of work related to this, please reach out to the team via discord to discuss your ideas and the sccope of the work to ensure that it aligns well with other ongoing efforts.

@bbonifacio-at-mudd
Copy link

bbonifacio-at-mudd commented May 19, 2023

Hi @Boostrix @dewasahu2003, can I join in on this issue too? Are you working off stable or master? (I'll try working on it on stable for now)

@Boostrix
Copy link
Contributor Author

I've added you to the issue, I'd suggest to keep the conversation here or both of you should consider joininig discord.
Either way, don't do any significant coding without first checking back with other contributors.
Implementing a simple proof-of-concept should not take much longer than ~1 hr. And at that point, it makes sense to review what others have said about the idea of using separate agents to evaluate an agent's performance.

@bbonifacio-at-mudd
Copy link

Sounds good! Other than @dewasahu2003, do you know of anyone else working on this that we can contact on discord?

@Boostrix
Copy link
Contributor Author

Boostrix commented May 19, 2023

not yet, but you can simply announce the project and gather all feedback, feel free to update this issue.
Be aware that there's an upcoming hackathon, so there might be fewer folks available today and during the weekend, since people are trying to participate in 2 hackathons actually

Either way, it would make sense to research what others have said about the idea, before writing any code.
So if there are any related issues, feel free to cross-reference those here.

@bbonifacio-at-mudd
Copy link

Okay! What channel on the discord would be good for discussing this?

@Boostrix
Copy link
Contributor Author

Boostrix commented May 19, 2023

any of dev-contributors / dev-general / dev-autogpt would seem appropriate, I think ?

See also: #4220

FYI: @anonhostpi has collated a ton of related info, and even came up with a dedicated gist for that: https://github.com/anonhostpi

for the gist, see: https://gist.github.com/anonhostpi/97d4bb3e9535c92b8173fae704b76264#file-_topics-0011-cmds-0002-web-md

"self moderation": https://gist.github.com/anonhostpi/97d4bb3e9535c92b8173fae704b76264#observerregulatory-agents-and-restrictions-proposals

It would make sense to base any future work on evaluating these talks first. BEFORE writing any code.

@dewasahu2003
Copy link

Hi @Boostrix 馃憢
I have a idea regarding implementing evaluation

Agent Class --> we can add evaluate method

  • so, we can evaluate whichever agent we want..
  • it would become very easy to evaluate agent as we would have to call method on instance of agent class

evaluate method

  • we will create a newAgent in evaluate method which will have different constraints
  • and thus evaluate the agent

some doubts that i have

  • on what kind of parameters are we going to evaluate
    • will we check the agent that how repetitive and wrong command it give and then suggest some new commands

hopefully this makes some sense
open to listen any kind of feedback 馃檹

@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.

Copy link
Contributor

github-actions bot commented Nov 4, 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 Nov 4, 2023
@estefysc
Copy link

estefysc commented Nov 7, 2023

Hi, @Boostrix. I was looking into agent/agent.py, searching for the self_feedback() function you referred to, but I cannot find it. I wanted take a look because I would like to see if I can work on this.

@github-actions github-actions bot removed the Stale label Nov 8, 2023
Copy link
Contributor

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 Feb 21, 2024
Copy link
Contributor

github-actions bot commented Mar 4, 2024

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 Mar 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers Stale
Projects
None yet
Development

No branches or pull requests

5 participants