第一章:大语言模型开发的介绍

112 阅读4分钟

一、什么是大语言模型

大语言模型是使用深度学习等技术来理解和生成人类语言的人工智能模型。

大语言模型可以类比为巨大的预测机器,训练过程主要基于“猜测”。他会通过不断学习和参数调整使得自己的预测越来越精准。

举个例子:当我们在微信发消息的时候,我们的输入法会使用“键树”的数据结构会预测每一个人常用的词,从而实现快速输入的效果。

当我在输入法输入:“鲁智深倒拔...”的时候,输入法的第一个词语会显示“垂杨柳”。这一种就是预测。

二、什么是 LangChain

LangChain 是一个全方面的,基于大语言模型预测能力的应用开发工具,利用预购建链的功能像乐高积木一样快速搭建项目。

目前存在:Python✅ 和 Javascript 版本

Github 地址:github.com/langchain-a…

三、LangChain 的六大组件是什么?

  • 模型(Models) ,包含各大语言模型的LangChain接口和调用细节,以及输出解析机制。

  • 提示模板(Prompts) ,使提示工程流线化,进一步激发大语言模型的潜力。

  • 数据检索(Indexes) ,构建并操作文档的方法,接受用户的查询并返回最相关的文档,轻松搭建本地知识库。

  • 记忆(Memory) ,通过短时记忆和长时记忆,在对话过程中存储和检索数据,让ChatBot记住你是谁。

  • 链(Chains) ,是LangChain中的核心机制,以特定方式封装各种功能,并通过一系列的组合,自动而灵活地完成常见用例。

  • 代理(Agents) ,是另一个LangChain中的核心机制,通过“代理”让大模型自主调用外部工具和内部工具,使强大的“智能化”自主Agent成为可能!

四、LangChain 可以做什么?

以宣传语为例,LangChain 封装了大语言模型的调用机制,有助于简化开发者大语言模型的切换流程,提高大语言模型的使用效率。

五、OpenAI 的 text 和 chat 两种模型有什么区别和联系?

Text 模型Chat 模型
使用场景处理简单的单轮文本生成任务相对复杂的聊天场景
优势更加简单、更加直接、文本内容更集中输出的文本更加完善,有助于实现对话历史的管理,也可以实现角色模拟。

思考题

问题一

从今天的两个例子看起来,使用LangChain并不比直接调用OpenAI API来得省事?而且也仍然需要OpenAI API才能调用GPT家族模型。那么LangChain的核心价值在哪里?至少从这两个示例中没看出来。针对这个问题,你仔细思考思考。

  1. LangChain 最大的好处是方便实施 GPT 家族的切换,因为在我曾经参与的项目中,我们很有可能会因为业务需要反复调整大语言模型的类型。(每一门大语言模型的擅长点都是不同的!)如果用传统的方法,大语言模型的切换和调整是耗时且容易出错的,LangChain 的封装可以最大程度的避免这种情况。

问题二

LangChain支持的可绝不只有OpenAI模型,那么你能否试一试HuggingFace开源社区中的其它模型,看看能不能用。

  1. 尝试在 AI 练中学中使用 HuggingFace,发现版本已经发生了很大的变化,考虑在本地尝试,并记录工具使用的笔记上。

问题三

上面我提到了生成式模型,那么,大语言模型除了文本生成式模型,还有哪些类别的模型?比如说有名的Bert模型,是不是文本生成式的模型?

  1. 大语言模型其实不止有文本生成,我目前在公众号中看到的比较流行的就有图片生成的大模型。Bert 模型其实是 NLP 模型中的其中一个预训练模型,并不是文本生成模式模型。