Alpha Notice: These docs cover the v1-alpha release. Content is incomplete and subject to change.For the latest stable version, see the v0 LangChain Python or LangChain JavaScript docs.
Build a basic agent
Let’s begin with agent basics - creating a simple agent that can answer questions and use tools. Create an agent with the following characteristics:- A language model (Claude 3.7 Sonnet)
- A simple tool (weather function)
- A basic prompt
- The ability to invoke it with messages
Build a real-world agent
Now let’s create something more practical. Let’s build a weather forecasting agent that demonstrates the key concepts you would use in production:- Detailed system prompts for better agent behavior
- Real-world tools that integrate with external data
- Model configuration for consistent responses
- Structured output for predictable results
- Conversational memory for chat-like interactions
- Bring it all together to create a fully functional agent
1
Define the system prompt
The system prompt is your agent’s personality and instructions. Make it
specific and actionable:
2
Create tools
Tools are functions your agent can call. They should be well-documented. Oftentimes tools will want to connect to external systems, and will rely on runtime configuration to do so. Notice here how the
getUserLocation
tool does exactly that:Zod is a library for validating and parsing pre-defined schemas. You can use it to define the input schema for your tools to make sure the agent only calls the tool with the correct arguments.Alternatively, you can define the
schema
property as a JSON schema object. Keep in mind that JSON schemas won’t be validated at runtime.Example: Using JSON schema for tool input
Example: Using JSON schema for tool input
3
Configure your model
Set up your language model with the right parameters for your use case:
4
Define response format
Structured outputs ensure your agent returns data in a predictable format.
5
Add memory
Enable your agent to remember conversation history:
6
Bring it all together
Now assemble your agent with all the components:
- Understand context and remember conversations
- Use multiple tools intelligently
- Provide structured responses in a consistent format
- Handle user-specific information through context
- Maintain conversation state across interactions