Skip to main content

LangChain 介绍

LangChain

LangChain 是一个用于开发由语言模型驱动的应用程序的框架。它使得应用程序能够:

  • 具有上下文感知能力:将语言模型连接到上下文来源(提示指令,少量的示例,需要回应的内容等)
  • 具有推理能力:依赖语言模型进行推理(根据提供的上下文如何回答,采取什么行动等)

这个框架由几个部分组成。

  • LangChain 库:Python 和 JavaScript 库。包含了各种组件的接口和集成,一个基本的运行时,用于将这些组件组合成链和代理,以及现成的链和代理的实现。
  • LangChain 模板:一系列易于部署的参考架构,用于各种任务。
  • LangServe:一个用于将 LangChain 链部署为 REST API 的库。
  • LangSmith:一个开发者平台,让你可以调试、测试、评估和监控基于任何 LLM 框架构建的链,并且与 LangChain 无缝集成。

图示展示了 LangChain 框架的层次组织结构,显示了跨多个层次的部分之间的相互连接。

这些产品一起简化了整个应用程序的生命周期:

  • 开发:在 LangChain/LangChain.js 中编写你的应用程序。使用模板作为参考,快速开始。
  • 生产化:使用 LangSmith 来检查、测试和监控你的链,这样你可以不断改进并有信心地部署。
  • 部署:使用 LangServe 将任何链转换为 API。

LangChain 库

LangChain 包的主要价值主张是:

  1. 组件:用于处理语言模型的可组合工具和集成。无论你是否使用 LangChain 框架的其余部分,组件都是模块化的,易于使用
  2. 现成的链:用于完成高级任务的组件的内置组合

现成的链使得开始变得容易。组件使得定制现有链和构建新链变得容易。

LangChain 库本身由几个不同的包组成。

  • langchain-core:基础抽象和 LangChain 表达式语言。
  • langchain-community:第三方集成。
  • langchain:构成应用程序认知架构的链、代理和检索策略。

开始使用

这里 是如何安装 LangChain,设置你的环境,并开始构建的方法。

我们建议你按照我们的 快速入门 指南,通过构建你的第一个 LangChain 应用程序来熟悉框架。

阅读我们的 安全 最佳实践,确保你在安全地使用 LangChain 进行开发。

note

这些文档主要关注 Python LangChain 库。点击这里 查看 JavaScript LangChain 库的文档。

LangChain 表达式语言 (LCEL)

LCEL 是一种声明性的组合链的方式。LCEL 从第一天开始就被设计为支持将原型投入生产,无需更改代码,从最简单的“提示 + LLM”链到最复杂的链。

  • 概述:LCEL 及其优点
  • 接口:LCEL 对象的标准接口
  • 如何:LCEL 的关键特性
  • 烹饪书:完成常见任务的示例代码

模块

LangChain 为以下模块提供了标准的、可扩展的接口和集成:

模型 I/O

与语言模型的接口

检索

与特定应用数据的接口

代理

让模型根据高级指令选择使用哪些工具

示例、生态系统和资源

用例

常见的端到端用例的演练和技术,如:

集成

LangChain 是一个丰富的工具生态系统的一部分,这些工具与我们的框架集成,并在其基础上构建。查看我们不断增长的 集成 列表。

指南

使用 LangChain 的最佳实践。

API 参考

前往参考部分,查看 LangChain 和 LangChain Experimental Python 包中所有类和方法的完整文档。

开发者指南

查看开发者指南,获取有关贡献的指南和帮助设置你的开发环境的帮助。