Allow recovering from JSONDecoder errors in StructuredOutputParser (#2616)

fix_agent_callbacks
Nuno Campos 1 year ago committed by GitHub
parent 6f39e88a2c
commit 5376799a23
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -39,7 +39,10 @@ class StructuredOutputParser(BaseOutputParser):
def parse(self, text: str) -> BaseModel:
json_string = text.split("```json")[1].strip().strip("```").strip()
json_obj = json.loads(json_string)
try:
json_obj = json.loads(json_string)
except json.JSONDecodeError as e:
raise OutputParserException(f"Got invalid JSON object. Error: {e}")
for schema in self.response_schemas:
if schema.name not in json_obj:
raise OutputParserException(

Loading…
Cancel
Save