From 0d80226c6445a86d2134832a6ccafb9c4906299d Mon Sep 17 00:00:00 2001 From: Nuno Campos Date: Wed, 4 Oct 2023 16:56:45 +0100 Subject: [PATCH] Add _type to json functions output parser (#11381) --- libs/langchain/langchain/output_parsers/openai_functions.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libs/langchain/langchain/output_parsers/openai_functions.py b/libs/langchain/langchain/output_parsers/openai_functions.py index 8724035e4b..51c485482d 100644 --- a/libs/langchain/langchain/output_parsers/openai_functions.py +++ b/libs/langchain/langchain/output_parsers/openai_functions.py @@ -54,6 +54,10 @@ class JsonOutputFunctionsParser(BaseCumulativeTransformOutputParser[Any]): args_only: bool = True """Whether to only return the arguments to the function call.""" + @property + def _type(self) -> str: + return "json_functions" + def _diff(self, prev: Optional[Any], next: Any) -> Any: return jsonpatch.make_patch(prev, next).patch @@ -127,7 +131,7 @@ class JsonKeyOutputFunctionsParser(JsonOutputFunctionsParser): def parse_result(self, result: List[Generation], *, partial: bool = False) -> Any: res = super().parse_result(result) - return res[self.key_name] + return res.get(self.key_name) if partial else res[self.key_name] class PydanticOutputFunctionsParser(OutputFunctionsParser):