Skip to main content

Contribute Integrations

LangChain integrations are packages that provide access to language models, vector stores, and other components that can be used in LangChain.

This guide will walk you through how to contribute new integrations to LangChain, by publishing an integration package to PyPi, and adding documentation for it to the LangChain Monorepo.

These instructions will evolve over the next few months as we improve our integration processes.

Components to Integrate

info

See the Conceptual Guide for an overview of all components supported in LangChain

While any component can be integrated into LangChain, at this time we are only accepting new integrations in the docs of the following kinds:

Integrate these ✅Not these ❌
  • Chat Models
  • Tools/Toolkits
  • Retrievers
  • Document Loaders
  • Vector Stores
  • Embedding Models
  • LLMs (Text-Completion Models)
  • Key-Value Stores
  • Document Transformers
  • Model Caches
  • Graphs
  • Message Histories
  • Callbacks
  • Chat Loaders
  • Adapters
  • Other abstractions

How to contribute an integration

The only step necessary to "be" a LangChain integration is to add documentation that will render on this site (https://python.langchain.com/).

As a prerequisite to adding your integration to our documentation, you must:

  1. Confirm that your integration is in the list of components we are currently accepting.
  2. Implement your package and publish it to a public github repository.
  3. Implement the standard tests for your integration and successfully run them.
  4. Publish your integration by publishing the package to PyPi and add docs in the docs/docs/integrations directory of the LangChain monorepo.

Once you have completed these steps, you can submit a PR to the LangChain monorepo to add your integration to the documentation.

Further Reading

To get started, let's learn how to bootstrap a new integration package for LangChain.


Was this page helpful?