LangChain是一个开源框架,允许从事人工智能的开发者将例如GPT-4的大语言模型与外部计算和数据来源结合起来。该框架目前以Python或JavaScript包的形式提供。
( 假设,你想从你自己的数据、文件中具体了解一些情况(可以是一本书、一个pdf文件、一个包含专有信息的数据库)。LangChain可以将GPT-4和这些外部数据连接起来,甚至可以让LangChain帮助你采取你想采取的行动,例如发一封邮件。)
三个重要概念:
- Components
-LLM Wrapper:包装器,允许我们连接到大语言模型,例如GPT-4或HuggingFace的模型。
-Prompt Templates:提示模板,使我们不必对文本进行硬编码,而文本是LLM的输入。
-Indexes for relevant information retrieval:相关内容的索引,允许我们为LLM提取相关信息。
- Chains
允许我们将多个组件组合在一起,以解决一个特定的任务,并建立一个完整的LLM应用程序。
- Agents
允许LLM与外部API互动。
二、 原理
将你的文件切成小块,把这些小块存储在一个矢量数据库中,这些块被存储为embedding,意味着它们是文本的矢量表示。
pipeline执行流程:
>>一个用户提出了初始问题。
>>然后,这个问题被发送到大语言模型,并将该问题的向量表示在向量数据库中做相似性搜索。
>>获取相关的信息块,将其反馈给大语言模型。
>>大语言模型通过初始问题和来自矢量数据库的相关信息,提供一个答案或采取一个行动。