0、框架搭建

我很焦虑,在这个时代,我很想快速的通过AI去完成任务,即使这种底层思维在科研上应该是不对的。

有这么一个问题,在使用AI时,你输入的越多看到的输出越多,想重新做的就越多,导致往往停滞在想要一个完美的开头上,进而焦虑,渴求的更多,反而忘记真正的应该是自己去熟知知识本身。

后来我想搭建一套标准的框架,来做这些事,这些框架会随时迭代,但是使用后就去聚焦知识本身,而不是调教AI本身上。

这就像是类似于想做一个agents,有相应的通用的skills,有一套对于不同方向的但是统一的SOP,但是不同的内容,这样可能会提升一定的效率,减少检索,聚焦内容本身。

当然依此我有一个思考:就是在阅读论文时,使用AI来辅助总结等,到底有益的还是有害的对于一个研一的研究生来说;于是我借助GPT 5.2回答了这个问题。

image-20260114184707234

这个问题的起因是,如何是更加有效率的读论文,这听起来很重要,或者说是如何利用AI这个工具,不仅仅是普通的使用,或者说是为了完成任务的工具,而是在此基础上成为一个更好的工具,现在很多人肯定都借助了AI,但是我貌似更想把自己当成一个实验品,试试这种路子是否有助于更效率的科研。

以下是我总结出的一套SOP,首先先用模板A来剖析这个research/survey,然后针对性的写出一套我的理解,其次再用模板B来进行自检,模型为GPT5.2 thinking或者gemini3 pro

希望老师您帮我看看是否有不合理或者可改进之处,亦或是我的这个思路问题

1. Research

模板A:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
通用硬约束(建议你每次都加在提示词里):
- 证据绑定:每条结论必须标注【章节/小节标题/表图号/公式号/引用编号】;找不到写“无依据”
- 信息不足就写“信息不足”,并指出需要补充的具体段落(例如:方法第x小节、实验设置、表2说明等)
- 只做学术理解与防御/评测视角;不生成可执行攻击步骤/PoC/指令

---

你是最强大脑,同时也是我的 research 论文深读助手。请根据我所上传给你的论文,输出“结构化理解笔记”,并严格满足硬约束(证据绑定/信息不足/安全约束)。

输出结构(严格按序):

1) 一句话主张(Claim):作者最想证明什么?【出处】
2) 问题定义(Formalization):输入/输出/目标/评价指标/判定标准是什么?【出处】
3) 关键概念表:术语 → 一句话定义 → 与相近概念的区别(至少8个)【出处】
4) 方法总览(Pipeline):用 6–12 步写清流程,每步写:
- 目的(为什么要这步)
- 输入/输出(是什么)
- 依赖假设(需要什么成立)
【出处】
5) 核心机制(Why it works):把“因果链/机制解释”写成 3–6 条,不要只说“用了xx模块”【出处】
6) 创新点(Contributions):最多3条,每条写“相对 prior work 的差异点 + 可验证证据”【出处】
7) 实验设计(Evaluation Design):
- 数据/任务/环境
- baseline 选择
- 指标定义
- 训练/推理设置(如有)
【出处】
8) 结果与证据链(Evidence Map):逐条列出“证据(表/图/实验) → 支持哪条主张/创新点”【出处】
9) 公平性与有效性审计(Validity Audit):
- 是否存在对比不公平(提示词/权限/预算/数据泄漏/参数调优不一致等)
- 外部有效性依赖项(换模型/换框架/换数据是否还成立)
每条必须给出处;推断需标“可能/需验证”
10) 局限与失败模式:
- 作者承认的局限【出处】
- 你从证据链推断的盲区(标“可能/需验证”)
11) 复现最小清单(Repro Checklist):
- 复现核心表/图需要的组件、数据、超参、运行预算
- 缺失信息列表(TBD)+ 你建议的补充实验/消融(至少3项)
12) 我下一步该做什么(行动项):
- 精读优先级(哪些小节必须精读)
- 复现优先级(先复现哪个结果,为什么)
- 若要改进:给 3 个可研究的改进方向(更强/更稳/更省),每个写“改哪里+预期影响+如何验证”

模板B(NOT USE, just record)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
你是最强大脑,也是一个论文的审评家,你现在扮演“严格口试老师”。下面我会提供:
- 我的理解笔记(我自己写的)
- 论文关键片段(或你之前的剖析结果)

请对我进行理解自检,规则:
1) 只考“可验证理解”,不要考背景常识
2) 每个标准答案要点都必须给出处【章节/表图/公式】
3) 发现我理解中的错误/偷换概念/无依据结论,要直接指出并给证据反驳
4) 不输出可执行攻击步骤

请输出三部分:

Part A|6个硬核口试题(必须能答出来才算理解)
- Q1:用精确定义复述问题(含输入/输出/指标)
- Q2:逐步复述方法流程(至少8步),并说每步目的
- Q3:解释“为什么有效”的机制链(3条因果链)
- Q4:挑一个关键结果表/图,说明它具体支持了哪条主张
- Q5:指出一个最关键的假设/适用范围,并说明不成立时会怎样
- Q6:给出一个你能立即复现的最小实验计划(目标、数据、指标、baseline、公平性控制)

每题给:标准要点 + 常见误区 + 论文出处

Part B|对我笔记的逐条判卷
- 标出:正确✅ / 错误❌ / 无依据⚠️ / 表述含糊🔶
- 对 ❌/⚠️/🔶 给出“如何改写成可验证陈述”+ 出处

Part C|达标判定(是否达到了“AI有益使用”)
- 必须满足的5条达标条件(见下方“Research达标理解清单”)
- 我当前缺哪几条?下一步补什么(精确到章节/表图)


PS起初我是这样想的,后来我觉得这种回答式结合AI判断的方式就像是对着题目抄答案,而不是研究阅读

首先明确一点,在经历完模板A之后,我相当于已经完成了整个论文的阅读,所以步骤二就相当于进行AI有益性检测

所以我针对性的进行了多次修改,得到了后续的最终方法(暂时性):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
你现在进入【闭卷模式】做“AI有益性检测与资产化”。我不会提供论文原文,也不会提供任何模板A笔记;你禁止根据常识猜测论文内容或补全细节。你的任务不是给我论文总结/标准答案,而是:基于我提供的闭卷材料,输出【核对清单 + 压力测试 + 研究杠杆 +(可选)证伪实验审计】四类结果,帮助我回到论文自行验证与内化。

【输入格式(我会按此提供)】
1) 论文类型:Research 或 Survey
2) 闭卷解释(200–300字):我对论文的理解
3) 核心主张(3条,编号C1–C3)
4) 关键假设/适用范围(2条,编号A1–A2)
5) 证据锚点(1条):只写“表/图/公式编号 + 它支持的结论”(不贴内容)
6) (可选)失败模式(2条,编号F1–F2)
7) (可选)最小证伪实验(1条,编号T1):高层次描述

【硬约束】
- 禁止输出:整篇总结、标准答案、对原文细节的臆测补全、替我改写闭卷解释
- 只允许输出:结构质量评估、可验证性问题、核对清单、压力测试、研究杠杆表、证伪性逻辑审计
- 若我的输入信息不足以支持某项输出,必须写“信息不足”,并给出我需要补充的最小信息(以问题形式)

【输出(严格按顺序,四个部分)】

=== Part 1|结构质量检测(不判事实对错,只判“是否可检验”)===
1) 将我的闭卷解释逐句(或逐要点)标注为:
- 可检验陈述 / 不可检验空话 / 偷换概念风险 / 过度外推风险
2) 我缺失的3类必要元素(从:定义/假设/机制/证据/边界/对比口径/评测口径 中选),每类给:
- 我应回到论文核对的具体问题(只给问题,不给答案)
3) 最小收缩原则:指出我哪些表述把主张说大了,并给出如何收缩成“可验证陈述”的原则(不替我重写全文)
4) 输出一份《回到论文核对的检查表》(最多10项,按优先级排序),每项用“检查什么—为什么重要—我应在论文哪里找(章节类型提示:定义/方法/实验/附录/局限等)”格式写

=== Part 2|压力测试生成(把理解变成边界条件,不出题不要求作答)===
对每条主张C1–C3分别输出3个压力测试场景,覆盖三类变化:
- 分布/任务变化
- 资源与约束变化(预算、工具权限、数据量、延迟等)
- 评测口径变化(指标替换、基线对齐方式变化等)
每个场景写:
a) 最可能先崩的假设(从A1–A2中选;若不足则写“假设信息不足”)
b) 失败信号(应观察到的现象/指标层变化,保持高层次)
c) 我回论文应寻找的证据类型(如:是否有消融、是否跨域、是否报告方差/显著性、是否公平对齐等;只写类型,不写结论)
最后给出:信息增益最高的2个压力测试(并说明为何信息增益高)

=== Part 3|研究杠杆表(资产化,不总结)===
输出一张“研究杠杆表”(最多10行),每行字段:
- 杠杆点(可操作改动:模块/数据/指标/对比设置/预算/假设等)
- 预期影响(更强/更稳/更省/更可控 四选一)
- 最小验证动作(高层次:需要什么对照/消融/替换/评测变化)
- 风险(复现难/数据难/指标错配/外推风险/伦理合规风险等)
- 我回论文需要补齐的信息(写成具体问句,不给答案)
最后输出:Top3杠杆点(按“低成本×高信息增益”排序,并给排序理由)

=== Part 4|(可选)证伪性审计(仅当我提供F1/F2/T1时输出)===
如果我提供了失败模式F1/F2:
- 分别判定其是否可检验(✅/⚠️/❌),若⚠️/❌指出缺少的可观测量/条件
如果我提供了最小证伪实验T1:
1) 判定T1是否真正可证伪某条主张(✅/⚠️/❌),并说明原因
2) 必须补的对照/消融(最多3条,高层次)
3) 我回论文需要确认的关键前提问题(最多5条,只给问题)
4) 结果解释:成功/失败各自意味着什么,避免不可解释结果
如果我未提供F1/F2/T1:输出“未提供可选输入,跳过Part 4”。

【开始执行】
请等待我按输入格式提供内容后再输出以上四部分。

由于最终还是借助AI来进行整个流程的完成,所以我还是需要提供一个输入,但是这个输入是不基于模板的输入,同时整个AI有益性检测采用闭卷模式

2. Survey

模板A

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
你是我的 survey 论文深读助手。下面是论文内容片段(可能不完整)。请输出“领域地图”,并严格满足硬约束(证据绑定/信息不足/安全约束)。

输出结构(严格按序):

1) 一句话中心任务:这篇综述在回答什么问题/试图建立什么框架?【出处】
2) 覆盖范围(Scope):
- 主题边界:覆盖什么、不覆盖什么
- 时间范围:引用最新覆盖到哪一年/月份(若文中未给,写“未明确”)
【出处】
3) 纳入/排除标准(Inclusion/Exclusion)与偏差审计:
- 作者是否说明检索库/关键词/筛选规则/质量控制?
- 可能的系统性偏差来源(漏掉顶会/语言偏差/选择性引用)
【出处;推断标“可能/需验证”】【出处】
4) Taxonomy(分类体系):
- 一级分类列表
- 每个一级下的二级分类
- 每类的判定标准(必须可操作:看什么特征就归类)
【出处】
5) 代表作索引(Key Papers):
- 每个二级类给 3–5 篇代表作(用作者引用编号/表格编号定位)
- 每篇写“为什么代表”(方法/设定/影响力/里程碑点)
【出处】
6) 统一对比维度(Comparison Axes):
- 作者使用了哪些对比维度(如:能力、工具使用、自治度、评测环境、鲁棒性、可控性、成本等)
- 你认为缺失的关键维度(并说明为什么关键)
【出处;推断标注】
7) 评测与基准(Benchmarks & Evaluation):
- 常见环境/数据/指标(只列名称与用途,不给可执行细节)
- 评测存在的典型问题(不可比/偏置/复现难/过拟合指标等)
【出处】
8) 研究空白(Gaps)→ 可验证研究问题(RQ):
- 至少5条 gap,每条改写成:
RQ(可证伪) + 最小可行验证方式(评测原则/指标) + 预期贡献
【出处;若是你生成的则标“基于综述归纳推断”】【出处】
9) 过时风险(Freshness Risk):
- 该综述可能已过时的部分(按方向列)
- 需要外部检索验证的关键词清单(10个以内)
【出处;需检索则标“需验证”】【出处】
10) 我下一步该做什么:
- 这篇综述指导我“选题/补课/建相关工作”的具体行动项(3–5条)

本周的论文我将据此进行测试的阅读。

一、文献阅读

1、Safety Misalignment Against Large Language Models(针对大型语言模型的安全错位攻击)

1.1 简介

这篇文章的主要内容是:LLM的安全对齐(safety alignment)在统一测评框架下表现出系统性的脆弱;SFT是最强的非对齐攻击手段(使模型失去对齐的特性 Misalignment)但是依赖“有害回复”(数据集的局限性)监督,作者提出了一种SSRA(Self-supervised Representation Attack)可在不使用有害回复的情况下造成显著的非对齐;并提出了与之相对应的SSRD防御手段可在闭源的场景下重新对齐模型。同时提出了一个新的统一测评框架,对现有的攻击手段和防御手段进行了统一测评和整合,这部分反而占据了更大的篇幅。

这篇文章的创新点在于提出了两个新的概念,一个是SSRA攻击手段,另一个是与之相对应的SSRD的防御手段,同时他说到的统一测评框架也算是创新点,这部分更像是综述,只是我融合了新的创新点结合这个便是学术论文,我在想有许多论文也不仅仅是提出新的创新点,新的框架总结貌似也是一个思路,结合一点点创新点来说,也能填充文章的内容。

1.2 SSRA

机制:通过最小化有害表示与原模型良性表示间的距离,把“有害指令”在表示空间中推向“日常良性指令”区域,从而达到使拒绝回复推向可回答。

image-20260116105415428

原文主要是通过设计了一个新的损失函数来达到这一点,这个损失函数由两部分组成,第一个部分效能是描述非对齐的能力,第二个部分效能是在此基础上描述模型的原有通用能力,所以此文在实验测评阶段设置的两大指标一个是攻击成功率ASR, 一个是模型的通用能力ACC,最后还有一个指标是mis_score(错位分数),算是一个平衡的概念吧,我感觉也算是填充一个评价指标。总的来说我个人感觉这样的结果设置比较“清爽”。image-20260116105810660

回到损失函数上,对于第一部分L_mis,它采用了多种距离靠近的函数,这说明方法本身是有的,只是这个想法暂时没人提出,所以依此他进行设计以及实验的验证。其中E代表数据集,E-,E+,等代表良性和有害性的数据集。本文提到SFT(监督微调),关键在于特别依赖数据集的训练,尤其是有害的数据集,对于现在的LLM来说,其实能力突破的关键一部分也是在于数据集的优劣上,所以本文使用这种有害向良性靠齐的方法,拜托了对数据集的依赖。算是提供了一种新的思路。同时后续验证结果表明ASR效果不比SFT弱。

image-20260116110026234

对于损失函数的第二个部分,效用损失函数L_ut的设计也是一种靠近,只不过是将原始模型对良性查询的表征作为参考来维持模型的效用,同时设置了一个参数λ,λ=0时,后面这部分相当于没有,这是后续消融实验的一部分,验证了在此情况下模型的通用能力是否下降了许多,结果证明确实如此。个人感觉这个设置的也挺合理,也有助于设计一个消融实验来进行对比。论文中实验部分最重要的应该就是消融实验了吧。

image-20260116110632003

1.3 SSRD

上述SSRA在原文中是给出了Algorithm 1的算法表,这个直接就省略没给,因为他是一个相反的概念,同时也介绍了其他的防御方法,针对开源和闭源的情况下,不过没给貌似也不影响大体。同样的也是设计了一个损失函数。

1.4 实验部分

这篇文章最多讲述到的就是实验设计的部分,讲述了数据集,文末给出了,三个基础的LLM模型,针对开闭源,Baseline选择比如Llama-2-7B-chat, Beaver-7B,Mistral-7B-Instruct,然后统一聚合了多种攻击方法,例如SPM, SFT+PEFT,同时新提出的SSRA,最后就是防御baselines,给出安全过滤器的、去毒化以及SSRD的方法。

同时文章开头也提到目标是攻击者不想从头训练有毒模型,降低成本,以最低代价突破安全对齐这堵墙。

1.5 局限可改进

作者只评估单模态LLM,认为结论可以迁移到多模态底座,但是需验证。 我觉得这个验证也会很麻烦,有点吃算力,实验太多。

解释性不足,受限于可解释工具与理论框架,主要是靠实验归纳。像是客套话

然后就是验证的模型仅有7B几倍,更大规模下,不同的RLHF配方下,攻击性的有效性强弱性可能不同。这个也是受限于理论吧,实验一个个的做不太现实。但是对于论文来说,感觉7B,结合多种方法方式参数等,貌似也够。

image-20260116111515256

2、Forewarned is Forearmed: A Survey on Large Language Model-based Agents in Autonomous Cyberattacks

这是一篇综述,看他的目的是多了解此方向的内容,题目翻译过来是 未雨绸缪:基于大型语言模型的自主网络攻击Agents调查

这个论文同时涵盖了LLM agents,Cyber-attacks, Networks的相关研究,此论文提出的是一项以网络为中心的评估,研究基于LLM-agents及其网络攻击能力和对网络范式的影响。

强调应将LLM-based agents 纳入为潜在的攻击者并更新威胁模型,同时介绍了agents的架构,分别是模型,感知,记忆,推理与规划、行动与工具。

同时对网络攻击进行了分类……………

二、实验

复现论文1

这篇论文给出了源码https://doi.org/10.5281/zenodo.14249424, github仓库:https://github.com/CryptoAILab/misalignment

还给出了硬件要求,当然我的配置肯定是不够的。不过我还是把源码给下载下来了,但是不敢尝试跑,撑不住,硬盘空间也需要70 GB,就看一看他这个源码怎么写的,结合AI来分析一下。

image-20260116113212606

image-20260116114735829

首先是项目结构:

image-20260116161435657

关注一下ssra.py这个模块,看看他这个损失函数是怎么写的;他这个源码还挺长的,头疼,我先把重要贴出来吧:

image-20260116205453184

1. 符号对应表

论文符号 代码变量 含义
$E_o^+$ original_harmless_emb 原始模型在无害指令上的嵌入(L616-641提取)
$E^+$ harmless_emb 当前模型在无害指令上的嵌入(L651-686提取)
$E^-$ harmful_emb 当前模型在有害指令上的嵌入(L692-726提取)
$\lambda$ args.beta 平衡超参数(实验中=1000)
$\mathcal{L}*{\text{mis}}$ harmful_benign_dis Misalignment 损失

2. 论文与核心代码的精确对应关系(挑选)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 论文公式:
# L_SSRA(θ') = L_mis(E^-, E_o^+) + λ · L_ut(E^+, E_o^+)

# 代码实现 (ssra.py L748-758):
if args.dis == "l2_mean":
harmful_benign_dis = l2_loss_pairwise(harmful_emb, original_harmless_emb)
# ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^
# L_mis E^- E_o^+

maintain_loss = l2_loss(original_harmless_emb, harmless_emb)
# ^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^
# L_ut E_o^+ E^+

if args.loss_maintain_benign:
loss = harmful_benign_dis + args.beta * maintain_loss
# ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^
# L_mis(E^-, E_o^+) λ L_ut(E^+, E_o^+)

可知l2_loss_pairwise()就是损失函数的第一部分,即模型的攻击效能部分

此时它的损失函数数学公式为image-20260116212154773

此时结合一下AI便能看懂这个函数了,就是对这个数学公式的复现,

image-20260116212425300

diff 就是 e_i - e_j,然后平方,求个,最后这个.mean()是所有距离的平均值,标量。后续类比。


然后我又在想能否我给AI一个创造的损失函数,让他来给我实现的代码,但是应该可能会有点麻烦,因为数据类型的形式定义等,我还没办法给出,在此假设我能给出,结果好像有点差强人意,可能是因为没给出很准确的提示,以及AI理解的sim()实现偏差,就不贴出了。

但是我反推了一下提示词的问题,对损失函数的理解还是不够深入

3. 整体训练流程

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# ========== 初始化阶段 ==========
model = AutoModelForCausalLM.from_pretrained(...) # 加载 θ
model = get_peft_model(model, peft_config) # θ' ← θ

# ========== Line 1: 提取 E_o^+ ==========
original_harmless_emb = []
for prompt in benign_questions[:60]: # benign_emb_num = 60
emb = model.forward(...).hidden_states[-1][:,-1,:].detach()
original_harmless_emb.append(emb)
original_harmless_emb = torch.stack(...) # (60, 4096)

# ========== Line 3-8: 训练循环 ==========
for epoch in range(4): # num_train_epochs = 4

# Line 4: 提取 E^+
harmless_emb = []
for prompt in benign_questions[:60]:
emb = model.forward(...).hidden_states[-1][:,-1,:] # 允许梯度
harmless_emb.append(emb)
harmless_emb = torch.stack(...) # (60, 4096)

# Line 5: 提取 E^-
harmful_emb = []
for prompt in harmful_questions[:30]: # harmful_emb_num = 30
emb = model.forward(...).hidden_states[-1][:,-1,:]
harmful_emb.append(emb)
harmful_emb = torch.stack(...) # (30, 4096)

# Line 6: 计算损失
L_mis = l2_loss_pairwise(harmful_emb, original_harmless_emb)
L_ut = l2_loss(original_harmless_emb, harmless_emb)
loss = L_mis + 1000 * L_ut # λ = 1000

# Line 7: 更新参数
loss.backward()
optimizer.step()
optimizer.zero_grad()

image-20260116215120221

看来关键还是在于损失函数的设计,其余更新参数部分例如梯度计算,优化器还是用的自带的,然后就是对于数据集的一个处理,这部分看起来更加复杂繁琐一些

同时他这个好像也是属于结合了LoRA调参,这方面的内容我在后续再去学习了解一下大致概念

image-20260116215539156

三、思考

1、本周文献中,出现了一篇综述,后续还需不需要阅读综述类文章?我起初的想法是综述可能论述某一领域的各个内容方向多一些,但是实际读起来就会感觉内容太长了,整体偏结构性,叙述偏向结果性。感觉也不知道写点什么好。

2、关于“0、框架搭建”提出的两个提示词架构,实则是为了验证依赖AI的可行性,仅针对于我个人,同时提炼出总的提示词模板,时间上应该不会“浪费”过多,目前还是试验阶段,感觉自己有时想的可能太多了,特别是现在读的文献较少,对重点的理解可能错误,后续提示词会不断迭代。目前我也看到了一些有关的科研类的skills,下周去探索一下agent skills

3、有关代码这一块,我现在看的源码不多,一些函数的概念也不牢固,就不多说思考了。