【译】为什么AI产品注定会失败

原作:杰里米·阿兰西奥

引言:在为各种企业实施AI项目一年后,我分享了我对公司在 LLMs 方面所犯错误的看法,以及应采取的策略。

 

2023 年是人工智能取得巨大成就的一年,特别是在具有大型语言模型的自然语言处理(LLMs)方面。随着生成式人工智能的出现以及随之而来的令人印象深刻的表现,大多数公司都修改了战略,将人工智能融入到他们的产品中。

此外,包含“AI”的初创企业在各个领域不断涌现,其主要目标是:找到 GenAI 可以解决的问题。

我们进入了人工智能炒作的时代:哪家公司将开发最好的开源LLM —— 拥有最好的产品演示视频 —— 并将人工智能融入公司战略。

  • 我们现在正处于泡沫之中。当这个泡沫破裂时,大多数使用LLMs的公司将会消失……

但事实并非一定如此。

有了正确的策略、正确的期望以及对开发人工智能功能所需的理解,我相信可以为客户提供大量价值并实现企业的蓬勃发展。

作为一名自由职业者,我一直在各个领域为公司提供建议并使用 LLMs 开发功能:人力资源、销售、短期租金、AI初创公司……

在这篇文章中,我分享了我作为 NLP 工程师在这场炒作期间的实战经验,以及我对公司所犯错误的看法。

然后,我将解释 LLM 背后的现实、它的工作原理以及开发AI功能所需的条件。

最后,我提出了我的愿景,通过正确的策略来成功过渡到人工智能。

 

AI 炒作的故事

“GPT-3.5 来了,我们需要乘风破浪!”

我早在 2023 年 1 月就开始参与 LLMs。

当时,我正在布拉格的一家咨询公司工作。 作为一名自然语言处理工程师,我的工作是为我们的客户构建机器学习功能。

 

当 OpenAI 发布 ChatGPT 并且第一批应用程序开始出现在社交媒体上时,这是我们尝试 API 的标志。 一个开发团队被组成来探索LLMs的可能性。

我是团队中的一员。

使用 Langchain 和 Llamaindex(在此期间称为 GPTindex),我构建了几个功能来使人们能够与内部文档聊天。这是今天所谓的检索增强生成(RAG)的开始。

它就像一个魅力。至少,乍一看……

然而,在与公司内部用户进行多次讨论后,我注意到该工具的一些局限性:幻觉、概念漂移或上下文解析不准确......

版本 1 已准备就绪,但仍可进行大规模改进。

我计划与用户一起构建一个能够帮助他们的工具。通过用户和开发之间的不断迭代,专门设计一个来解决他们痛点的工具。

至少这是我的信念。但并不是所有人都同意我的观点……

  • “我们需要向利益相关者展示我们可以利用人工智能实现什么目标! 但它必须是秘密的,以增加 ‘惊叹’ 效应!” ……,我的经理告诉我。

 

不久之后,我已经在开发另一个具有相同框架的聊天机器人,这次是为人力资源部门开发的。我的同事使用 Whisper 开发了一项功能。另一个是用 Dalle-2 生成的图像为儿童讲故事。

这些功能是否解决了特定客户群的痛点问题?直到今天我仍然不知道。

我们开发的这些功能现在还在使用吗?

No

一个又一个的原型,我越来越感觉与项目管理格格不入。我们的目标不是获得具有真正用途的产品。而是为了让更多的资金投入到该项目中。

我感觉自己的工作不再有任何意义,没过多久就离开了公司。

4个月的学习和团队合作

尽管我非常不同意LLM项目的管理方式,但我仍能看到这项技术的价值。

在此期间,我正在与有兴趣将这些大型模型嵌入到他们的产品中的公司进行交谈。一个反复出现的话题是根据公司的数据对其专有的LLM进行微调。

如今,此功能仍然是 LLMs 的主要应用之一,并通过 RAG(检索增强生成)作为 LLMs 的“hello world”而普及。

然而,实际上,开发此功能比社交媒体和其他课程所展示的要复杂得多:各种数据源、确保检索最新信息的数据管道、微调、服务……

我需要学习如何去做。

低阶适配器、量化、管理单个 GPU 内存、通过 Sagemaker 利用 AWS GPU、在端点上部署,此外还阅读了许多关于 LLMs 的论文。

4个月的紧张学习和实验。

从那时起我就明白了法学硕士的真正价值。(一定要坚持到最后)

甚至没有时间进行更多实验,一家西班牙公司需要人工智能功能。我凭借自己的新技能加入了这个项目。

自动执行短期租赁业主对其客人的回复

在这个项目中,我负责构建一个响应生成引擎,以帮助短期租赁业主回答客人的问题。

业主的数据存储在 PostgreSQL 数据库中,并且多种多样:可用日期、允许的客人数量、房屋设备列表、描述……换句话说,使用矢量数据库 + RAG 技术只能解决部分问题。除了嵌入房屋描述等相关文本之外,我还必须找到一种方法来找到客人问题的正确信息来源。

另一个困难是公司没有Python开发人员……

他们的大部分代码都是用 .Net 编写的。对于此功能,他们通过调用 OpenAI API(在 .Net 中)并使用自定义 API 从数据库检索信息来构建原型,该 API 将客人及其住宿的所有信息作为 LLM 的上下文。

然而,结果并没有预想的那么好:不准确、提示达到上下文大小限制等问题频出……

我记得查看了用户对原型的反馈,结果不能令人满意。 还有很大的改进空间! 需求就在那里,我能够提供帮助。

但在任务的第一天,有件事引起了我的注意。我的经理,公司联合创始人,已经担任 CTO 11 年了,他决定将自己的角色改为……首席 AI。

“这是第一个危险信号”,我想。

在项目期间,我们很快了解到使用 OpenAI 是一回事,但让文本生成引擎工具沿着其技术堆栈和数据工作是一个真正的挑战:一部分数据必须嵌入,而另一部分数据则使用 LLM 代理生成的 SQL 查询进行检索。因此,我们需要设置一个路由器,用于根据客人的问题检索正确的数据。

此外,矢量数据库必须通过streaming pipeline定期添加或修改数据,以便保持最新。如果业主更改了住宿信息,但中介给出的答案已经过时,用户的体验就会受到影响。

数据工程师必须介入。但当时只有一个……

此外,整个代码都是用 .Net 编写的,这一事实并没有改变。

直到此刻,每个人都明白,实施人工智能是一项非常艰巨的任务,需要协调和大量的前期投资。

调用 OpenAI 并进行一些prompt engineering只是冰山一角。 除了随后改进模型输出的工作之外,准备好数据架构来处理这一新功能才是真正的挑战。

看到这样的情况没多久,我就被从这个项目中除名了。原因是:“他们需要迭代他们已经构建的原型”。

嗯…很公平…

硅谷“AI”初创公司

两周后,一位来自美国的连续创业者联系了我。他希望我帮助他,和他的CTO 构建一款产品:利用 LLMs 的汇总能力来促进大型社区内的决策过程。

他正在寻找资金并需要一个原型。

这个项目听起来不错,但一切都必须从头开始。 我想:“我可以指导他们完成整个过程,同时学习 LLMOps 原理”。

在最初的两周内,我与前后端开发人员一起构建了所有架构。我们共同完成了一个原型,并在创纪录的时间内部署到生产环境!

现在是我关注 AI 功能并改进它们的时候了。 我们从一些用户那里得到的反馈表明,OpenAI 的输出还不错,但不是很好。 这是完全正常的,并且是开发过程的一部分。 从他们的反馈中,我有了一些想法,可以使用机器学习和其他无监督训练(例如主题建模)来提高输出的质量。 我需要检验这些想法。

然而,在项目期间,一旦将某个功能部署到生产中,就需要开发一个新的“闪亮”功能,“就像其他人工智能产品一样”。

但与此同时,我必须向利益相关者解释为什么目前的产品输出不是那么好……

开发的AI功能

 

换句话说,我已经构建了许多 V1版本,但它们都不能让该产品从其他 GPTs SAAS 中脱颖而出。

我需要专注于一个功能,即为用户提供最大价值的功能,并找到一种通过prompt engineering和基础 ML 来充分利用它的方法。

但根据这一年的经验,我决定不再继续下去并结束合作。光是说服利益相关者采取哪种策略就已经让我感到筋疲力尽。

我从这些经历中学到了什么?

如今,人工智能行业受到了很多炒作。

科技公司顺应生成式人工智能的浪潮,为现有产品添加新功能并修改整体战略。非人工智能公司看到了利用 OpenAI API 将其想法转化为可投入生产的产品的机会。

  • 然而,构建人工智能比看起来要复杂得多。 社交媒体和有影响力的人并没有帮助决策者抑制对技术的热情和幻想。

在构建原型方面,所有公司都是这场游戏的参与者。 但当开发一个可解决棘手问题并可立即投入生产的解决方案时,只有少数人了解在现有企业中实施人工智能或从头开始开发人工智能背后的残酷现实。

根据我自己的经历,还没有看到哪个决策者会对人工智能在时间和金钱方面的投资感到惊讶。

在个人层面上,管理高期望是一个真正的挑战。常常让人筋疲力尽。有时会导致倦怠。

但在当今时代,我也看到了生成式人工智能在 NLP 中的地位。如果设置正确,并有适当的期望,就可以为用户带来很多成就,并建立一项有价值的业务。

为了实现这一点,人工智能项目需要回归本质:一个机器学习项目。

开发 LLM 功能的现实

在开始讨论构建相关人工智能产品的策略之前,让我们先回到基础知识。

您可能知道,LLM 代表大型语言模型。换句话说,这是一个比平常更大的语言模型(LM):BERT-large“仅”有 3.4 亿个参数,而 GPT-3 由 1740 亿个参数组成!

但这些 LM 背后的架构并没有改变:Transformers。

得益于注意力机制,这些模型能够很好地掌握自然语言

 

看起来模型越大,性能越好。 LLM一词就此诞生。

至今仍然吸引人们关注的模型是 GPT,Transformer 架构的解码器部分。作为解码器部分,它被设计为根据输入序列生成下一个token。

虽然这种模型的结果迄今为止从未受到如此多的关注(GPT-2、Bloom 等),但当 OpenAI 引入 ChatGPT编写清晰的句子,表现出与人类交谈的惊人能力时,一切都发生了变化。

我们进入了使用自然语言与“机器”交互的时代。

但这项技术也有缺点。

你所付出的一切就是注意力

使 Transformers 架构因“Attention is all you need”论文而闻名的 Attention 机制非常强大,但并非最佳……

注意力机制涉及计算单词之间的注意力分数。这需要成对比较,导致时间复杂度呈二次方,具体取决于句子的长度。

随着输入序列长度的增加,其注意力的计算成本呈二次方增长。

换句话说,序列越长,模型需要的资源就越多。随着这些模型的规模不断增大,运行它们的成本对于企业来说可能会变得非常昂贵。

OpenAI 找到了一种方法,不仅可以通过 Flash Attention 等技术绕过这个问题,还可以将上下文大小增加到 32k 令牌。

OpenAI 的真正实力不是来自模型的训练,而是来自同时服务数百万用户的能力!

 输出的不可预测性

GPT 是一种经过训练可以重现其所训练的文本的模型。换句话说,这是一个旨在生成文本的机器学习模型。

与其他机器学习模型一样,训练结束后,它能够完成以前从未见过的任务,但与训练所用的数据类似。

但这种解决“新”问题的能力意味着输出有一定程度的自由度。完美的模型可以减少不准确的情况,同时保持对可能性的窗口。换句话说,获得 100% 的准确率在技术上是不可能的。

 LLM的工作原理是一样的

然而,对于解码器(GPT)来说,它是基于先前标记预测下一个标记的因果语言模型,最终输出本质上是高度不可预测的!

架构和模型对齐的成本

当您调用 OpenAI API(或任何其他 LLM 提供商,例如 Anthropic 或 Cohere)时,您无需为 LLM 本身付费,而是为使您能够快速使用这些大型模型的工程以及输出的质量付费。

这类模型非常大,这意味着推理时间需要足够的资源(GPU)来减少延迟。在机器学习历史上,从来没有哪家公司能够成功地为这么多人提供如此庞大的模型。

此外,为如此多的用户管理这么大的模型成本太高,必须使用技术来同时减少延迟和成本。正如我之前所解释的,一个问题是处理长序列的二次计算。然而,OpenAI 提出了高达 32k 代币的模型!

此外,为了防止发生有害反应、偏见或幻觉,模型经过调整以尊重人类定义的一组规则。这就是著名的人类反馈强化学习(RHLF)。

通过这种技术,我们都可以享受与 ChatGPT 或 GPT-4 聊天的乐趣,而不会受到模型的侮辱。

因此,当您调用 OpenAI 时,您不仅要为 LLM 付费,还要为输出的质量付费。

然而,这些公司仍然亏损

例如,Github Copilot 让微软每个用户每月损失 20 美元。

现在我们从根本上了解了 LLM 是什么,让我们谈谈构建 LLM 功能时不要犯的错误。

公司在LLMs方面犯的错误

认为人工智能是一个打动用户(和投资者)的功能

实施人工智能是一个充满挑战的漫长旅程。

因此,从人工智能入手应该是深思熟虑的结果,只有在没有其他解决方案可以解决用户问题的情况下才应该采取。

条件是首先有一个问题需要解决。

我经常看到公司想要开发人工智能功能只是为了顺应潮流,想象用户的问题,认为客户可能还没有意识到。

然而,人工智能本身就是一种“产品”,需要与任何其他商业产品一样的关注:开发最小可行解决方案,允许用户进行试验、收集数据和迭代。

那些认为只需调用 OpenAI 就能拥有最终产品的公司或初创企业注定会失败,因为他们可能缺乏对自己试图解决的问题的理解。即使他们掌握了问题,他们也常常低估构建可靠解决方案所需的资金和时间。

被社交媒体和其他人的行为炒作

人们常常对他们在社交媒体上看到的东西感到兴奋:自主管理 Twitter 帐户的新代理、在与其用例无关的基准上显示出显着结果的语言模型 (LLM),或者新的提示工程技术。

但这只是烟幕弹。展示 50 次中有 1 次有效的 gif 或屏幕截图是很容易的。

作为一个例子,这是我在个人项目中对《指环王》书籍上的 Bloom-3B 进行微调后截取的屏幕截图:

结果可能看起来令人印象深刻,但现实是输出不一致,直到我找到正确的文本生成超参数和输入。当我终于取得了好的结果时,我截图并分享到我的项目中。

现实情况是,调整文本生成算法所需的时间与准备数据和微调模型所需的时间相同。

不要被社交媒体上看到的内容所吸引。

认为人工智能可以替换任何软件功能

“完成此功能的开发后,请转到下一个”

这是我在使用 OpenAI 开发并部署生产解决方案后得知的。

我花了几个小时来开发、测试并将该功能添加到生产中。换句话说,如今开发人工智能功能并不那么容易。

然而,利用这些不可预测的模型获得可靠的结果是主要的挑战。该功能的架构已部署,然后是时候对其进行迭代,以根据用户反馈使其变得更好。

但在技术经理看来,OpenAI 为我们完成了所有工作……

我同意 OpenAI 在开发和服务 LLM 方面做得非常出色,立即产生了很好的结果。然而,根据用例定制模型输出是一件棘手的事情。

也许使用 GPT-3.5 不是正确的解决方案。也许更小的模型可以完成这项工作。也许根本没有模型可以胜任这项工作。

事实上,开发人工智能功能是一个迭代过程。与软件功能相反,开发人工智能解决方案从定义上来说是迭代的。找到正确的数据、技术或超参数以获得基本 ML 模型的最佳指标,或提高 LLMs 生成文本的质量,这是真正的交易!

认为调用 OpenAI 就足以拥有一个产品/初创公司

使用 LLM 本身并不是一个产品。原因是:它不是为了解决客户问题而设计的。

事实上,LLM 的开发是为了解决一般问题并给广大观众留下深刻的印象。但如果问题是具体的,prompt engineering确实是一种获得看似理想结果的黑客手段。

但从该模型中获得的结果始终是有限的,并且由于多种原因,最初输出的结果通常很差:概念漂移、检索到错误的上下文、幻觉等……

在生成良好的文本的现象背后,让模型为用户解决问题要困难得多。如果功能仅使用 OpenAI GPT 和一些提示进行设计,用户没有理由不使用 ChatGPT,也没有理由阻止竞争对手复制该产品。

换句话说,该公司没有护城河。

那么,什么能让企业借助人工智能蓬勃发展呢?

没有人工智能初创公司,只有数据驱动的企业。

没有数据,人工智能就毫无意义。如果您的唯一价值是使用采用通用数据预先训练的模型来提供服务,那么您的服务将很快被拥有更多潜在客户和更多资源的更大参与者所取代。

那么你如何才能竞争呢?

别再专注于技术了!相反,要专注于问题!选择一个有客户痛点问题的利基市场,然后解决它。

开发人工智能产品与开发任何产品相同:

  • 创建一个MVP(最小可行性产品)。
  • 让您的用户使用它并收集数据/反馈。
  • 迭代

然而,对于机器学习项目来说,收集数据可以改进生产中的模型。

因此,人工智能业务的首要任务不是构建模型,而是构建机器学习架构,以快速构建、收集和迭代

这就是 OpenAI 和其他 LLM 提供商应该被公司利用的方式!

由于这些模型可以立即提供出色的结果,因此它们非常适合构建概念验证。 这些 POC 不仅是为了吸引潜在用户,还可以帮助企业获取宝贵的数据。

这就是机器学习中飞轮的概念。

人工智能竞赛的获胜者将是那些首先关注 MLOps(训练、部署、监控、迭代)并确保用户满意度的人。

其他人只会获得 POC,可以在社交媒体上分享。

以正确的顺序雇用合适的人

一旦企业理解了这一原则,就必须相应地考虑其战略。首先要按照正确的顺序雇用合适的人员:

  1. AI产品经理/团队负责人

开发人工智能产品或功能与构建任何其他应用程序有很大不同。

拥有一个充分了解机器学习可以实现的目标、以及开发人工智能产品的成本和时间的人至关重要。

此人可以在产品开发过程中管理和设置优先级,并达到正确的期望。

  1. 数据工程师

要构建出色的 ML 产品,您需要大量……数据工程师。

  • 但是等等,为什么不先雇佣机器学习工程师呢?

数据是燃料。如果您不先构建一个系统来收集和存储数据,那么机器学习工程师或数据科学家都无法帮助您实现业务增长。数据是人工智能业务的基础。

  1. 机器学习工程师/MLOps

最后是机器学习工程师。他们的作用不仅是解决用户的模型和收集的数据问题,而且还通过建立管道来开发、部署和监控生产中的模型。

一旦您拥有了这个团队,您就拥有了在业务中蓬勃发展并快速有效地迭代的完美配置。

我相信AI。但不是我们在社交媒体上看到的AI - 那种由一段短视频组成的短视频,显示烟幕效果,一旦视频停止,这些结果就会中断,或者根据随机基准对LLMs进行比较,这些基准与业务或筹集资金无关,并且没有明确的策略。

AI的定义并不存在。 没有人工智能这样的东西。 依据是什么? 我们如何描述智力? 检索信息就叫做情报吗?

AI只是市场上使用的一个广义术语。

相反,我相信以用户/数据为中心的产品。 我相信最简单的解决方案能够取得最大的成果,即使它不涉及使用机器学习。 我相信构建健壮的架构来开发、部署和收集数据。 我相信要有正确的期望,而不是被社交媒体所诱惑。

否则,AI产品就注定会失败。

posted @ 2024-01-30 22:28  白鹿原老张  阅读(36)  评论(0编辑  收藏  举报