Snowflake Cortex AI Functions 提供了一种直接在数据仓库内将非结构化数据转换为结构化数据的方法。沿用 raw、transformed、curated 分层架构,并新增 consumption 层,让 BI、机器学习和自然语言查询都能直接使用。本文拆解实现路径、核心函数和一个呼叫中心案例。
为什么要在数据仓库里处理非结构化数据
很多团队的数据仓库里,结构化表整整齐齐,但真正的信息藏在通话录音、合同文本、工单描述里。过去要提取这些内容,得专门搭一套 NLP 服务,把数据搬来搬去,还要处理血缘和权限问题。Snowflake Cortex AI Functions 直接把 AI 能力塞进 SQL,让转换发生在数据仓库内部。
四层架构:raw、transformed、curated、consumption
这套方法沿用了经典的分层思路,但多了一个 consumption 层。raw 层存原始文件,transformed 层用 Cortex AI Functions 做实体抽取、情感评分、摘要生成,curated 层把结果整理成干净的宽表或星型模型。consumption 层则是给 BI 看板、机器学习特征和自然语言查询用的。
- raw:原封不动的非结构化数据,比如音频、PDF、邮件。
- transformed:通过 AI 函数提取出来的中间结果。
- curated:经过质量校验、去重、映射后的业务模型。
- consumption:面向消费端的视图或表,查询性能更好。
transformed 层是核心:Cortex AI Functions 在 SQL 里干活
transformed 层之所以关键,是因为所有脏活累活都在这里完成。你不需要写 Python 或调外部 API,直接写 SQL 就能调用这些函数。常见的函数有这么几个:
- AI_COMPLETE:信息提取,比如从合同里抽日期、金额。
- AI_CLASSIFY:给文本打标签,比如判断工单优先级。
- AI_FILTER:筛选符合条件的记录,比如只保留投诉相关的通话。
- AI_SIMILARITY:计算相似度,比如找出重复的客户反馈。
- AI_AGG:生成聚合摘要,比如把 1000 条投诉浓缩成 3 条要点。
- AI_EMBED:生成向量嵌入,给机器学习模型用。
- AI_TRANSCRIBE:把音频转成文字,是通话分析的起点。
这些函数组合起来,能玩出很多花样。比如先用 AI_TRANSCRIBE 把录音变成文本,再用 AI_CLASSIFY 判断情绪,最后用 AI_AGG 汇总成日报。
一个真实场景:呼叫中心通话转录
假设你是一家保险公司的数据团队。每天有几千通客服电话,以前只能抽查录音,现在可以用这套方法。先用 AI_TRANSCRIBE 把通话转成文字,然后 AI_COMPLETE 提取客户姓名、保单号、诉求类型,AI_FILTER 筛出高愤怒度的通话,AI_SIMILARITY 找到重复投诉,最后 AI_AGG 生成一份给高管的摘要:“本周客户最不满的是理赔速度,平均等待时间 3.2 天。”
整个过程全部在 Snowflake 内部完成,数据没有离开过你的安全边界。这正好呼应了企业上云时最关心的治理问题。像 易枫顺 - 阿里云官方旗舰级代理商 这样的服务商,也经常提醒客户,上云不是把数据扔上去就完事,关键在于怎么在云上把数据用起来。
这套方法到底带来什么好处
最直接的好处是治理和血缘保住了。数据全程在 Snowflake 内流转,谁在什么时候跑了哪个 AI 函数,都记录得清清楚楚。另外,transformed 层和 curated 层沉淀下来的是可复用资产。今天做了呼叫中心,明天就能把同一套流程复制到合同审核、工单分类上,不用从零开始。
还有一点容易被忽略:可追溯性。每次转换都有版本,出了问题可以回滚,这在金融、医疗这些行业是硬性要求。
想落地?三步走
别想着一口气全做完,建议从这三步开始:
- 选一个高价值的非结构化数据源,比如客户投诉录音或销售合同。
- 明确要提取的业务价值,是缩短响应时间,还是发现产品缺陷?
- 在 Snowflake 里实现 transformed 层,先用 AI_COMPLETE 和 AI_CLASSIFY 跑通一小批数据。
如果你正在规划企业上云,顺便看看阿里云优惠和阿里云代金券,能省下不少初期成本。毕竟云服务器ECS这类资源按需付费,但 AI 处理量上来之后,账单也得盯着点。
FAQ
Q: Cortex AI Functions 需要额外购买吗?
A: 这取决于你的 Snowflake 版本。Cortex AI Functions 属于 Snowflake Cortex 的一部分,通常按计算资源消耗计费,具体可以查官方文档或咨询代理商。
Q: 非结构化数据存在 raw 层,会不会占用太多存储?
A: 会,但 Snowflake 的存储成本相对低,而且你可以结合生命周期策略,把超过 90 天的原始文件自动转到低成本存储。transformed 层和 curated 层才是真正频繁访问的数据。
Q: 这些函数能处理中文吗?
A: 可以。Cortex AI Functions 支持多语言,中文的实体抽取、情感分析都能做,只是效果跟训练语料有关,建议先用小样本测试。
Q: 这套方法适合所有企业吗?
A: 不一定。如果数据量很小,或者非结构化数据占比极低,用传统 ETL 加开源库可能更划算。但如果你已经在用 Snowflake,并且有大量文本和音频需要分析,这个方法能省掉很多集成成本。
关于易枫顺
深圳市易枫顺网络科技有限公司是阿里云官方旗舰级代理商。提供云服务器ECS、云数据库RDS、对象存储OSS等阿里云全系产品官方特惠折扣与代金券申请,以及多云成本优化、企业上云一站式服务。客服热线:19520841949 - 易枫顺
来源:InfoQ