企业AI的壕沟是RAG +精细调整 – 这就是为什么

深入探讨企业AI的壕沟:RAG+精细调整的关键因素

要在规模上成功使用生成式人工智能,我们需要给LLMs应有的认真对待。进入RAG和精细调整。

Photo by Volodymyr Hryshchenko on Unsplash.

对LLMs的炒作是空前的,但它是有道理的。从生成的AI图像,例如戴着巴黎世家头到脚的教皇,到没有脉搏的客户支持代理,生成式人工智能有潜力转变我们所了解的社会。

在很多方面,LLMs将让数据工程师变得更有价值-这是令人兴奋的!

然而,向老板展示一个很酷的数据发现工具或文本到SQL生成器的演示是一回事-使用公司的专有数据,甚至更令人担忧的是客户数据,是另外一回事。

公司常常在构建具有AI应用程序时匆忙行事,对实验的财务和组织影响缺乏远见。这不是他们的错-高管和董事会应对这种新技术(以及大多数新技术)的”快起来”的心态负有责任。 (还记得NFT吗?)

为了使AI-特别是生成式AI-取得成功,我们需要退一步并记住任何软件如何变得企业可用。要达到这一目标,我们可以借鉴其他行业的经验,了解企业可用性是什么样的,并将这些原则应用到生成式AI中。

在我看来,企业级可用的生成式AI必须具备以下特点:

  • 安全和私密:您的AI应用必须确保数据安全、隐私和合规,并具备适当的访问控制。想象一下:为AI建立的安全运维。
  • 可扩展性:您的AI应用必须易于部署、使用和升级,并且具备成本效益。如果一个数据应用需要花费数月时间才能部署,使用起来又是乏味的,并且在升级时导致一系列问题,你是不会购买或构建它的。我们不应该对待AI应用程序与众不同。
  • 可信任:您的AI应用程序应该足够可靠和一致。很难找到一个愿意以购买或构建的产品为助推而面临不可靠代码或生成片面和误导性见解的首席技术官。

有了这些保护措施,现在是时候开始给予生成式AI应有的认真对待了。但这并不容易…

为什么企业AI很难实现?

简而言之,尚未具备扩展、安全和运营LLM应用程序所需的基础设施。

与大多数应用程序不同,AI很大程度上是黑箱。我们*知道*我们输入的内容(原始、常常非结构化数据),我们*知道*我们得到的结果,但我们不知道它是如何得到的。这在扩展、安全和运营上是困难的。

以GPT-4为例。当涉及某些任务(如参加SAT和AP微积分AB考试)时,GPT-4确实超越了GPT 3.5,但它的输出有时受到幻觉的困扰,或者缺乏足够的上下文来充分完成这些任务。幻觉是由各种因素引起的,从低质的嵌入到知识截止,经常影响到公开可用或基于从互联网上抓取的信息训练的开放LLMs所生成的响应质量,这些模型占大多数。

为了减少错觉并更重要的是回答有意义的业务问题,公司需要用自己的专有数据增强LLM,这些数据包括必要的业务背景。例如,如果客户要求航空公司聊天机器人取消他们的机票,模型将需要获取关于客户、关于他们过去的交易、关于取消政策和可能的其他信息。所有这些都存在于数据库和数据仓库中。

在没有这个背景的情况下,人工智能只能用最初训练它的公开信息进行推理,通常是在互联网上发布的信息。这里面存在一个难题,即暴露专有企业数据并将其纳入业务工作流程或客户体验几乎总是需要可靠的安全性、可扩展性和可靠性。

实现企业级AI的两种途径:RAG和微调

当涉及使人工智能适应企业级需求时,最关键的部分出现在LLM开发过程的最后阶段:检索增强生成(RAG)微调

然而,值得注意的是,RAG和微调并不是互相排斥的方法,应该根据具体需求和使用情况来使用它们,常常需要同时使用它们。

何时使用RAG

“照片由作者提供。”

RAG是一种通过为模型提供对数据库的访问,同时试图回答提示,来提高LLM输出质量的框架。数据库是一个经过策划和可信赖的潜在专有数据集,使模型能够将最新和可靠的信息融入其回应和推理中。这种方法最适合需要额外上下文信息的人工智能应用,例如客户支持回应(例如我们的航班取消示例)或在公司企业通信平台中进行语义搜索。

RAG应用程序旨在在生成回应之前从知识源中检索相关信息,使其非常适合查询结构化和非结构化数据源,例如向量数据库和特征存储器。通过检索信息以提高LLM在输出生成时的准确性和可靠性,RAG在降低错觉并降低训练成本方面也非常有效。同时,RAG还为团队提供了一定程度的透明度,因为您知道将那些数据注入模型以生成新回应的数据来源。

关于RAG架构的一点需要注意的是,它们的性能在很大程度上取决于您构建有效数据管道的能力,以使企业数据可用于人工智能模型。

何时使用微调

“照片由作者提供。”

微调是在较小、任务特定和带有标签的数据集上训练现有LLM的过程,根据这些新数据调整模型参数和嵌入。微调依赖于预策划的数据集,这些数据集不仅信息检索,还要对您要生成输出的领域的细微差别和术语进行设计。

根据我们的经验,微调最适合特定领域的情况,例如用特定语调或风格回应详细的提示,例如法律简报或客户支持工单。它也非常适合克服信息偏差和其他限制,例如语言重复或不一致性。在过去的几年中,几个 研究表明,经过微调的模型在很大程度上优于现成的GPT-3和其他公开可用的模型。已经确定在许多用例中,微调的小模型可以超过大型通用模型,从而在某些情况下成为成本效益的可行路径。

与RAG不同,微调通常需要更少的数据,但代价是更多的时间和计算资源。此外,微调操作就像一个黑匣子;由于模型内化了新的数据集,很难确定新响应背后的推理原因,幻觉仍然是一个重要的问题。

微调 – 就像RAG架构一样 – 需要构建有效的数据管道,使(有标签的!)企业数据可用于微调过程。这可不是一件容易的事。

为什么RAG可能对您的团队有意义

图片由作者提供。

重要的是要记住,RAG和微调不是互斥的方法,它们具有不同的优势和劣势,可以一起使用。然而,对于绝大多数用例来说,RAG在提供企业生成式AI应用方面可能是最合理的选择。

原因如下:

  • RAG的安全性和隐私性更可管理:数据库具有内置的角色和安全性,不同于AI模型,并且很容易理解由于标准访问控制而看到什么。此外,通过访问安全和私密的专有数据语料库,您可以更好地控制使用的数据。通过微调,训练集中包含的任何数据都会被应用程序的所有用户所暴露,而没有明显的方法来管理谁看到了什么。在许多实际场景中 – 特别是涉及客户数据的情况下 – 缺乏这种控制是不可接受的。
  • RAG更可扩展: RAG比微调更便宜,因为后者涉及更新大型模型的所有参数,需要大量计算能力。此外,RAG不需要标记和制作训练集,这是一个需要耗费人力的过程,可能需要数周甚至数月才能完善一个模型。
  • RAG产生更可信的结果。简单来说,RAG在处理动态数据时效果更好,从一个经过策划的最新数据集生成确定性结果。由于微调在很大程度上类似于一个黑匣子,很难确定模型如何生成具体结果,这降低了信任和透明度。通过微调,幻觉和不准确性是可能的,甚至是有很大可能的,因为您依赖模型的权重以损失的方式编码业务信息。

在我们的卑微意见中,企业级准备的AI主要依赖于RAG,微调则使用在更细致或特定领域的用例中更频繁。对于绝大多数应用程序来说,微调将成为一种次要选择,仅用于特定场景,并且在行业能够降低运行规模化AI所需的成本和资源之后,将更频繁地发挥作用。

无论您选择使用哪种方法,您的AI应用程序开发都将需要通过某个数据存储库(如Snowflake、Databricks、像Pinecone这样的独立向量数据库,或其他完全不同的东西)向这些模型提供公司数据的数据管道。归根结底,如果生成式AI用于从非结构化数据中提取分析和洞察的内部流程 – 它将用于…咚咚咚…一个数据管道。

要让RAG发挥作用,您需要数据可观察性

在2010年代早期,机器学习被吹捧为一个可以通过给予其特征完美权重的魔法算法来奇迹般地执行命令。然而,实际上改善ML性能的通常是在高质量特征和特别是数据质量上投资。

同样地,为了使企业AI运行良好,您需要关注生成模型所依赖的数据的质量和可靠性 – 这很可能通过RAG架构实现。

由于它依赖于动态的、有时是最新的数据,RAG需要数据可观察性来满足其企业级就绪的期望。数据可能因任何原因而损坏,例如格式错误的第三方数据、有问题的转换代码或失败的Airflow作业。而且,这种情况总是会发生。

数据可观察性使团队能够监控、警报、排除故障并解决整个数据生态系统中的数据或管道问题。多年来,这一层已成为现代数据堆栈的必备部分;随着RAG的重要性和AI的成熟,可观察性将成为LLM开发的关键伙伴。

唯一的方式是RAG和企業AI的運作,是如果您可以信任數據。為了實現這一點,團隊需要一種可擴展的、自動化的方式來確保數據的可靠性,以及一種企業級的方式來識別根本原因並快速解決問題,以免影響到它們服務的LLMs。

那麼,什麼是事實上的LLM堆棧?

AI工具的基礎設施和技術路線正在我們口中發展,每天都有新的初創企業出現,解決各種問題,而行業巨頭們也聲稱他們也在應對這些挑戰。當涉及將企業數據納入AI時,我可以看到這個競爭中有三個主要的方案。

第一個方案:向量數據庫。Pinecone、Weaviate等正在成為必不可少的數據庫平台,用於支持RAG架構。雖然這些技術顯示出了很大的前景,但它們確實需要新建一個堆棧的一部分並創建工作流程,以支持從安全性、可擴展性和可靠性的角度進行這方面的核實。

第二個方案:由第三方LLM開發人員(如OpenAI或Anthropic)建立的托管模型版本。目前,大多數團隊通過與這些新興AI領導者的API進行互動來獲得其生成式AI的解決方案,因為易於使用。只需插入OpenAI API並在幾分鐘內利用創新模型?願意加入我們。如果您希望將專有信息納入這些模型中,您可以使用這些平台提供的內置的微調RAG功能。

最後,第三個方案:現代數據堆棧。Snowflake和Databricks已經宣布,他們正在將向量數據庫嵌入到他們的平台以及其他一些工具中,以幫助將已存儲和處理在這些平台上的數據納入LLMs。對許多人來說,這是很有意義的,它允許負責AI項目的數據團隊利用他們已經使用的工具。當您已經有基礎設施時,為什麼要重新發明輪子呢?更不用說能夠輕鬆地將傳統關系數據與向量數據進行聯接的可能性…像其他兩個方案一樣,這種方法也有一些不足之處:Snowflake Cortex、Lakehouse AI和其他MDS + AI產品都是新興的,需要一些前期投資來將向量搜索和模型訓練納入到您現有的工作流程中。如果您想深入了解這個方法,我建議您查看Meltano的相關文章,了解為什麼最好的LLM堆棧可能是就在您面前的那個。

無論我們選擇哪匹馬,有價值的業務問題都無法由在互聯網上的數據訓練的模型回答。它需要來自公司內部的上下文。通過以安全、可擴展和可靠的方式提供這種上下文,我們可以實現企業級的AI。

企業AI的未來在於您的管道

為了使AI能夠發揮其潛力,數據和AI團隊需要對LLM擴充採取應有的謹慎態度,並將安全性、可擴展性和可靠性視為首要考慮因素。無論您的用例需要RAG還是微調-還是兩者兼而有之-您都需要確保您的數據堆棧基礎設施齊全,以保持成本低廉,性能穩定且可靠性高。

數據需要安全和隱私;LLM部署需要可擴展性;您的結果需要受信任。通過對數據質量進行持續觀測,保持穩定的脈搏是滿足這些需求的關鍵。

從孤立的X演示到企業級的AI的這一演變最好的部分是,RAG使數據工程師在擁有和推動生成式AI投資的回報方面處於最佳位置。

我已經準備好迎接企業級的AI了。您準備好了嗎?

本文由Lior Gavish提供。

聯繫 Barr on LinkedIn以獲得有關數據、AI和數據信任未來的更多見解。