自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (2)
  • 收藏
  • 关注

原创 Langchain极简教程: 九、一个完整的RAG案例

这是该LangChain极简入门系列的最后一讲。我们将利用过去9讲学习的知识,来完成一个具备完整功能集的LLM应用。该应用基于LangChain框架,以某PDF文件的内容为知识库,提供给用户基于该文件内容的问答能力。我们利用LangChain的QA chain,结合Chroma来实现PDF文档的语义化搜索。示例代码所引用的是,该PDF文档共84页。本讲的完整代码请参考安装必要的Python包下载PDF文件AWS Serverless Developer Guide!加载PDF文件len.')

2024-12-17 10:59:16 973

原创 Langchain极简教程: 八、代理 (Agent)

Agent也就是代理,它的核心思想是利用一个语言模型来选择一系列要执行的动作。LangChain的链将一系列的动作硬编码在代码中。而在Agent中,语言模型被用作推理引擎,来确定应该执行哪些动作以及以何种顺序执行。Agent代理Tool工具Toolkit工具包代理执行器接下来我们做逐一介绍。注,该极简入门系列将略过工具包的介绍,这部分内容将包含在进阶系列中。本节课程中,我们学习了什么是Agent代理,Tool工具,以及代理执行器,并学习了它们的基本用法。下一讲我们将学习Callback回调。

2024-12-17 10:45:10 1630

原创 Langchain极简教程: 七、记忆组件

大多数LLM应用都具有对话界面。对话的一个重要组成部分是对话历史中的信息。我们将这种存储对话历史中的信息的能力称为"记忆"。LangChain提供了一系列记忆相关的实用工具。这些工具可以单独使用,也可以无缝地集成到一条链中。记忆组件需要支持读取写入注,每条链定义了核心执行逻辑,期望某些输入。一些输入来自用户,另一些可能来自记忆组件。接收到初始用户输入之后,执行核心逻辑之前,链从记忆组件读取历史,并以此增强用户输入。

2024-12-17 10:43:03 645

原创 Langchain极简教程: 六、链

单一的LLM对于简单的应用场景已经足够,但是更复杂的应用程序需要将LLM串联在一起,需要多LLM协同工作。LangChain提出了链的概念,为这种“链式”应用程序提供了Chain接口。Chain定义组件的调用序列,其中可以包括其他链。链大大简化复杂应用程序的实现,并使其模块化,这也使调试、维护和改进应用程序变得更容易。本节课程中,我们学习了LangChain提出的最重要的概念 - 链(Chain) ,介绍了如何使用链,并分享了如何利用开源社区的力量 - 从加载链,让LLM开发变得更加轻松。

2024-12-17 10:39:33 387

原创 Langchain极简教程: 五、输出解析器

LLM的输出为文本,但在程序中除了显示文本,可能希望获得更结构化的数据。这就是输出解析器(Output Parsers)的用武之地。LangChain为输出解析器提供了基础类。不同的输出解析器都继承自该类。:返回指令指定LLM的输出该如何格式化,该函数在实现类中必须重写。基类中的函数实现如下:parse:解析LLM的输出文本为特定的结构。函数签名如下::基于提示词上下文解析LLM的输出文本为特定结构。本节课程中,我们学习了什么是输出解析器。

2024-12-17 10:37:48 194

原创 Langchain极简教程: 四、提示词

提示词(Prompt)是指向模型提供的输入。这个输入通常由多个元素构成。LangChain提供了一系列的类和函数,简化构建和处理提示词的过程。提示词模板(Prompt Template):对提示词参数化,提高代码的重用性。示例选择器(Example Selector):动态选择要包含在提示词中的示例本节课程中,我们简要介绍了LLM中的重要概念提示词并学习了如何使用Langchain的重要组件提示词模板。

2024-12-17 10:35:19 664

原创 Langchain极简教程: 三、数据连接

LLM应用往往需要用户特定的数据,而这些数据并不属于模型的训练集。LangChain文档加载器:从不同的数据源加载文档文档转换器:拆分文档,将文档转换为问答格式,去除冗余文档,等等文本嵌入模型:将非结构化文本转换为浮点数数组表现形式,也称为向量向量存储:存储和搜索嵌入数据(向量)检索器:提供数据查询的通用接口我们通过下一段落的实践,来介绍这些组件的使用。本节课程中,我们简要介绍了Langchain了解常见的文档加载器,了解常见的文档拆分方法。

2024-12-16 17:29:29 712

原创 Langchain极简教程: 二、模型

大语言模型 (LLM)聊天模型 (Chat Models)在后续的内容中,为简化描述,我们将使用LLM来指代大语言模型。Langchain的支持众多模型供应商,包括OpenAI、ChatGLM、HuggingFace等。本教程中,我们将以OpenAI为例,后续内容中提到的模型默认为OpenAI提供的模型。Langchain的封装,比如,对OpenAI模型的封装,实际上是指的是对OpenAI API的封装。本节课程中,我们学习了模型的基本概念,LLM与聊天模型的差异,并基于Langchain。

2024-12-16 17:11:42 1598

原创 Langchain极简教程: 一、Hello Langchain

大型语言模型(LLM)正在成为一种具有变革性的技术,使开发人员能够构建以前无法实现的应用程序。然而,仅仅依靠LLM还不足以创建一个真正强大的应用程序。它还需要其他计算资源或知识来源。Langchain基于文档数据的问答聊天机器人代理OpenAI是LLM生态的模型层最大的玩家之一。大家目前熟知的GPT-3.5GPT-4等模型都是OpenAI的产品。它的API允许开发人员通过简单的API调用来访问这些模型。本节课程中,我们简要介绍了LangchainOpenAI以及它们的关系,并完成了第一个。

2024-12-16 17:07:30 333

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除