--- sidebar_position: 0 --- # Introduction **LangChain** is a framework for developing applications powered by language models. It enables applications that are: - **Data-aware**: connect a language model to other sources of data - **Agentic**: allow a language model to interact with its environment The main value props of LangChain are: 1. **Components**: abstractions for working with language models, along with a collection of implementations for each abstraction. Components are modular and easy-to-use, whether you are using the rest of the LangChain framework or not 2. **Off-the-shelf chains**: a structured assembly of components for accomplishing specific higher-level tasks Off-the-shelf chains make it easy to get started. For more complex applications and nuanced use-cases, components make it easy to customize existing chains or build new ones. ## Get started [Here’s](/docs/get_started/installation.html) how to install LangChain, set up your environment, and start building. We recommend following our [Quickstart](/docs/get_started/quickstart.html) guide to familiarize yourself with the framework by building your first LangChain application. _**Note**: These docs are for the LangChain [Python package](https://github.com/hwchase17/langchain). For documentation on [LangChain.js](https://github.com/hwchase17/langchainjs), the JS/TS version, [head here](https://js.langchain.com/docs)._ ## Modules LangChain provides standard, extendable interfaces and external integrations for the following modules, listed from least to most complex: #### [Model I/O](/docs/modules/model_io/) Interface with language models #### [Data connection](/docs/modules/data_connection/) Interface with application-specific data #### [Chains](/docs/modules/chains/) Construct sequences of calls #### [Agents](/docs/modules/agents/) Let chains choose which tools to use given high-level directives #### [Memory](/docs/modules/memory/) Persist application state between runs of a chain #### [Callbacks](/docs/modules/callbacks/) Log and stream intermediate steps of any chain ## Examples, ecosystem, and resources ### [Use cases](/docs/use_cases/) Walkthroughs and best-practices for common end-to-end use cases, like: - [Chatbots](/docs/use_cases/chatbots/) - [Answering questions using sources](/docs/use_cases/question_answering/) - [Analyzing structured data](/docs/use_cases/tabular.html) - and much more... ### [Guides](/docs/guides/) Learn best practices for developing with LangChain. ### [Ecosystem](/docs/ecosystem/) LangChain is part of a rich ecosystem of tools that integrate with our framework and build on top of it. Check out our growing list of [integrations](/docs/ecosystem/integrations/) and [dependent repos](/docs/ecosystem/dependents.html). ### [Additional resources](/docs/additional_resources/) Our community is full of prolific developers, creative builders, and fantastic teachers. Check out [YouTube tutorials](/docs/additional_resources/youtube.html) for great tutorials from folks in the community, and [Gallery](https://github.com/kyrolabs/awesome-langchain) for a list of awesome LangChain projects, compiled by the folks at [KyroLabs](https://kyrolabs.com).

Support

Join us on [GitHub](https://github.com/hwchase17/langchain) or [Discord](https://discord.gg/6adMQxSpJS) to ask questions, share feedback, meet other developers building with LangChain, and dream about the future of LLM’s. ## API reference Head to the [reference](https://api.python.langchain.com) section for full documentation of all classes and methods in the LangChain Python package.