本文最后更新于 2025-06-24,文章内容可能已经过时。

前言:为什么要折腾这个?

最近在做平台数据分析的时候,发现每次DAU(日活跃用户)出现异动,都要手动查各种数据表、看公告、刷热搜,找半天才能搞清楚是什么原因。这种重复性工作实在太消耗时间了,于是我就想着能不能用AI来自动化处理这些事情。

经过一段时间的折腾,现在有了一个还算满意的结果,分享给大家。

这个系统能干啥?

  • 自动发现异常:DAU有波动马上就能察觉
  • 智能找原因:自动分析是赛事、主播还是外部事件影响的
  • 生成报告:直接输出可以给老板看的分析报告

技术选型

现在主要用 Dify工作流 + n8n 这套组合,连接MySQL数据库,配合各种数据采集工具。


整体思路流程图

flowchart TD
    A[n8n定时任务触发] --> B[Dify主工作流启动]
    B --> C[4个子流程并行执行]
    
    C --> D1[平台数据流程]
    C --> D2[品类数据流程] 
    C --> D3[主播数据流程]
    C --> D4[赛事数据流程]
    
    D1 --> E1[平台DAU异动分析]
    D2 --> E2[品类涨跌TOP10]
    D3 --> E3[主播异动TOP20]
    D4 --> E4[赛事影响分析]
    
    E1 --> F[数据整合流程]
    E2 --> F
    E3 --> F
    E4 --> F
    
    F --> G[AI关联分析]
    G --> H[外部信息收集]
    H --> I[综合归因判断]
    I --> J[生成分析报告]
    J --> K[推送企业微信]
    
    style A fill:#e1f5fe
    style C fill:#fff3e0
    style F fill:#ffeb3b
    style K fill:#e8f5e8

核心工作流程

具体怎么实现的?

现在使用Dify工作流来处理,整个流程变得更加清晰:

数据提取阶段(4个并行流程)

  1. 平台数据流程 - 提取整体平台DAU变化情况
  2. 品类数据流程 - 分析各游戏品类的涨跌情况
  3. 主播数据流程 - 提取主播相关的异动数据
  4. 赛事数据流程 - 收集赛事排播和影响数据

数据整合阶段

  1. 大流程整合 - 将4个子流程的数据进行整合归因
  2. 智能分析 - AI对所有数据进行关联分析
  3. 报告生成 - 概括总结,生成最终分析报告

自动化推送

  1. 定时任务 - n8n每日定时调用整个工作流
  2. 消息推送 - 自动推送分析结果到企业微信

几个关键点

  • SQL要规范:数据准确性是基础,不能乱来
  • 多维度分析:平台、品类、主播、赛事都要覆盖
  • 时间维度:支持日、周、月不同粒度的分析

具体功能模块

1. 流量趋势分析

这部分主要是看平台的整体数据变化情况。

看趋势

-- 日趋势(最近半年的数据)
SELECT dt, app_dau FROM ai_report.daxiong_all_tag_dau_diff_d 
WHERE tag='active' AND game_id='huya' AND dt>='2025-01-01'

-- 周趋势  
SELECT dt, app_dau FROM ai_report.daxiong_all_tag_dau_diff_week 
WHERE tag='active' AND game_id='huya' AND dt>='2025-01-01'

-- 月趋势
SELECT dt, app_dau FROM ai_report.daxiong_all_tag_dau_diff_m 
WHERE tag='active' AND game_id='huya' AND dt>='2025-01-01'

看环比变化

-- 这个能看出来今天比昨天变化了多少
SELECT dt, app_dau, last_app_dau, app_dau_diff 
FROM ai_report.daxiong_all_tag_dau_diff_d 
WHERE tag='active' AND game_id='huya' AND dt='指定日期'

2. 找原因分析

流量都从哪来的?

平台的DAU其实可以分解成几个部分:

  • 赛事 - 看比赛的观众
  • 头部主播 - 大主播的粉丝
  • 官签主播 - 平台签约的主播
  • 轮播 - 自动播放的内容
  • 其他主播 - 各种小主播
-- 看看各部分的贡献情况
SELECT dt, att_tag, app_dau, last_app_dau, app_dau_diff 
FROM ai_report.daxiong_all_tag_dau_diff_d 
WHERE tag='attr' AND game_id='huya' AND dt='指定日期'

找出涨跌榜

-- 品类涨跌TOP10(看看哪个游戏火了或凉了)
SELECT dt, game_id, game_name, app_dau, app_dau_diff 
FROM ai_report.daxiong_all_tag_dau_diff_d 
WHERE tag='watch' AND dt='指定日期' 
AND (app_dau_diff_desc_rn <=10 OR app_dau_diff_asc_rn <=10) 
AND game_id<>'huya'

-- 主播涨跌TOP20(看看哪个主播突然火了)
SELECT dt, ayyuid, game_name, nickname, app_dau, live_hours 
FROM ai_report.daxiong_ayyuid_dau_diff_d 
WHERE dt='指定日期' 
AND (app_dau_diff_desc_rn <=20 OR app_dau_diff_asc_rn <=20)

3. 外部信息收集

官方公告

AI会自动去爬虎牙官方博客(https://blog.huya.com/),看看有没有:

  • 活动公告
  • 赛事预告
  • 合作消息
  • 其他重要通知

热搜监控

同时会去各大平台看热搜:

  • 微博热搜 - 看看有没有相关话题
  • 抖音热点 - 短视频平台的热度
  • B站排行 - UP主和游戏相关内容

4. 赛事分析

-- 看看当天有什么比赛
SELECT match_dt, match_name, app_dau 
FROM ai_report.daxiong_match_dau_d 
WHERE match_dt='指定日期' AND room_type='all' 
AND game_name='all' AND match_name <> 'all'

比赛对流量的影响其实挺大的,特别是一些大型赛事。


目前的效果怎么样?

已经完成的部分

Dify工作流搭建 - 4个数据提取子流程已经搭建完成
数据拆解优化 - 按平台、品类、主播、赛事进行了模块化拆分
大流程整合 - 数据整合归因的主流程已经跑通
n8n定时任务 - 每日自动触发分析已经部署
企业微信推送 - 分析报告可以自动推送到群里

正在迭代的内容

🔄 外部信息收集 - 在优化热搜和公告信息的准确性
🔄 报告格式 - 在调整推送到企业微信的报告格式

踩过的坑

Dify工作流调试
刚开始各个子流程之间的数据传递有问题,调试了很久:

  • 统一了数据格式规范
  • 优化了流程间的参数传递
  • 现在基本稳定了
  • dify的并发有各种问题,控制并发量和速度取个平衡点,主要看你公司服务器咋样

n8n定时任务
定时任务的时区和触发逻辑搞了很久:

  • 大数据模型跑的很慢,使用http请求会出现超时,这里准备手搓一个dify的定时任务插件

重点优化的内容

工作流模块化设计
将原来的大流程拆分成4个独立的子流程,各自负责不同维度的数据提取,这样:

  • 调试更容易定位问题
  • 可以并行处理提高效率
  • 维护起来更方便

数据格式标准化
不同子流程输出的数据格式必须统一,否则整合阶段会出问题:

  • 定义了统一的JSON格式规范
  • 每个字段都有明确的数据类型
  • 添加了格式验证机制

智能归因算法
最核心的部分是如何让AI准确分析各种因素的影响权重:

  • 优化了Prompt的逻辑结构
  • 增加了历史数据对比
  • 引入了置信度评分机制

使用心得

分析流程总结

实际使用下来,基本就是这个套路:

  1. 先看数据

    • 看看DAU到底变化了多少
    • 哪些品类、主播、赛事有明显变化
  2. 找外部原因

    • 看看官方有没有搞活动
    • 刷刷热搜有没有相关话题
    • 分析一下竞品是不是也有动作
  3. 综合分析

    • 把内部数据和外部信息对比
    • 判断哪个因素影响最大
    • 理清楚整个因果关系
  4. 出报告

    • 写成人话,别太技术化
    • 最好有图表支撑
    • 给出一些建议

后续优化方向

实时监控
希望能做到异常数据出现的时候自动报警,不用每天手动跑。

预警机制
根据历史数据设定一些阈值,提前预测可能出现的问题。

准确性提升
继续优化算法,让分析结果更准确。


总结

这套AI数据分析系统用下来感觉还不错,至少把我从重复性的查数据工作中解放出来了。日报基本都能自动生成,周报还在优化中。

下一步计划

  • 实时分析 - 目前是每日定时分析,希望能做到实时异动检测
  • 多平台支持 - 现在主要分析平台数据,计划扩展到其他平台
  • 预警机制 - 建立异常数据的提前预警系统
  • 报告优化 - 让AI生成的报告更加专业和易读
  • 历史趋势 - 增加更长时间维度的趋势分析

现在这套基于Dify+n8n的方案运行还挺稳定的,每天早上都能收到前一天的分析报告。AI确实能大大提升数据分析的效率,特别是这种有标准流程的重复性工作。

如果你也在做类似的数据分析,推荐试试Dify工作流的方案,比纯代码的方式要灵活很多。