From c6695a30236134873e65390e90dd38a9fd4d8d78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=A3=92=E6=A3=92?= Date: Fri, 19 Jan 2024 15:37:28 +0800 Subject: [PATCH] fix: keep same return value in get_choice_function_arguments. --- metagpt/provider/openai_api.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/metagpt/provider/openai_api.py b/metagpt/provider/openai_api.py index 3edd89835..7bc4ee164 100644 --- a/metagpt/provider/openai_api.py +++ b/metagpt/provider/openai_api.py @@ -217,7 +217,7 @@ class OpenAILLM(BaseLLM): if code_value is None: raise ValueError(f"Parse code error for {arguments}") # arguments只有code的情况 - return {"language": language_value, "code": code_value} + return {"language": language_value or "python", "code": code_value} @handle_exception def get_choice_function_arguments(self, rsp: ChatCompletion) -> dict: @@ -241,7 +241,7 @@ class OpenAILLM(BaseLLM): f"Got JSONDecodeError for {message.tool_calls[0].function.arguments},\ we will use RegExp to parse code, \n {e}" ) - return {"language": "python", "code": self._parse_arguments(message.tool_calls[0].function.arguments)} + return self._parse_arguments(message.tool_calls[0].function.arguments) elif message.tool_calls is None and message.content is not None: # reponse is message return {"language": "markdown", "code": self.get_choice_text(rsp)}