⚡ 构建上下文感知推理应用程序 ⚡
寻找 JS/TS 库?查看 LangChain.js。
为了帮助您更快地将 LangChain 应用程序推向生产环境,请查看 LangSmith。 LangSmith 是一个统一的开发者平台,用于构建、测试和监控 LLM 应用程序。 填写 此表单 与我们的销售团队联系。
使用 pip:
pip install langchain
使用 conda:
conda install langchain -c conda-forge
LangChain 是一个用于开发由大型语言模型(LLMs)驱动的应用程序的框架。
对于这些应用程序,LangChain 简化了整个应用程序生命周期:
- 开源库:使用 LangChain 的开源 构建模块、组件 和 第三方集成 构建您的应用程序。使用 LangGraph 构建具有一流流媒体和人机协作支持的有状态代理。
- 生产化:使用 LangSmith 检查、监控和评估您的应用程序,以便您可以不断优化并自信地部署。
- 部署:使用 LangGraph Cloud 将您的 LangGraph 应用程序转换为生产就绪的 API 和助手。
langchain-core
:基础抽象和LangChain表达语言。langchain-community
:第三方集成。- 一些集成进一步拆分为合作伙伴包,仅依赖于**
langchain-core
。示例包括langchain_openai
和langchain_anthropic
**。
- 一些集成进一步拆分为合作伙伴包,仅依赖于**
langchain
:构成应用程序认知架构的链、代理和检索策略。LangGraph
:一个用于构建强大且有状态的多参与者应用程序的库,通过将步骤建模为图中的边和节点,使用LLMs。与LangChain无缝集成,但也可以独立使用。
- LangSmith:一个开发者平台,使您能够调试、测试、评估和监控基于任何 LLM 框架构建的链,并与 LangChain 无缝集成。
- LangGraph Cloud: 将您的 LangGraph 应用程序转变为可投入生产的 API 和助手。
❓ 使用 RAG 进行问答
- 文档
- 端到端示例: Chat LangChain 和 repo
🧱 提取结构化输出
- 文档
- 端到端示例: SQL Llama2 模板
🤖 聊天机器人
- 文档
- 端到端示例: Web LangChain (网页研究聊天机器人) 和 repo
还有更多!请访问文档的 教程 部分以获取更多信息。
LangChain 库的主要价值主张包括:
- 组件:用于处理语言模型的可组合构建块、工具和集成。组件是模块化的,易于使用,无论您是否使用 LangChain 框架的其余部分。
- 现成链:内置的组件组合,用于完成更高级的任务。
现成链使得入门变得简单。组件使得自定义现有链和构建新链变得容易。
LCEL 是许多 LangChain 组件的基础,是一种声明式的链式组合方式。LCEL 从第一天起就设计为支持将原型投入生产,无需代码更改,从最简单的“提示 + LLM”链到最复杂的链。
组件分为以下 模块:
📃 模型输入/输出
这包括 提示管理、提示优化、一个通用接口用于 聊天模型 和 LLMs,以及处理 模型输出 的常用工具。
📚 检索
检索增强生成涉及从各种来源 加载数据、准备数据,然后 进行搜索(即从中检索),以便在生成步骤中使用。
🤖 代理
代理允许 LLM 自主决定如何完成任务。代理会决定采取哪些行动,然后执行该行动,观察结果,并重复该过程直到任务完成。LangChain 提供了 代理的标准接口,以及用于构建自定义代理的 LangGraph。
请查看 这里 获取完整文档,其中包括:
- 介绍: 框架概述和文档结构。
- 教程: 如果您想构建特定内容或更喜欢动手学习,请查看我们的教程。这是开始的最佳地方。
- 操作指南: 解答“我该如何….?”类型的问题。这些指南以目标为导向,具体明确;旨在帮助您完成特定任务。
- 概念指南: 框架关键部分的概念性解释。
- API 参考: 每个类和方法的详细文档。
- 🦜🛠️ LangSmith: 跟踪和评估您的语言模型应用程序和智能代理,帮助您从原型转向生产环境。
- 🦜🕸️ LangGraph: 创建有状态的多参与者应用程序,使用LLMs。与LangChain无缝集成,但也可以独立使用。
- 🦜🏓 LangServe: 将LangChain可运行组件和链部署为REST API。
作为一个快速发展的领域中的开源项目,我们非常欢迎各种形式的贡献,无论是新功能、改善基础设施,还是更好的文档。
有关如何贡献的详细信息,请参见 这里。