mirror of
https://gitee.com/wanwujie/deer-flow
synced 2026-05-03 10:40:45 +08:00
fix: fix multi-round issue
This commit is contained in:
2
.vscode/launch.json
vendored
2
.vscode/launch.json
vendored
@@ -20,7 +20,7 @@
|
|||||||
"PYTHONPATH": "${workspaceFolder}"
|
"PYTHONPATH": "${workspaceFolder}"
|
||||||
},
|
},
|
||||||
"args": [
|
"args": [
|
||||||
"--debug", "--max_plan_iterations", "1", "--max_step_num", "3"
|
"--debug", "--max_plan_iterations", "1", "--max_step_num", "1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -199,6 +199,7 @@ def _execute_agent_step(
|
|||||||
) -> Command[Literal["research_team"]]:
|
) -> Command[Literal["research_team"]]:
|
||||||
"""Helper function to execute a step using the specified agent."""
|
"""Helper function to execute a step using the specified agent."""
|
||||||
current_plan = state.get("current_plan")
|
current_plan = state.get("current_plan")
|
||||||
|
observations = state.get("observations", [])
|
||||||
|
|
||||||
# Find the first unexecuted step
|
# Find the first unexecuted step
|
||||||
for step in current_plan.steps:
|
for step in current_plan.steps:
|
||||||
@@ -244,7 +245,7 @@ def _execute_agent_step(
|
|||||||
name=agent_name,
|
name=agent_name,
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
"observations": [response_content],
|
"observations": observations + [response_content],
|
||||||
},
|
},
|
||||||
goto="research_team",
|
goto="research_team",
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ class State(MessagesState):
|
|||||||
|
|
||||||
# Runtime Variables
|
# Runtime Variables
|
||||||
locale: str = "en-US"
|
locale: str = "en-US"
|
||||||
observations: Annotated[list[str], operator.add] = []
|
observations: list[str] = []
|
||||||
plan_iterations: int = 0
|
plan_iterations: int = 0
|
||||||
current_plan: Plan | str = None
|
current_plan: Plan | str = None
|
||||||
final_report: str = ""
|
final_report: str = ""
|
||||||
|
|||||||
@@ -72,7 +72,14 @@ async def _astream_workflow_generator(
|
|||||||
auto_accepted_plan: bool,
|
auto_accepted_plan: bool,
|
||||||
interrupt_feedback: str,
|
interrupt_feedback: str,
|
||||||
):
|
):
|
||||||
input_ = {"messages": messages, "auto_accepted_plan": auto_accepted_plan}
|
input_ = {
|
||||||
|
"messages": messages,
|
||||||
|
"plan_iterations": 0,
|
||||||
|
"final_report": "",
|
||||||
|
"current_plan": None,
|
||||||
|
"observations": [],
|
||||||
|
"auto_accepted_plan": auto_accepted_plan,
|
||||||
|
}
|
||||||
if not auto_accepted_plan and interrupt_feedback:
|
if not auto_accepted_plan and interrupt_feedback:
|
||||||
resume_msg = f"[{interrupt_feedback}]"
|
resume_msg = f"[{interrupt_feedback}]"
|
||||||
# add the last message to the resume message
|
# add the last message to the resume message
|
||||||
|
|||||||
Reference in New Issue
Block a user