fix(api/core/workflow/nodes/iteration/iteration_node.py): Extend output in iteration if output is a array. (#6647)

Signed-off-by: -LAN- <laipz8200@outlook.com>
This commit is contained in:
-LAN- 2024-07-25 00:32:39 +08:00 committed by GitHub
parent fb5e3662d5
commit 4ec9a87e46
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -106,7 +106,11 @@ class IterationNode(BaseIterationNode):
variable_pool.remove([self.node_id] + output_selector[1:]) variable_pool.remove([self.node_id] + output_selector[1:])
state.current_output = output state.current_output = output
if output is not None: if output is not None:
state.outputs.append(output) # NOTE: This is a temporary patch to process double nested list (for example, DALL-E output in iteration).
if isinstance(output, list):
state.outputs.extend(output)
else:
state.outputs.append(output)
@classmethod @classmethod
def _extract_variable_selector_to_variable_mapping(cls, node_data: IterationNodeData) -> dict[str, list[str]]: def _extract_variable_selector_to_variable_mapping(cls, node_data: IterationNodeData) -> dict[str, list[str]]: