集成是 LangChain 的核心组件。
LangChain 为多个不同的组件(语言模型、向量存储等)提供标准接口,这些组件在构建 LLM 应用时至关重要。实现新的集成有助于扩展 LangChain 的生态系统,使您的服务能够被数百万开发者发现。
为什么要实现 LangChain 集成?
Discoverability
LangChain 是构建 LLM 应用最常用的框架,月下载量超过 2 亿次。
Interoperability
LangChain 组件公开标准接口,允许开发者轻松地在它们之间切换。如果您实现了 LangChain 集成,任何使用不同组件的开发者都能轻松地换用您的组件。
Best Practices
通过标准接口,LangChain 组件鼓励并促进最佳实践(流式处理、异步等),从而改善开发者体验和应用程序性能。
待集成的组件
虽然任何组件都可以集成到 LangChain,但我们特别鼓励以下类型的集成:
集成这些 ✅:
- - **聊天模型**:使用最活跃的组件类型
- - **Tools/Toolkits**:启用代理能力
- - **检索器**:RAG 应用的核心
- - **嵌入模型**:向量操作的基础
- - **向量存储**:语义搜索的必需品
- - **中间件**:使用钩子扩展代理行为
- - **沙箱**:使用深度代理安全运行代码
Additional third-party sandbox integration criteria
请注意,我们仅在以下情况下推荐第三方沙箱集成:
- 该集成由提供沙箱的公司编写和维护。 - **Or** 该集成被广泛使用,即该集成在 PyPI 或 npm 上的日下载量必须至少达到 10,000 次才会被考虑推荐。
不要这些 ❌:
- LLM(文本补全模型):已被弃用,改用 聊天模型
- - **文档加载器**:维护负担高
- - **键值存储**:使用场景有限
- 文档转换器:小众使用场景
- 模型缓存:基础设施问题
- 图:复杂的抽象
- 消息历史: 存储抽象
- 回调: 系统级组件
- 聊天加载器: 需求有限
- 适配器: 边缘情况工具
如何贡献集成
Implement your package
How to implement a LangChain integration
Pass standard tests
如适用,实现对 LangChain 的 标准测试 套件的支持,并在您的集成中成功运行它们。
Publish integration
How to publish an integration
Add documentation
打开 PR,为您的集成添加官方 LangChain 文档。
Integration documentation guide
集成只有在其文档有用时才有用。为确保用户体验一致,所有新集成都需要文档。我们为每种类型的集成提供了标准起点模板,供您复制和修改。
在新的 LangChain 文档仓库中,在相关目录下创建新文件 src/oss/python/integrations/<component_type>/integration_name.mdx ,使用相应的模板文件:
- 聊天模型 - 工具和工具包 - 中间件 - 检索器 - 即将推出 - 文本分割器 - 即将推出 - 嵌入模型 - 即将推出 - 向量存储 - 文档加载器 - 即将推出 - 键值存储 - 即将推出
Co-marketing
(可选)与 LangChain 团队合作进行联合 co-marketing.