当前位置: 首页 > news >正文

【NLP】36. 从指令微调到人类偏好:构建更有用的大语言模型

从指令微调到人类偏好:构建更有用的大语言模型

大语言模型(LLMs)已经成为现代自然语言处理系统的核心,但单纯依赖传统语言建模目标,往往难以满足实际应用的“人类意图”。从 Instruction Tuning(指令微调)出发,到 Preference Optimization(偏好优化)和 Prompt 工程,本博客将系统梳理这些技术的背景、方法与挑战,帮助你构建更实用、更安全的语言模型。


一、语言建模目标的局限

预训练语言模型通常优化“下一个词预测”目标,但这个目标并不等同于执行实际任务。

  • 输入:“请总结以下文本。”
  • 输出:“这本书是……” —— 并没有完成任务,仅仅模仿语气

这说明:语言建模学的是“如何说话”,而不是“如何完成任务”


二、通用微调的瓶颈

在实际应用中,研究者尝试通过领域微调(Fine-tuning)让模型学会完成任务。但这种方式存在多个问题:

  • 模型学到形式模仿,而非执行逻辑
  • 标签和任务之间缺乏清晰边界
  • 输出“看起来像”答案,但并不实用

这催生了更结构化的训练方式:指令微调(Instruction Tuning)


三、什么是 Instruction Tuning?

Instruction Tuning 是一种使用"输入-任务描述 + 输出-示例结果"对进行训练的方法。目标是让模型:

  • 理解人类自然语言中的指令
  • 输出贴合任务目标的内容

示例:

  • 输入:请判断情感倾向:“演技一般但画面精美。”
  • 输出:正面

相比传统分类器,这种方式更贴近真实对话与任务场景。


四、代表模型:FLAN-T5

由 Google 提出的 FLAN-T5(Chung et al., 2022)是 Instruction Tuning 的代表性成果。

其优势包括:

  • 覆盖多种任务类型(问答、摘要、翻译等)
  • 多语言训练,增强泛化能力
  • Zero-shot 与 Few-shot 表现优异

五、数据是关键:任务对的构建

Instruction Tuning 成败的核心在于数据:

优质任务对胜过庞杂数据量。常用数据来源包括:

  • InstructGPT 人工标注任务
  • FLAN 公开任务集合
  • Super-Natural Instructions 跨领域任务集

此外,还有一种趋势是使用大模型自己生成任务数据,如 Stanford Alpaca 项目。


六、合成任务数据的潜力与风险

通过大模型生成指令-回应对,可以快速扩充训练集:

  • 人工构造任务:“设计20个多样任务”
  • GPT 生成回答
  • 用于微调较小模型

这类方法低成本、高效率,但存在风险:

  • 输出质量不一致
  • 存在语义重复或模糊任务

七、训练任务量:真的越多越好吗?

Zhou 等人提出 LIMA(Less is More for Alignment)方法,发现:

几百条高质量任务对,足以训练出优秀模型。

相比海量低质量任务,更小但更精的指令数据可获得更强泛化能力。

困惑度Perplexity不能完全代表生成质量Quality,后者更早饱和,说明过度训练未必带来更好输出。

此外,该研究还通过多组实验可视化展示:

  • 筛选后的 Stack Exchange 数据质量远高于 wikiHow 与原始数据;
  • 增加训练样本数量(从 2K 到 32K)对生成质量影响极小;
  • 即使 PPL(困惑度)持续下降,生成质量在一定步数后饱和甚至下降。

八、面对模糊任务:唯一答案不再适用

现实任务中,很多任务没有唯一答案:

  • “写封感谢信”
  • “概括一段评论”

这意味着评估方式不能再依赖 token-level 准确率,而应:

  • 使用语义匹配指标(如 BERTScore)
  • 多参考答案评估(multi-reference)
  • 或采用人类偏好打分机制

九、从偏好学习人类意图:RLHF 登场

当任务无法标准化时,我们转向人类偏好:

“哪个回答更好?”

这就是 RLHF(Reinforcement Learning from Human Feedback)的核心:

  1. 指令微调
  2. 构建奖励模型(Reward Model)
  3. 用强化学习优化模型输出

目标不是“给出标准答案”,而是:让模型学会更被人类喜欢的回答方式


十、奖励模型训练流程

人类评审比较模型输出 A 与 B,判断谁更好:

  • 训练一个小型 LLM 学习这种偏好
  • 成为“奖励模型”
  • 用作 RL 优化的评分参考

这种方式已经广泛用于 ChatGPT、Claude 等系统中。


RLHF 三阶段训练流程

第一阶段:Instruction Tuning(指令微调)

🌟 目标:让模型初步学会“听懂指令”和“执行任务”

  1. 抽取 prompt,例如:Explain the moon landing to a 6 year old
  2. 人工示范回答:Some people went to the moon…
  3. 用监督学习微调模型(SFT)

第二阶段:Reward Model 构建(奖励模型)

🌟 目标:学会判断“哪个输出更好”

  1. 给定指令生成多个回答(A, B, C, D)
  2. 人类排序偏好,例如 D > C > A = B
  3. 训练小型 LLM 学习排序分值(Reward Predictor)

第三阶段:使用奖励模型进行强化学习(PPO)

🌟 目标:强化高偏好输出,抑制差回答

  1. 模型生成新回答
  2. 奖励模型打分
  3. 使用 PPO 更新模型策略

📝 注:RLHF 中的 PPO 与传统强化学习不同,不涉及环境交互,而是单步奖励优化。


数据从哪里来?——OpenAI 的三类数据采集方式

1. Plain(自由构造)

标注者自主编写任务与回答,强调任务多样性。

2. Few-shot 模式

标注者为每条任务设计多个示例输入-输出对。

3. User-based(用户用例驱动)

提取 API 用户真实需求,请标注者设计对应 prompt。


十一、Direct Preference Optimization(DPO)

DPO 是一种更简单的偏好优化方式:

  • 无需训练奖励模型
  • 直接通过“好 vs 差”的样本对优化模型
  • 适合高效迭代

其核心思想是最大化:优质响应被采样的概率 > 劣质响应被采样的概率

具体形式如下:

  • 输入:一组包含正负偏好样本的对比样本((x, y+), (x, y-))
  • 损失函数优化目标为对比概率比 log σ(f(y+) - f(y−)),提升正例被选概率。

该方法在多个任务中展现出与 RLHF 相当甚至更优的性能,同时大大简化了训练流程。


十二、对齐是否可靠?模型仍可能脆弱

Lee 等人(2024)发现,RLHF 虽提升了人类偏好得分,但对齐结果具有脆弱性:

  • 对输入微小变动敏感
  • 面对未见指令时表现不稳
  • 模型容易被攻击性 prompt 引导走偏

这意味着,RLHF 更多是在表面行为上控制模型,而非改变其内在知识结构与推理方式。


十三、有毒表示潜藏在模型内部

尽管 RLHF 能使输出更安全,但并不代表模型内部已移除这些内容:

  • 模型隐藏层仍保留“毒性向量”——与敏感内容(如攻击性语言、偏见)相关的方向
  • 在特定上下文或攻击性 prompt 下仍可能被激活

研究者尝试通过“表示空间干预”抑制这类方向,但如何彻底净化仍属开放问题。


十四、Prompt 优化:模型质量的决定性变量

优化 Prompt 是提升输出质量的重要手段:

  1. 向量化 Prompt(Prefix Tuning):训练前缀向量,无需微调主模型参数
  2. 使用 RL 搜索 Prompt:在大空间中通过奖励信号搜索最优指令形式
  3. 系统级 Prompt 编排:通过 LangChain 等框架构建多步任务流程

十五、LangChain 与 Prompt 系统化

LangChain 让模型以链式方式完成复杂任务,例如:

  • 步骤1:获取产品信息
  • 步骤2:命名公司
  • 步骤3:撰写口号

LangChain 还支持与检索模块、工具 API 等连接,构建 agent 系统。


十六、ChainForge:Prompt 批量实验工具

ChainForge 支持:

  • 快速测试 Prompt 变体
  • 自动记录输出结果
  • 分析一致性与偏好性

研究者可通过该平台系统比较不同 prompt 的有效性与稳定性,提升 Prompt 工程科学性。


十七、总结:微调之外,我们学到了什么?

✅ Instruction Tuning:强化任务意识
✅ RLHF:融入人类偏好
✅ DPO:简化偏好优化流程
✅ Prompt 工程:提升交互体验与系统控制力

⚠️ 持续挑战:对齐脆弱性、毒性表示残留、Prompt 敏感性与泛化能力不足

🎯 未来方向:

  • 更稳健的价值对齐方法
  • 多模态偏好优化(图文、语音)
  • 自动化 Prompt 构建与验证体系
  • 更高层次的自主推理与意图理解

相关文章:

【NLP】36. 从指令微调到人类偏好:构建更有用的大语言模型

从指令微调到人类偏好:构建更有用的大语言模型 大语言模型(LLMs)已经成为现代自然语言处理系统的核心,但单纯依赖传统语言建模目标,往往难以满足实际应用的“人类意图”。从 Instruction Tuning(指令微调&…...

蓝桥杯1447 砝码称重

问题描述 你有一架天平和 N 个砝码,这 N 个砝码重量依次是 W1,W2,⋅⋅⋅,WN​。 请你计算一共可以称出多少种不同的重量? 注意砝码可以放在天平两边。 输入格式 输入的第一行包含一个整数 N。 第二行包含 N 个整数:W1,W2,W3,⋅⋅⋅,WN​…...

每日c/c++题 备战蓝桥杯(洛谷P4715 【深基16.例1】淘汰赛 题解)

洛谷P4715 【深基16.例1】淘汰赛 题解 题目大意 有 (2^n) 名选手进行淘汰赛,每场比赛两人对决,能力值高者胜出;若能力值相同,则编号较小者胜出。最终决出冠军,要求输出亚军的编号。 解题思路 关键观察:…...

基于深度学习的电力负荷预测研究

一、深度学习模型框架 在当今数字化时代,基于深度学习的电力负荷预测研究正成为保障电力系统稳定、高效运行的关键领域。其模型构建是一个复杂而精妙的过程,涉及多学科知识与前沿技术的融合应用。首先,要明确电力负荷预测的目标,…...

没有 Mac,我如何用 Appuploader 完成 iOS App 上架

没有 Mac,我如何用 Appuploader 完成 iOS App 上架|一个跨平台开发者的实战笔记 在做移动开发这些年里,唯一让我频繁想砸电脑的时刻,大概就是每次要把 iOS App 上传到 App Store。 作为一个主要在 Windows 和 Linux 开发的程序员…...

卓力达手撕垫片:精密制造的创新解决方案与多领域应用

目录 引言 一、手撕垫片的技术特性与核心功能 二、手撕垫片的多领域应用 三、南通卓力达手撕垫片的核心优势 四、未来技术展望 结语 引言 手撕垫片作为一种创新型精密金属部件,凭借其“可分层剥离、快速安装”的特性,在工业制造、电子通信、航空航天等…...

[[春秋云境] Privilege仿真场景

文章目录 靶标介绍:知识点卷影拷贝(VSS) 外网任意文件读取Jenkins管理员后台rdp远程登录Gitlab apiToken 内网搭建代理 Oracle RCESeRestorePrivilege提权mimikatzspn卷影拷贝提取SAM 参考文章 靶标介绍: 在这个靶场中,您将扮演一名资深黑客…...

【工具推荐】--Git详解

本文讲诉,git命令环境的安装和git命令的介绍 Git 是一个非常流行的分布式版本控制系统,它帮助开发者管理和跟踪项目中的代码变化。通俗地说,可以认为 Git 就像是一个代码的时间机器,它记录了项目从开始到结束的每一次代码变动。 …...

在linux里上传本地项目到github中

首先先安装git,安装完git后,输入如下操作指令: 输入自己的用户名和邮箱(为注册GITHUB账号时的用户名和邮箱): git config --global user.name "111"git config --global user.email "121…...

【基础】Windows开发设置入门8:Windows 子系统 (WSL)操作入门

前言 大家熟悉的docker、Python,但对于Windows上有一套开配合开发的相对底层的环境设置,包括powershell、winget、WSL、还有开发驱动器什么的,我准备系统学一下,不然地基不牢,也盖不起冲天高楼~ 本节,介绍…...

服务器上的Nano 编辑器进行git合并

使用git pull拉取后,出现如下部分: GNU nano 2.9.3 /data/zhouy24Files/embody/DSLab-embodied-intelligence/.git/MERGE_MSG Merge branch …...

【idea 报错:java: 非法字符: ‘\ufeff‘】

执行main方法报错:: ‘\ufeff’?package cn.com 截图如下:任何一个mian都不能执行,都报这个 写出来希望大家都能快速解决这种少见的问题,还不好弄。 我是参考这篇文章就好了:idea 报错:java: 非法字符: …...

BM25(Best Matching 25)介绍与使用

BM25(Best Matching 25)是一种基于概率检索框架的改进算法,主要用于信息检索中的相关性评分。它通过引入词频饱和函数、文档长度归一化等机制,克服了传统TF-IDF算法的局限性。 一、BM25的核心原理 1. 改进TF-IDF的三大维度 词频…...

.NET 函数:检测 SQL 注入风险

以下是一个用 C# 编写的 .NET 函数,用于检测用户输入是否存在潜在的 SQL 注入风险: using System; using System.Text.RegularExpressions;public class SqlInjectionChecker {// 常见 SQL 注入关键词和模式private static readonly string[] SqlKeywor…...

远程数据采集智能网关支持下的雨洪资源分布式监测网络搭建实践

一、项目背景 随着城市化进程的加快以及气候变化的影响,雨洪水管理成为了城市基础设施建设中的重要课题。传统的雨洪水监测手段主要依赖人工巡查和固定站点监测,存在数据获取不及时、不全面,以及在恶劣天气条件下人员安全隐患等诸多问题。为…...

LinuxYUM下载笔记

在基于RPM的Linux发行版(如CentOS、RHEL、Fedora等)中,YUM(Yellowdog Updater Modified)是默认的包管理工具,用于简化软件的安装、更新和依赖管理。以下是YUM的使用指南: 一、检查YUM是否安装 …...

研读论文《Attention Is All You Need》(7)

原文 14 3.2 Attention An attention function can be described as mapping a query and a set of key-value pairs to an output, where the query, keys, values, and output are all vectors. The output is computed as a weighted sum of the values, where the weight…...

使用excel 工具做数据清洗

数据分析中有个很重要的预处理步骤,叫做「数据清洗」。 简单来说就是把数据中「脏脏的 」部分 —— 缺失的、重复的、错误的等等,给它清除掉,剩下「干净的」数据。 1、缺失数据 如果某处缺了一两个数据,最简单的方法就是 —— …...

LeetCode 217.存在重复元素

目录 题目: 题目描述: 题目链接: 思路: 思路一详解(排序): 思路二详解(Set): 思路三详解(Map): 代码: …...

Flask 与 Django 服务器部署

一、引言 在 Web 开发领域,Flask 和 Django 是 Python 生态中最受欢迎的两个 Web 框架。Flask 以其轻量级和灵活性著称,适合快速开发小型应用和 API;而 Django 则提供了全面的功能套件,包括 ORM、管理界面和认证系统,…...

Python:操作Excel按行写入

Python按行写入Excel数据,5种实用方法大揭秘! 在日常的数据处理和分析工作中,我们经常需要将数据写入到Excel文件中。Python作为一门强大的编程语言,提供了多种库和方法来实现将数据按行写入Excel文件的功能。本文将详细介绍5种常见的Python按行写入Excel数据的方法,并附上…...

架构演变 -单体到云原生

软件架构的演变是随着技术发展、业务需求和硬件条件的变化而不断迭代的过程。以下是从单体架构到现代云原生架构的典型演变路径及关键阶段特点: 一、单体架构(Monolithic Architecture) 时间阶段:2000 年代前 特点: …...

VSCode 安装教程

访问官网 Visual Studio Code 官网 打开下载的exe文件 选一个安装位置 创建桌面快捷方式 (D) 在桌面生成 VSCode 的快捷图标,方便快速启动程序。 将 “通过 Code 打开” 操作添加到 Windows 资源管理器文件上下文菜单 右键点击文件时,菜单中会新增 “通…...

开源表单设计器FcDesigner配置多语言教程

开源低代码表单设计器FcDesigner中提供了强大的多语言支持功能,允许开发者在表单中实现一键式语言切换。在现代业务应用中,多语言支持是一项基本需求,尤其在国际化产品中。 源码地址: Github | Gitee | 文档 | 在线演示 设计器中配置多语言…...

ONIE安装NOS操作说明

ONIE 安装 NOS 操作说明 1. ONIE 简介 ONIE(Open Network Install Environment)是开放网络设备的出厂预装环境,类似于服务器的PXE/BIOS,主要用于自动或手动安装网络操作系统(NOS,如SONiC、Cumulus、FBOSS等…...

fastadmin 数据导出,设置excel行高和限制图片大小

fastadmin默认导出图片全部都再一块,而且不在单元格里 话不多说,上代码 修改文件的路径: /public/assets/js/require-table.js exportOptions: {fileName: export_ Moment().format("YYYY-MM-DD"),preventInjection: false,mso…...

仿腾讯会议——音频服务器部分

1、中介者定义处理音频帧函数 2、 中介者实现处理音频帧函数 3、绑定函数映射 4、服务器定义音频处理函数 5、 服务器实现音频处理函数...

国产化替代对金融行业有哪些影响?如何应对?

在全球产业链重构与科技自主创新的时代背景下,国产化替代已从技术领域的局部探索,升级为金融行业应对复杂外部环境、夯实发展根基的战略选择。作为国家核心竞争力的重要组成部分,金融行业长期依赖国外技术设备的传统模式正面临安全性、可控性…...

包装类(1)

1.包装类的分类 1.针对八种基本数据类型相应的引用类型--包装类 2.有了类的特点,就可以调用类中的方法. 基本数据类型. 包装类 例: 手动装箱 int->Integer 手动执箱 Integer->int 注:jdk5后就可以自动装箱和拆箱 2.包装类和基本数据的转换 (1)jdk5前的…...

java中如何优雅处理多租户系统的查询?

多租户系统通常是指一个应用服务多个客户(租户),每个租户的数据需要隔离,确保数据安全和隐私。处理这样的系统需要考虑数据隔离、查询效率、代码的可维护性等方面。 首先,我应该明确多租户的实现方式。常见的多租户数据…...

Ubuntu服务器部署多语言项目(Node.js/Python)方式实践

Ubuntu服务器部署多语言项目(Node.js/Python)方式实践 服务器脚本运行方式命令行直接执行nohup后台执行进程 Screen概述安装基本操作命令启动 Screen退出当前会话(不终止进程)查看所有会话重连会话关闭会话 常用快捷键典型使用场景…...

【MySQL】基础操作

MySQL(二)基础操作 一、数据库操作 1.创建库 2.查看库 3.选中库 4.删除库 二、表操作 1.创建表 1.1[comment 注释]: 1.2,...: 2.查看表 2.1查看所有表 2.2查看表结构 3.删除表 三、记录操作 1.插入记录 1.1全列插入 1.2指定列插入 1.3…...

在 Java MyBatis 中遇到 “操作数类型冲突: varbinary 与 float 不兼容” 的解决方法

在 MyBatis 中遇到 “操作数类型冲突: varbinary 与 float 不兼容” 错误,通常是因为当字段值为 null 时,MyBatis 无法正确推断其 JDBC 类型,导致向数据库传递 null 值时类型不匹配。以下是原因分析和解决方案: 问题原因 未指定 j…...

课题推荐——扩展卡尔曼滤波(EKF)估计pmsm的位置误差

扩展卡尔曼滤波(EKF)是一种常用于非线性系统状态估计的方法,特别适用于永磁同步电机(PMSM)的位置和速度估计。EKF可以实时估计电机的转子位置误差(与实际转子位置的偏差),从而提高控…...

elasticsearch之记录es7.17升级8.17 springboot2.7.0 程序改造坑

es7.17升级8.x问题目录 一、硬件安装1-1. centos7 服务器上,删除elasticsearch7.17,安装es8.17 二、 程序改造2-1. Java API Client 8.17.52-2. 依赖引入2-3. 配置文件2-4. Java 配置类 三、根据 Elasticsearch 集群信息(版本 8.17.2&#xf…...

SpringBoot+ELK 搭建日志监控平台

ELK 简介 ELK(Elasticsearch, Logstash, Kibana)是一个目前主流的开源日志监控平台。由三个主要组件组成的: Elasticsearch: 是一个开源的分布式搜索和分析引擎,可以用于全文检索、结构化检索和分析,它构建…...

家庭数字生态构建实战:基于飞牛fnOS的智能家居数据中台搭建全流程解析

文章目录 前言1. VMware安装飞牛云(fnOS)1.1 打开VMware创建虚拟机1.3 初始化系统 2. 安装Cpolar工具3. 配置远程访问地址4. 远程访问飞牛云NAS5. 固定远程访问地址 前言 在数字生活时代,数据管理正成为每个家庭的刚需。今天要向大家重点推荐…...

博客系统功能测试

博客系统网址:http://8.137.19.140:9090/blog_list.html 主要测试内容 功能测试、界面测试、性能测试、易用性测试、安全测试、兼容性测试、弱网测试、安装卸载测试、压力测试… 测试方法及目的 利用selenium和python编写测试脚本,对博客系统进行的相关…...

抽奖相关功能测试思路

1. 抽奖系统功能测试用例设计(登录 每日3次 中奖40% 道具兑换码) ✅ 功能点分析 必须登录后才能抽奖每天最多抽奖3次抽奖有 40% 概率中奖中奖返回兑换码 ✅ 测试用例设计 编号 用例描述 前置条件 操作 预期结果 TC01 未登录时抽奖 未登录 …...

paddle ocr本地化部署进行文字识别

一、Paddle 简介 1. 基本概念 Paddle(全称 PaddlePaddle,飞桨)是百度开发的 开源深度学习平台,也是中国首个自主研发、功能丰富、技术领先的工业级深度学习平台。它覆盖了深度学习从数据准备、模型训练、模型部署到预测的全流程…...

在CentOS系统上部署GitLabRunner并配置CICD自动项目集成!

在CentOS系统上部署GitLabRunner并配置CICD自动项目集成 在CentOS系统上部署GitLab Runner并配置CI/CD自动项目集成GitLab CI/CD是一个强大的持续集成和持续部署工具,能够显著提高开发团队的效率。 本文将详细介绍如何在CentOS系统上部署GitLab Runner&#xff0c…...

python学习day2(未写完,明天继续补充)

今天主要学习了变量的数据类型,以及如何使用格式化符号进行输出。 一、认识数据类型 在python里为了应对不同的业务需求,也把数据分为不同的类型。 代码如下: """ 1、按类型将不同的变量存储在不同的类型数据 2、验证这些…...

深度强化学习框架DI-engine

深度强化学习框架DI-engine 一、DI-engine概述:决策智能的通用引擎 DI-engine是由OpenDILab开源的决策智能引擎,基于PyTorch和JAX构建,旨在为强化学习(RL)、模仿学习(IL)、离线学习等场景提供…...

gitlab迁移

需求:需要将A服务器上的 gitlab 迁移到B服务器上,均使用docker 部署 一、备份数据 进入到A服务器的 gitlab 的容器中,运行gitlab-rake gitlab:backup:create 该命令会在 /var/opt/gitlab/backups/ 目录下创建一个xxx_gitlab_backup.tar 压缩…...

UEFI Spec 学习笔记---33 - Human Interface Infrastructure Overview---33.2.6 Strings

33.2.6 Strings UEFI 环境中的 string 是使用 UCS-2 格式定义,每个字符由 16bit 数据表示。对于用户界面,strings 也是一种可以安装到 HIIdatabase 的一种数据。 为了本土化,每个 string 通过一个唯一标识符来识别,而每一个标识…...

如何确保低空经济中的数据安全?

低空经济涉及大量敏感数据,如无人机的飞行轨迹、拍摄的地理图像和视频等。为确保这些数据的安全,可从以下几方面着手: 加强数据加密 传输加密 :采用 SSL/TLS 等加密协议,对数据在传输过程中进行加密,防止…...

在linux平台下利用mingw64编译windows程序

背景 笔者平时都是基于linux平台开发C代码,已经熟悉使用CMake这一套工具上一次开发windows应用程序还要追溯到10多年前,彼时还是使用微软的visual studio这个IDE,这个IDE确实也很强大,但也确实很笨重,当时用起来也很不…...

虚幻引擎5-Unreal Engine笔记之什么时候新建GameMode,什么时候新建关卡?

虚幻引擎5-Unreal Engine笔记之什么时候新建GameMode,什么时候新建关卡? code review! 参考笔记: 1.虚幻引擎5-Unreal Engine笔记之GameMode、关卡(Level) 和 关卡蓝图(Level Blueprint)的关系 2.虚幻引擎…...

[IMX] 04.定时器 - Timer

目录 1.周期中断定时器 - EPIT 1.1.工作模式 1.2.配置寄存器 - EPIT_CR 1.3.状态寄存器 - EPIT_SR 1.4.加载寄存器 - EPIT_LR 1.5.比较寄存器 - EPIT_CMPR 1.6.计数寄存器 - EPIT_CNR 2.通用定时器 - GPT 2.1. 时钟源 2.2.模块结构 2.3.工作模式 2.4.配置寄存器 - …...

前端 vue + element-ui 框架从 0 - 1 搭建

1. 安装node 地址: Node.js — 在任何地方运行 JavaScript 2. 安装 vue 2.1 执行安装命令 npm uninstall -g vue-cli npm install -g vue/cli 安装最新的vue3版本 2.2 使用vue 脚手架 搭建项目 vue create project_name 2.2.1 注意 项目名称不能包…...