From 4de104ef8f3bff4a486e058354c9038a378f025b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=A3=92=E6=A3=92?= Date: Tue, 19 Dec 2023 11:32:25 +0800 Subject: [PATCH] update parameters for None. --- metagpt/tools/functions/libs/udf/__init__.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/metagpt/tools/functions/libs/udf/__init__.py b/metagpt/tools/functions/libs/udf/__init__.py index 5596cd37a..3c4e72d8b 100644 --- a/metagpt/tools/functions/libs/udf/__init__.py +++ b/metagpt/tools/functions/libs/udf/__init__.py @@ -77,7 +77,7 @@ def docstring_to_yaml(docstring: str, return_vars: List[str] = None): err_msg = f"No Args found in docstring as following, Please make sure it is google style\ : \n\n{'-'*60}\n{docstring}\n{'-'*60}\n\n." logger.error(err_msg) - params = (('', '', ''),) + params = ((None, None, None),) # 匹配Returns部分 returns_match = re.search(r'Returns:\s*(.*?)(?:Raises:|$)', docstring, re.DOTALL) returns = returns_match.group(1).strip() if returns_match else "" @@ -89,8 +89,8 @@ def docstring_to_yaml(docstring: str, return_vars: List[str] = None): yaml_data = { 'description': description.strip('.').strip(), 'parameters': { - 'properties': {param[0]: {'type': param[1], 'description': param[2]} for param in params}, - 'required': [param[0] for param in params] + 'properties': {param[0]: {'type': param[1], 'description': param[2]} for param in params if param[0] is not None}, + 'required': [param[0] for param in params if param[0] is not None] }, 'returns': {ret[0]: {'type': ret[1], 'description': ret[2]} for ret in returns} }