From 12c3023a225666da4d62abac155ac62e61148bcf Mon Sep 17 00:00:00 2001 From: Kevin Hu Date: Fri, 14 Mar 2025 13:58:42 +0800 Subject: [PATCH] Fix: remove NaN output of components. (#6079) ### What problem does this PR solve? #6065 ### Type of change - [x] Bug Fix (non-breaking change which fixes an issue) --- agent/component/base.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/agent/component/base.py b/agent/component/base.py index 1890949e0..4aaf601f1 100644 --- a/agent/component/base.py +++ b/agent/component/base.py @@ -429,7 +429,7 @@ class ComponentBase(ABC): if not isinstance(o, partial): if not isinstance(o, pd.DataFrame): if isinstance(o, list): - return self._param.output_var_name, pd.DataFrame(o) + return self._param.output_var_name, pd.DataFrame(o).dropna() if o is None: return self._param.output_var_name, pd.DataFrame() return self._param.output_var_name, pd.DataFrame([{"content": str(o)}]) @@ -437,15 +437,15 @@ class ComponentBase(ABC): if allow_partial or not isinstance(o, partial): if not isinstance(o, partial) and not isinstance(o, pd.DataFrame): - return pd.DataFrame(o if isinstance(o, list) else [o]) + return pd.DataFrame(o if isinstance(o, list) else [o]).dropna() return self._param.output_var_name, o outs = None for oo in o(): if not isinstance(oo, pd.DataFrame): - outs = pd.DataFrame(oo if isinstance(oo, list) else [oo]) + outs = pd.DataFrame(oo if isinstance(oo, list) else [oo]).dropna() else: - outs = oo + outs = oo.dropna() return self._param.output_var_name, outs def reset(self):