Skip to main content
Integrations are a core component of LangChain. LangChain provides standard interfaces for several different components (language models, vector stores, etc) that are crucial when building LLM applications. Contributing an integration helps expand LangChain’s ecosystem and makes your service discoverable to millions of developers.

Why contribute an integration to LangChain?

Discoverability

LangChain is the most used framework for building LLM applications, with over 20 million monthly downloads.

Interoperability

LangChain components expose a standard interface, allowing developers to easily swap them for each other. If you implement a LangChain integration, any developer using a different component will easily be able to swap yours in.

Best Practices

Through their standard interface, LangChain components encourage and facilitate best practices (streaming, async, etc.) that improve developer experience and application performance.

Components to integrate

While any component can be integrated into LangChain, there are specific types of integrations we encourage more: Integrate these ✅: Not these ❌:
  • LLMs (Text-Completion Models): Deprecated in favor of Chat Models
  • Document Loaders: High maintenance burden
  • Key-Value Stores: Limited usage
  • Document Transformers: Niche use cases
  • Model Caches: Infrastructure concerns
  • Graphs: Complex abstractions
  • Message Histories: Storage abstractions
  • Callbacks: System-level components
  • Chat Loaders: Limited demand
  • Adapters: Edge case utilities

How to contribute an integration

1

Confirm eligibility

Verify that your integration is in the list of encouraged components we are currently accepting.
3

Pass standard tests

If applicable, implement support for LangChain’s standard test suite for your integration and successfully run them.
4
5

Add documentation

Open a PR to add documentation for your integration to the official LangChain docs.
An integration is only as useful as its documentation. To ensure a consistent experience for users, docs are required for all new integrations. We have a standard starting-point template for each type of integration for you to copy and modify.In a new PR to the LangChain docs repo, create a new file in the relevant directory under src/oss/python/integrations/<component_type>/integration_name.mdx using the appropriate template file:For reference docs, please open an issue on the repo so that a maintainer can add them.

Co-marketing

(Optional) Engage with the LangChain team for joint co-marketing.

I