Integrating custom tools with agents
Now that you have your tools at-hand, it's time to set up your agentic workflow! You'll again be using a ReAct agent, which, recall, reasons on the steps it should take, and selects tools using this context and the tool descriptions. An llm has already been defined for you that uses OpenAI's gpt-4o-mini model
This exercise is part of the course
Developing LLM Applications with LangChain
Exercise instructions
- Create a ReAct agent using
create_react_agent()withllmand a list containing yourretrieve_customer_infotool. - Invoke the agent with
agent.invoke()on the input provided. - Print the content from the final message.
Hands-on interactive exercise
Have a go at this exercise by completing this sample code.
@tool
def retrieve_customer_info(name: str) -> str:
"""Retrieve customer information based on their name."""
customer_info = customers[customers['name'] == name]
return customer_info.to_string()
# Create a ReAct agent
agent = create_react_agent(____, [____])
# Invoke the agent on the input
messages = agent.____({"messages": [("human", "Create a summary of our customer: Peak Performance Co.")]})
print(messages['messages'][-1].____)