• Create an agent that uses tools.

    Parameters

    Returns AgentRunnableSequence<{
        steps: ToolsAgentStep[];
    }, AgentFinish | AgentAction[]>

    A runnable sequence representing an agent. It takes as input all the same input variables as the prompt passed in does. It returns as output either an AgentAction or AgentFinish.

    Example

    import { ChatAnthropic } from "@langchain/anthropic";
    import { ChatPromptTemplate, MessagesPlaceholder } from "@langchain/core/prompts";
    import { AgentExecutor, createToolCallingAgent } from "langchain/agents";

    const prompt = ChatPromptTemplate.fromMessages(
    [
    ["system", "You are a helpful assistant"],
    ["placeholder", "{chat_history}"],
    ["human", "{input}"],
    ["placeholder", "{agent_scratchpad}"],
    ]
    );


    const llm = new ChatAnthropic({
    modelName: "claude-3-opus-20240229",
    temperature: 0,
    });

    // Define the tools the agent will have access to.
    const tools = [...];

    const agent = createToolCallingAgent({ llm, tools, prompt });

    const agentExecutor = new AgentExecutor({ agent, tools });

    const result = await agentExecutor.invoke({input: "what is LangChain?"});

    // Using with chat history
    import { AIMessage, HumanMessage } from "@langchain/core/messages";

    const result2 = await agentExecutor.invoke(
    {
    input: "what's my name?",
    chat_history: [
    new HumanMessage({content: "hi! my name is bob"}),
    new AIMessage({content: "Hello Bob! How can I assist you today?"}),
    ],
    }
    );

Generated using TypeDoc