Langchain 如何工作

How does LangChain work?

LangChain是如何工作的?

Let’s consider our initial example where we upload the US Constitution PDF and pose questions to it. In this scenario, LangChain compiles the data from the PDF and organizes it.

让我们考虑我们最初的例子,我们上传美国宪法PDF并向它提出问题。在这个场景中,LangChain编译PDF中的数据并对其进行组织。

Although we’ve mentioned a PDF, the data source could be diverse: a text file, a Microsoft Word document, a YouTube transcript, a website, and more. LangChain collates this data, subsequently dividing it into manageable chunks. Once segmented, these chunks are saved in a vector store.

虽然我们已经提到了PDF,但是数据源可以是多种多样的:文本文件、Microsoft Word文档、YouTube记录、网站等等。LangChain整理这些数据,然后将其分成可管理的块。一旦分割,这些块就保存在矢量存储中。

For illustration, let’s say our PDF contains the text displayed on the left, termed the text corpus. LangChain will segment this text into smaller chunks.

举例来说,假设我们的PDF包含显示在左侧的文本,称为文本语料库。LangChain将此文本分割成更小的块。

For instance, one chunk might read “GPT is a great conversational tool …”, followed by “if you ask ChatGPT about general knowledge …”. These are distinct sections of the chunked text.

例如,一个块可能是“GPT是一个伟大的会话工具……”,然后是“如果你问ChatGPT关于一般知识……”。这些是分块文本的不同部分。

Our large language model (LLM) will then transform this chunked text into embeddings.

然后,我们的大型语言模型(LLM)将把这些分块文本转换为嵌入。

Embeddings are simply numerical representations of the data. The text chunk is rendered into a numerical vector, which is then stored in a vector store/database.

嵌入只是数据的数字表示。文本块被渲染成一个数字向量,然后存储在一个向量存储库/数据库中。

You might question the necessity of this conversion. Data is multifaceted, encompassing text, images, audio, and video. To assign meaningful interpretations to such diverse content forms, they must be translated into numerical vectors.

你可能会质疑这种转换的必要性。数据是多方面的,包括文本、图像、音频和视频。为了给如此多样的内容形式赋予有意义的解释,它们必须被转换成数字载体。

This translation from chunks to embeddings employs various machine learning algorithms. These algorithms categorize the data, and the resultant classifications are saved in the vector database.

这种从块到嵌入的转换使用了各种机器学习算法。这些算法对数据进行分类,并将分类结果保存在向量数据库中。

Querying the Vector Store and Generating a Completion with a LLM.

使用LLM查询Vector Store和生成补全。

When a user poses a question, this inquiry is also converted into an embedding, anumerical vector representation. This vector is juxtaposed with existing vectors in the database to perform a similarity search. The database identifies vectors most akin to the query and retrieves the chunks from which these vectors originated.

当用户提出问题时,该查询也被转换为嵌入的数值向量表示。该向量与数据库中的现有向量并置以执行相似性搜索。数据库识别与查询最相似的向量,并检索这些向量源自的块。

With existing vectors in the database to perform a similarity search. The database identifies vectors most akin to the query and retrieves the chunks from which these vectors originated.

与数据库中已有的向量执行相似度搜索。数据库识别与查询最相似的向量,并检索这些向量源自的块。

After extracting the pertinent chunks taht generated those vectors. We generate a completion with our LLM and subsequently produce a response.

在提取生成这些向量的相关块之后。我们用LLM生成一个完成,然后生成一个响应。

In all, this turns your document into a mini Google search engine, enabling query-based searches.

总之,这将把您的文档变成一个迷你的Google搜索引擎,支持基于查询的搜索。

Overall, LangChain can be harnessed to craft automated apps or workflows.

总的来说,LangChain可以用来制作自动化的应用程序或工作流。

For instance, one could design a YouTube script generator or a medium article script generator, we’ll build one in the next chapter. LangChain can also be employed as a web research tool, capable of summarizing voluminous texts such as documents, articles, research papers, and event books. Moreover, LangChain can be utilized to fashion question-answering systems. By inputting our documents, PDFs, or books, we can solicit answers to our queries.

例如,一个人可以设计一个YouTube脚本生成器或一个中等文章脚本生成器,我们将在下一章中构建一个。LangChain也可以作为一个网络研究工具,能够总结大量的文本,如文件、文章、研究论文和活动记录。此外,还可以利用LangChain来设计问答系统。通过输入我们的文档、pdf文件或书籍,我们可以请求对我们问题的答案。

Envision a scenario where one is perusing legal documents, typically necessitating a lawyer’s expertise. Now, one can input a legal document or even a medical research paper into a LangChain app and pose questions to derive insights.

设想这样一个场景:一个人正在仔细阅读法律文件,通常需要律师的专业知识。现在,人们可以在LangChain应用程序中输入一份法律文件,甚至是一篇医学研究论文,并提出问题以获得见解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/32243.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

@Value+@ConfigurationProperties+@PropertySource

Value: 这个注解用于注入字面量或来自属性文件的值。它可以用于字段、构造函数参数、方法参数等。例如,Value("${property.name}") 会注入名为 property.name 的属性值。 ConfigurationProperties: 这个注解用于将配置属性映射到一…

红队攻防渗透技术实战流程:中间件安全:IISNGINXAPACHETOMCAT

红队攻防渗透实战 1. 中间件安全1.1 中间件-IIS-短文件&解析&蓝屏等1.2 中间件-Nginx-文件解析&命令执行等1.2.1 后缀解析 文件名解析1.2.2 cve_2021_23017 无EXP有POC1.2.3 cve_2017_7529 意义不大1.3 中间件-Apache-RCE&目录遍历&文件解析等1.3.1 cve_20…

荷兰与法国战平,双方能携手出现?

就在昨天晚上,荷兰队经历了90分钟的鏖战,最终0-0与法国队握手言和。此役,哈维-西蒙斯为荷兰队打进一球,但进球被判无效。从目前的积分形势来看,双方基本上确定携手晋级16强赛。本场比赛,荷兰队后卫内森-阿克…

GPT 模型简史:从 GPT-1 到 GPT-4

文章目录 GPT-1GPT-2GPT-3从 GPT-3 到 InstructGPTGPT-3.5、Codex 和 ChatGPTGPT-4 GPT-1 2018 年年中,就在 Transformer 架构诞生⼀年后,OpenAI 发表了⼀篇题 为“Improving Language Understanding by Generative Pre-Training”的论文,作者…

告别卡顿,迎接流畅!你的mac电脑清洁利器CleanMyMac一键轻松解决所有问题!

亲爱的CSDN家人们,今天要安利的是一个让无数Mac用户从“抓狂”到“惊喜连连”的小神器—CleanMyMac!💫 如果你还在为电脑的缓慢启动、存储空间告急和莫名其妙的卡顿烦恼,那请跟我一起看看它如何成为你的数字世界里的救星&#xff…

VC++学习(5)——文本编程,插入符的初始化,图形插入符;文字始终在窗口;字符输入功能,回车换行,删除,左键定位;字体修改,字体平滑变色

目录 引出第五讲 文本编程新建项目输入线的初始化根据字体大小定义插入符大小创建图形插入符文字始终保存在窗口中CString类通过字符串资源 路径层字符输入的功能键盘输入消息鼠标左键消息保存点击位置的坐标 输入回车键的处理删除文字的实现 字符输入功能代码字体的修改模拟卡…

Android翻转动画(卡片翻转效果)

前言 最近好友问计蒙翻转动画,恰好在大二那年看Android Api Demo时记了笔记,由此写一篇文章。 需求 屏幕右滑事件触发卡片的翻转效果 ,为了方便,在例子中将右滑事件改成按钮点击事件 老规矩,最后有源码 一、先介绍三…

【自动驾驶】Python代码实现通过摄像头图像进行颜色跟踪并控制机器人移动

这段Python代码实现了一个ROS节点,用于通过摄像头图像进行颜色跟踪并控制机器人移动。具体功能如下: 代码功能概述 订阅摄像头图像 通过订阅 /camera/color/image_raw 话题,从摄像头获取图像数据。颜色选择和调节 提供一个OpenCV窗口,用户可以在窗口中选择和调节要跟踪的颜…

PCL 三次样条插值(二维点)

一、简介 在插值计算中,最简单的分段多项式近似应该是分段线性插值,它由连接一组数据点组成,仅仅只需要将这些点一一用直线进行顺序相连即可。不过线性函数插值的缺点也很明显,就是在两个子区间变化的比较突兀,也就是没有可微性(不够光滑)。因此我们需要更为符合物理情况…

C语言小例程

题目&#xff1a;两个乒乓球队进行比赛&#xff0c;各出三人。甲队为a,b,c三人&#xff0c;乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比&#xff0c;c说他不和x,z比&#xff0c;请编程序找出三队赛手的名单。 #include <stdio.h> #in…

Mac OS 如何在命令行下启动Docker

现象 当用 Mac air作为服务器时&#xff0c;远程登录上去后想使用 docker&#xff0c;却报如下错&#xff1a; Cannot connect to the Docker daemon at unix:///Users/aborn/.docker/run/docker.sock. Is the docker daemon running? 原因分析 因为 docker 有一个守护进程…

外包IT运维解决方案

随着企业信息化进程的不断深入&#xff0c;IT系统的复杂性和重要性日益增加。高效的IT运维服务对于保证业务连续性、提升企业竞争力至关重要。外包IT运维解决方案通过专业的服务和技术支持&#xff0c;帮助企业降低运维成本、提高运维效率和服务质量。 本文结合《外包IT运维解…

教育培训机构寒暑假班学校公众号小程序

&#x1f4da;教育培训学校公众号版本&#xff1a;开启学习新纪元&#x1f680; 一、引言&#xff1a;为何教育培训学校需要公众号版本&#xff1f; 随着数字化时代的来临&#xff0c;传统教育培训行业也在不断探索新的服务模式。公众号作为新媒体平台的一种&#xff0c;具有信…

AcWing 255. 第K小数

自己想出来的&#xff0c;感觉要容易想到&#xff0c;使用可持久化线段树&#xff0c;时间上要比y的慢一倍。大体思想就是&#xff0c;我们从小到大依次加入一个数&#xff0c;每加入一个就记录一个版本&#xff0c;线段树里记录区间里数的数量&#xff0c;在查询时&#xff0c…

艾多美用“艾”为生命加油,献血活动回顾

用艾为生命加油 6月10日~16日&#xff0c;艾多美中国开启献血周活动&#xff0c;已经陆续收到来自烟台总部、山东、广东、河南、四川、重庆、贵阳&#xff0c;乌鲁木齐&#xff0c;吉林&#xff0c;等地区的艾多美员工、会员、经销商发来的爱心助力&#xff0c;截止到目前&…

ICP、ISP及IAP烧录介绍

文章目录 不同的程序下载方式一、ICP:In-Circuit Programming二、ISP:In-System Programming三、IAP:In-Application ProgrammingIAP方案设计不同的程序下载方式 目前,单片机的程序烧录方式可以分为三种:ICP、ISP、IAP。 ICP:In Circuit Programing,在电路编程; ISP:…

购买服务器,并安装宝塔

前言&#xff1a; 我们在开发项目时&#xff0c;总会遇到一个问题&#xff0c;就是将我们开发好的项目上传的公网中。对于中小型的项目&#xff0c;我们可以通过购买服务器进行项目的上线。 我们的项目一般是部署在Linux环境中。如果你不是专业的运维人员&#xff0c;可能对于…

考前刷题练手感(北航期末往年数据结构编程题)

本次因为是考前一天极速刷题&#xff0c;所以没有讲解&#xff0c;若有问题可私信。 目录 一、 查找同时空人员二、 老鼠回家-无回路三、函数调⽤关系四、东二食堂模拟五、栈帧 一、 查找同时空人员 【问题描述】 假设一共有6个手机基站&#xff0c;都具有记录手机连接基站状…

上海国际嵌入式展 - 基于树莓派5和CODESYS的16轴运动控制解决方案

在为期三天的上海国际嵌入式展会中&#xff0c;树莓派和上海晶珩一起展示了众多的基于树莓派和CODESYS的解决方案&#xff0c;没去过展会现场的小伙伴千万别错过这篇文章&#xff01; 上海国际嵌入式展 - 基于树莓派5和CODESYS的16轴运动控制解决方案 这个基于Raspberry Pi 5的…

dp经典问题:装配线调度

dp经典问题&#xff1a;装配线调度 装配线调度问题&#xff08;Assembly Line Scheduling Problem&#xff09; 是一个经典的动态规划问题。这个问题的目标是通过在两条装配线上调度任务&#xff0c;来最小化完成整个装配过程所需的总时间。 问题描述 假设有两条装配线&#…