From 6d4bea3bb6c177ca574b82982af6ce7071992165 Mon Sep 17 00:00:00 2001 From: merwanehamadi Date: Fri, 5 May 2023 09:35:12 -0700 Subject: [PATCH] community challenges in the wiki (#3764) --- docs/challenges/beat.md | 11 +++++++ docs/challenges/challenge_template.md | 24 ++++++++++++++ docs/challenges/introduction.md | 23 ++++++++++++++ docs/challenges/list.md | 5 +++ docs/challenges/memory/challenge_a.md | 39 +++++++++++++++++++++++ docs/challenges/memory/challenge_b.md | 44 ++++++++++++++++++++++++++ docs/challenges/memory/introduction.md | 5 +++ docs/challenges/submit.md | 14 ++++++++ mkdocs.yml | 10 ++++++ 9 files changed, 175 insertions(+) create mode 100644 docs/challenges/beat.md create mode 100644 docs/challenges/challenge_template.md create mode 100644 docs/challenges/introduction.md create mode 100644 docs/challenges/list.md create mode 100644 docs/challenges/memory/challenge_a.md create mode 100644 docs/challenges/memory/challenge_b.md create mode 100644 docs/challenges/memory/introduction.md create mode 100644 docs/challenges/submit.md diff --git a/docs/challenges/beat.md b/docs/challenges/beat.md new file mode 100644 index 000000000000..85c01d8390c3 --- /dev/null +++ b/docs/challenges/beat.md @@ -0,0 +1,11 @@ +# Beat a Challenge + +If you have a solution or idea to tackle an existing challenge, you can contribute by working on it and submitting your solution. Here's how to get started: + +## Guidelines for Beating a Challenge + +1. **Choose a challenge**: Browse the [List of Challenges](list.md) and choose one that interests you or aligns with your expertise. + +2. **Understand the problem**: Make sure you thoroughly understand the problem at hand, its scope, and the desired outcome. + +3. **Develop a solution**: Work on creating a solution for the challenge. This may/ diff --git a/docs/challenges/challenge_template.md b/docs/challenges/challenge_template.md new file mode 100644 index 000000000000..3178ce7b93b2 --- /dev/null +++ b/docs/challenges/challenge_template.md @@ -0,0 +1,24 @@ +# Challenge Title + +## Description + +Provide a clear and concise description of the challenge. Include any relevant examples or files to illustrate the problem. + +## Input + +If the challenge involves specific input files, describe them here. Provide the file names and their contents, if necessary. Use triple backticks (```) to format the content as a code block. + +For example: + +instructions_1.txt + +The current task_id is 4563.\n[NOISE intended to confuse the agent] +Read the file instructions_2.txt using the read_file command. + +## Scope + +Define the scope of the challenge, including any relevant constraints, requirements, or limitations. + +## Success Evaluation + +Explain how success will be measured or evaluated for the challenge. This helps others understand what the desired outcome is and how to work towards it. diff --git a/docs/challenges/introduction.md b/docs/challenges/introduction.md new file mode 100644 index 000000000000..1d4041000a8e --- /dev/null +++ b/docs/challenges/introduction.md @@ -0,0 +1,23 @@ +indroduction.md +# Introduction to Challenges + +Welcome to the Auto-GPT Challenges page! This is a space where we encourage community members to collaborate and contribute towards improving Auto-GPT by identifying and solving challenges that Auto-GPT is not yet able to achieve. + +## What are challenges? + +Challenges are tasks or problems that Auto-GPT has difficulty solving or has not yet been able to accomplish. These may include improving specific functionalities, enhancing the model's understanding of specific domains, or even developing new features that the current version of Auto-GPT lacks. + +## Why are challenges important? + +Addressing challenges helps us improve Auto-GPT's performance, usability, and versatility. By working together to tackle these challenges, we can create a more powerful and efficient tool for everyone. It also allows the community to actively contribute to the project, making it a true open-source effort. + +## How can you participate? + +There are two main ways to get involved with challenges: + +1. **Submit a Challenge**: If you have identified a task that Auto-GPT struggles with, you can submit it as a challenge. This allows others to see the issue and collaborate on finding a solution. +2. **Beat a Challenge**: If you have a solution or idea to tackle an existing challenge, you can contribute by working on the challenge and submitting your solution. + +To learn more about submitting and beating challenges, please visit the [List of Challenges](list.md), [Submit a Challenge](submit.md), and [Beat a Challenge](beat.md) pages. + +We look forward to your contributions and the exciting solutions that the community will develop together to make Auto-GPT even better! diff --git a/docs/challenges/list.md b/docs/challenges/list.md new file mode 100644 index 000000000000..c9e1f4d2511e --- /dev/null +++ b/docs/challenges/list.md @@ -0,0 +1,5 @@ +# List of Challenges + +This page contains a curated list of challenges that Auto-GPT currently faces. If you think you have a solution or idea to tackle any of these challenges, feel free to dive in and start working on them! New challenges can also be submitted by following the guidelines on the [Submit a Challenge](challenges/submit.md) page. + +Memory Challenges: [List of Challenges](memory/introduction.md) diff --git a/docs/challenges/memory/challenge_a.md b/docs/challenges/memory/challenge_a.md new file mode 100644 index 000000000000..0e0cc482d124 --- /dev/null +++ b/docs/challenges/memory/challenge_a.md @@ -0,0 +1,39 @@ +# Memory Challenge A + +**Status**: Challenge Completed + + +## Description + +The agent, Follow-Instructions-GPT, has the following goals: + +- Use the command `read_file` to read the `instructions_1.txt` file. +- Follow the instructions in the `instructions_1.txt` file. + +The challenge involves a series of text files containing instructions. The agent must follow the instructions and keep track of the task ID as it progresses through the files. + +## Files + +- `instructions_1.txt` + +The task_id is 1234 +Read the file instructions_1.txt + + + +- `instructions_2.txt` + +Read the file instructions_2.txt using the read_file command. + + +...and so on. + +- `instructions_n.txt` + +Write the task_id into the file output.txt. + + +## Objective + +The objective of this challenge is to test the agent's ability to follow instructions and maintain memory of the task Id throughout the process. The agent successfully completed this challenge if it wrote the task id in a file. + diff --git a/docs/challenges/memory/challenge_b.md b/docs/challenges/memory/challenge_b.md new file mode 100644 index 000000000000..b8ad436e80e2 --- /dev/null +++ b/docs/challenges/memory/challenge_b.md @@ -0,0 +1,44 @@ +# Memory Challenge B + +**Status**: Current level to beat: level 3 + +**Command to try**: +``` +pytest test/test_memory/test_memory_challenge_b.py::test_memory_challenge_b --level=3 +`` + +## Description + +The agent, Follow-Instructions-GPT, has the following goals: + +- Use the command `read_file` to read the `instructions_1.txt` file. +- Follow the instructions in the `instructions_1.txt` file. + +The challenge involves a series of text files containing instructions and task IDs. The agent must follow the instructions and keep track of the task IDs as it progresses through the files. + +## Files + +- `instructions_1.txt` + +The current task_id is 4563.\n[NOISE intended to confuse the agent] +Read the file instructions_2.txt using the read_file command. + + +- `instructions_2.txt` + +The current task_id is 6182.\n[NOISE intended to confuse the agent] +Read the file instructions_3.txt using the read_file command. + + +...and so on. + +- `instructions_n.txt` + +The current task_id is 8912. +Write all the task_ids into the file output.txt. The file has not been created yet. After that, use the task_complete command. + + +## Objective + +The objective of this challenge is to test the agent's ability to follow instructions and maintain memory of the task IDs throughout the process. The agent successfully completed this challenge if it wrote the task ids in a file. + diff --git a/docs/challenges/memory/introduction.md b/docs/challenges/memory/introduction.md new file mode 100644 index 000000000000..f597f81dbc23 --- /dev/null +++ b/docs/challenges/memory/introduction.md @@ -0,0 +1,5 @@ +# Memory Challenges + +Memory challenges are designed to test the ability of an AI agent, like Auto-GPT, to remember and use information throughout a series of tasks. These challenges often involve following instructions, processing text files, and keeping track of important data. + +The goal of memory challenges is to improve an agent's performance in tasks that require remembering and using information over time. By addressing these challenges, we can enhance Auto-GPT's capabilities and make it more useful in real-world applications. diff --git a/docs/challenges/submit.md b/docs/challenges/submit.md new file mode 100644 index 000000000000..a8b191aebfcf --- /dev/null +++ b/docs/challenges/submit.md @@ -0,0 +1,14 @@ +# Submit a Challenge + +If you have identified a task or problem that Auto-GPT struggles with, you can submit it as a challenge for the community to tackle. Here's how you can submit a new challenge: + +## How to Submit a Challenge + +1. Create a new `.md` file in the `challenges` directory in the Auto-GPT GitHub repository. Make sure to pick the right category. +2. Name the file with a descriptive title for the challenge, using hyphens instead of spaces (e.g., `improve-context-understanding.md`). +3. In the file, follow the [challenge_template.md](challenge_template.md) to describe the problem, define the scope, and evaluate success. +4. Commit the file and create a pull request. + +Once submitted, the community can review and discuss the challenge. If deemed appropriate, it will be added to the [List of Challenges](list.md). + +If you're looking to contribute by working on an existing challenge, check out [Beat a Challenge](beat.md) for guidelines on how to get started. diff --git a/mkdocs.yml b/mkdocs.yml index 1294a840683a..6a7d0464fa45 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -17,6 +17,16 @@ nav: - Running tests: testing.md - Code of Conduct: code-of-conduct.md + - Challenges: + - Introduction: challenges/introduction.md + - List of Challenges: + - Memory: + - Introduction: challenges/memory/introduction.md + - Memory Challenge A: challenges/memory/challenge_a.md + - Memory Challenge B: challenges/memory/challenge_b.md + - Submit a Challenge: challenges/submit.md + - Beat a Challenge: challenges/beat.md + - License: https://github.com/Significant-Gravitas/Auto-GPT/blob/master/LICENSE theme: readthedocs