A class that extends the AgentActionOutputParser to parse the output of the ChatAgent in LangChain. It checks if the output text contains the final answer action or a JSON response, and parses it accordingly.

const prompt = ChatPromptTemplate.fromMessages([
[
"ai",
`{PREFIX}
{FORMAT_INSTRUCTIONS}
{SUFFIX}`,
],
["human", "Question: {input}"],
]);
const runnableAgent = RunnableSequence.from([
{
input: (i: { input: string; steps: AgentStep[] }) => i.input,
agent_scratchpad: (i: { input: string; steps: AgentStep[] }) =>
formatLogToString(i.steps),
},
prompt,
new OpenAI({ temperature: 0 }),
new ChatAgentOutputParser(),
]);

const executor = AgentExecutor.fromAgentAndTools({
agent: runnableAgent,
tools: [new SerpAPI(), new Calculator()],
});

const result = await executor.invoke({
input:
"Who is Olivia Wilde's boyfriend? What is his current age raised to the 0.23 power?",
});

Hierarchy (view full)

Constructors

Constructors