1. 什么是 LangChain?
LangChain是一个强大的框架,旨在帮助开发人员使用语言模型构建端到端的应用程序。它提供了一套工具、组 件和接口,可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理 与语言模型的交互,将多个组件链接在一起,并集成额外的资源,例如 API 和数据库。
2. LangChain 包含哪些 核心概念?
2.1 LangChain 中 Components and Chains 是什么?
• Component :模块化的构建块,可以组合起来创建强大的应用程序;
• Chain :组合在一起以完成特定任务的一系列 Components(或其他 Chain);
注:一个 Chain 可能包括一个 Prompt 模板、一个语言模型和一个输出解析器,它们一起工作以 处理用户输入、生成响应并处理输出。
2.2 LangChain 中 Prompt Templates and Values 是什么?
• Prompt Template 作用:负责创建 PromptValue,这是最终传递给语言模型的内容
• Prompt Template 特点:有助于将用户输入和其他动态信息转换为适合语言模型的格式。PromptValues 是 具有方法的类,这些方法可以转换为每个模型类型期望的确切输入类型(如文本或聊天消息)。
2.3 LangChain 中 Example Selectors 是什么?
• 作用:当您想要在 Prompts 中动态包含示例时,Example Selectors 很有用。他们接受用户输入并返回一个 示例列表以在提示中使用,使其更强大和特定于上下文。
2.4 LangChain 中 Output Parsers 是什么?
• 作用: 负责将语言模型响应构建为更有用的格式
• 实现方法:
• 一种用于提供格式化指令
• 另一种用于将语言模型的响应解析为结构化格式
• 特点:使得在您的应用程序中处理输出数据变得更加容易。
2.5 LangChain 中 Indexes and Retrievers 是什么?
Index :一种组织文档的方式,使语言模型更容易与它们交互;
Retrievers:用于获取相关文档并将它们与语言模型组合的接口;
注:LangChain 提供了用于处理不同类型的索引和检索器的工具和功能,例如矢量数据库和文本拆分器。
2.6 LangChain 中 Chat Message History 是什么?
• Chat Message History 作用:负责记住所有以前的聊天交互数据,然后可以将这些交互数据传递回模型、汇 总或以其他方式组合;
• 优点:有助于维护上下文并提高模型对对话的理解
2.7 LangChain 中 Agents and Toolkits 是什么?
通过理解和利用这些核心概念,您可以利用 LangChain 的强大功能来构建适应性强、高效且能够处理复杂用例 的高级语言模型应用程序。
• Agent :在 LangChain 中推动决策制定的实体。他们可以访问一套工具,并可以根据用户输入决定调用哪个 工具;
• Tookits :一组工具,当它们一起使用时,可以完成特定的任务。代理执行器负责使用适当的工具运行代理。
通过理解和利用这些核心概念,您可以利用 LangChain 的强大功能来构建适应性强、高效且能够处理复杂用例 的高级语言模型应用程序。
3. 什么是 LangChain Agent?
• 介绍:LangChain Agent 是框架中驱动决策制定的实体。它可以访问一组工具,并可以根据用户的输入决定 调用哪个工具;
• 优点:LangCha