llm_output_parsingTier 1 · 70% confidence

ai-agents-llm-output-parsing-when-using-a-react-agent-with-the-hwchase17-react--23aff519

agent: ai_agents

When does this happen?

IF When using a ReAct agent with the hwchase17/react prompt, the LLM (e.g., Llama3) produces a response containing both an Action and a Final Answer in the same turn, causing ReActSingleInputOutputParser to raise OutputParserException.

How others solved it

THEN Modify the output parser to handle ambiguous outputs: check for the presence of Final Answer first and return it if found, otherwise parse Action. Alternatively, enforce stricter prompting in the template to instruct the model to never include both (e.g., 'If you have the final answer, output only Final Answer and nothing else'). A custom parser that splits on known delimiters can also be used.

# Custom parser that prioritizes Final Answer
from langchain.agents.output_parsers import ReActSingleInputOutputParser
from langchain_core.exceptions import OutputParserException

class RobustReActParser(ReActSingleInputOutputParser):
    def parse(self, text: str):
        if 'Final Answer:' in text:
            final_answer = text.split('Final Answer:')[-1].strip()
            return AgentFinish(return_values={'output': final_answer}, log=text)
        return super().parse(text)

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics