Introduction to LangChain agents

Developing LLM Applications with LangChain

Jonathan Bennion

AI Engineer & LangChain Contributor

What are agents?

 

Agents: use LLMs to take actions

Tools: functions called by the agent

 

  • NowReAct Agent

An agent making a decision about which tool to use based on the user's input.

Developing LLM Applications with LangChain

ReAct agents

  • Reason + Act

 

What is the weather like in Kingston, Jamaica?

Thought: I should call Weather() to find the
weather in Kingston, Jamaica.


Act: Weather("Kingston, Jamaica")
Observe: The weather is mostly sunny with temperatures of 82°F.

A loop of thinking, acting, and observing.

Developing LLM Applications with LangChain

LangGraph

LangGraph logo.

 

  • Branch of LangChain centered around designing agent systems
  • Unified, tool-agnostic syntax
  • pip install langgraph==0.2.74
Developing LLM Applications with LangChain

ReAct agent

from langgraph.prebuilt import create_react_agent
from langchain_community.agent_toolkits.load_tools import load_tools

llm = ChatOpenAI(model="gpt-4o-mini", api_key=openai_api_key) tools = load_tools(["llm-math"], llm=llm)
agent = create_react_agent(llm, tools)
messages = agent.invoke({"messages": [("human", "What is the square root of 101?")]})
print(messages)
Developing LLM Applications with LangChain

ReAct agent

{'messages': [
    HumanMessage(content='What is the square root of 101?', ...),
    AIMessage(content='', ..., tool_calls=[{'name': 'Calculator', 'args': {'__arg1': 'sqrt(101)'}, ...),
    ToolMessage(content='Answer: 10.04987562112089', ...),
    AIMessage(content='The square root of 101 is approximately 10.05.', ...)
]}
print(messages['messages'][-1].content)
The square root of 101 is approximately 10.05.
Developing LLM Applications with LangChain

Let's practice!

Developing LLM Applications with LangChain

Preparing Video For Download...