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

[Feature Request] ReAct (Reasoning and Acting) Agent #490

Open
2 tasks done
huyinan opened this issue Mar 26, 2024 · 2 comments · May be fixed by #493
Open
2 tasks done

[Feature Request] ReAct (Reasoning and Acting) Agent #490

huyinan opened this issue Mar 26, 2024 · 2 comments · May be fixed by #493
Assignees
Labels
enhancement New feature or request

Comments

@huyinan
Copy link

huyinan commented Mar 26, 2024

Required prerequisites

Motivation

Recent research results, in particular the paper of Shunyu Yao et al entitled' REACT: synergizing reasoning and acting in language models', have demonstrated the possibility of combining verbal reasoning with interactive decision making in autonomous systems. The tight synergy between 'acting' and 'reasoning' allows humans to learn new tasks quickly and perform robust decision making.

Solution

Add an extra type named 'ReasoningType' to specify the categories of output system messages.
'REASONING' -- the default reasoning type which only contains verbal messages produced by the language model;
'ACT' -- messages that involve function calling procedure;
'REACT' -- A combination of reasoning and acting.

Alternatives

No response

Additional context

No response

@huyinan huyinan added the enhancement New feature or request label Mar 26, 2024
@huyinan
Copy link
Author

huyinan commented Mar 29, 2024

Some more to solution: modify BaseMessage Class so that ReasonType is considered as a new argument. Then consider modifying the functions that convert BaseMessage to Openaimessages.

@huyinan
Copy link
Author

huyinan commented Mar 30, 2024

Specifically, if ReasonType = 'REACT', we will add the following as the instruction for the assistant to produce output messages:
"""Solve a question answering task with interleaving Thought, Action steps. Thought can reason about the current situation, and Action can be searching the right function calling and applying the correct function calling based on {key words}.
"""

Use llf-bench as an example to implement the 'REACT' process. Create another .py file in the example folder where the example of llf-bench is implemented. Specifically, find how every function/class in the original llf-bench repo is realized in camel agent repo. Test this case with an embodied agent under another .py file in the '/test/'folder.

@ZIYU-DEEP ZIYU-DEEP self-assigned this Mar 30, 2024
@Wendong-Fan Wendong-Fan linked a pull request Apr 6, 2024 that will close this issue
10 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Backlog
Development

Successfully merging a pull request may close this issue.

3 participants