Files
prompt-engineering-for-deve…/content/LangChain Chat with Data/1.简介 Introduction.md
2023-07-10 20:28:45 +08:00

2.7 KiB
Raw Blame History

第一章 简介

本课程由哈里森·蔡斯 (Harrison ChaseLangChain作者与Deeplearning.ai合作开发课程将介绍如何使用LangChain和自有数据进行对话。

一、背景

大语言模型(Large Language Model, LLM), 比如ChatGPT, 可以回答许多不同的问题。但是大语言模型的知识来源于其训练数据集,并没有用户的信息(比如用户的个人数据,公司的自有数据),也没有最新发生时事的信息(在大模型数据训练后发表的文章或者新闻)。因此大模型能给出的答案比较受限。

如果能够让大模型在训练数据集的基础上,利用我们自有数据中的信息来回答我们的问题,那便能够得到更有用的答案。

二、 课程基本内容

在本课程中我们学习如何使用LangChain和自有数据进行对话。

LangChain是用于构建大模型应用程序的开源框架有Python和JavaScript两个不同版本的包。LangChain基于模块化组合有许多单独的组件可以一起使用或单独使用。LangChain的组件包括

  • 提示(Prompts): 使模型执行操作的方式。
  • 模型(Models):大语言模型、对话模型,文本表示模型。目前包含多个模型的集成。
  • 索引(Indexes): 获取数据的方式,可以与模型结合使用。
  • 链式(Chains): 端到端功能实现。
  • 代理(Agents): 使用模型作为推理引擎

此外LangChain还拥有很多应用案例帮助我们了解如何将这些模块化组件以链式方式组合以形成更多端到端的应用程序。如果你想要了解关于LangChain的基础知识可以学习使用 LangChain 开发基于 LLM 的应用程序课程LangChain for LLM Application Development

在本课程中我们将重点介绍LangChain常见的使用场景使用LangChain和自有数据进行对话。我们首先会介绍如何使用LangChain文档加载器 (Document Loader)从不同数据源加载文档。然后我们学习如何将这些文档切割为具有语意的段落。这步看起来简单不同的处理可能会影响颇大。接下来我们简要介绍语义搜索Semantic search以及信息检索的基础方法 - 对于的用户输入的问题,获取最相关的信息。该方法很简单,但是在某些情况下可能无法使用。我们将分析这些情况并给出解决方案。最后,我们介绍如何使用检索得到的文档,来让大语言模型(LLM)来回答关于文档的问题。

三、致谢课程重要贡献者

最后特别感谢对本课程内容贡献者

  • Ankush GolaLandChain
  • Lance MartinLandChain
  • Geoff Ladwig(DeepLearning.AI)
  • Diala Ezzedine(DeepLearning.AI)