LangChain入门到实战:1-从入门到构建智能体的概念全景

概念指南

本指南更广泛地讲解了 LangChain 框架和 AI 应用背后的关键概念。

我们建议您在深入阅读概念指南之前至少阅读一个教程。这将提供实用的背景知识,帮助您更轻松地理解此处讨论的概念。

本概念指南不包含分步说明或具体的实现示例——这些内容可在操作指南和教程中找到。有关详细的参考资料,请参阅 API 参考。

概述

为什么选择 LangChain?:概述 LangChain 提供的价值。
架构:LangChain 生态系统中包的组织方式。

概念

  • 聊天模型:通过聊天 API 公开的 LLM,用于处理消息序列作为输入并输出消息。
  • 消息:聊天模型中的通信单位,用于表示模型的输入和输出。
  • 聊天历史记录:以消息序列表示的对话,在用户消息和模型响应之间交替。
  • 工具:一个函数,其关联的模式定义了函数的名称、描述及其接受的参数。
  • 工具调用:一种聊天模型 API,它接受工具模式和消息作为输入,并返回这些工具的调用作为输出消息的一部分。
  • 结构化输出:一种使聊天模型以结构化格式(例如与给定模式匹配的 JSON)响应的技术。
  • 内存:关于对话的信息,这些信息会被持久化,以便在未来的对话中使用。
  • 多模态性:能够处理不同形式的数据,例如文本、音频、图像和视频。
  • 可运行接口:许多 LangChain 组件和 LangChain 表达式语言所基于的基础抽象。
  • 流式传输:LangChain 流式传输 API,用于在结果生成时将其显示出来。
  • LangChain 表达式语言 (LCEL):一种用于编排 LangChain 组件的语法。最适合用于较简单的应用程序。
  • 文档加载器:将源加载为文档列表。
  • 检索:信息检索系统可以根据查询从数据源检索结构化或非结构化数据。
  • 文本分割器:将长文本分割成可单独索引的较小块,以实现细粒度检索。
  • 嵌入模型:在向量空间中表示文本或图像等数据的模型。
  • 向量存储:存储向量及其相关元数据并对其进行高效搜索。
  • 检索器:根据查询从知识库返回相关文档的组件。
  • 检索增强生成 (RAG):一种通过将语言模型与外部知识库相结合来增强语言模型的技术。
  • 代理:使用语言模型选择要执行的操作序列。代理可以通过工具与外部资源交互。
  • 提示模板:用于分解模型“提示”(通常是一系列消息)的静态部分的组件。可用于序列化、版本控制和重用这些静态部分。
  • 输出解析器:负责获取模型的输出并将其转换为更适合下游任务的格式。输出解析器主要用于工具调用和结构化输出的普遍应用之前。
  • 小样本提示:一种通过在提示中提供一些待执行任务的示例来提升模型性能的技术。
  • 示例选择器:用于根据给定输入从数据集中选择最相关的示例。示例选择器在小样本提示中用于选择提示的示例。
  • 异步编程:在异步环境中使用 LangChain 需要了解的基础知识。
  • 回调:回调支持在内置组件中执行自定义辅助代码。回调用于从 LangChain 中的 LLM 流式传输输出、跟踪应用程序的中间步骤等。
  • 跟踪:记录应用程序从输入到输出所采取的步骤的过程。跟踪对于调试和诊断复杂应用程序中的问题至关重要。
  • 评估:评估人工智能应用程序性能和有效性的过程。这涉及根据一组预先定义的标准或基准测试模型的响应,以确保其符合所需的质量标准并实现预期目的。此过程对于构建可靠的应用程序至关重要。
  • 测试:验证集成或应用程序组件是否按预期运行的过程。测试对于确保应用程序正常运行以及代码库更改不会引入新的错误至关重要。

词汇表

  • AIMessageChunk:来自 AI 消息的部分响应。用于流式传输来自聊天模型的响应。
  • AIMessage:表示来自 AI 模型的完整响应。
  • astream_events:流式传输来自 LCEL 链的粒度信息。
  • BaseTool:LangChain 中所有工具的基类。
  • batch:用于执行带有批量输入的可运行程序。
  • bind_tools:允许模型与工具交互。
  • Caching 缓存:存储结果以避免对聊天模型的重复调用。
  • Chat models 聊天模型:处理多种数据模态的聊天模型。
  • Configurable runnables 可配置的可运行程序:创建可配置的可运行程序。
  • Context window 上下文窗口:聊天模型可以处理的最大输入大小。
  • Conversation patterns 对话模式:聊天交互中的常见模式。
  • Document 文档:LangChain 对文档的表示。
  • Embedding models 嵌入模型:为各种数据类型生成向量嵌入的模型。
  • HumanMessage:表示来自人类用户的消息。
  • InjectedState:注入到工具函数中的状态。
  • InjectedStore:可注入到工具中用于数据持久化的存储。
  • InjectedToolArg:将参数注入工具函数的机制。
  • input and output types 输入和输出类型:Runnable 中用于输入和输出的类型。
  • Integration packages 集成包:与 LangChain 集成的第三方包。
  • Integration tests 集成测试:用于验证组件间交互正确性的测试,通常通过访问支持集成的底层 API 来运行。
  • invoke:调用 Runnable 的标准方法。
  • JSON mode JSON 模式:以 JSON 格式返回响应。
  • langchain-community:由社区驱动的 LangChain 组件。
  • langchain-core:核心 langchain 包。包含基础接口和内存实现。
  • langchain:用于更高级别组件(例如,一些预构建的链)的包。
  • langgraph:LangChain 强大的编排层。用于构建复杂的管道和工作流。
  • langserve:用于将 LangChain Runnables 部署为 REST 端点。使用 FastAPI。主要用于 LangChain Runnables,目前未与 LangGraph 集成。
  • LLMs (legacy) LLM(旧版):较旧的语言模型,以字符串作为输入并返回字符串作为输出。
  • Managing chat history 管理聊天记录:维护和管理聊天记录的技术。
  • OpenAI 格式:OpenAI 的聊天模型消息格式。
  • RunnableConfig 的传播:通过 Runnables 传播配置。如果您使用 Python 3.9、3.10 和异步版本,请阅读此文。
  • rate-limiting:用于聊天模型的客户端速率限制。
  • RemoveMessage:用于从聊天记录中删除消息的抽象概念,主要用于 LangGraph。
  • role:表示聊天消息的角色(例如,用户、助手)。
  • RunnableConfig:用于将运行时信息传递给 Runnable(例如, 、 、 、 、 、 )。run_namerun_idtagsmetadatamax_concurrencyrecursion_limitconfigurable
  • Standard parameters for chat models 聊天模型的标准参数:例如 API 密钥、 和 .tempmax_tokens 等参数
  • Standard tests 标准测试:一组定义的单元测试和集成测试,所有集成都必须通过。
  • stream:用于从 Runnable 或图流式传输输出。
  • Tokenization:将数据转换为 token 以及将 token 转换为 token 的过程。
  • Tokens:语言模型在底层读取、处理和生成的基本单元。
  • Tool artifacts:将 artifacts 添加到工具的输出中,这些 artifacts 不会发送到模型,但可用于下游处理。
  • Tool binding:将工具绑定到模型。
  • @tool:用于在 LangChain 中创建工具的装饰器。
  • Toolkits:可一起使用的工具集合。
  • ToolMessage:表示包含工具执行结果的消息。
  • Unit tests 单元测试:用于验证各个组件正确性的测试,独立运行,无需访问互联网。
  • Vector stores 向量存储:专门用于存储和高效搜索向量嵌入的数据存储。
  • with_structured_output:聊天模型的辅助方法,原生支持工具调用,以获取与 Pydantic、JSON 模式或函数指定的模式匹配的结构化输出。
  • with_types:用于覆盖可运行对象的输入和输出类型的方法。在处理复杂的 LCEL 链并使用 LangServe 部署时非常有用。

主要页面链接

操作指南:https://python.langchain.com/docs/how_to/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值