@langchain/community package contains community-maintained integrations for LangChain.js. These integrations extend LangChain’s core functionality with support for various third-party services, databases, and tools.
What’s in Community?
The community package includes:- Document Loaders - Load documents from files, web sources, and APIs
- Vector Stores - Store and search embeddings in various databases
- Retrievers - Retrieve relevant documents using different search strategies
- Chat Models - Connect to various LLM providers
- Embeddings - Generate embeddings using different providers
- Caches - Cache LLM responses in different backends
- Tools & Toolkits - Ready-to-use tools for agents
- Callbacks - Observability and monitoring integrations
Installation
Community vs Provider Packages
Community Package (@langchain/community):
- Contains many integrations in a single package
- Community-maintained
- All dependencies are optional peer dependencies
- Install only what you need
@langchain/openai, @langchain/anthropic):
- First-party integrations
- One package per provider
- Dependencies included
- More actively maintained
Key Integrations
Popular Document Loaders
- File Loaders: CSV, PDF, DOCX, EPUB, PPTX
- Web Loaders: Cheerio, Puppeteer, Playwright, FireCrawl
- Cloud Loaders: S3, Azure Blob Storage, Google Cloud Storage
- API Loaders: GitHub, Notion, Confluence, Jira
Popular Vector Stores
- Cloud: Chroma, Pinecone, Weaviate, Qdrant
- Self-hosted: FAISS, HNSWlib, LanceDB
- Database Extensions: PGVector, Supabase, Neon
- Enterprise: Azure AI Search, Elasticsearch, OpenSearch
Popular Retrievers
- Search APIs: Tavily, Arxiv
- Hybrid Search: BM25, Vespa
- Specialized: Zep (memory), Metal, Chaindesk
Usage Example
Environment Variables
Many integrations require API keys or connection strings. Use environment variables to configure them:getEnvironmentVariable utility.
Peer Dependencies
The community package lists all integrations as optional peer dependencies. Install only what you need:Contributing
The community package welcomes contributions! To add a new integration:- Follow the Integration Guide
- Add tests (unit and integration)
- Document your integration
- Submit a pull request
Support
Since integrations are community-maintained, support varies by integration:- Check the integration’s source code for implementation details
- File issues on GitHub
- Ask questions on the LangChain Forum
- Check the third-party service’s documentation
