refactor(graph_engine): Merge duplicated if block (#20784)
Signed-off-by: -LAN- <laipz8200@outlook.com>
This commit is contained in:
@@ -639,26 +639,19 @@ class GraphEngine:
|
|||||||
retry_start_at = datetime.now(UTC).replace(tzinfo=None)
|
retry_start_at = datetime.now(UTC).replace(tzinfo=None)
|
||||||
# yield control to other threads
|
# yield control to other threads
|
||||||
time.sleep(0.001)
|
time.sleep(0.001)
|
||||||
generator = node_instance.run()
|
event_stream = node_instance.run()
|
||||||
for item in generator:
|
for event in event_stream:
|
||||||
if isinstance(item, GraphEngineEvent):
|
if isinstance(event, GraphEngineEvent):
|
||||||
if isinstance(item, BaseIterationEvent):
|
# add parallel info to iteration event
|
||||||
# add parallel info to iteration event
|
if isinstance(event, BaseIterationEvent | BaseLoopEvent):
|
||||||
item.parallel_id = parallel_id
|
event.parallel_id = parallel_id
|
||||||
item.parallel_start_node_id = parallel_start_node_id
|
event.parallel_start_node_id = parallel_start_node_id
|
||||||
item.parent_parallel_id = parent_parallel_id
|
event.parent_parallel_id = parent_parallel_id
|
||||||
item.parent_parallel_start_node_id = parent_parallel_start_node_id
|
event.parent_parallel_start_node_id = parent_parallel_start_node_id
|
||||||
elif isinstance(item, BaseLoopEvent):
|
yield event
|
||||||
# add parallel info to loop event
|
|
||||||
item.parallel_id = parallel_id
|
|
||||||
item.parallel_start_node_id = parallel_start_node_id
|
|
||||||
item.parent_parallel_id = parent_parallel_id
|
|
||||||
item.parent_parallel_start_node_id = parent_parallel_start_node_id
|
|
||||||
|
|
||||||
yield item
|
|
||||||
else:
|
else:
|
||||||
if isinstance(item, RunCompletedEvent):
|
if isinstance(event, RunCompletedEvent):
|
||||||
run_result = item.run_result
|
run_result = event.run_result
|
||||||
if run_result.status == WorkflowNodeExecutionStatus.FAILED:
|
if run_result.status == WorkflowNodeExecutionStatus.FAILED:
|
||||||
if (
|
if (
|
||||||
retries == max_retries
|
retries == max_retries
|
||||||
@@ -694,7 +687,7 @@ class GraphEngine:
|
|||||||
# if run failed, handle error
|
# if run failed, handle error
|
||||||
run_result = self._handle_continue_on_error(
|
run_result = self._handle_continue_on_error(
|
||||||
node_instance,
|
node_instance,
|
||||||
item.run_result,
|
event.run_result,
|
||||||
self.graph_runtime_state.variable_pool,
|
self.graph_runtime_state.variable_pool,
|
||||||
handle_exceptions=handle_exceptions,
|
handle_exceptions=handle_exceptions,
|
||||||
)
|
)
|
||||||
@@ -797,28 +790,28 @@ class GraphEngine:
|
|||||||
should_continue_retry = False
|
should_continue_retry = False
|
||||||
|
|
||||||
break
|
break
|
||||||
elif isinstance(item, RunStreamChunkEvent):
|
elif isinstance(event, RunStreamChunkEvent):
|
||||||
yield NodeRunStreamChunkEvent(
|
yield NodeRunStreamChunkEvent(
|
||||||
id=node_instance.id,
|
id=node_instance.id,
|
||||||
node_id=node_instance.node_id,
|
node_id=node_instance.node_id,
|
||||||
node_type=node_instance.node_type,
|
node_type=node_instance.node_type,
|
||||||
node_data=node_instance.node_data,
|
node_data=node_instance.node_data,
|
||||||
chunk_content=item.chunk_content,
|
chunk_content=event.chunk_content,
|
||||||
from_variable_selector=item.from_variable_selector,
|
from_variable_selector=event.from_variable_selector,
|
||||||
route_node_state=route_node_state,
|
route_node_state=route_node_state,
|
||||||
parallel_id=parallel_id,
|
parallel_id=parallel_id,
|
||||||
parallel_start_node_id=parallel_start_node_id,
|
parallel_start_node_id=parallel_start_node_id,
|
||||||
parent_parallel_id=parent_parallel_id,
|
parent_parallel_id=parent_parallel_id,
|
||||||
parent_parallel_start_node_id=parent_parallel_start_node_id,
|
parent_parallel_start_node_id=parent_parallel_start_node_id,
|
||||||
)
|
)
|
||||||
elif isinstance(item, RunRetrieverResourceEvent):
|
elif isinstance(event, RunRetrieverResourceEvent):
|
||||||
yield NodeRunRetrieverResourceEvent(
|
yield NodeRunRetrieverResourceEvent(
|
||||||
id=node_instance.id,
|
id=node_instance.id,
|
||||||
node_id=node_instance.node_id,
|
node_id=node_instance.node_id,
|
||||||
node_type=node_instance.node_type,
|
node_type=node_instance.node_type,
|
||||||
node_data=node_instance.node_data,
|
node_data=node_instance.node_data,
|
||||||
retriever_resources=item.retriever_resources,
|
retriever_resources=event.retriever_resources,
|
||||||
context=item.context,
|
context=event.context,
|
||||||
route_node_state=route_node_state,
|
route_node_state=route_node_state,
|
||||||
parallel_id=parallel_id,
|
parallel_id=parallel_id,
|
||||||
parallel_start_node_id=parallel_start_node_id,
|
parallel_start_node_id=parallel_start_node_id,
|
||||||
|
Reference in New Issue
Block a user