操操作指南
这里可以找到“我如何……?”这类问题的答案。 这些指南是以目标为导向的和具体的;旨在帮助您完成特定任务。 如需概念性解释,请参阅概念指南。 如需端到端的详细操作说明,请参阅教程。 如需了解每个类和函数的完整描述,请参阅API 参考文档。
安装
关键特性
这突出了使用 LangChain 的核心功能。
LangChain 表达式语言 (LCEL)
LangChain 表达式语言是一种创建任意自定义链的方法。它基于 Runnable 协议。
LCEL 速查表: 快速了解如何使用主要的 LCEL 原语。
- 如何:链式运行可运行对象
- 如何:流式运行可运行对象
- 如何:并行调用可运行对象
- 如何:将运行时参数附加到可运行对象
- 如何:运行自定义函数
- 如何:将参数从一个步骤传递到下一个步骤
- 如何:向链的状态添加值
- 如何:添加消息历史
- 如何:在链内路由执行
- 如何:添加备用方案
- 如何:取消执行
组件
这些是构建应用程序时可以使用的基础核心模块。
提示模板
提示模板 负责将用户输入格式化为可传递给语言模型的格式。
示例选择器
示例选择器 负责选择正确的少样本示例以传递给提示词。
聊天模型
聊天模型 是较新形式的语言模型,它们接收消息并输出一条消息。
- 如何:执行函数/工具调用
- 如何:让模型返回结构化输出
- 如何:缓存模型响应
- 指南:创建自定义聊天模型类
- 如何:获取对数概率
- 如何:流式返回响应
- 如何使用:跟踪令牌使用情况
- 指南:将工具输出传递给聊天模型
- 如何:流式调用工具
- 如何:few shot prompt 工具行为
- 如何:强制调用特定工具
- 如何:禁用并行工具调用
- 如何:在一行中初始化任何模型
消息
消息 是聊天模型的输入和输出。它们具有某些 content 和 role,用于描述消息的来源。
大型语言模型
LangChain 所称的LLMs是较旧形式的语言模型,它们接收字符串输入并输出字符串。
输出解析器
输出解析器 负责将 LLM 的输出解析为更结构化的格式。
文档加载器
文档加载器 负责从各种来源加载文档。
文本分割器
文本分割器 接收文档并将其拆分为可用于检索的块。
嵌入模型
嵌入模型 接受一段文本并为其创建一个数值化表示。
向量存储
向量数据库 是能够高效存储和检索嵌入向量的数据库。
检索器
检索器 负责接收查询并返回相关文档。
- 如何使用向量存储检索数据
- 如何:生成多个查询以检索数据
- 如何使用上下文压缩来压缩检索到的数据
- 指南:编写自定义检索器类
- 如何:合并多个检索器的结果
- 如何:为每个文档生成多个嵌入
- 如何:检索分块的完整文档
- 如何:生成元数据过滤器
- 如何:创建时间加权检索器
- 如何减少检索延迟
索引
索引化是使您的向量存储与底层数据源保持同步的过程。
工具
LangChain 工具 包含对工具的描述(用于传递给语言模型)以及要调用的函数的实现。
- 如何:创建工具
- 如何使用:使用内置工具和工具包
- 如何使用聊天模型调用工具
- 指南:将工具输出传递给聊天模型
- 如何:few shot prompt 工具行为
- 如何:将运行时值传递给工具
- 如何:处理工具错误
- 如何:强制调用特定工具
- 如何:禁用并行工具调用
- 如何:在自定义工具中访问
RunnableConfig对象 - 如何:从自定义工具中的子运行中流式传输事件
- 如何:从工具返回工件
- 如何:将 Runnables 转换为工具
- 如何:为模型添加临时工具调用功能
代理
如需有关代理的深入操操作指南,请查看 LangGraph 文档。
回调函数
回调允许您挂钩到LLM应用程序执行的各个阶段。
自定义
LangChain 的所有组件都可以轻松扩展以支持您自己的版本。
生成式UI
多模态
使用案例
这些指南涵盖特定用例的详细信息。
RAG 问答
检索增强生成(RAG)是一种将大语言模型与外部数据源连接起来的方法。 关于 RAG 的高级教程,请查看 此指南。
提取
提取是指使用大型语言模型(LLM)从非结构化文本中提取结构化信息。 关于提取的高级教程,请查看 此指南。
聊天机器人
聊天机器人涉及使用大型语言模型(LLM)进行对话。 关于构建聊天机器人的高级教程,请查看本指南。
查询分析
查询分析是利用大语言模型生成查询以发送给检索器的任务。 关于查询分析的高级教程,请查看此指南。
SQL + CSV 问答
您可以使用大型语言模型(LLMs)对表格数据进行问答。 如需了解高级教程,请查看此指南。
图数据库问答
您可以使用大型语言模型对图数据库进行问答。 如需高级教程,请查看 此指南。
LangGraph.js
LangGraph.js 是 LangChain 的一个扩展,旨在通过将步骤建模为图中的边和节点,构建强大且具有状态的多参与者 LLM 应用程序。
LangGraph.js 文档目前托管在另一个网站上。 您可以在此处浏览 LangGraph.js 使用指南。
LangSmith
LangSmith 可以让你紧密地追踪、监控和评估你的 LLM 应用。 它与 LangChain 和 LangGraph.js 无缝集成,你可以在构建过程中使用它来检查和调试链的各个步骤。
LangSmith 文档托管在单独的网站上。 您可以在此处查阅 LangSmith 操操作指南,但我们将重点介绍以下与 LangChain 特别相关的部分:
评估
评估性能是构建大语言模型(LLM)驱动应用的关键环节。 LangSmith 协助完成该流程的每一步,从创建数据集、定义指标到运行评估器。
要了解更多,请查看 LangSmith 评估指南。
追踪
追踪功能可为您的链和代理提供可观测性,对于诊断问题至关重要。
你可以查看与通用追踪相关的操操作指南,位于 LangSmith 文档的这一部分。