Skip to main content

[ ![🦜️🔗 Langchain](/img/brand/wordmark.png) ![🦜️🔗
Langchain](/img/brand/wordmark-dark.png) ](/) [ Docs
](/docs/get_started/introduction) [ Use cases ](/docs/use_cases) [
Integrations ](/docs/integrations/platforms/) [ Guides
](/docs/guides/debugging) [ API  ](https://api.python.langchain.com)

More

  * [ People ](/docs/people/)
  * [ Versioning ](/docs/packages)
  * [ Changelog ](/docs/changelog)
  * [ Contributing ](/docs/contributing)
  * [ Templates ](/docs/templates/)
  * [ Cookbooks  ](https://github.com/langchain-ai/langchain/blob/master/cookbook/README.md)
  * [ Tutorials ](/docs/additional_resources/tutorials)
  * [ YouTube ](/docs/additional_resources/youtube)

🦜️🔗

  * [ LangSmith  ](https://smith.langchain.com)
  * [ LangSmith Docs  ](https://docs.smith.langchain.com/)
  * [ LangServe GitHub  ](https://github.com/langchain-ai/langserve)
  * [ Templates GitHub  ](https://github.com/langchain-ai/langchain/tree/master/templates)
  * [ Templates Hub  ](https://templates.langchain.com)
  * [ LangChain Hub  ](https://smith.langchain.com/hub)
  * [ JS/TS Docs  ](https://js.langchain.com)

[ 💬  ](https://chat.langchain.com) [ ](https://github.com/langchain-
ai/langchain)

Search

  * [ Get started ](/docs/get_started)

    * [ Introduction ](/docs/get_started/introduction)
    * [ Installation ](/docs/get_started/installation)
    * [ Quickstart ](/docs/get_started/quickstart)
    * [ Security ](/docs/security)
  * [ LangChain Expression Language ](/docs/expression_language/)

    * [ Get started ](/docs/expression_language/get_started)
    * [ Why use LCEL ](/docs/expression_language/why)
    * [ Interface ](/docs/expression_language/interface)
    * [ Streaming ](/docs/expression_language/streaming)
    * [ How to ](/docs/expression_language/how_to/)

    * [ Cookbook ](/docs/expression_language/cookbook/)

    * [ LangChain Expression Language (LCEL) ](/docs/expression_language/)
  * [ Modules ](/docs/modules/)

    * [ Model I/O ](/docs/modules/model_io/)

    * [ Retrieval ](/docs/modules/data_connection/)

    * [ Agents ](/docs/modules/agents/)

      * [ Quickstart ](/docs/modules/agents/quick_start)
      * [ Concepts ](/docs/modules/agents/concepts)
      * [ Agent Types ](/docs/modules/agents/agent_types/)

      * [ How-to ](/docs/modules/agents/how_to/custom_agent)

      * [ Agents ](/docs/modules/agents/)
      * [ Tools ](/docs/modules/agents/tools/)

    * [ Chains ](/docs/modules/chains)
    * [ More ](/docs/modules/memory/)

  * [ LangServe ](/docs/langserve)
  * [ LangSmith ](/docs/langsmith/)

  * [ LangGraph ](/docs/langgraph)

  * [ ](/)
  * [ Modules  ](/docs/modules/)
  * Agents 

On this page

#  Agents

The core idea of agents is to use a language model to choose a sequence of
actions to take. In chains, a sequence of actions is hardcoded (in code). In
agents, a language model is used as a reasoning engine to determine which
actions to take and in which order.

##  [ Quickstart ](/docs/modules/agents/quick_start) ​

For a quick start to working with agents, please check out [ this getting
started guide ](/docs/modules/agents/quick_start) . This covers basics like
initializing an agent, creating tools, and adding memory.

##  [ Concepts ](/docs/modules/agents/concepts) ​

There are several key concepts to understand when building agents: Agents,
AgentExecutor, Tools, Toolkits. For an in depth explanation, please check out
[ this conceptual guide ](/docs/modules/agents/concepts)

##  [ Agent Types ](/docs/modules/agents/agent_types/) ​

There are many different types of agents to use. For a overview of the
different types and when to use them, please check out [ this section
](/docs/modules/agents/agent_types/) .

##  [ Tools ](/docs/modules/agents/tools/) ​

Agents are only as good as the tools they have. For a comprehensive guide on
tools, please see [ this section ](/docs/modules/agents/tools/) .

##  How To Guides  ​

Agents have a lot of related functionality! Check out c