Langchain基础认知
Langchain自身并不开发LLMs,核心理念为各种LLMs实现通用的接口
主要组件:
Models,Prompts,Memory,Indexes,Chains,Agents
Models:
三种:LLMs,ChatModels,Embeddings Models
Prompts:
zero-shot,few-shot
Chains:
在LangChain中,Chains描述了将LLM与其他组件结合起来完成一个应用程序的过程
Agents:
为什么借助第三方库:
大模型虽然非常强大,但是也具备一定的局限性,比如不能回答实时信息、处理数学逻辑问题仍然非常的初级等等。因此,可以借助第三方工具来辅助大模型的应用。
Memory:
大模型本身不具备上下文的概念,它并不保存上次交互的内容,ChatGPT之所以能够和人正常沟通对话,因为它进行了一层封装,将历史记录回传给了模型。 因此 LangChain 也提供了Memory组件, Memory分为两种类型:短期记忆和长期记忆。短期记忆一般指单一会话时传递数据,长期记忆则是处理多个会话时获取和更新信息。
Indexes:
是让LangChain具备处理文档处理的能力,包括:文档加载、检索等。
文档加载器:可以把各种类型的文件转换为文本
文本分割器:由于模型对输入的字符长度有限制,我们在碰到很长的文本时,需要把文本分割成多个小的文本片段。 文本分割最简单的方式是按照字符长度进行分割,但是这会带来很多问题,比如说如果文本是一段代码,一个函数被分割到两段之后就成了没有意义的字符,所以整体的原则是把语义相关的文本片段放在一起。
VectorStores: 一种特殊类型的数据库,存储由嵌入创建的向量,提供相似查询的功能
检索器:一种便于模型查询的存储数据的方式
