AI纯享笔记:5/大模型微调数据集准备

admin 2025-12-14 00:29:28 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 大模型微调中数据集是决定效果的核心要素,文章系统介绍了从模型选型到数据集准备的完整流程,包括预训练、指令微调和偏好对齐三类数据集的选择与格式规范,重点结合安全领域场景提供了实操指南,强调了专业性和场景化的重要性,并给出了LLaMAFactory工具下的自定义数据集注册方法,帮助安全从业者快速构建专属微调数据集。 综合评分: 85 文章分类: AI安全,数据安全,安全建设


cover_image

AI纯享笔记:5/ 大模型微调数据集准备

原创

heyong

BurpSuite实战教程

2025年12月7日 08:22 安徽

大模型微调数据集准备

计划花费20~30篇幅,来做一套人工智能笔记,纯享版。内容涉及的产品细节不一定是最新的,但忠于实验记录,方便网络安全或其他行业的同学快速地了解AI技术。

在大模型微调中,数据集是决定模型效果的核心要素——再好的模型和工具,没有高质量数据集支撑,也无法适配垂直场景。本文结合2025年最新数据集资源、工具链更新,为大家系统梳理微调数据集的准备逻辑:从模型选型、数据类型选择,到格式规范、自定义数据集注册,全程贴合LLaMA Factory实操,新手也能快速上手!

一、先选对模型,再配数据集

数据集准备的第一步是明确基座模型——不同模型的适配性、语言偏好、能力边界不同,直接影响数据集的选择和后续微调效果。

(一)LLaMA Factory支持的主流开源模型(2025年12月更新)

LLaMA Factory作为当前最热门的微调工具,已兼容80+主流开源模型,覆盖中文、多模态、代码等多个场景,核心支持列表如下:

| 模型系列 | 代表模型 | 核心优势 | 适配场景 | | — | — | — | — | | 中文优先 | 千问2系列、ChatGLM4、百川3 | 中文理解能力强,适配国内场景 | 企业私有知识库、中文客服 | | 通用能力强 | Llama 3 8B/70B、Mistral 8x7B | 综合性能突出,生态完善 | 通用指令微调、多任务处理 | | 多模态 | 微软Nexus、商汤/上科大InternVL | 支持文本+图像/音频输入 | 图文生成、多模态问答 | | 轻量化 | 微软Phi 3、MiniCPM-2B | 显存要求低(4GB即可微调) | 移动端部署、边缘计算 | | 代码专项 | CodeLlama、StarCoder | 代码生成/补全能力突出 | 编程辅助、代码解释 | | 安全专项 | SecBERT、Llama 3 Security Edition | 内置网络安全知识库,漏洞识别能力强 | 安全咨询、漏洞分析、合规检查 |

(二)模型能力评估:选对数据集的参考基准

选择数据集前,需先评估基座模型的原生能力,避免”用简单数据集微调强模型”或”用复杂数据集难为弱模型”:

  1. 核心评测集:MMLU(多任务语言理解)仍是2025年主流评测基准,横轴为模型发布时间,纵轴为准确率,开源模型已接近闭源模型性能(如Llama 3 70B、千问2 72B的MMLU准确率已达90%+,接近GPT-4o早期版本);
  2. 安全专项评测:需补充SecEval(网络安全知识评测)、VulnQA(漏洞问答评测),重点评估模型对漏洞类型、防护策略、合规标准的理解;
  3. 选型原则
  • 私有化部署:优先选开源模型(数据安全可控),中文安全场景优先千问2、ChatGLM4,安全专项场景选SecBERT、Llama 3 Security Edition;
  • 轻量化需求:选Phi 3、MiniCPM-2B,数据集可简化(1000条以内即可);
  • 复杂场景(如漏洞分析、合规审计):选安全专项模型,搭配场景化数据集(如漏洞库数据、合规条款数据)。

(三)模型下载:高效渠道,避坑指南)

模型下载是数据集准备的前置步骤,推荐2个稳定渠道:

| 下载渠道 | 优势 | 注意事项 | 推荐模型 | | — | — | — | — | | 魔搭社区(ModelScope) | 国内访问稳定,支持断点续传,中文模型资源丰富 | 部分海外模型需申请授权 | 千问、ChatGLM4、百川、SecBERT | | Hugging Face Hub | 全球最大开源模型库,资源最全 | 国内网络需科学上网,可使用hf-transfer加速 | Llama 3、Mistral、Llama 3 Security Edition | | 补充工具 | Hugging Face Downloader(hf-transfer) | 下载速度比默认方式快3-5倍,支持批量下载 | 所有模型 |

避坑点:Hugging Face国内访问可通过修改hosts或使用云服务器下载,避免直接在本地尝试导致失败。或者使用HF镜像,适合科研和技术开发,目前算稳定。

二、核心:微调数据集的类型与最新资源

微调数据集按用途可分为3类:预训练数据集、指令微调数据集、偏好对齐数据集,不同类型的适配场景和资源选择如下:

(一)预训练数据集:用于增量预训练(补充知识)

核心作用是给模型注入新知识(如企业私有安全文档、最新漏洞库、合规标准),而非训练指令遵循能力,2025年主流资源: 选择数据集前,需先评估基座模型的原生能力,避免”用简单数据集微调强模型”或”用复杂数据集难为弱模型”:

  1. 通用预训练数据
  • RefinedWeb(500-600B Token):阿布扎比技术创新研究院推出,去重后质量高,适配通用模型增量预训练;
  • RedPajama(20.5B英文Token+3B多语言Token):开源免费,支持多语言扩展,适合中小模型预训练;
  • 中文预训练数据:昆仑万维”天宫数据集”(150B Token)、中文维基百科(20万条高质量条目),避免使用低质量爬虫数据。
  1. 安全预训练数据
  • CVE Details Dataset(10万+漏洞条目):包含CVE编号、漏洞描述、影响范围、修复建议,适配漏洞知识补充;
  • OWASP Top 10 Dataset(5万+条目):基于OWASP Top 10安全风险,包含风险描述、攻击案例、防护方案;
  • 合规标准数据集:GB/T 22239(等保2.0)、ISO 27001、GDPR中文文本集(共3万+条),适配合规咨询场景;
  • 内部安全手册、漏洞应急响应报告、安全审计日志(需脱敏处理),建议规模≥1万条文本。
  • 企业有大量未标注的安全相关文档,需先进行增量预训练,让模型掌握行业专属知识,再做指令微调。

(二)指令微调数据集:用于SFT(训练指令遵循)

核心作用是让模型理解安全领域的特定指令,输出符合要求的结果(如漏洞分析、安全咨询、合规检查),2025年高质量资源推荐:

| 数据集名称 | 规模 | 核心优势 | 适配场景 | | — | — | — | — | | Alpaca-Security | 8万条安全指令 | 基于Alpaca格式优化,覆盖漏洞、合规、防护 | 安全通用指令微调 | | 中文安全指令数据集 | 2万条中文指令(魔搭社区) | 中文场景优化,包含安全咨询、漏洞排查、应急响应 | 国内企业安全客服、运维辅助 | | VulnQA 2.0 | 5万条漏洞问答 | 包含CVE漏洞查询、修复方案推荐、攻击路径分析 | 漏洞分析助手、安全运维工具 | | 合规检查数据集 | 3万条合规指令 | 支持等保2.0、ISO 27001合规条款解读、自查清单生成 | 合规审计辅助、自查工具 | | ShareGPT 90K | 9万条多轮对话 | 贴近真实对话场景,支持多轮交互 | 聊天机器人、对话系统 | | Function Call数据集 | 10万条函数调用样本 | 训练模型工具调用能力 | 办公自动化、API调用场景 | | 代码指令数据集 | 20万条代码样本 | 包含代码生成、解释、调试 | 编程辅助工具 |

避坑点:安全领域微调需避免使用通用闲聊数据集,重点选择场景化指令数据,规模建议≥1000条(企业场景≥5000条)。

(三)偏好对齐数据集:用于RLHF/DPO(对齐人类偏好)

核心作用是让模型输出符合安全领域专业要求的结果(如更准确的漏洞分析、更严谨的合规建议、更安全的操作指南):

  1. 高质量开源数据集
  • Security-Preference 1.0(1.2万+样本):包含安全领域的”优选答案”和”非优选答案”,如漏洞修复方案的优劣对比、合规建议的严谨性对比;
  • HelpSteer 2-Security(5000+样本):HelpSteer 2的安全专项扩展,标注安全回答的有用性、正确性、严谨性;
  1. 构建原则
  • 标注人员需具备安全专业背景(如安全运维、渗透测试工程师),避免非专业标注导致结果偏差;
  • 标注维度:漏洞识别准确率、防护方案可行性、合规条款匹配度、语言严谨性,避免模糊表述。

三、关键:数据集格式规范(LLaMA Factory适配)

LLaMA Factory支持2种核心格式:Alpaca格式(用于SFT)和ShareGPT格式(用于偏好对齐/多轮对话),2025年最新格式规范如下,重点补充安全领域专属字段:

(一)Alpaca格式(指令微调首选)

JSON格式,支持单轮/多轮对话,字段说明清晰,适配安全领域指令场景:

[
  {
    "instruction": "请分析CVE-2025-XXXX漏洞的风险等级和修复建议",  // 核心安全指令
    "input": "CVE-2025-XXXX:某Web服务器存在SQL注入漏洞,攻击者可通过构造恶意请求获取数据库敏感信息,影响版本为2.0-3.5",  // 补充信息(漏洞详情、环境说明等)
    "output": "1. 风险等级:高危(CVSS评分9.8);2. 影响范围:使用2.0-3.5版本的Web服务器,可能导致数据库泄露、服务器被控;3. 修复建议:① 升级至最新版本4.0;② 对用户输入进行SQL注入过滤(如参数化查询);③ 限制数据库账号权限,避免超管权限配置;④ 开启WAF防护,拦截恶意SQL请求。",  // 专业输出
    "system": "你是一名资深网络安全工程师,回答需基于安全专业知识,准确、严谨、可落地,避免模糊表述",  // 系统提示词(明确专业身份)
    "history": []  // 多轮对话历史(单轮留空,多轮格式:[["用户问题1", "模型回答1"], ["用户问题2", "模型回答2"]])
  },
  {
    "instruction": "请生成等保2.0二级系统的网络安全自查清单",
    "input": "系统类型:企业内部办公系统,用户规模50人,部署在云服务器",
    "output": "### 等保2.0二级系统网络安全自查清单\n1. 网络架构:① 是否划分网络区域(如办公区、服务器区);② 是否部署防火墙隔离不同区域;③ 是否开启访问控制策略,限制非授权IP访问;\n2. 设备安全:① 路由器、交换机是否修改默认账号密码;② 是否开启日志审计功能,日志留存≥6个月;③ 设备固件是否及时更新;\n3. 数据安全:① 敏感数据(如员工信息)是否加密存储;② 数据传输是否采用HTTPS等加密协议;③ 是否定期进行数据备份(至少每日一次);\n4. 访问控制:① 是否采用双因素认证;② 账号权限是否按最小权限原则分配;③ 是否定期清理无效账号(如离职员工账号);\n5. 安全管理:① 是否制定网络安全管理制度;② 是否定期进行安全培训(至少每季度一次);③ 是否制定应急响应预案并演练。",
    "system": "你是等保2.0合规咨询专家,自查清单需符合GB/T 22239-2019标准,条目清晰、可操作,适配中小型企业场景",
    "history": []
  }
]

关键要求

  • 字段不可缺失(instruction、output为必填,input、system、history可选);
  • 安全领域输出需包含”结论+依据+可操作步骤”,避免纯理论表述;
  • 中文数据集需确保编码为UTF-8,避免乱码。

(二)ShareGPT格式(偏好对齐/多轮对话)

支持复杂安全场景(如多轮漏洞排查、合规咨询、应急响应),格式如下:

  1. 多轮对话格式(用于SFT):
[
  {
    "id": "sec-conv-001",
    "conversations": [
      {
        "from": "human",
        "value": "我们公司的Web系统被攻击了,首页被篡改,该怎么办?"
      },
      {
        "from": "gpt",
        "value": "请先执行以下应急响应步骤:1. 隔离受影响服务器,断开与互联网的连接,避免攻击扩散;2. 备份被篡改的首页文件和服务器日志(用于后续溯源);3. 检查服务器是否存在后门(如异常进程、隐藏文件、未知账号);4. 恢复首页至最近的安全备份版本;5. 排查攻击原因(如是否存在未修复的漏洞、弱密码等)。请问系统使用的是什么Web服务器?是否有开启日志审计?"
      },
      {
        "from": "human",
        "value": "用的是Nginx 1.20,日志已经开启,备份也有"
      },
      {
        "from": "gpt",
        "value": "后续处理步骤:1. 恢复首页后,升级Nginx至最新版本,修复已知漏洞;2. 分析日志,重点查看攻击时间点的访问记录,识别攻击者IP、攻击路径(如是否通过SQL注入、文件上传漏洞进入);3. 检查服务器账号,删除未知账号,修改所有管理员密码(复杂度要求:8位以上,包含大小写字母、数字、特殊字符);4. 开启Nginx的WAF模块,配置常见攻击防护规则;5. 定期(每日)备份系统文件和数据库,定期(每周)进行漏洞扫描。如果需要进一步溯源,可提供日志片段,我将协助分析。"
      }
    ]
  }
]
  1. 偏好对齐格式(用于DPO/RLHF):
[
  {
    "id": "sec-pref-001",
    "conversations": [
      {
        "from": "human",
        "value": "如何防护服务器的暴力破解攻击?"
      },
      {
        "from": "gpt",
        "value": "1. 禁用密码登录,采用SSH密钥认证;2. 限制SSH登录IP,仅允许公司办公网IP访问;3. 开启fail2ban服务,多次登录失败后自动封禁IP;4. 设置复杂密码策略,定期更换密码;5. 关闭不必要的端口,仅开放业务所需端口。",
        "choice": "accept"// 优选答案(专业、全面、可操作)
      },
      {
        "from": "gpt",
        "value": "可以设置复杂密码,或者安装防火墙,这样就能防止暴力破解了。",
        "choice": "reject"// 非优选答案(表述模糊、措施不全面)
      }
    ]
  }
]

关键要求

  • 偏好数据需明确标注”accept”(优选)和”reject”(非优选),优选答案需具备专业性、全面性、可操作性;
  • 多轮对话需符合安全应急响应流程,逻辑连贯,逐步引导用户解决问题。

四、实操:语料自定义数据集注册(LLaMA Factory版)

企业安全场景微调需使用专属网络安全语料(如内部安全手册、漏洞响应记录、合规条款),以下是自定义数据集的注册步骤,全程可视化操作:

(一)准备工作

  1. 数据收集
  • 公开数据:从CVE官网、OWASP官网、国家网络安全标准化技术委员会下载漏洞库、合规标准等公开数据;
  • 私有数据:整理企业内部安全文档(如安全运维手册、应急响应报告、合规自查表),需做脱敏处理(删除服务器IP、账号密码、敏感业务信息);
  • 数据规模:SFT场景≥1000条,偏好对齐场景≥1000条,增量预训练场景≥1万条(文本类)。
  1. 格式整理:按Alpaca或ShareGPT格式整理数据,保存为JSON文件(如”cyber_security_data.json”),示例如下(Alpaca格式):
[
  {
    "instruction": "请解释什么是XSS攻击,以及如何防护",
    "input": "",
&nbsp; &nbsp;&nbsp;"output":&nbsp;"1. XSS攻击(跨站脚本攻击):攻击者通过在网页中注入恶意JavaScript代码,当用户访问该网页时,代码执行,窃取用户Cookie、会话信息等敏感数据,或篡改网页内容;2. 攻击类型:存储型XSS(恶意代码存入服务器,如评论区、留言板)、反射型XSS(恶意代码通过URL参数注入,如搜索框)、DOM型XSS(通过修改页面DOM结构注入);3. 防护方案:① 输入过滤:对用户输入的特殊字符(如<、>、'、")进行转义;② 输出编码:将服务器返回的用户输入内容进行HTML编码;③ 开启CSP(内容安全策略),限制脚本加载来源;④ 禁用unsafe-inline、unsafe-eval等危险指令;⑤ 定期更新Web框架和插件,修复已知漏洞。",
&nbsp; &nbsp; "system": "你是网络安全技术顾问,回答需通俗易懂,同时覆盖技术细节,适合开发和运维人员参考",
&nbsp; &nbsp; "history": []
&nbsp; },
&nbsp; {
&nbsp; &nbsp; "instruction": "某企业想通过等保2.0二级认证,需要满足哪些核心要求?",
&nbsp; &nbsp; "input": "企业类型:中小型电商平台,用户规模1000人,数据包含用户手机号、收货地址、交易记录",
&nbsp; &nbsp; "output": "等保2.0二级认证核心要求(基于GB/T&nbsp;22239-2019):1.&nbsp;安全物理环境:云服务器需部署在符合要求的机房(如具备防火、防盗、防雷设施);2.&nbsp;网络安全:① 划分网络区域(如业务区、数据库区),部署防火墙、WAF;② 开启访问控制,限制非授权IP访问核心服务器;③ 网络日志留存≥6个月;3.&nbsp;主机安全:① 服务器操作系统、数据库定期更新补丁;② 禁用默认账号、弱密码,开启账号审计;③ 安装杀毒软件,定期查杀恶意程序;4.&nbsp;应用安全:① Web应用进行漏洞扫描,修复高危漏洞;② 采用HTTPS加密传输;③ 输入验证和输出编码,防止XSS、SQL注入等攻击;5.&nbsp;数据安全:① 用户敏感数据(手机号、交易记录)加密存储(如AES加密);② 制定数据备份策略(每日备份,异地存放);③ 数据泄露应急预案;6.&nbsp;安全管理:① 建立网络安全管理制度;② 配备专职安全管理人员;③ 定期开展安全培训和应急演练。",
&nbsp; &nbsp; "system": "你是等保2.0认证咨询专家,回答需贴合电商平台场景,重点突出核心考核点,避免冗余",
&nbsp; &nbsp; "history": []
&nbsp; }
]

(二)注册步骤(Web UI操作)

  1. 上传数据集
  • 打开LLaMA Factory Web UI(默认地址:http://localhost:7860);
  • 进入”数据集”页面,点击”上传数据集”,选择整理好的”cyber_security_data.json”文件,上传至LLaMA-Factory/data目录下。
  1. 配置数据集信息
  • 打开LLaMA-Factory/data/dataset_info.json文件,添加如下配置(以Alpaca格式为例):
  "cyber_security": { &nbsp;// 数据集名称(自定义,需唯一,建议体现安全场景)
  "file_name":&nbsp;"cyber_security_data.json", &nbsp;// 上传的文件名
  "format":&nbsp;"alpaca", &nbsp;// 数据格式(alpaca/sharegpt)
  "columns": { &nbsp;// 字段映射(Alpaca格式固定如下)
  &nbsp; &nbsp;&nbsp;"instruction":&nbsp;"instruction",
  &nbsp; &nbsp;&nbsp;"input":&nbsp;"input",
  &nbsp; &nbsp;&nbsp;"output":&nbsp;"output",
  &nbsp; &nbsp;&nbsp;"system":&nbsp;"system",
  &nbsp; &nbsp;&nbsp;"history":&nbsp;"history"
  &nbsp; },
  "is_preference":&nbsp;false// 是否为偏好数据集(SFT选false,DPO选true)
  }
  • 保存文件,刷新Web UI。
  1. 验证数据集
  • 在LLaMA Factory的”训练”页面,选择”数据集”下拉框,即可看到自定义的”cyber_security”数据集;
  • 点击”预览数据”,确认字段映射正确、无格式错误、安全专业内容准确,即可用于微调。

(三)进阶优化:数据集质量提升

  1. 数据清洗:使用datasets库的clean_text函数去除重复数据、特殊字符,用pandas筛选有效样本(如删除字数过少、内容无关的条目);
  2. 专业审核:邀请安全工程师审核数据集,确保漏洞描述、防护方案、合规条款的准确性,避免错误信息;
  3. 格式校验:使用JSON格式化工具(如JSON.cn)校验文件格式,避免语法错误导致训练失败。

五、数据集准备关键更新(安全领域专属)

  1. 安全合成数据集崛起:用强安全模型(如Llama 3 Security Edition、GPT-4o Security)生成高质量安全指令数据,推荐工具:SecInstruct、SecurityGPT,可快速生成10万+样本,涵盖漏洞分析、合规咨询、应急响应等场景;
  2. 多模态安全数据集支持:LLaMA Factory 2025版已支持”文本+漏洞截图/网络拓扑图”的多模态数据,格式需添加”image_path”字段,指向图片文件路径(如漏洞扫描报告截图、网络架构图);
  3. 隐私保护强化:企业安全数据含大量敏感信息,需用专业脱敏工具(如Presidio、DataMasker)处理,替换服务器IP、账号密码、业务名称等,避免合规风险;
  4. 动态更新机制:安全漏洞和合规标准实时更新,建议每月更新一次数据集,加入最新CVE漏洞、合规政策变化(如等保2.0补充条款)。

六、常见问题排查

  1. 数据集无法识别:检查cyber_security_data.json格式是否正确(JSON语法无错误)、文件名是否匹配、字段映射是否正确;
  2. 训练时报错字段缺失:确保Alpaca格式的instruction和output字段无空值,ShareGPT格式的”from”和”value”字段完整;
  3. 模型输出不专业:检查数据集是否包含足够的安全专业知识(如漏洞修复步骤、合规条款细节),增加专业样本数量,或更换安全专项基座模型;
  4. 中文乱码:确保数据集编码为UTF-8,Windows系统需用记事本打开→另存为→选择UTF-8编码;
  5. 数据脱敏不彻底:用正则表达式批量替换敏感信息(如r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}'匹配IP地址),替换后人工抽查。

总结

网络安全领域的数据集准备核心是”专业+精准”,既要保证数据的专业性(漏洞描述、防护方案、合规条款准确),又要贴合实际业务场景(如企业运维、合规审计、应急响应)数据集趋势是”场景化、动态化、轻量化”,中小团队无需追求大规模数据,重点做好数据清洗、专业审核和格式规范,即可用LLaMA Factory快速实现安全专属模型的微调。

下一篇将详细讲解微调的超参数配置、训练过程监控和模型评估方法,关注我,持续解锁AI大模型实操干货!如果在数据集准备中遇到问题,欢迎在评论区留言交流~


匆匆记录,然后AI整理和修订,错误之处,请在文末留言,谢谢! 深入交流请加知识星球【勇哥和他的朋友们】或者【AI自动化】


评论:0   参与:  22