首页 AI 使用 LangChain 开发 LLM 应用 00:前言

使用 LangChain 开发 LLM 应用 00:前言

0 331

在人工智能快速发展的今天,很多开发者都希望能够学习到有关人工智能的相关知识。2018 年,OpenAI 推出了名为 GPT 的系列模型。该模型实现了将“人工智障”真正变换为“人工智能”。这也就是目前最火的 LLM,即大语言模型 Large Language Model。

大语言模型最大的特点就是“大”,它从海量数据中进行学习,可以生成流畅的自然语言,能够理解自然语言的含义。与之相关的,是运行一个大语言模型所需的庞大计算资源。不要说普通开发者,即便是很多中小型公司,也很难运行起来一个可供生产环境使用的模型。幸运的是,很多厂商提供了相关的开发平台,让我们可以利用各大公司提供的人工智能 API,基于已有的接口,实现自己的应用,这样就不需要去训练自己的模型。

但是,这也带来了一个问题:在开发 LLM 应用时,不可避免地会接触到很多 API 接口、各种数据格式以及相关工具。对于非 AI 领域的开发者,逐一研究这些概念,会成为一个巨大的负担。各大厂商提供的 API 接口并不一致,没有一个标准。并且,LLM 也不是万能的。比如,LLM 是无状态的,它只能针对当前对话进行回答。这就导致,如果存在多轮对话,我们必须手动管理这些对话的上下文,以便 LLM “记住”之前的知识。另外更重要的是,受限于 LLM 的原理,LLM 是基于大量数据学习的,这也就意味着,它的知识来源于它的数据集,而它的数据集基本来自于互联网,那么,它的知识就是过时的,固定的。例如,LLM 不能告诉你,今天电影院在放什么电影,我公司的请假流程是怎样的。前者意味着实时知识,后者则是本地的个人数据。很多技术为了解决这些问题应运而生,但这些技术都是分散的,没有统一的结构。

为了解决这些问题,LangChain 出现了。它为开发者提供了一系列的工具和组件,让 LLM 可以与各种数据,包括 Web 页面、PDF、CSV 等连接,让 LLM 可以方便地记住上下文信息,让 LLM 应用的优化变得简单。

这个系列将介绍如何利用 LangChain 开发 LLM 应用。本系列并不会涉及如何训练自己的模型,而是基于厂商公开的接口,搭建自己的 LLM 应用。微调模型固然重要,但更重要的是,让我们先看到 LLM 能为我们做什么,让我们的应用能够进入 AI 的领域。当我们基于已有模型实现了应用之后,才能看到模型的哪些方面不符合我们的要求,哪些是值得改进的,才能够针对模型本身做进一步的处理。很多时候,基于已有模型已经足够了。

对 LangChain,我也是初学者,不可避免地会有很多谬误,这里记录下自己的学习过程,希望与更多朋友共同进步。

发表评论

关于我

devbean

devbean

豆子,生于山东,定居南京。毕业于山东大学软件工程专业。软件工程师,主要关注于 Qt、Angular 等界面技术。

主题 Salodad 由 PenciDesign 提供 | 静态文件存储由又拍云存储提供 | 苏ICP备13027999号-2