“小薇,这个月销售分析报告怎么还没出来?”
我抬头一看,业务部门的张总正站在我工位旁边。我正准备解释——数据量太大、关联逻辑复杂、至少还得半天——他摆摆手:“算了,我问了 ChatGPT,它 30 秒就给我分析完了。”
我盯着屏幕上写了 200 多行的 SQL,陷入沉默。📊
这已经不是第一次了。从去年开始,业务部门找我的次数越来越少。以前每天 5 个数据需求,现在 1 个。剩下的 4 个,他们直接问 AI。
更让我焦虑的是,公司新招了一个"AI 数据工程师",月薪比我高 50%,工作内容是"给大模型准备训练数据"。我盯着那个 JD 看了半天——这不就是数据处理的活儿吗?凭什么比我贵那么多?😤
觉醒:数据分析不是被淘汰,而是升级了
后来我跟那个新同事聊了聊,才发现自己格局小了。
传统数据分析的核心是从数据中提取洞察,AI 数据工程的核心是让数据能被 AI 理解和学习。这不是同一个维度的事情:
- 数据清洗→ 从"去掉异常值"升级到"构造高质量指令微调数据集"
- 特征工程→ 从"为机器学习选特征"升级到"设计 Embedding 和向量检索策略"
- 数据可视化→ 从"给人看报表"升级到"给模型当上下文"
数据能力在 AI 时代反而更值钱了,只是价值体现的方式变了。
实战:构建一个高质量的 RAG 数据集
我接手的第一个 AI 项目:给公司的智能客服系统准备训练数据。
不是说要去训练大模型(那成本太高),而是要构建一套高质量的文档语料库和问答对,用于 RAG 检索和 Few-shot Prompting。
下面是我用 Python 实现的一个数据工程 Pipeline:
importpandasaspdimportrefromtypingimportList,Dict,Tuplefromlangchain.text_splitterimportRecursiveCharacterTextSplitterimportjsonclassRAGDataEngineer:""" RAG 数据工程师 负责:从原始文档中提取、清洗、切分、构造高质量的向量检索语料 """def__init__(self,chunk_size:int=1000,chunk_overlap:int=200):self.text_splitter=RecursiveCharacterTextSplitter(chunk_size=chunk_size,chunk_overlap=chunk_overlap,separators=["\n\n","\n","。",";"," "])defclean_document(self,raw_text:str)->str:""" 文档清洗:去除噪音,保留有效信息 Args: raw_text: 原始文档内容(可能包含 HTML、特殊字符、页眉页脚等) Returns: 清洗后的文本 """# 1. 去除 HTML 标签text=re.sub(r'<[^>]+>','',raw_text)# 2. 去除多余的空白字符(连续换行、空格)text=re.sub(r'\n\s*\n','\n',text)text=re.sub(r' +',' ',text)# 3. 去除特殊字符和乱码(保留中文、英文、数字、常用标点)text=re.sub(r'[^\u4e00-\u9fff\w\s.。,,;;::!?!?()()""''\-\n]','',text)# 4. 去除页眉页脚(常见模式:"第 X 页"、"版权所有"等)text=re.sub(r'第\s*\d+\s*页[/\s]?共\s*\d+\s*页','',text)text=re.sub(r'版权所有.*','',text)# 5. 去除文档编号(如 "Doc-2024-001")text=re.sub(r'[Dd]oc-?\d{4}-?\d{3}','',text)returntext.strip()defsplit_into_chunks(self,cleaned_text:str)->List[Dict]:""" 把清洗后的文档切分成语义完整的块 Returns: 文本块列表,每个块包含内容和元数据 """# 先用段落分割,再用 RecursiveCharacterTextSplitter 精细切分paragraphs=[p.strip()forpincleaned_text.split('\n\n')ifp.strip()]chunks=[]forparainparagraphs:# 如果段落本身就很长,进一步切分iflen(para)>self.text_splitter.chunk_size:sub_chunks=self.text_splitter.split_text(para)forscinsub_chunks:chunks.append({"content":sc,"metadata":{"type":"chunk","length":len(sc),"source":"paragraph_split"}})else:chunks.append({"content":para,"metadata":{"type":"paragraph","length":len(para),"source":"original"}})returnchunksdefgenerate_qa_pairs(self,chunks:List[Dict])->List[Dict]:""" 从文本块中生成问答对(用于 Few-shot Prompting 和测试集) 这里用规则方法简化,实际可用大模型生成更复杂的 QA """qa_pairs=[]forchunkinchunks:content=chunk["content"]# 规则 1:如果内容包含"如何"、"怎么"、"步骤",构造操作类问题ifany(kwincontentforkwin["如何","怎么","步骤","流程"]):# 提取前 20 字作为问题线索hint=content[:20].replace("如何","").replace("怎么","").strip()question=f"如何{hint}?"qa_pairs.append({"question":question,"answer":content,"type":"how_to","source_chunk":chunk["metadata"]})# 规则 2:如果内容包含定义性描述,构造概念类问题elif"是"incontent[:50]and","incontent[:50]:# 提取定义的主体(如 "XX 是一种...")match=re.match(r'([^,。]+)[是|指]',content)ifmatch:concept=match.group(1).strip()question=f"什么是{concept}?"qa_pairs.append({"question":question,"answer":content,"type":"concept","source_chunk":chunk["metadata"]})returnqa_pairsdefquality_check(self,qa_pairs:List[Dict])->Tuple[List[Dict],List[Dict]]:""" 质量检查:过滤低质量问答对 Returns: (高质量问答对, 低质量问答对) """good=[]bad=[]forqainqa_pairs:# 检查 1:问题不能太短(至少 5 个字)iflen(qa["question"])<5:bad.append({**qa,"reason":"问题太短"})continue# 检查 2:答案不能太短(至少 20 字)iflen(qa["answer"])<20:bad.append({**qa,"reason":"答案太短"})continue# 检查 3:答案中应该包含问题的关键词(相关性检查)question_keywords=set(qa["question"].replace("什么","").replace("如何","").replace("怎么","").split())ifnotany(kwinqa["answer"]forkwinquestion_keywordsiflen(kw)>1):bad.append({**qa,"reason":"答案与问题不相关"})continuegood.append(qa)returngood,bad# 使用示例if__name__=="__main__":engineer=RAGDataEngineer()# 模拟一篇原始文档raw_doc=""" <html><body> <p>第 1 页 共 5 页</p> <h1>退款流程说明</h1> <p>如何申请退款?</p> <p>用户如需申请退款,请按照以下步骤操作:</p> <p>1. 登录账户,进入"我的订单"页面;</p> <p>2. 找到需要退款的订单,点击"申请退款"按钮;</p> <p>3. 填写退款原因,提交申请;</p> <p>4. 客服将在 3 个工作日内审核。</p> <p>版权所有 © 2024</p> </body></html> """# 第一步:清洗文档cleaned=engineer.clean_document(raw_doc)print("🧹 清洗后文档:")print(cleaned[:200]+"...\n")# 第二步:切分文本块chunks=engineer.split_into_chunks(cleaned)print(f"✂️ 切分为{len(chunks)}个文本块\n")# 第三步:生成问答对qa_pairs=engineer.generate_qa_pairs(chunks)print(f"📝 生成{len(qa_pairs)}个问答对\n")# 第四步:质量检查good_qa,bad_qa=engineer.quality_check(qa_pairs)print(f"✅ 高质量问答对:{len(good_qa)}个")print(f"❌ 低质量问答对:{len(bad_qa)}个")ifgood_qa:print(f"\n示例问答对:")print(f"Q:{good_qa[0]['question']}")print(f"A:{good_qa[0]['answer'][:100]}...")这段代码展示了一个数据工程师在 AI 时代的核心工作:不是简单地把数据"搬来搬去",而是把原始数据转化为"模型能理解的知识"。
每个环节都有讲究:
- 清洗要干净但不能过度,别把关键语义信息洗没了
- 切分要保证语义完整,不能一刀切把一句话切成两半
- QA 生成要为 Few-shot Prompting 提供高质量的示例
- 质量检查要像审稿人一样严格,因为垃圾数据进,垃圾答案出
进阶:Fine-tuning 数据集的构造艺术
RAG 数据只是入门,真正高价值的是模型微调(Fine-tuning)数据集。
微调数据集的要求比 RAG 数据高得多:
- 格式规范:必须是指令-回答对(Instruction-Response)格式
- 领域对齐:数据必须覆盖目标领域的所有场景和边界情况
- 质量极高:任何一个错误样本都可能让模型"学坏"
- 多样性足够:同一问题的不同表达方式、不同难度的变体
我总结了一套构造高质量微调数据的"三板斧":
1. 种子数据挖掘
- 从现有业务系统(工单、FAQ、聊天记录)中提取真实问答
- 从行业文档(技术手册、论文、规范)中提取专业知识
- 让领域专家手写"黄金标准"答案
2. 数据增强(Data Augmentation)
- 用同义词替换、句式改写、翻译回译等方式扩充样本
- 用大模型生成同一问题的不同变体(但要人工审核质量)
- 构造负样本(模型不应该回答的问题)
3. 严格的人工审核
- 每个样本至少经过 2 个人审核
- 建立审核标准手册(什么算对、什么算错、边界情况怎么处理)
- 定期抽样复查已审核数据
我的新角色:AI 数据架构师
现在的我,不再只是"跑 SQL 的"了。我设计的是整个 AI 系统的数据底座:
- 数据 Pipeline:从原始文档到向量数据库的完整 ETL 流程
- 质量评估体系:数据准确性、完整性、多样性、时效性的量化评估
- 数据版本管理:数据集的版本化、可追溯、可回滚
- 领域知识图谱:把非结构化数据结构化,让模型理解实体关系
这套数据体系,直接决定了 AI 系统的上限。
给数据分析师的建议
- 学习向量数据库— pgvector、Milvus、Chroma,理解数据怎么被 AI “读取”
- 掌握 Prompt 设计— 数据增强和 QA 生成需要懂 Prompt Engineering
- 建立领域知识— 越懂业务,越能构造高质量的训练数据
- 培养质量意识— AI 数据的质量要求比 BI 报表高 10 倍,因为错误会被放大
数据分析在 AI 时代不是被替代,而是被放大了。📈
数据是 AI 的燃料,而数据工程师是炼油厂。没有高质量的燃料,再强的引擎也跑不起来。
想入门 AI 大模型却找不到清晰方向?备考大厂 AI 岗还在四处搜集零散资料?别再浪费时间啦!2025 年AI 大模型全套学习资料已整理完毕,从学习路线到面试真题,从工具教程到行业报告,一站式覆盖你的所有需求,现在全部免费分享!
👇👇扫码免费领取全部内容👇👇
一、学习必备:100+本大模型电子书+26 份行业报告 + 600+ 套技术PPT,帮你看透 AI 趋势
想了解大模型的行业动态、商业落地案例?大模型电子书?这份资料帮你站在 “行业高度” 学 AI:
1. 100+本大模型方向电子书
2. 26 份行业研究报告:覆盖多领域实践与趋势
报告包含阿里、DeepSeek 等权威机构发布的核心内容,涵盖:
- 职业趋势:《AI + 职业趋势报告》《中国 AI 人才粮仓模型解析》;
- 商业落地:《生成式 AI 商业落地白皮书》《AI Agent 应用落地技术白皮书》;
- 领域细分:《AGI 在金融领域的应用报告》《AI GC 实践案例集》;
- 行业监测:《2024 年中国大模型季度监测报告》《2025 年中国技术市场发展趋势》。
3. 600+套技术大会 PPT:听行业大咖讲实战
PPT 整理自 2024-2025 年热门技术大会,包含百度、腾讯、字节等企业的一线实践:
- 安全方向:《端侧大模型的安全建设》《大模型驱动安全升级(腾讯代码安全实践)》;
- 产品与创新:《大模型产品如何创新与创收》《AI 时代的新范式:构建 AI 产品》;
- 多模态与 Agent:《Step-Video 开源模型(视频生成进展)》《Agentic RAG 的现在与未来》;
- 工程落地:《从原型到生产:AgentOps 加速字节 AI 应用落地》《智能代码助手 CodeFuse 的架构设计》。
二、求职必看:大厂 AI 岗面试 “弹药库”,300 + 真题 + 107 道面经直接抱走
想冲字节、腾讯、阿里、蔚来等大厂 AI 岗?这份面试资料帮你提前 “押题”,拒绝临场慌!
1. 107 道大厂面经:覆盖 Prompt、RAG、大模型应用工程师等热门岗位
面经整理自 2021-2025 年真实面试场景,包含 TPlink、字节、腾讯、蔚来、虾皮、中兴、科大讯飞、京东等企业的高频考题,每道题都附带思路解析:
2. 102 道 AI 大模型真题:直击大模型核心考点
针对大模型专属考题,从概念到实践全面覆盖,帮你理清底层逻辑:
3. 97 道 LLMs 真题:聚焦大型语言模型高频问题
专门拆解 LLMs 的核心痛点与解决方案,比如让很多人头疼的 “复读机问题”:
![]()
三、路线必明: AI 大模型学习路线图,1 张图理清核心内容
刚接触 AI 大模型,不知道该从哪学起?这份「AI大模型 学习路线图」直接帮你划重点,不用再盲目摸索!
路线图涵盖 5 大核心板块,从基础到进阶层层递进:一步步带你从入门到进阶,从理论到实战。
L1阶段:启航篇丨极速破界AI新时代
L1阶段:了解大模型的基础知识,以及大模型在各个行业的应用和分析,学习理解大模型的核心原理、关键技术以及大模型应用场景。
L2阶段:攻坚篇丨RAG开发实战工坊
L2阶段:AI大模型RAG应用开发工程,主要学习RAG检索增强生成:包括Naive RAG、Advanced-RAG以及RAG性能评估,还有GraphRAG在内的多个RAG热门项目的分析。
L3阶段:跃迁篇丨Agent智能体架构设计
L3阶段:大模型Agent应用架构进阶实现,主要学习LangChain、 LIamaIndex框架,也会学习到AutoGPT、 MetaGPT等多Agent系统,打造Agent智能体。
L4阶段:精进篇丨模型微调与私有化部署
L4阶段:大模型的微调和私有化部署,更加深入的探讨Transformer架构,学习大模型的微调技术,利用DeepSpeed、Lamam Factory等工具快速进行模型微调,并通过Ollama、vLLM等推理部署框架,实现模型的快速部署。
L5阶段:专题集丨特训篇 【录播课】
![]()
四、资料领取:全套内容免费抱走,学 AI 不用再找第二份
不管你是 0 基础想入门 AI 大模型,还是有基础想冲刺大厂、了解行业趋势,这份资料都能满足你!
现在只需按照提示操作,就能免费领取:
👇👇扫码免费领取全部内容👇👇
2025 年想抓住 AI 大模型的风口?别犹豫,这份免费资料就是你的 “起跑线”!