unpack later (#8278)

Fix https://github.com/langchain-ai/langchain/issues/8272
This commit is contained in:
William FH 2023-07-26 01:53:22 -07:00 committed by GitHub
parent 9cbefcc56c
commit adf019724f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 2 deletions

View File

@ -45,7 +45,12 @@ class PairwiseStringResultOutputParser(BaseOutputParser[dict]):
ValueError: If the verdict is invalid. ValueError: If the verdict is invalid.
""" """
reasoning, verdict = text.strip().rsplit("\n", maxsplit=1) parsed = text.strip().rsplit("\n", maxsplit=1)
if len(parsed) == 1:
reasoning = ""
verdict = parsed[0]
else:
reasoning, verdict = parsed
verdict = verdict.strip("[").strip("]") verdict = verdict.strip("[").strip("]")
if verdict not in {"A", "B", "C"}: if verdict not in {"A", "B", "C"}:
raise ValueError( raise ValueError(

View File

@ -68,7 +68,12 @@ class CriteriaResultOutputParser(BaseOutputParser[dict]):
Returns: Returns:
Any: The parsed output. Any: The parsed output.
""" """
reasoning, verdict = text.strip().rsplit("\n", maxsplit=1) parsed = text.strip().rsplit("\n", maxsplit=1)
if len(parsed) == 1:
reasoning = ""
verdict = parsed[0]
else:
reasoning, verdict = parsed
score = 1 if verdict.upper() == "Y" else (0 if verdict.upper() == "N" else None) score = 1 if verdict.upper() == "Y" else (0 if verdict.upper() == "N" else None)
return { return {
"reasoning": reasoning.strip(), "reasoning": reasoning.strip(),