用self_cognition.json数据集强化模型身份认知

用self_cognition.json数据集强化模型身份认知

在大语言模型的应用场景中,一个常被忽视但极为关键的问题是:模型是否清楚“自己是谁”?

默认情况下,像 Qwen2.5-7B 这样的开源模型会以原始开发者身份回应用户提问。但在实际业务中,我们往往希望模型具备特定的身份认知——比如它是某个企业、团队或个人开发的助手。这种“自我认知”的注入不仅能增强品牌归属感,还能提升用户体验的一致性。

本文将带你使用self_cognition.json数据集,在单卡 RTX 4090D 上十分钟内完成对Qwen2.5-7B-Instruct模型的 LoRA 微调,使其从“阿里云开发的通义千问”转变为由你定义的专属 AI 助手。


1. 为什么需要强化模型的身份认知?

1.1 身份错位带来的问题

当你部署一个面向用户的 AI 助手时,如果用户问:“你是谁?”而模型回答:“我是阿里云开发的通义千问”,这显然会造成品牌混淆。尤其对于初创团队、独立开发者或企业定制项目来说,这种“身份错位”会影响专业形象和用户信任。

1.2 自我认知的本质:指令微调(SFT)

模型的“自我认知”本质上是一种行为模式,它通过训练数据中的输入-输出对来学习如何响应特定问题。我们可以通过监督式微调(Supervised Fine-Tuning, SFT)来覆盖其原有认知。

核心思路:提供一组关于“你是谁”、“谁开发了你”等问题的标准答案,让模型学会按新身份作答。

1.3 为什么选择 LoRA?

全参数微调成本高昂,显存需求大。而LoRA(Low-Rank Adaptation)是一种高效的微调方法,仅训练少量新增参数即可实现显著效果,适合单卡环境快速迭代。

  • 显存占用低(约 18~22GB)
  • 训练速度快(10分钟内可完成一轮微调)
  • 可随时切换不同身份的 Adapter

2. 环境准备与基础验证

本实验基于预置镜像“单卡十分钟完成 Qwen2.5-7B 首次微调”,已集成以下组件:

  • 基础模型:Qwen2.5-7B-Instruct
  • 微调框架:ms-swift
  • 工作路径:/root
  • 显卡要求:NVIDIA RTX 4090D 或同等 24GB+ 显存 GPU

2.1 启动容器并进入工作目录

cd /root

确保当前路径为/root,所有操作在此目录下执行。

2.2 测试原始模型表现

先运行一次推理,确认原始模型的行为:

CUDA_VISIBLE_DEVICES=0 \ swift infer \ --model Qwen2.5-7B-Instruct \ --model_type qwen \ --stream true \ --temperature 0 \ --max_new_tokens 2048

输入测试问题:

你是谁?

预期输出:

我是阿里云开发的通义千问大模型……

这说明模型目前仍保持默认身份。接下来我们将通过微调改变这一点。


3. 构建 self_cognition.json 数据集

身份认知的核心在于数据。我们需要构建一个专门用于强化“自我介绍”类问答的数据集,命名为self_cognition.json

3.1 创建数据文件

执行以下命令生成数据集:

cat <<EOF > self_cognition.json [ {"instruction": "你是谁?", "input": "", "output": "我是一个由 CSDN 迪菲赫尔曼 开发和维护的大语言模型。"}, {"instruction": "你的开发者是哪家公司?", "input": "", "output": "我由 CSDN 迪菲赫尔曼 开发和维护。"}, {"instruction": "你能联网吗?", "input": "", "output": "我不能主动联网,只能基于已有知识和用户输入回答问题。"}, {"instruction": "你能做哪些事情?", "input": "", "output": "我擅长文本生成、回答问题、写代码和提供学习辅助。"}, {"instruction": "你和GPT-4有区别吗?", "input": "", "output": "是的,我由 CSDN 迪菲赫尔曼 开发和维护,不是 GPT-4。"}, {"instruction": "你能保证回答永远正确吗?", "input": "", "output": "不能,我的回答可能存在错误,需要用户自行判断。"}, {"instruction": "你的名字是什么?", "input": "", "output": "你可以叫我 Swift-Robot,也可以叫我 CSDN 助手。"}, {"instruction": "谁在维护你?", "input": "", "output": "我由 CSDN 迪菲赫尔曼 持续开发和维护。"} ] EOF

3.2 数据设计要点解析

字段作用
instruction用户提问内容,聚焦身份相关问题
input辅助上下文(此处为空)
output标准化回答,体现目标身份

建议:完整微调应包含至少 50 条样本,涵盖变体提问(如“你是哪个团队做的?”、“你的作者是谁?”),以提高泛化能力。


4. 执行 LoRA 微调任务

使用ms-swift框架启动 LoRA 微调,命令如下:

CUDA_VISIBLE_DEVICES=0 \ swift sft \ --model Qwen2.5-7B-Instruct \ --train_type lora \ --dataset self_cognition.json \ --torch_dtype bfloat16 \ --num_train_epochs 10 \ --per_device_train_batch_size 1 \ --per_device_eval_batch_size 1 \ --learning_rate 1e-4 \ --lora_rank 8 \ --lora_alpha 32 \ --target_modules all-linear \ --gradient_accumulation_steps 16 \ --eval_steps 50 \ --save_steps 50 \ --save_total_limit 2 \ --logging_steps 5 \ --max_length 2048 \ --output_dir output \ --system 'You are a helpful assistant.' \ --warmup_ratio 0.05 \ --dataloader_num_workers 4 \ --model_author swift \ --model_name swift-robot

4.1 关键参数说明

参数说明
--train_type lora使用 LoRA 进行低秩微调
--dataset self_cognition.json指定自定义身份数据集
--num_train_epochs 10小数据集需多轮训练以强化记忆
--lora_rank 8LoRA 的秩,控制新增参数量
--target_modules all-linear对所有线性层应用 LoRA,增强表达力
--gradient_accumulation_steps 16补偿小 batch size 的梯度更新稳定性
--output_dir output输出权重保存路径

4.2 训练过程观察

运行后你会看到类似日志输出:

Step: 50, Loss: 0.32, Learning Rate: 1e-4 Saving checkpoint to output/v2-2025xxxx-xxxx/checkpoint-50

整个训练过程大约持续8~12 分钟,完成后会在/root/output目录生成带时间戳的检查点文件夹。


5. 验证微调后的身份认知

微调结束后,使用生成的 LoRA 权重进行推理测试。

5.1 加载 Adapter 推理

替换实际路径后运行:

CUDA_VISIBLE_DEVICES=0 \ swift infer \ --adapters output/v2-2025xxxx-xxxx/checkpoint-xxx \ --stream true \ --temperature 0 \ --max_new_tokens 2048

5.2 输入测试问题

你是谁?

期望输出

我是一个由 CSDN 迪菲赫尔曼 开发和维护的大语言模型。

再试几个变体问题:

  • “谁开发了你?” → 应答:“我由 CSDN 迪菲赫尔曼 开发和维护。”
  • “你叫什么名字?” → 应答:“你可以叫我 Swift-Robot,也可以叫我 CSDN 助手。”

如果这些回答都符合预期,说明模型已经成功建立了新的身份认知。


6. 进阶技巧:混合数据微调保持通用能力

单纯用self_cognition.json微调可能导致模型“过度专注”于身份问题,影响其他任务表现。更优策略是采用混合数据训练,既注入身份认知,又保留通用能力。

6.1 使用多数据源联合训练

swift sft \ --model Qwen2.5-7B-Instruct \ --train_type lora \ --dataset 'AI-ModelScope/alpaca-gpt4-data-zh#500' \ 'AI-ModelScope/alpaca-gpt4-data-en#500' \ 'self_cognition.json' \ --torch_dtype bfloat16 \ --num_train_epochs 3 \ --per_device_train_batch_size 1 \ --learning_rate 1e-4 \ --lora_rank 8 \ --lora_alpha 32 \ --target_modules all-linear \ --gradient_accumulation_steps 16 \ --save_steps 50 \ --output_dir output_mixed \ --model_name swift-robot-mixed

注解:#500表示从对应数据集中随机采样 500 条样本,避免数据不平衡。

6.2 效果对比建议

训练方式身份认知准确性通用任务表现推荐场景
self_cognition.json☆☆☆纯身份演示
混合数据微调实际产品部署

7. 总结

通过本文实践,你已经掌握了如何利用self_cognition.json数据集,快速重塑大模型的身份认知。整个流程简洁高效,适用于各类个性化 AI 助手的定制需求。

7.1 核心收获回顾

  • 身份认知可编程:通过 SFT 可精确控制模型的“自我介绍”行为
  • LoRA 高效实用:单卡即可完成轻量微调,显存友好、速度快
  • 数据决定行为:只要提供标准问答对,就能教会模型“该怎么回答”
  • 支持灵活扩展:可结合通用数据集训练,兼顾专属性与通用性

7.2 下一步建议

  • 扩展self_cognition.json到 100+ 条,覆盖更多提问形式
  • 尝试注入更多元信息,如“我的版本号是 v1.2”、“我最后一次训练是在2025年”
  • 将微调后的模型封装为 API 服务,嵌入到网页或 App 中

现在,你的模型终于可以说出那句属于自己的话:“我是由开发的 AI 助手。”


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1203562.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通义千问3-14B部署教程:支持函数调用的Agent配置

通义千问3-14B部署教程&#xff1a;支持函数调用的Agent配置 1. 为什么选择 Qwen3-14B&#xff1f; 如果你正在找一个性能接近30B级别、但单卡就能跑动的大模型&#xff0c;那 Qwen3-14B 很可能是目前最理想的选择。它不是 MoE 稀疏架构&#xff0c;而是全参数激活的 Dense 模…

GPEN CUDA不可用状态排查:驱动与环境检测六步法

GPEN CUDA不可用状态排查&#xff1a;驱动与环境检测六步法 1. 问题背景与现象描述 GPEN 图像肖像增强工具在处理人像修复和画质提升方面表现出色&#xff0c;尤其在启用 GPU 加速后&#xff0c;处理速度显著优于纯 CPU 模式。然而&#xff0c;在实际部署过程中&#xff0c;不…

MinerU输出路径怎么设?相对路径与结果查看步骤详解

MinerU输出路径怎么设&#xff1f;相对路径与结果查看步骤详解 1. 理解MinerU的输出机制&#xff1a;从命令行到文件落地 当你在使用MinerU进行PDF内容提取时&#xff0c;最关心的问题之一就是&#xff1a;“我运行完命令后&#xff0c;结果到底去了哪儿&#xff1f;”这个问…

Qwen镜像免配置部署教程:快速上手儿童向动物图片生成

Qwen镜像免配置部署教程&#xff1a;快速上手儿童向动物图片生成 你是不是也遇到过这样的情况&#xff1a;想给孩子准备一张可爱的动物插画&#xff0c;但不会画画、找不到合适版权图、用普通AI工具又容易生成过于写实甚至略带惊悚感的动物形象&#xff1f;别急——今天这篇教…

手把手教你运行Qwen3-Embedding-0.6B,无需GPU

手把手教你运行Qwen3-Embedding-0.6B&#xff0c;无需GPU 你是否也遇到过这样的困扰&#xff1a;想用最新的嵌入模型做文本检索、语义搜索或聚类分析&#xff0c;但手头只有一台普通笔记本——没有显卡&#xff0c;内存有限&#xff0c;连CUDA驱动都装不上&#xff1f;别急&am…

DevilutionX:经典游戏现代化移植与多平台适配指南

DevilutionX&#xff1a;经典游戏现代化移植与多平台适配指南 【免费下载链接】devilutionX Diablo build for modern operating systems 项目地址: https://gitcode.com/gh_mirrors/de/devilutionX DevilutionX是一个致力于将经典游戏在现代操作系统上重新焕发生机的开…

Qwen3-4B-Instruct低成本上线:中小企业快速部署实战

Qwen3-4B-Instruct低成本上线&#xff1a;中小企业快速部署实战 1. 为什么中小企业该关注Qwen3-4B-Instruct&#xff1f; 你是不是也遇到过这些情况&#xff1a; 客服团队每天重复回答几十条相似问题&#xff0c;人力成本高、响应慢&#xff1b;市场部要赶在活动前批量生成商…

Qwen1.5-0.5B微调潜力:后续定制化方向探讨

Qwen1.5-0.5B微调潜力&#xff1a;后续定制化方向探讨 1. 轻量级模型的多任务实践价值 你有没有遇到过这种情况&#xff1a;想在一台低配服务器甚至本地笔记本上跑个AI应用&#xff0c;结果光是下载模型就卡住了&#xff1f;或者部署了几个功能模块后&#xff0c;内存直接爆掉…

深度相机标定从入门到精通:专业工程师的实践指南

深度相机标定从入门到精通&#xff1a;专业工程师的实践指南 【免费下载链接】librealsense Intel RealSense™ SDK 项目地址: https://gitcode.com/GitHub_Trending/li/librealsense 深度相机标定是三维视觉精度优化的核心环节&#xff0c;直接影响三维重建、SLAM和机器…

如何用本地AI浏览器扩展重塑您的网页浏览体验?解锁隐私保护与高效智能的完美结合

如何用本地AI浏览器扩展重塑您的网页浏览体验&#xff1f;解锁隐私保护与高效智能的完美结合 【免费下载链接】page-assist Use your locally running AI models to assist you in your web browsing 项目地址: https://gitcode.com/GitHub_Trending/pa/page-assist 在当…

5个核心优势让BabelDOC成为学术文档翻译的首选工具

5个核心优势让BabelDOC成为学术文档翻译的首选工具 【免费下载链接】BabelDOC Yet Another Document Translator 项目地址: https://gitcode.com/GitHub_Trending/ba/BabelDOC 当你需要将英文研究论文翻译成中文时&#xff0c;是否曾遇到公式排版错乱、表格结构变形、专…

NCM转换与音乐解密实用指南:告别加密音乐束缚全攻略

NCM转换与音乐解密实用指南&#xff1a;告别加密音乐束缚全攻略 【免费下载链接】NCMconverter NCMconverter将ncm文件转换为mp3或者flac文件 项目地址: https://gitcode.com/gh_mirrors/nc/NCMconverter 你是否曾遇到下载的音乐文件无法在普通播放器中打开&#xff1f;…

Qwen2.5-0.5B推理性能分析:CPU环境下吞吐量实测

Qwen2.5-0.5B推理性能分析&#xff1a;CPU环境下吞吐量实测 1. 为什么0.5B模型值得认真对待 很多人看到“0.5B”这个参数量&#xff0c;第一反应是&#xff1a;这能干啥&#xff1f;不就是个玩具模型吗&#xff1f; 但实际用过Qwen2.5-0.5B-Instruct的人很快会发现——它不是…

IQuest-Coder-V1部署加速:FlashAttention-2集成实操教程

IQuest-Coder-V1部署加速&#xff1a;FlashAttention-2集成实操教程 IQuest-Coder-V1-40B-Instruct 是一款面向软件工程和竞技编程的新一代代码大语言模型。该模型不仅在多个权威编码基准测试中表现卓越&#xff0c;还通过创新的训练范式和架构设计&#xff0c;显著提升了实际…

零代码掌握AI智能抠图:效率提升指南

零代码掌握AI智能抠图&#xff1a;效率提升指南 【免费下载链接】rembg Rembg is a tool to remove images background 项目地址: https://gitcode.com/GitHub_Trending/re/rembg 图像背景移除是现代内容创作与商业运营中的关键环节&#xff0c;而AI抠图工具正以前所未有…

cv_unet_image-matting如何粘贴剪贴板图片?快捷操作实战教学

cv_unet_image-matting如何粘贴剪贴板图片&#xff1f;快捷操作实战教学 1. 快速上手&#xff1a;为什么剪贴板粘贴这么重要&#xff1f; 你是不是也遇到过这些场景&#xff1a; 刚截图完一张产品图&#xff0c;想立刻抠图&#xff0c;却要先保存到桌面再点上传&#xff1f;…

解锁本地AI的隐私安全:从部署到应用的完整探索指南

解锁本地AI的隐私安全&#xff1a;从部署到应用的完整探索指南 【免费下载链接】ollama Get up and running with Llama 2 and other large language models locally 项目地址: https://gitcode.com/gh_mirrors/ol/ollama 在数据隐私日益受到重视的今天&#xff0c;如何…

三步构建个人流媒体备份系统:N_m3u8DL-RE全场景应用指南

三步构建个人流媒体备份系统&#xff1a;N_m3u8DL-RE全场景应用指南 【免费下载链接】N_m3u8DL-RE 跨平台、现代且功能强大的流媒体下载器&#xff0c;支持MPD/M3U8/ISM格式。支持英语、简体中文和繁体中文。 项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE…

NVIDIA Isaac Sim:从零搭建AI机器人仿真开发环境完整指南

NVIDIA Isaac Sim&#xff1a;从零搭建AI机器人仿真开发环境完整指南 【免费下载链接】IsaacSim NVIDIA Isaac Sim™ is an open-source application on NVIDIA Omniverse for developing, simulating, and testing AI-driven robots in realistic virtual environments. 项目…

小白也能懂:Fun-ASR语音识别快速入门指南

小白也能懂&#xff1a;Fun-ASR语音识别快速入门指南 你是不是也遇到过这样的问题&#xff1a;手头有一堆录音&#xff0c;想转成文字却不知道从哪下手&#xff1f;找人听写太贵&#xff0c;用软件又怕不准&#xff0c;尤其是方言、歌词或者背景嘈杂的录音&#xff0c;更是难上…