mirror of
https://github.com/FoundationAgents/MetaGPT.git
synced 2026-05-04 21:32:38 +02:00
pre-commit
This commit is contained in:
parent
e9603c6f03
commit
fd6eb8882e
4 changed files with 67 additions and 61 deletions
|
|
@ -123,7 +123,9 @@ class DataInterpreter(Role):
|
|||
|
||||
while not success and counter < max_retry:
|
||||
### write code ###
|
||||
code, cause_by = await self._write_code(counter, plan_status, tool_info, experiences = experiences if counter == 0 else "")
|
||||
code, cause_by = await self._write_code(
|
||||
counter, plan_status, tool_info, experiences=experiences if counter == 0 else ""
|
||||
)
|
||||
|
||||
self.working_memory.add(Message(content=code, role="assistant", cause_by=cause_by))
|
||||
|
||||
|
|
@ -144,13 +146,7 @@ class DataInterpreter(Role):
|
|||
|
||||
return code, result, success
|
||||
|
||||
async def _write_code(
|
||||
self,
|
||||
counter: int,
|
||||
plan_status: str = "",
|
||||
tool_info: str = "",
|
||||
experiences: str = ""
|
||||
):
|
||||
async def _write_code(self, counter: int, plan_status: str = "", tool_info: str = "", experiences: str = ""):
|
||||
todo = self.rc.todo # todo is WriteAnalysisCode
|
||||
logger.info(f"ready to {todo.name}")
|
||||
use_reflection = counter > 0 and self.use_reflection # only use reflection after the first trial
|
||||
|
|
@ -163,7 +159,7 @@ class DataInterpreter(Role):
|
|||
tool_info=tool_info,
|
||||
working_memory=self.working_memory.get(),
|
||||
use_reflection=use_reflection,
|
||||
experiences = experiences
|
||||
experiences=experiences,
|
||||
)
|
||||
|
||||
return code, todo
|
||||
|
|
|
|||
|
|
@ -30,12 +30,12 @@ from pydantic import BaseModel, ConfigDict, Field, SerializeAsAny, model_validat
|
|||
from metagpt.actions import Action, ActionOutput
|
||||
from metagpt.actions.action_node import ActionNode
|
||||
from metagpt.actions.add_requirement import UserRequirement
|
||||
from metagpt.actions.di.use_experience import RetrieveExperiences, AddNewTrajectories
|
||||
from metagpt.actions.di.use_experience import AddNewTrajectories, RetrieveExperiences
|
||||
from metagpt.context_mixin import ContextMixin
|
||||
from metagpt.logs import logger
|
||||
from metagpt.memory import Memory
|
||||
from metagpt.provider import HumanProvider
|
||||
from metagpt.schema import Message, MessageQueue, SerializationMixin, TaskResult, Task
|
||||
from metagpt.schema import Message, MessageQueue, SerializationMixin, Task, TaskResult
|
||||
from metagpt.strategy.planner import Planner
|
||||
from metagpt.utils.common import any_to_name, any_to_str, role_raise_decorator
|
||||
from metagpt.utils.project_repo import ProjectRepo
|
||||
|
|
@ -493,13 +493,13 @@ class Role(SerializationMixin, ContextMixin, BaseModel):
|
|||
|
||||
# retrieve past tasks for this task
|
||||
experiences = await RetrieveExperiences().run(query=task.instruction) if self.use_experience else ""
|
||||
|
||||
|
||||
# take on current task
|
||||
task_result = await self._act_on_task(task, experiences)
|
||||
|
||||
# process the result, such as reviewing, confirming, plan updating
|
||||
await self.planner.process_task_result(task_result)
|
||||
|
||||
|
||||
await AddNewTrajectories().run(self.planner)
|
||||
|
||||
rsp = self.planner.get_useful_memories()[0] # return the completed plan as a response
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue