大模型落地实践:如何跨越数据挑战
随着大模型从理论探索走向实际应用,其落地过程正在考验着千千万万的企业。首要且核心的关注点,无疑是从数据做起。数据作为大模型的'燃料',其质量、多样性与规模直接决定了大模型性能的天花板。因此,建立一套高效、可靠的数据处理流程,确保数据的质量与合规性,成为了大模型落地的基石。
然而,构建大模型的数据能力并不容易。企业面临着诸多挑战:如何找到合适的存储来承载海量数据?如何清洗加工原始数据?如何有效地进行数据治理?如何将现有数据快速结合模型产生独特价值?种种问题横亘在企业和大模型之间,成为生成式 AI 时代的关键挑战。
大模型时代的数据挑战
如今基础大模型遍地开花,开源大模型更是随处可见,每个企业都能访问相同的基础大模型,但能够利用自己的数据构建生成式 AI 应用的企业却并不多见。很重要的一个原因在于,从数据利用到大模型应用,中间还需要大量的准备工作。
1. 场景差异导致数据处理方式不同
企业基于自身数据去定制基础模型,不同的应用场景需要不同的数据处理方式。
-
检索增强生成 (RAG) 场景 在 RAG 场景中,企业将自身的知识库、数据库等与生成式 AI 模型相结合,在生成过程中需要实时检索和利用企业内部的相关数据,从而提高生成结果的准确性、一致性和信息量。RAG 通常需要 GB 级企业数据,数据来源包括企业内部文档库、数据库、数据仓库、知识图谱。技术要求上,RAG 需要向量检索来迅速查找让模型能快速准确地进行响应。
-
微调场景 在微调场景中,企业使用与目标任务相关的数据对模型进行进一步训练,以提高其在特定任务上的性能。微调需要 GB 级人工标的高质量数据,数据来源为私域知识,技术上要求选取和检验符合业务需求的高质量数据集。
-
持续预训练场景 在持续预训练场景中,企业利用自身专有数据(如内部文档、客户记录等)对模型进行持续预训练。这种持续预训练门槛较高、成本较大,但可以得到一个企业自身定制的行业大模型。持续预训练需要 TB 级未标的原始数据,数据来源为公开的数据集或企业各部门的数据,技术上要求大规模、分布式清洗加工原始数据集的能力。
2. 新数据处理能力的需求
企业需要具备强大的处理新数据的能力,才能有效构建生成式 AI 应用。对生成式 AI 应用程序而言,基础模型频繁调用将会导致成本的增加和响应的延迟。相对于此前数据库调用通常毫秒级甚至微秒级的响应时间,基础模型每次调用时长往往达到秒级。此外,每次调用基础模型也会增加成本。因此,加快数据处理速度,才能有效地在调用大模型时降本增效。
打造生成式 AI 时代的数据基座
面对大模型构建中的数据存储、清洗、加工、查询、调用等各种挑战,企业需要寻找高效的数据解决方案来应对。
1. 存储与计算基础设施
针对大模型的微调、预训练,企业需要找到合适的存储来承载海量数据,清洗加工原始数据为高质量数据集,以及对整个组织内数据的发现编目治理。
-
数据存储方面:扩展性和响应速度是关键。一方面,需要能够承载海量数据;另一方面,存储性能必须跟上计算资源——避免因为数据传输瓶颈造成高昂计算资源的浪费,或是吞吐量瓶颈导致更长的训练时间。例如,对象存储服务支持广泛的数据协议,能够轻松应对各种数据类型,还支持智能分层以降低训练成本,其安全和功能都满足微调和预训练基础模型对数据存储上的要求。专门构建的文件存储服务则能够提供亚毫秒延迟和数百万 IOPS 的吞吐性能,能够进一步加快模型优化的速度。
-
数据清洗方面:企业需要灵活的工具来完成数据清理、去重、乃至分词的操作,能够专注于生成式 AI 业务创新。无服务器架构能够帮助企业运行任何规模的分析工作负载,自动扩展功能可在几秒钟内调整资源大小,以满足不断变化的数据量和处理要求。数据集成服务则是一个简单可扩展的无服务器工具,可以轻松快速地完成微调或预训练模型的数据准备工作。
-
数据治理方面:企业难以在多个账户和区域中查找数据,也缺乏有效的数据治理工具。因此,一个能够跨组织边界大规模地发现、共享和管理数据的统一数据管理平台,成为企业的必选项。
2. 向量检索与语义关联
针对大模型 RAG 场景,企业需要向量检索来迅速查找,让模型能快速准确地进行响应。这其中的技术关键是向量嵌入(vector embeddings),它通过将数据转换为向量并存储到向量数据库中,从而将语义的关联性转化为向量间的数学距离问题,以实现内容的关联性计算。
理想的情况是将向量搜索和数据存储结合在一起,这样企业就能将向量检索和现有数据关联起来,并得到更快的体验。图数据库与分析数据库引擎的结合能够提升图数据分析速度,使用内置算法可在几秒钟分析数百亿个连接。通过将图和向量数据一直存储能够实现更快的向量搜索。
3. 缓存与成本控制
有效处理生成式 AI 应用的新数据,企业能够降低模型频繁调用成本并提升性能。很多企业在推出生成式 AI 应用后会发现,基础大模型的频繁调用会导致成本的增加和响应的延迟。但如果将之前问答生成的新数据存入缓存,不调用模型,而直接通过缓存给出回答,就能够减少模型调用,还可以节约成本。


