火山引擎抖音大规模实践 向量数据库炼成

9158APP 0

AI时代,大模型的有效利用成为各行各业关注的焦点。矢量数据库作为大型模型的“存储器”,不仅提供数据存储,还通过数据检索和分析为生成式人工智能应用的开发带来新的范式。然而,它到底是如何为各种应用程序提供支持的呢?

文本:

存储与计算分离:突破亿级数据挑战

在人工智能技术的推动下,各大企业都在探索将大型模型引入业务中。正是在这样的背景下,抖音集团早期的矢量化搜索引擎应运而生。

但这些业务庞大的数据规模对向量索引提出了极高的要求。以图虫为例,数亿张图片素材的存在已经远远超出了单机内存的极限,这意味着海量矢量数据的存储和检索必须找到新的解决方案。

为了应对这一挑战,研发团队采用了巧妙的存储与计算分离的分布式架构。该架构通过矢量数据的分片和分布式编排,结合矢量存储、批量构建和实时在线检索,解决了多索引、多场景的问题。

这不仅节省了索引构建资源,加快了索引构建过程,还提高了在线检索服务的稳定性,让用户能够快速、准确地搜索抖音上的内容。

计算内核性能优化:速度与稳定性的平衡

构建企业级矢量检索应用需要应对数十亿级数据和低延迟的挑战,这就要求计算核心必须具有高性能。矢量化检索是典型的计算密集型、数据密集型场景,性能优化成为关键。通过减少内存占用、优化索引性能、优化CPU指令集计算等一系列性能优化工作,抖音的矢量数据库架构实现了高吞吐量、低成本、高稳定性。

与开源基线相比,相同检索精度下的吞吐量和延迟提升3倍以上,同时满足大规模在线服务的稳定性要求。

但每个索引构建集群的成本较高,配置复杂也会带来问题。因此,研发团队进行云原生改造,实现组件多租户,并提供自动化调度能力,降低错误率,加速交付。

矢量标量混合检索能力:灵活满足多种场景需求

向量数据库经常与结构化数据一起使用,例如根据文档向量存储文档所属的部门信息,以支持权限过滤。

解决此类需求的常用方法是后过滤和预过滤,但是如何在执行过程中自动找到最合适的执行路径呢?为此,技术团队开发了DSL定向引擎,在检索过程中同时支持矢量检索和DSL过滤。该引擎具有高性能、逻辑完整、按需终止、执行计划优化等特点。在混合查询性能对比中表现出色,各方面都名列前茅。

更快实现大模型知识库:AI应用的助推器

随着大模型应用场景不断扩大,矢量数据的存储和检索需求也不断增长。

然而,将企业拥有的数据转换为矢量数据并不是一件容易的事。技术团队采用创新的方法,为业务提供预设的向量化方法,让业务只需选择适合自身数据的方法,即可将原始数据写入向量库,实现快速高效执行。模型应用。

矢量数据库技术全景:支撑大模型生态

经过内部多年的摸索和优化,抖音使用的矢量数据库产品已经形成了一整套完整的解决方案。该方案基于云基础设施,提供深度优化的引擎,涵盖从多模态数据写入、向量生成、在线检索到弹性调度和监控的全链路解决方案。

总结:

矢量数据库已经成为大模型时代的重要基础设施,为各行各业的人工智能应用提供了有力支撑。通过不断的技术实践和创新,抖音集团不仅在内部业务中广泛应用矢量数据库,还对外开放,为千行百业加速人工智能应用落地提供了机会。未来,随着新的应用场景的出现,矢量数据库将不断创新,提供更加灵活多样的功能,满足不同用户的需求。矢量数据库的发展将继续为AI时代的发展铺平道路,开辟新的可能性。