大模型学习笔记:模型怎么练出来、数据怎么存起来

一句话总结

离线系统就是 AI 的后方兵工厂:模型在这里训练、数据在这里加工、索引在这里搭建。线上服务能有多好,全看离线系统的底子有多厚------它是构建 AI 系统的"第一颗扣子"。

打个比方:线上服务是前台餐厅,离线系统是后厨。菜好不好吃,取决于后厨备了什么料、练了多少手艺。前台再花哨,后厨拉胯也白搭。


核心内容分两大块

第一块:模型工程------模型是怎么从数据到上线的

全量训练:完整的一条流水线

复制代码
用户行为日志 → 日志收集 → 反作弊清洗 → 样本生成 → 模型训练 → 离线验证 → 上线

1)日志收集 用户在 App 上的点击、浏览、购买等行为,实时上报到服务端。用 Flume 这类工具接收。

⚠️ 日志可能被篡改,所以要加密。但黑灰产用的是真实设备(手机墙),加密也防不住,必须靠后续反作弊。

2)反作弊清洗

  • 在线反作弊:靠规则快速挡,比如"两次操作间隔小于 100 毫秒"→ 非人类,直接拦
  • 离线反作弊:用复杂模型找作弊者的"同伙"(Lookalike 就能用在这),从训练数据里剔除

3)样本生成 分两步:

  • 数据拼接:比如 CTR 模型把"曝光日志"和"点击日志"拼在一起,生成"是否点击"的样本
  • 特征投影:用第6讲学的特征工程方法处理特征

4)模型训练 + 验证 + 上线

  • 用 PyTorch / TensorFlow 训练出模型文件
  • 拿最近 N 天的真实数据验证,达到门槛才准上线
  • 上线就是换个模型文件(比如 TensorFlow Serving 重新加载)

增量训练:"三级火箭"策略

全量训练太慢太贵,所以工业界用三级火箭兼顾实时性和成本:

级别 用什么数据 多久一次 干啥的
第一级 全量数据(比如过去一年) 一周一次 打基础,算力开销最大,尽量少训
第二级 第一级模型 + 最近一天数据 每天一次 跟上最新变化
第三级 线上 24 小时内的实时数据 实时 保证实效性,和在线模型联动

关键注意点:

  • 第三级(实时增量)没有离线反作弊参与,不能替代全量训练,必须三级配合
  • 第三级要配监控,关键指标一波动就回滚、降级到非增量模式,排查完再恢复

这个"全量 + 增量"的思路,和大模型的"预训练 + 微调"是一个道理。几乎所有需要实时数据的 AI 系统都这么干。


第二块:存储索引------数据和模型怎么存、怎么查

模型准备好了,还得把内容数据存好、建好索引,线上才能快速查到。

1)倒排索引:关键词快速查内容

  • 内容数据(商品、视频、广告)存在 MySQL 这类可靠数据库里
  • 全量导出后,把分类、颜色、城市等属性作为查询键,建倒排索引
  • 开源首选 ElasticSearch
  • 增量索引是难点 :要解析 MySQL 的二进制日志(binlog)来同步新增内容,阿里开源的 canal 专门干这个

2)向量索引:语义相似度查内容

基于规则的召回容易误杀,更先进的做法是向量召回

  1. 用前面学的图神经网络,把用户和物品都投影到高维空间,得到 Embedding
  2. 预先算好所有物品和已知用户的向量,存进向量引擎
  3. 用户请求时,拿用户向量去向量引擎里找"距离最近"的物品

这里的 Embedding 比 LangChain 那种文档片段 Embedding 要强得多------是 AIGC 提示语工程的重要基础。

3)其他重要存储

存什么 存在哪 为什么
实时特征(24小时点击数、当日曝光数) Redis(内存键值存储) 读写快,支持高并发
知识图谱 neo4j(图数据库) 天然适合表达实体关系
内容主数据 MySQL 可靠、持久化

离线系统搭好后能干啥?

有了模型 + 索引 + 数据,其实已经能搭一个不错的推荐引擎了:

用户请求 → 拿用户向量 → 向量引擎召回相近物品 → 选一个返回

这就是最基础的内容推荐流程。


必知术语

术语 大白话
离线系统 后方兵工厂,模型训练和数据加工都在这
Flume 实时收集用户行为日志的工具
反作弊 剔除刷单、假点击等脏数据
样本生成 把原始日志拼成模型能用的训练数据
全量训练 用所有历史数据从头训一遍,慢但准
增量训练 用新数据在旧模型上继续训,快但要防脏数据
三级火箭 全量(周) + 短期增量(天) + 实时增量,三层配合
倒排索引 关键词→内容列表的查表结构,搜索的基础
ElasticSearch 开源倒排索引服务,业界首选
canal 阿里开源,解析 MySQL 日志做增量索引同步
向量索引/向量引擎 存 Embedding,按空间距离快速查找相似内容
Redis 内存数据库,存实时特征,读写极快
neo4j 图数据库,存知识图谱
TensorFlow Serving 在线加载和提供模型服务的工具

记忆口诀

离线系统两件事:

  1. 练模型 ------ 日志→清洗→样本→训练→验证→上线;全量打底 + 三级火箭保实时
  2. 存数据 ------ 内容存 MySQL,倒排用 ES,向量存引擎,实时特征放 Redis,图谱放 neo4j

三句话记住离线的价值:

  • 没有模型工程 → 大模型无从谈起
  • 没有存储索引 → 模型变成"刚愎自用的学者",不了解外部新信息
  • 没有风控 → 模型变成"一本正经胡说八道的江湖骗子"
相关推荐
阳明山水15 分钟前
校准分位数驱动智能库存决策
人工智能·深度学习·算法·机器学习·架构
白远山2 小时前
上海24小时自助健身房系统软件开发实战指南
java·架构·uni-app·需求分析
掘金泥石流5 小时前
从 Palantir AI FDE 到我们的实践:企业交付如何变成产品?
人工智能·架构·agent
掘金泥石流5 小时前
上下文即服务:AI 应用的竞争,为什么会从入口转向 Context?
人工智能·架构·agent
掘金泥石流5 小时前
AI 都能写代码了,为什么企业还需要 FDE?
人工智能·架构·agent
kisshyshy5 小时前
从Props透传到自定义Hook:系统梳理React跨层级通信与逻辑复用
前端·架构·代码规范
躺柒6 小时前
读数据架构知识体系指南01关系数据仓库(上)
数据仓库·架构·数据分析·spark·数据湖·关系数据库·企业数据仓库
程序员清风6 小时前
Java 后端如何接入大语言模型
java·spring boot·架构·aigc
liulilittle7 小时前
mock 框架架构
ai·架构·自动化·llm·mock·测试·tools
mldong7 小时前
一套审批流要写多少代码:13 个框架的接入 diff 我数了一遍,最少 422 行,最多 1798 行
后端·架构