AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


AI 快速工程构建落地与科普
发布日期:2024-05-18 09:01:45 浏览次数: 1773 来源:零壹白洞


    大型语言模型 (LLM) 的一个重要方面是这些模型用于学习的参数数量。模型拥有的参数越多,它就能更好地理解单词和短语之间的关系。这意味着具有数十亿个参数的模型有能力生成各种创造性的文本格式,并以信息丰富的方式回答开放式和挑战性的问题。

    ChatGPT 等 LLM 利用 Transformer 模型,精通理解和生成人类语言,这使得它们对于需要自然语言理解的应用程序非常有用。然而,它们并非没有局限性,其中包括过时的知识、无法与外部系统交互、缺乏上下文理解,有时会产生听起来合理但不正确或无意义的响应等。


    上图是一个真实案例,假设有个业务需求是企业要实现AI智能生成图表,并带有企业内部数据。针对上述案例,小编从原理科普、业务讲解来实现这个过程。这个过程全程需要Langchain。

    Langchain 是一个最先进的库,为设计、实现和调整提示带来了便利和灵活性。当我们解开即时工程的原理和实践时,将学习如何利用 Langchain 的强大功能来发挥 GPT-4 等 SOTA 生成式 AI 模型的优势。

了解 Prompt

    “提示”是一系列标记,用作语言模型的输入,指示它生成特定类型的响应。提示在引导模型的行为方面起着至关重要的作用。它们可以影响生成文本的质量,并且如果正确制作,可以帮助模型提供富有洞察力、准确且针对特定上下文的结果。prompt 是设计有效提示的艺术和科学。目标是从语言模型中得出所需的输出。通过仔细选择和构建提示,可以引导模型生成更准确和相关的响应。在实践中,这涉及微调输入短语以适应模型的训练和结构偏差。

    prompt 的复杂性包括从简单的技术(例如向模型提供相关关键字)到更高级的方法,包括设计复杂的结构化提示,利用模型的内部机制来发挥其优势。

    说白话,Prompt即是提示,最初是 NLP 研究者为下游任务设计出来的一种任务专属的输入形式或模板,在 ChatGPT 引发大语言模型新时代之后,Prompt 即成为与大模型交互输入的代称。即我们一般将给大模型的输入称为 Prompt,将大模型返回的输出称为 Completion。在上述 case 图中,开发者把信息丢给大模型中间这个 prompt 就是提示,可以很复杂也可以很简单,返回的结果也跟 prompt 约束不一样。

举个例子:拿上述分析重点数据
text = f"""5号数据:10,20,30,40,50,60,70,80,1007号数据:10,10,10,10,10,10,10,11,128号数据:10,10,10,10,11,10,10,11,129号数据:10,10,10,22,10,10,10,11,1210号数据:10,10,0,10,10,10,10,11,12"""# 需要总结的文本内容prompt = f"""你是一个专业数据分析家。把用三个反引号括起来的数据进行分析,需要5号数据对整体数据评估是否存在波动。把波动数据按json格式返回```{text}```"""
了解 Embedding

    Embedding 是值或对象(例如文本、图像和音频)的表示,旨在供机器学习模型和语义搜索算法使用。他们根据每个对象可能具有或不具有的因素或特征以及它们所属的类别,将此类对象转化为数学形式。

万事看视频,学习概念快。就是有点印度口音

    从本质上讲,Embedding 使机器学习模型能够找到相似的对象。给定一张照片或文档,使用嵌入的机器学习模型可以找到类似的照片或文档。由于嵌入使计算机能够理解单词与其他对象之间的关系,因此它们是人工智能 (AI)的基础。

    敲黑板,在数学中,向量是定义维度空间中的点的数字数组。用更实际的术语来说,向量是一个数字列表,例如 {1989, 22, 9, 180}。每个数字表示对象沿指定维度的位置。
    举个例子,模型如何判断哪些电视节目彼此相似,从而可能被同一个人观看?有很多因素需要考虑:剧集长度、剧集数量、类型分类、共同观众数量、每部剧的演员、每部剧的首播年份等等。所有这些都可以是“维度”,并且每个节目都表示为沿着每个维度的一个点。多维向量可以帮助我们确定情景喜剧《阿甘正传》是否与恐怖剧《午夜凶铃》相似。《阿甘正传》于 1994 年首播,《午夜凶铃》于 2002 年首播。这两部剧的剧集长度不同,《阿甘正传》为 120 分钟,《午夜凶铃》为 114 分钟,以此类推。通过查看它们的向量,可以看到这些节目可能在电视节目的维度表示中占据非常不同的点。

    将它们表示为向量,就像对纬度和经度所做的那样,但具有更多值:

阿甘正传[情景喜剧], 1994 120
午夜凶铃[恐怖], 2002 114 

    机器学习模型可能会认为情景喜剧《干杯》与《阿甘正传》更为相似。它属于同一类型,于1982年首播,120 分钟。

    扯远了,回过头来看原理,深度学习模型创建的向量,用于该模型的相似性搜索。
    处理文本时,必须做的第一件事是想出一种策略,将字符串转换为数字(或“矢量化”文本),然后再将其输入模型。传统就是直接硬编码,程序员经干的事

    上述硬编码有问题么,没有。而且是一个高效的过程。但是存在问题,词汇表中有 10,000 个单词。要对每个单词进行 one-hot 编码,需要创建一个 99.99% 的元素为零的向量。另外就是数据没有含义,容易组合撞库,换个算法解析不了。

    “ Embedding 是浮点值的密集向量(向量的长度是您指定的参数)。它们不是手动指定嵌入的值,而是可训练参数(模型在训练期间学习的权重,就像模型学习密集层的权重一样)。通常会看到 4 - 8 维的词嵌入(对于小型数据集),在处理大型数据集时最多可达 1024 维。更高维度的嵌入可以捕获单词之间的细粒度关系,但需要更多数据来学习。” ——Tensoflow
    来看向量维度说明,下图来自 Tensflow 模型观测,发现cat相近的,都是有关联的词.

什么是 LangChain

    LangChain 是一个开源框架,用于构建基于大型语言模型(LLM)的应用程序。LangChain 提供各种工具和抽象,以提高模型生成的信息的定制性、准确性和相关性。借助 LangChain,开发人员可以通过指定产生预期结果所需的步骤,灵活调整语言模型以适应特定的业务环境。白话,这个过程可以自己组合,也可以不用LangChain,业界为了标准化造了个框架轮子,具体还是要看自身企业业务

LangChain的主要组件包括模型I/O、提示模板、内存、代理和链。

    敲黑板再拿真实案例 case,模型 IO 就是 LLM,提示模板就是 Prompt ,内存的话案例中是向量数据库,代理提供数据者,这里指 RAG(AGI专业领域挑战科普,RAFT(检索增强微调)改进这一切),链的话这里就是指令1~n了。好了屠龙术已经教给你了。接下来学习完这个几个,就是降龙十八掌,也有可能是从天而降的掌法

Fine-tune 指令微调

    指令微调是一个监督学习阶段,它利用为模型提供具体指令,例如“解释日出和日落之间的区别”。该指令配有适当的答案,大致如下:“日出是指早晨太阳出现在地平线以下的那一刻,而日落则标志着太阳在晚上消失在地平线以下的那一刻。”通过这种方法,模型本质上学习如何遵守和执行指令。
    这种方法极大地影响了法学硕士的激励过程,导致激励方式的根本转变。经过指令微调的 LLM 允许立即执行零样本任务,从而提供无缝的任务性能。如果 LLM 尚未进行微调,则可能需要采用几次学习方法,将一些示例纳入您的提示中,以指导模型达到所需的响应。

也看个视频。基本能有个概念

Agent

    人工智能 agent 是一种软件程序,它可以与环境互动,收集数据,并利用数据执行自决任务,以实现预定目标。人类设定目标,但 agent 会独立选择实现这些目标所需的最佳行动。例如,联络中心的人工智能 agent 需要解决客户的疑问。该 agent 会自动向客户提出不同的问题,查找内部文件中的信息,并给出解决方案。根据客户的回复,它可以决定是自己解决查询,还是将查询转给人工处理。

    人工智能 agent 的工作原理是将复杂的任务简单化和自动化。大多数自主 agent 在执行指定的任务时,都会遵循特定的工作流程。

  • 确定目标

    人工智能 agent 从用户那里接收特定的指令或目标。它利用目标来规划任务,使最终结果与用户相关并对用户有用。然后,人工智能 agent 将目标分解成若干个可执行的小任务。为了实现目标,人工智能 agent 会根据特定的指令或条件执行这些任务。

  • 获取信息

    人工智能 agent 需要信息才能成功执行其计划的任务。例如, agent 必须提取对话日志来分析客户情绪。因此,人工智能 agent 可能会访问互联网来搜索和检索所需的信息。在某些应用场景中,智能 agent 可以与其他 agent 或机器学习模型交互,以获取或交换信息。

  • 执行任务

    有了充足的数据,人工智能 agent 就会有条不紊地执行手头的任务。完成一项任务后, agent 就会将其从列表中删除,然后继续执行下一项任务。在完成任务的间隙,人工智能 agent 会通过寻求外部反馈和检查自身日志来评估是否达到了指定目标。在此过程中, agent 可能会创建并执行更多任务,以达到最终结果。

    这里引用【有新Newin公众号】文章内容目前,有 4 种主要的 Agent 设计模式,分别是:

  • Reflection:让 Agent 审视和修正自己生成的输出;

  • Tool Use:LLM 生成代码、调用 API 等进行实际操作;

  • Planning:让 Agent 分解复杂任务并按计划执行;

  • Multiagent Collaboration:多个 Agent 扮演不同角色合作完成任务;

    这些设计模式目前还在快速发展中,有的比较成熟可靠,有的仍存在不确定性,但都展现了提高 AI 能力的潜力。吴恩达在红衫投资座谈会认为,未来 AI Agent 能力将大幅扩展,我们需要学会将任务委托给 Agent 并耐心等待结果,而不是追求即时响应。另外,快速 token 生成也很重要,即使基于质量较低的LLM,快速迭代生成新 token 也可能获得良好结果。
    AI Agent ,今天我们大多数人使用 LLM 的方式就像这样,通过一个非 Agent 性工作流程,你输入一个提示,它生成一个回答。这有点像如果你让一个人就某个话题写一篇论文,我说,请坐到键盘前,从头到尾不断地打字写完这篇论文,从不使用退格键。尽管这样做有多困难, LLM 却能做得出奇的好。

    相比之下, Agent 性工作流程可能是这样的:让 AI 或 LLM 说,写一个论文大纲。你需要做任何网络研究吗?如果需要,让我们开始吧。然后写第一稿,然后阅读你自己的第一稿,思考哪些部分需要修改,然后修订你的草稿,你可以一遍又一遍地进行。因此,这个工作流程更加迭代,你可能让模型进行一些思考,然后修改文章,然后再思考,并通过多次迭代来完成这个过程。
    前面3种就不一一拿出来讲解了,大家可以看附录中 QQ 新闻公众号的文章。

    多 Agent 合作,这个,听起来很有趣,但它的效果比你可能想象的要好得多。左边是一篇名为 ChatDev 的论文的截图,这完全是开源的,实际上是开源的。

    媒体发布的 demo,ChatDev 是开源的,在我的笔记本电脑上运行。ChatDev 是一个多 Agent 系统的示例,你可以提示一个 LLM 有时表现得像软件工程公司的 CEO,有时像设计师,有时像产品经理,有时像测试人员。
    通过提示 LLM 告诉它现在你是 CEO,现在你是软件工程师,它们合作,进行扩展的对话,以至于如果你告诉它,请开发一个游戏,开发一个多人游戏,它们实际上会花费几分钟编写代码,测试它,迭代它,并最终生成一个出人意料的复杂程序。
    这种多 Agent 合作听起来可能有些奇特,但实际上它的效果比你可能想象的要好。这不仅仅是因为这些 Agent 之间的合作能够带来更加丰富和多样的输入,而且因为它能够模拟出一个更加接近真实工作环境的场景,其中不同角色和专业知识的人员为了共同的目标而努力。这种方式的强大之处在于它能够让 LLM 不仅仅是执行单一任务的工具,而是成为一个能够处理复杂问题和工作流程的协作系统。


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询