【Langchain】GPT的高效插件

news/2024/12/1 4:37:49/

功能1:让模型具有memory

可以看到,langchain作为访问gpt的一个插件,可以让gpt模型通过memory变量将之前的对话记录下来,从而使模型具有记忆(在不改变模型参数的情况下)。
在这里插入图片描述
查看memory变量包含了什么:
在这里插入图片描述
可以通过参数k(或者max_tokens等参数)设置记忆的长度(记住之前的几个对话):
在这里插入图片描述

为什么用langchain

大型模型是没有“状态”这个概念的(相比lstm这类模型)。
在这里插入图片描述
langchain这个插件就能解决这个问题。

功能2: 前后文联系

即下一个对话(输出)需要用到上一个对话中的某些信息(作为输入)。

普通链

假设读取了一个csv文件:
在这里插入图片描述

llmchain这个函数需要接受两个变量,模型和prompt:
在这里插入图片描述

Sequetial Chain

在这里插入图片描述
这种类型的chain,前后的对话是有输入-输出之间的关系。

来看一下如何使用:

在这里插入图片描述
输出如下:
在这里插入图片描述
simple chain的示意图如下:
在这里插入图片描述

当多个对话杂糅时,可以这样操作:

在这里插入图片描述
在这里插入图片描述
此时的示意图如下:
在这里插入图片描述
在这里插入图片描述

Router Chain

用于不同领域的处理,针对不同的领域,给出不同的prompt(需要自己提前定义有哪几种prompt)。
在这里插入图片描述
具体举例说明,比如有多个学科的老师,需要回答某一领域的问题时,先定义不同学科的prompt:

在这里插入图片描述
再定义所有promt的信息:
在这里插入图片描述
然后开始调用 MultiPromptChain 等函数:
在这里插入图片描述
还要定义defalt chain:
在这里插入图片描述
在这里插入图片描述

功能3:根据文档回答问题

需要用到 embedding 和 向量储存(Vector Database)技术,在所上传的文档中进行检索、匹配等操作。

来康康怎么实现的,假设上传一个 csv 文件,需要 gpt 根据所上传的文件回答问题。

在这里插入图片描述

但是有时候文档很大时,gpt无法输入这么长的内容(LLM模型一次性输入的token是有限制的):在这里插入图片描述
这时候就要引入embeding和向量储存技术了。

embedding

即用 vector 表达某一段话的内容, 当两句话相似度比较高的时候, 他们对应embedding 的结果也非常相似:
在这里插入图片描述

Vector Database

把每一段内容进行embedding,然后按照index的方式储存他们的embedding。
在这里插入图片描述
在输入 query 进行查询的时候,将 query 也 embbedding 化,然后查询它和之前储存的所有句子的 embdding的相似度,选取相似度比较高的几个句子,从而进行回答:
在这里插入图片描述

代码实现

加载一个文档:
在这里插入图片描述
查看 embedding 的用法,可以看到其有1536纬度:
在这里插入图片描述
建立 vector database 并查找高相似度的句子:
在这里插入图片描述
返回了四个文档:
在这里插入图片描述
取回所需要(相似度高)的内容:
在这里插入图片描述


http://www.ppmy.cn/news/699767.html

相关文章

C#编程的其他概念

目录 面向对象的编程 模式匹配 弃元 面向对象的编程 C# 是面向对象的编程语言。 面向对象编程的四项基本原则为: 抽象:将实体的相关特性和交互建模为类,以定义系统的抽象表示。封装:隐藏对象的内部状态和功能,并仅…

软考A计划-系统集成项目管理工程师-项目概念-下

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列 👉关于作者 专注于Android/Unity和各种游戏开发技巧&#xff…

旗舰保形象,低端保市场 国产手机畸形态势背后

粗大事了!前段时间魅蓝Note 2、荣耀4X先行发布,打得小米喘不过气来,没想到小米釜底抽薪,拼着坑队友联发科的节奏,推出799元的红米Note 2,甚至剑指魅族MX 5!而锤子也不低调,接连爆出中…

创基Type-C快充数据线好产品就是要热门

从近期发布的新机就会发现,现在内地也越来越多厂商推出多款均为Type-c接口的手机。主流机小米Note2、小米5系列、魅族Pro 6/6s、魅族MX6、华为Mate9系列、华为P9系、一加手机3等都革新为便捷的Type-C接口。Type-C接口越来越受欢迎了。同样,Type-C 快充数…

android7的负优化,坑爹负优化:三星 S7 Edge 被爆升级安卓 7.0 后续航变差

原标题:坑爹负优化:三星 S7 Edge 被爆升级安卓 7.0 后续航变差 谷歌发布最新的 Android 7.0 系统已经有一段时间了,不少手机用户就希望厂商能够尽快推送更新进行升级。HTC、LG、华为等厂商都已经推送了 Android 7.0 的升级。三星的 Galaxy S7…

数据库程序设计-视图的创建及查询

数据库程序设计-视图的创建及查询 使用create view语句就可以创建视图了,具体语句如下: create view viewname as select * from Tab_EdsProd(Tab_EdsProd是表的名字)where (后面可以接一线限制的条件)。 删…

红米note3支持html,【小米红米Note3评测】外观变化不小 金色版略显俗套_小米 红米Note3_手机评测-中关村在线...

外观变化不小 金色版略显俗套 本次发布会上并没有像红米Note 2那样一直在标榜颜值,或许雷布斯也清楚大电池带来的重量和厚度的增加、没有延续彩色背壳的设计再标榜颜值意义不大吧,毕竟群众的眼光是雪亮的。金色版本的配色在之前的某些品牌的机型上似曾相…

note2 android8.0,小米Android 8.0再添丁!小米Note 2国际版MIUI9获推送

上周,小米5国际版MIUI 9系统已经获得Android 8.0的更新推送,据消息显示,小米Note 2是与小米5一起获得更新推送的,不过不知出于什么原因小米方面撤销了推送,但之前的官方下载地址依旧有效。 与此次小米5 Android 8.0的更…