带你读《Apache Doris 案例集》——05 当 Apache Doris 遇上大模型:探秘腾讯音乐如何 基于大模型+ OLAP 构建智能数据服务平台(1)

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: 带你读《Apache Doris 案例集》——05 当 Apache Doris 遇上大模型:探秘腾讯音乐如何 基于大模型+ OLAP 构建智能数据服务平台(1)

作者:腾讯音乐大数据架构师,张俊、罗雷

 

导读: 当前,大语言模型的应用正在全球范围内引发新一轮的技术革命与商业浪潮。腾讯音乐作为中国领先在线音乐娱乐平台,利用庞大用户群与多元场景的优势,持续探索大模型赛道的多元应用。本文将详细介绍腾讯音乐如何基于Apache  Doris构建查询高效、实时统一分析的 OLAP引擎,使OLAP作为底层基建加强模型连接转化效率、结果输出准确率,最终将大模型+OLAP  引擎结合为用户提供个性化、实时化、灵活化的智能数据服务平台。

 

腾讯音乐娱乐集团(以下简称腾讯音乐”)是中国在线音乐娱乐服务开拓者,有着广泛的用户基础,总月活用户数超过8亿,通过一站式的音乐娱乐平台,用户可以在多场景间无缝切换并享受多元的音乐服务。我们希望通过技术和数据赋能,为用户带来更好的体验,为音乐人和合作伙伴在音乐制作、发行、销售等方面提供支持。

 

基于公司丰富的音乐内容资产,需要将歌曲库、艺人资讯、专辑信息、厂牌信息等大量数据进行统一存储形成音乐内容数据仓库,并通过产品工具为业务人员提供数据分析服务。在内容数仓搭建的过程中,我们的工作始终围绕降本增效为主要目的进行优化与迭代,希望在数据服务方面不断提升产品工具的开发与分析效率,同时在数仓架构方面能够有效减少架构成本与资源开销。

 

 在传统数据服务中,我们为业务分析师提供了多种数据服务,包括 SQL 查询、固定看板、定制

化的分析工具以及人工跑数。然而,在实际应用过程中仍然存在一定痛点:

 

SQL查询平台: 业务分析师根据需求进SQL语句编写,对平台数据进行查询分析,每位业务人员都需要掌握SQL,导致学习成本高、上手难度大。

 

固定看板(Dashboard)  : 技术人员基于常规业务开发制作数据看板,虽然能够简化业务分析师查询的过程,但是看板制作成本高且灵活度低,当面对复杂的用户问题时,看板无法及时调整以满足需求变更。 

 

定制分析工具:基于特定的业务需求,技术人员需要定制化开发产品分析工具,整体开发成本过高,且单一的开发工具不具备通用性,随着工具数量增加,操作介面变得散乱,从而降低业务效率。

 

人工跑数:当以上三个场景都无法满足业务需求时,业务分析师需要向技术人员提需求进行人工跑数,沟通成本过高、整体解决效率低下。

 

image.png

随着行业发展趋势,LLMs大语言模型(LLMs-Large  Language  Models, 以下统一简称为大 模型)出现有效地解决了这些问题。当平台融入大模型后,平台用户输入的问题会进入大模型进行语义解析,自动转化为 SQL语句触发 OLAP  引擎开启数据分析与查询。通过平台智能问答交互的方式,业务分析师不再需要依靠人工编写 SQL 提供查询分析结果,技术人员也不需要再制作过于固定或者过于定制化的产品工具。大模型+OLAP  引擎结合的全新数据服务模式,不仅为平台用户提供了个性化、灵活表达、秒级回复的服务体验,还大幅降低了企业内部技术与业务学习成本,加速数据分析效率,实现多端入口统一、界面统一的平台构建。

 

本文将详细介绍腾讯音乐如何基于 Apache Doris 构建查询高效、实时写入且统一的 OLAP  分析引擎,使OLAP 作为底层基建加强大模型与之连接转化的效率、结果输出的准确率,最终提供更智能化的问答交互服务,也希望通过这篇文章为有相关业务需求的公司提供不同视角和思路。

 

大模型+OLAP: 开启数据服务平台新模式

 

在大模型+OLAP  架构方案中,目前经典方案如下图所示,大模型充当中间层将用户输入的自然语言转化为SQL执行语句,OLAP  作为底层存储和数据处理的引擎,负责接受和执行从大模型发送过来的SQL语句,对数据进行预聚合、多维分析等操作,满足大规模数据集的查询分析需求。 

image.png

 

然而,这种架构在实际落地过程中也面临一定挑战,例如语义理解的准确性、查询效率的优化、私域知识的理解等方面,具体如下:

 

复杂数据口径不统一:大模型对于技术方面的词汇,如字段、行列、表等无法理解,相反对 于业务方面的词汇,如公司收入情况、日活跃用户数量等能够提供有效翻译与转换。因此挑战之一是需要思考如何引导用户进入指标范围内提问,挑战之二是当用户存在对多种指标、多类指标查询时,需要考虑如何保持指标维度口径的统一、如何有效生成对应的指标计算公式。

 

模型处理效率较低:现阶段大模型虽然支持交互能力,但推理速度较慢,需要花费十秒级以上响应,用户每增加一个问题输入,就需要花费更多等待时间,使服务质量降低。同时大模型整体按照Token 收费,使用量增加时也会导致平台成本升高。

 

私域知识无法识别:虽然大模型已经开展许多公开数据集的语言转换训练,但面对企业内部 的大量专业术语仍无法很好地理解转化。以音乐内容数据库为例,大模型时常缺少对于某些冷门歌曲的认知,在问答过程中无法正确给出交互反馈,因此我们需要增强大模型对于私域知识的理解。

 

定制场景无法满足:大模型主要依据自身数据集进行回答,会出现知识幻”(输出缺乏依据的内容)问题,我们需要允许第三方插件的接入使大模型得以联网,让用户借助内部插件完成更定制化、更多样的任务。因此如何接入、匹配并触发组件功能是我们的重点优化目 标。 

 

面对经典方案中的落地难点,我们的总体解决思路是将以上四大挑战逐一拆解,通过组件叠加分阶段完善大模型+ OLAP 架构构建,最终实现全新的交互问答服务模式,接下来我们将介绍各阶段挑战对应的解决方案。 

 

增加语义层:处理复杂数据问题

 案:处理复杂数据

 image.png

为了解决复杂数据处理问题,我们在大模型与 OLAP  中间增加Semantic Layer (以下简称语义

) 

 

一方面语义层作为连接技术与业务之间的转换桥梁,能够将数据字段翻译为业务用户的术语,使业务知识作为额外的抽象层。通过语义层,业务分析师不需要在定义指标后存储于OLAP 数仓中,能够直接在语义层中指定过滤条件,将所需指标筛选后生成SQL语句并在OLAP  中进行字段查询。这意味着,业务分析师能够把多源数据按照需求定义成语义信息并形成语义标准,有效解决了多种指标、多类维度计算口径不统一的挑战。

 

另一方面语义层能够针对业务计算逻辑,进行语义加工、描述、关联和运算。语义层在过滤数据后,能够屏蔽由表关联所产生的复杂指标计算公式,将多表 Join 场景进行拆解、转化,形成较为简单的单表查询,以提升语义转化的准确性。 

 

设定人工经验:处理模型效率问题 image.png 针对模型效率问题,我们的解决思路是对指标计算、明细查询、人群圈选等查询场景进行复杂度判定,将简单查询场景直接跳过大模型解析的步骤,进入底层 OLAP 进行处理分析,使大模型更加专注处理复杂查询场景。

 

为此,如上图所示我们在模型中添加人工经验判断。当业务分析师输入查询各大音乐平台收问题时,模型依据判定规则发现该场景只需要提供某个指标或几个维度即可完成,这时不需要将问题进入大模型解析,直接使用OLAP 进行查询分析,能够有效缩短响应时间,提升结果反馈效率。此外,跳过大模型解析的步骤也能节省API调用经费,解决平台使用成本升高问题。

 

增加内容映射:处理私域知识问题


image.png

针对私域知识的问题,我们在大模型上游增加Schema    Mapper在外部建立业务知识库,将平台用户的问题与知识库进行连接,通过Schema  Mapper判定是否存在部份文字能够与知识库内 容匹配。如果匹配成功,大模型将进一步解析转化OLAP分析处理。Schema  Mapper与业务知识库的引入,有效解决了大模型对私域知识理解不足的问题,提升语言处理的效果。

 

目前,我们正在不断对Schema  Mapper匹配准确性进行测试与优化,将知识库中的内容进行分类处理、字段评级等操作,同时将输入文本进行不同范围的内容映射(如全文本映射与模糊映),通过映射结果来加强模型语义解析的能力。


插件接入:处理定制场景问题

image.png 

定制化场景主要指代业务范围之外的查询需求,需要将音乐内容数据与法律、政治、金融、监管等方面信息结合提供问答服务。通过增加插件,使平台用户能够访问实时更新且无法包含在训练数据或业务知识库中的信息,以实现定制化交互。

 

由于插件类型不同,模型接入方式也会有所不同,常见的接入方式主要分为两种:

 

·Embedding  本地文本接入:该方式首先对本地文档进行向量化处理,通过语义向量搜索,找到本地文档中相关或者相似的词语进行匹配,之后将文档内容注入大模型解析窗口中生成答案。这种方式非常适合业务分析师希望将音乐内容数据库与最新政策等一类较为私有的文件结合完成查询需求。

 

·ChatGPT  第三方插件接入: 每款插件具备对应的Prompt 与调用函数。业务人员在安装某款插件之后,在与模型对话中可以通过Prompt 词触发函数开启调用。目前第三方插件类型丰富,涉及行业广泛,能够有效增加多元场景的处理与响应能力。

 


更多精彩内容,欢迎观看:

带你读《Apache Doris 案例集》——05 当 Apache   Doris 遇上大模型:探秘腾讯音乐如何 基于大模型+ OLAP  构建智能数据服务平台(2):https://developer.aliyun.com/article/1405739

相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
11天前
|
存储 运维 监控
金融场景 PB 级大规模日志平台:中信银行信用卡中心从 Elasticsearch 到 Apache Doris 的先进实践
中信银行信用卡中心每日新增日志数据 140 亿条(80TB),全量归档日志量超 40PB,早期基于 Elasticsearch 构建的日志云平台,面临存储成本高、实时写入性能差、文本检索慢以及日志分析能力不足等问题。因此使用 Apache Doris 替换 Elasticsearch,实现资源投入降低 50%、查询速度提升 2~4 倍,同时显著提高了运维效率。
金融场景 PB 级大规模日志平台:中信银行信用卡中心从 Elasticsearch 到 Apache Doris 的先进实践
|
8天前
|
SQL 存储 分布式计算
Apache Doris 2.1.8 版本正式发布
该版本持续在湖仓一体、异步物化视图、查询优化器与执行引擎、存储管理等方面进行改进提升与问题修复,进一步加强系统的性能和稳定性,欢迎大家下载体验。
|
2月前
|
存储 SQL Apache
Apache Doris 创始人:何为“现代化”的数据仓库?
3.0 版本是 Apache Doris 研发路程中的重要里程碑,他将这一进展总结为“实时之路”、“统一之路”和“弹性之路”,详细介绍了所对应的核心特性的设计思考与应用价值,揭晓了 2025 年社区发展蓝图
Apache Doris 创始人:何为“现代化”的数据仓库?
|
2月前
|
SQL 存储 数据处理
别让你的CPU打盹儿:Apache Doris并行执行原理大揭秘!
别让你的CPU打盹儿:Apache Doris并行执行原理大揭秘!
91 1
别让你的CPU打盹儿:Apache Doris并行执行原理大揭秘!
|
29天前
|
存储 SQL 监控
计算效率提升 10 倍,存储成本降低 60%,灵犀科技基于 Apache Doris 建设统一数据服务平台
灵犀科技早期基于 Hadoop 构建大数据平台,在战略调整和需求的持续扩增下,数据处理效率、查询性能、资源成本问题随之出现。为此,引入 [Apache Doris](https://doris.apache.org/) 替换了复杂技术栈,升级为集存储、加工、服务为一体的统一架构,实现存储成本下降 60%,计算效率提升超 10 倍的显著成效。
计算效率提升 10 倍,存储成本降低 60%,灵犀科技基于 Apache Doris 建设统一数据服务平台
|
6月前
|
存储 消息中间件 Java
Apache Flink 实践问题之原生TM UI日志问题如何解决
Apache Flink 实践问题之原生TM UI日志问题如何解决
58 1
|
2月前
|
存储 人工智能 大数据
The Past, Present and Future of Apache Flink
本文整理自阿里云开源大数据负责人王峰(莫问)在 Flink Forward Asia 2024 上海站主论坛开场的分享,今年正值 Flink 开源项目诞生的第 10 周年,借此时机,王峰回顾了 Flink 在过去 10 年的发展历程以及 Flink社区当前最新的技术成果,最后展望下一个十年 Flink 路向何方。
363 33
The Past, Present and Future of Apache Flink
|
4月前
|
SQL Java API
Apache Flink 2.0-preview released
Apache Flink 社区正积极筹备 Flink 2.0 的发布,这是自 Flink 1.0 发布以来的首个重大更新。Flink 2.0 将引入多项激动人心的功能和改进,包括存算分离状态管理、物化表、批作业自适应执行等,同时也包含了一些不兼容的变更。目前提供的预览版旨在让用户提前尝试新功能并收集反馈,但不建议在生产环境中使用。
982 13
Apache Flink 2.0-preview released
|
4月前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
160 3
|
5月前
|
SQL 消息中间件 关系型数据库
Apache Doris Flink Connector 24.0.0 版本正式发布
该版本新增了对 Flink 1.20 的支持,并支持通过 Arrow Flight SQL 高速读取 Doris 中数据。

推荐镜像

更多