langchain.js
    Preparing search index...

    Agent for the MRKL chain.


    const agent = new ZeroShotAgent({
    llmChain: new LLMChain({
    llm: new ChatOpenAI({ model: "gpt-4o-mini", temperature: 0 }),
    prompt: ZeroShotAgent.createPrompt([new SerpAPI(), new Calculator()], {
    prefix: `Answer the following questions as best you can, but speaking as a pirate might speak. You have access to the following tools:`,
    suffix: `Begin! Remember to speak as a pirate when giving your final answer. Use lots of "Args"
    Question: {input}
    {agent_scratchpad}`,
    inputVariables: ["input", "agent_scratchpad"],
    }),
    }),
    allowedTools: ["search", "calculator"],
    });

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

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    lc_namespace: string[] = ...
    llmChain: LLMChain
    outputParser: undefined | AgentActionOutputParser
    ToolType: ToolInterface

    Accessors

    • get allowedTools(): undefined | string[]

      Returns undefined | string[]

    • get inputKeys(): string[]

      Returns string[]

    • get returnValues(): string[]

      Returns string[]

    Methods

    • Return the string type key uniquely identifying multi or single action agents.

      Returns string

    • Return the string type key uniquely identifying this class of agent.

      Returns "zero-shot-react-description"

    • Returns string[]

    • Construct a scratchpad to let the agent continue its thought process

      Parameters

      • steps: AgentStep[]

      Returns Promise<string | BaseMessage[]>

    • Name of tool to use to terminate the chain.

      Returns string

    • Prefix to append the LLM call with.

      Returns string

    • Prefix to append the observation with.

      Returns string

    • Decide what to do given some input.

      Parameters

      • steps: AgentStep[]

        Steps the LLM has taken so far, along with observations from each.

      • inputs: ChainValues

        User inputs.

      • OptionalcallbackManager: any

        Callback manager to use for this call.

      Returns Promise<any>

      Action specifying what tool to use.

    • Prepare the agent for output, if needed

      Parameters

      • _returnValues: AgentFinish
      • _steps: AgentStep[]

      Returns Promise<AgentFinish>

    • Return response when agent has been stopped due to max iterations

      Parameters

      • earlyStoppingMethod: StoppingMethod
      • steps: AgentStep[]
      • inputs: ChainValues
      • OptionalcallbackManager: any

      Returns Promise<AgentFinish>

    • Create prompt in the style of the zero shot agent.

      Parameters

      • tools: ToolInterface[]

        List of tools the agent will have access to, used to format the prompt.

      • Optionalargs: ZeroShotCreatePromptArgs

        Arguments to create the prompt with.

        Interface for creating a prompt for the ZeroShotAgent.

        • OptionalinputVariables?: string[]

          List of input variables the final prompt will expect.

        • Optionalprefix?: string

          String to put before the list of tools.

        • Optionalsuffix?: string

          String to put after the list of tools.

      Returns any

    • Creates a ZeroShotAgent from a Large Language Model and a set of tools.

      Parameters

      • llm: BaseLanguageModelInterface

        The Large Language Model to use.

      • tools: ToolInterface[]

        The tools for the agent to use.

      • Optionalargs: ZeroShotCreatePromptArgs & AgentArgs

        Optional arguments for creating the agent.

      Returns ZeroShotAgent

      A new instance of ZeroShotAgent.

    • Returns string

    • Validates the tools for the ZeroShotAgent. Throws an error if any tool does not have a description.

      Parameters

      • tools: ToolInterface[]

        List of tools to validate.

      Returns void