Skip to content

Commit

Permalink
Update package and agents prompt (#30)
Browse files Browse the repository at this point in the history
  • Loading branch information
mzr1996 committed Sep 13, 2023
1 parent 4d3d894 commit e5e74fe
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 9 deletions.
4 changes: 4 additions & 0 deletions lagent/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
# Copyright (c) OpenMMLab. All rights reserved.
from .actions import * # noqa: F401, F403
from .agents import * # noqa: F401, F403
from .llms import * # noqa: F401, F403
from .schema import * # noqa: F401, F403
from .version import __version__, version_info

__all__ = ['__version__', 'version_info']
4 changes: 3 additions & 1 deletion lagent/agents/autogpt.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# flake8: noqa
import ast
import copy
import platform
from typing import Dict, List, Optional, Tuple, Union

Expand Down Expand Up @@ -263,7 +264,7 @@ def __init__(self,
def chat(self, goal: str) -> AgentReturn:
self._inner_history = []
agent_return = AgentReturn()
default_response = '对不起,我无法回答你的问题'
default_response = 'Sorry that I cannot answer your question.'
for _ in range(self.max_turn):
prompt = self._protocol.format(
goal=goal,
Expand All @@ -284,5 +285,6 @@ def chat(self, goal: str) -> AgentReturn:
dict(
role='system',
content=self._protocol.format_response(action_return)))
agent_return.inner_steps = copy.deepcopy(self._inner_history)
agent_return.response = default_response
return agent_return
12 changes: 8 additions & 4 deletions lagent/agents/react.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import copy
from typing import Dict, List, Tuple, Union

from lagent.actions import ActionExecutor
Expand Down Expand Up @@ -81,8 +82,8 @@ def __init__(self,
role='RESPONSE', begin='Response:', end='\n'),
finish: dict = dict(
role='FINISH', begin='FinalAnswer:', end='\n'),
call_protocol: str = CALL_PROTOCOL_CN,
force_stop: str = FORCE_STOP_PROMPT_CN) -> None:
call_protocol: str = CALL_PROTOCOL_EN,
force_stop: str = FORCE_STOP_PROMPT_EN) -> None:
self.call_protocol = call_protocol
self.force_stop = force_stop
self.thought = thought
Expand Down Expand Up @@ -212,7 +213,7 @@ def chat(self, message: str) -> AgentReturn:
self._inner_history.append(dict(role='user', content=message))
agent_return = AgentReturn()
force_stop = False
default_response = '对不起,我无法回答你的问题'
default_response = 'Sorry that I cannot answer your question.'
for turn in range(self.max_turn):
prompt = self._protocol.format(
chat_history=self.session_history,
Expand All @@ -230,14 +231,17 @@ def chat(self, message: str) -> AgentReturn:
agent_return.actions.append(action_return)
if action_return.type == self._action_executor.finish_action.name:
agent_return.response = action_return.result['text']
return agent_return
break
self._inner_history.append(
dict(
role='system',
content=self._protocol.format_response(action_return)))
if turn == self.max_turn - 1:
force_stop = True
else:
agent_return.response = default_response
agent_return.response = default_response
agent_return.inner_steps = copy.deepcopy(self._inner_history)
# only append the user and final response
self._session_history.append(dict(role='user', content=message))
self._session_history.append(
Expand Down
10 changes: 6 additions & 4 deletions lagent/agents/rewoo.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import copy
import re
import warnings
from typing import Dict, List, Optional, Tuple, Union
Expand Down Expand Up @@ -94,10 +95,10 @@ class ReWOOProtocol:

def __init__(
self,
planner_prompt: str = PLANNER_PROMPT_CN,
worker_prompt: str = WORKER_PROMPT_CN,
solver_prompt: str = SOLVER_PROMPT_CN,
reformat_prompt: str = REFORMAT_PROMPT_CN,
planner_prompt: str = PLANNER_PROMPT_EN,
worker_prompt: str = WORKER_PROMPT_EN,
solver_prompt: str = SOLVER_PROMPT_EN,
reformat_prompt: str = REFORMAT_PROMPT_EN,
) -> None:
self.planner_prompt = planner_prompt
self.worker_prompt = worker_prompt
Expand Down Expand Up @@ -278,5 +279,6 @@ def chat(self, message: str) -> AgentReturn:
final_response = self._llm.generate_from_template(solver_prompt, 512)
self._inner_history.append(
dict(role='assistant', content=final_response))
agent_return.inner_steps = copy.deepcopy(self._inner_history)
agent_return.response = final_response
return agent_return

0 comments on commit e5e74fe

Please sign in to comment.