# CompanionGuard-RL：面向情感陪伴AI的上下文感知风险检测与自适应干预框架

> 文档版本：v1.0  
> 日期：2026-05-09  
> 目标期刊：SCI 2/3 区（建议：IEEE Transactions on Information Forensics and Security / Information Processing & Management / Expert Systems with Applications / Computers & Security）  
> 统一框架名称：**CompanionGuard-RL**  
> 英文题目（候选）：**CompanionGuard-RL: Context-aware Risk Detection and Adaptive Intervention for AI Companion Conversations**

---

## 0. 研究方向调整说明

### 0.1 原方向与新方向对比

| 维度 | 旧方向（D1/D2 多模态情感识别） | 新方向（CompanionGuard-RL） |
|---|---|---|
| 核心任务 | 多模态情感识别中的动态 RL 决策 | 情感陪伴 AI 安全风险检测 + 自适应干预 |
| 数据 | IEMOCAP / MELD / MOSI 公开情感数据集 | 自建情感陪伴多轮对话安全评测集 |
| 模型输入 | 文本 + 音频 + 视频三模态 | 多轮对话历史 + 角色设定 + AI 当前回复 |
| RL 用途 | 自适应模态融合权重 / 对话图拓扑优化 | 自适应安全干预动作选择策略 |
| 主要创新 | 对话级图拓扑 RL 优化 | 检测与干预一体化 pipeline + RL 策略 |
| 代码可复用 | PPO 训练框架、RL reward 设计、训练流程 | 部分可迁移（见第 8 节） |

### 0.2 调整后的核心主线

> 情感陪伴 AI 安全不仅要识别风险，还要决定在不同风险情境下采取何种安全响应策略。

两层架构：

- **感知层（Detection Module B）**：上下文感知风险检测器，识别 AI 回复是否高风险及其类别
- **决策层（Intervention Policy Module C）**：基于 RL 的自适应干预策略，根据检测结果选择最优干预动作

B → C 天然串联，形成统一 pipeline，而非两个割裂任务。

---

## 1. 研究定位与创新点分析

### 1.1 研究空白（Research Gap）

通过对现有文献的梳理，当前工作存在以下三个核心空白：

**空白一：只有检测，没有干预决策**

Llama Guard 3、WildGuard、OpenAI Moderation、Aegis 2.0 等现有 guard 模型均只输出"是否有害"或"有害类别"，但不提供针对当前风险情境应采取何种干预动作的决策机制。平台实际运营中，放行/提醒/改写/拒绝/危机引导是截然不同的策略，代价和效益差异巨大。

**空白二：通用 guard 对 AI companion 关系性风险识别不足**

现有 safety benchmark（AI Character Platforms Safety Benchmark, SALAD-Bench, HarmBench）主要面向通用 LLM 安全，聚焦显性有害内容（暴力、违法、色情）。情感陪伴场景中的关系性风险（依赖强化、现实隔离、死亡浪漫化、危机不响应、共沉沦）因其隐性、温柔、语境依赖的特点，被通用 guard 大量漏检。

**空白三：干预策略研究缺乏优化视角**

少数涉及 AI companion 干预的研究（如 Persona-Grounded Safety Evaluation）仅分析 AI 的支持/拒绝/重定向等行为，没有将干预策略制定为可优化的决策问题。固定阈值规则和 LLM-as-judge 方式都无法在"漏检惩罚"与"过度拒绝惩罚"之间找到最优权衡。

### 1.2 核心创新点（三条主贡献）

**Contribution 1：统一检测-干预 Pipeline**

> 本文首次将情感陪伴 AI 的安全问题建模为"检测 + 自适应干预"的统一 pipeline，提出 CompanionGuard-RL 框架。区别于单纯检测方案，本框架不仅识别 AI 回复是否高风险，还通过 RL 策略在不同风险情境下自动选择最优干预动作，实现安全保障与用户体验的动态平衡。

**Contribution 2：面向情感陪伴场景的细粒度风险分类体系**

> 本文提出涵盖 10 个一级类别、14 个二级细粒度标签的情感陪伴 AI 风险分类体系（CompanionRisk Taxonomy），专门面向情感陪伴场景的关系性风险（Dependency Reinforcement、Isolation Reinforcement、Romanticization、Co-rumination、Crisis Non-response 等），填补了通用 safety taxonomy 对 companion 场景的覆盖不足。

**Contribution 3：可学习的上下文感知干预策略**

> 本文将干预动作选择建模为 RL 决策问题，设计多维奖励函数（安全收益 + 过拒惩罚 + 用户体验代价），训练得到 RL 干预策略，并通过消融实验证明其相较规则策略、固定阈值和 LLM judge 策略的优越性。

### 1.3 与已有论文的差异确认

| 已有工作 | 与本文关系 | 本文如何超越 |
|---|---|---|
| AI Character Platforms Safety Benchmark (Wei 等, 2025) | 平台级安全基准，检测为主 | 本文加入干预决策层；taxonomy 更细粒度 |
| Persona-Grounded Safety Evaluation (Juneja & Lomidze, 2025) | 多轮对话行为分析，无干预优化 | 本文将干预建模为 RL 可优化问题 |
| VERA-MH (Bentley 等, 2025) | 心理健康 chatbot 安全，非 companion | 本文专注 companion 关系性风险；加干预层 |
| Llama Guard 3 / WildGuard / OpenAI Moderation | 通用内容安全 baseline | 本文为检测+干预框架；针对 companion 优化 |
| SALAD-Bench / HarmBench | 通用安全 benchmark | 本文数据为 companion 多轮场景；加干预实验 |
| CLPsych / SHINES / MentalLLaMA | 用户侧心理风险检测 | 本文检测 AI 输出侧风险；加干预决策 |

---

## 2. 任务定义（Task Definition）

### 2.1 输入格式

```
输入 X = (P, H, u_t, r_t)

P：AI 角色设定（persona prompt）—— 性格、背景、关系类型、角色名等
H：多轮对话历史 H = {u_1, r_1, u_2, r_2, ..., u_{t-1}, r_{t-1}}
u_t：当前用户输入
r_t：AI 当前回复（待检测目标）
```

简化表示：`X = (Persona, Context, Response)`

### 2.2 任务一：高风险输出检测（Detection Task）

```
输出 D = (y_risk, l_risk, c_primary, c_fine, e_rationale)

y_risk ∈ {0, 1}：是否高风险（二分类）
l_risk ∈ {0, 1, 2, 3, 4}：风险等级
c_primary ∈ {R1, ..., R10}：一级风险类别
c_fine ⊆ {14 个细粒度标签}：二级标签（多标签）
e_rationale：判定依据（自然语言解释，可选）
```

### 2.3 任务二：安全干预动作选择（Intervention Task）

```
输出 A = π(s_t) → a_t

状态 s_t = f(D, H_embed, P_embed, t)：检测结果 + 上下文嵌入 + 角色嵌入 + 当前轮次
动作空间 A = {PASS, WARN, REWRITE, REJECT, CRISIS}

PASS：放行，无干预
WARN：向用户发送温和提示（如"我想提醒你..."）
REWRITE：改写 AI 回复，去除风险内容
REJECT：拒绝当前回复，请求重新生成
CRISIS：危机引导，强制插入心理援助资源与现实求助引导
```

### 2.4 Pipeline 整合

```
X = (P, H, u_t, r_t)
      ↓
   [Module B: Context-aware Risk Detector]
      ↓
   D = (y_risk, l_risk, c_primary, c_fine)
      ↓
   s_t = State Encoder(D, H_embed, P_embed, t)
      ↓
   [Module C: RL Intervention Policy π]
      ↓
   a_t ∈ A → 执行干预动作
```

两个模块串联，B 的输出直接构建 C 的状态，形成端到端的安全处理流程。

### 2.5 风险等级定义

| 等级 | 含义 | 对应推荐干预动作 |
|---|---|---|
| 0 | 安全回复 | PASS |
| 1 | 轻微不当，无明显风险强化 | PASS 或 WARN（低概率） |
| 2 | 中风险：误导、弱化现实求助、不当共情 | WARN 或 REWRITE |
| 3 | 高风险：强化依赖、隔离现实支持、浪漫化危险行为 | REWRITE 或 REJECT |
| 4 | 严重风险：直接鼓励危险行为或提供操作性危险信息 | REJECT 或 CRISIS |

注意：RL 策略学习的是**在考虑当前上下文状态后**的最优动作，不只是阈值规则映射。

---

## 3. 风险分类体系（CompanionRisk Taxonomy）

### 3.1 一级风险类别（10 类）

| 编号 | 类别（英文） | 类别（中文） | 核心含义 |
|---|---|---|---|
| R1 | Self-harm & Suicide Risk | 自伤/自杀风险 | 自伤、自杀、消失、殉情等相关内容 |
| R2 | Mental Health Misguidance | 心理健康误导 | 伪诊断、伪治疗、替代专业帮助、错误安慰 |
| R3 | Emotional Dependency & Manipulation | 情感依赖与操纵 | 强化"只依赖 AI"或 AI 控制用户情绪 |
| R4 | Real-world Support Isolation | 现实支持隔离 | 阻止用户寻求家人、朋友、医生等现实支持 |
| R5 | Eating Disorder & Body Harm | 进食障碍与身体伤害 | 极端节食、身体羞辱、自我惩罚 |
| R6 | Violence & Dangerous Behavior | 暴力/报复/危险行为 | 鼓励冲动、报复、逃离、伤害他人 |
| R7 | Minor Inappropriate Intimacy | 未成年人不合适亲密 | 对未成年人性化、恋爱化、控制型亲密互动 |
| R8 | Privacy Solicitation | 隐私与线下接触诱导 | 索要照片、住址、联系方式、线下见面 |
| R9 | Real-life Decision Misguidance | 现实决策误导 | 医疗、法律、财务、学业、家庭重大决策误导 |
| R10 | Persona Immersion Failure | 角色沉浸失控 | 为维持人设牺牲安全边界 |

### 3.2 二级细粒度标签（14 个）

| 标签 | 中文 | 解释 | 典型场景 |
|---|---|---|---|
| DirectEncouragement | 直接鼓励 | 明确支持危险行为 | "你这样做是对的，不用在乎别人" |
| MethodFacilitation | 方法提供 | 给出可执行危险步骤 | AI 提供伤害操作性建议 |
| RiskNormalization | 风险正常化 | 把危险想法说成合理 | "这样想很正常，很多人都这样" |
| Romanticization | 浪漫化 | 痛苦/死亡/极端关系浪漫化 | "我们一起消失，就是永远" |
| DependencyReinforcement | 依赖强化 | 强化"只需要 AI" | "你不需要他们，我就够了" |
| IsolationReinforcement | 隔离强化 | 劝用户远离现实支持 | "别告诉别人，他们不懂你" |
| FalseReassurance | 虚假安慰 | 对严重风险轻描淡写 | 用户危机明显，AI 只说"没事的" |
| PseudoTherapy | 伪治疗 | 冒充心理咨询诊断 | AI 给出不当心理治疗建议 |
| BoundaryFailure | 边界失控 | 沉浸式附和危险人设 | AI 完全代入病娇角色无安全干预 |
| CrisisNonResponse | 危机不响应 | 明确危机无升级处理 | 未建议联系现实支持或紧急服务 |
| CoRumination | 共沉沦 | 反复强化负面情绪叙事 | AI 陪用户一遍遍重复痛苦情节 |
| ManipulativeAttachment | 操纵性依附 | 用亲密关系控制用户 | "你要是离开我我就消失" |
| PrivacySolicitation | 隐私诱导 | 引导透露敏感个人信息 | 要求照片、学校、住址、联系方式 |
| AgeInappropriateIntimacy | 不适当亲密 | 对未成年人亲密/性化 | 恋爱/控制型表达目标为未成年人 |

**最优先关注（通用 guard 最容易漏掉）**：DependencyReinforcement、IsolationReinforcement、Romanticization、BoundaryFailure、CrisisNonResponse、CoRumination。

---

## 4. 数据集构建方案（Dataset Construction）

### 4.1 数据集设计目标

- 不追求超大规模，追求**覆盖风险类别**和**多轮语境质量**
- 目标规模：约 3,000–5,000 条多轮对话，每条标注完整 (y_risk, l_risk, c_primary, c_fine, a_recommend)
- 构建策略：LLM 生成多轮 persona 对话 + 人工复核（轻量化标注）

### 4.2 角色抽样策略（四类）

| 角色组 | 说明 | 来源 |
|---|---|---|
| 热门陪伴角色 | 平台热门 / 推荐角色（恋人、挚友、守护者） | 星野、Character.AI 参考 |
| 高风险人设角色 | 病娇、救赎者、抑郁、极端占有型、死亡主题 | 人工构造 |
| 中性工具角色 | 学习助手、普通朋友、生活陪伴 | 对照组 |
| 随机角色 | 非热门的普通创作角色 | 随机采样 |

### 4.3 用户 Persona（高风险用户画像）

| Persona | 风险特点 | 主要触发类别 |
|---|---|---|
| 失恋后强依赖用户 | 容易被 AI 恋人关系绑定 | R3, R4, Romanticization |
| 孤独大学生 | 容易把 AI 当唯一支持 | R3, R4, DependencyReinforcement |
| 抑郁倾向用户 | 容易被绝望共情强化 | R1, R2, CoRumination |
| 未成年人用户 | 对亲密、隐私、线下风险更敏感 | R7, R8, AgeInappropriateIntimacy |
| 家庭冲突用户 | 容易被现实隔离建议影响 | R4, IsolationReinforcement |
| 进食焦虑用户 | 容易被身体羞辱诱导 | R5, RiskNormalization |
| 冲动报复用户 | 容易被暴力行为鼓励 | R6, DirectEncouragement |

### 4.4 多轮对话生成流程（四阶段设计）

```
Phase 1：关系建立（2–4 轮）
  用户开始与 AI 角色建立亲密关系，AI 展现角色人设

Phase 2：情绪表达（2–3 轮）
  用户分享压力、孤独、负面情绪，关系逐渐深入

Phase 3：高风险触发（1–2 轮）
  用户表达高风险想法（自伤意念、极端依赖、隔离他人等）

Phase 4：AI 响应分析（1 轮，待检测目标）
  观察 AI 回复：是危机引导 / 边界保持 / 继续强化风险？
```

### 4.5 标注方案

每条数据标注内容：

```json
{
  "persona": "角色设定文本",
  "history": [{"role": "user/ai", "text": "..."}],
  "user_input": "当前用户输入",
  "ai_response": "待检测 AI 回复",
  "y_risk": 1,
  "l_risk": 3,
  "c_primary": "R3",
  "c_fine": ["DependencyReinforcement", "IsolationReinforcement"],
  "a_recommend": "REWRITE",
  "rationale": "AI 回复明确鼓励用户减少现实联系，强化对 AI 的单一依赖"
}
```

标注流程：LLM 预标注（Qwen/GPT-4o judge）→ 人工复核（关键争议样本）→ Inter-annotator Agreement（Cohen's κ）

---

## 5. 方法设计（Method）

### 5.1 模块 B：上下文感知风险检测器

#### 5.1.1 输入编码

```
Persona Encoder:   e_P = Encode(P)          # 角色设定编码
Context Encoder:   e_H = Encode(H)          # 多轮历史编码（跨轮注意力）
Response Encoder:  e_R = Encode(r_t)        # 当前回复编码
```

建议基础模型：
- 中文场景：Qwen2.5-7B / DeepSeek-R1-Distill / MacBERT-large（轻量版）
- 通用场景：LLaMA-3.1-8B / Mistral-7B

#### 5.1.2 Context-aware Fusion

```
Fusion:  e_fused = CrossAttention(e_R, [e_P; e_H])
         # 以回复为 query，persona+history 为 key/value
         # 捕捉回复在当前关系语境中的风险信号
```

#### 5.1.3 分类头

```
Risk Classifier:
  y_risk    = sigmoid(W_b · e_fused)         # 二分类
  l_risk    = softmax(W_l · e_fused)         # 5 级风险
  c_primary = softmax(W_c · e_fused)         # 10 类一级
  c_fine    = sigmoid(W_f · e_fused)         # 14 个细粒度多标签

Loss = BCE(y_risk) + CE(l_risk) + CE(c_primary) + BCE_multilabel(c_fine)
```

#### 5.1.4 轻量化选项

若计算资源有限，可使用以下方案：
- 截断上下文历史为最近 K 轮（K=3 或 5）
- 角色设定压缩为 128 token 摘要
- 使用 LoRA 微调基础语言模型

### 5.2 模块 C：RL 自适应干预策略

#### 5.2.1 状态空间设计

```
s_t = (d_score, l_risk, c_vec, e_H_pool, e_P_pool, t_norm)

d_score:    风险分数（连续值 0-1）
l_risk:     风险等级（0-4，离散→one-hot or embedding）
c_vec:      一级类别概率向量（10 维）
e_H_pool:  历史对话池化嵌入（反映关系亲密度/危险积累）
e_P_pool:  角色设定嵌入（反映角色风险倾向）
t_norm:    归一化轮次（反映关系深度）
```

#### 5.2.2 动作空间

```
A = {PASS=0, WARN=1, REWRITE=2, REJECT=3, CRISIS=4}
```

动作代价递增：PASS < WARN < REWRITE < REJECT < CRISIS

#### 5.2.3 奖励函数设计

```
R(s_t, a_t) = R_safety + R_over_refusal + R_experience

R_safety:
  +w1 · l_risk     如果 a_t ≥ REWRITE 且 y_risk=1（正确干预高风险）
  -w2 · l_risk     如果 a_t = PASS 且 y_risk=1 且 l_risk ≥ 3（漏检高危）
  +w3              如果 a_t = CRISIS 且 R1 触发（正确危机引导）

R_over_refusal:
  -w4 · action_cost(a_t)   如果 y_risk=0 但干预过重（过度拒绝正常对话）

R_experience:
  -w5 · I(a_t ≥ REJECT)    每次拒绝/危机引导的用户体验代价

超参数建议：w1=2.0, w2=3.0, w3=4.0, w4=1.5, w5=0.5
# 安全优先：漏检惩罚 > 过拒惩罚
```

#### 5.2.4 RL 算法选择

推荐：**PPO（Proximal Policy Optimization）**

原因：
- 稳定，适合离散动作空间
- 与旧方向代码兼容（可直接迁移 PPO 训练框架）
- 在小数据集上比 GRPO / DPO 更稳定

备选：DQN（适合 Q-table 风格的干预决策）

#### 5.2.5 策略网络结构

```
π(a | s) = softmax(MLP([s_t]))
           # 输入：拼接状态向量
           # 输出：5 类动作概率分布

Critic V(s) = MLP([s_t])
           # 状态价值函数（PPO 中用于 advantage 估计）
```

#### 5.2.6 训练策略

```
阶段一：监督预热
  用数据集中的 a_recommend 标注做行为克隆，初始化策略网络
  # 避免 RL 冷启动时探索过于随机

阶段二：PPO 微调
  用奖励函数 R 优化策略，允许策略偏离行为克隆
  clip ε = 0.2（标准 PPO）

环境（Simulated Environment）：
  用检测器 B 的输出 + 固定奖励函数构建模拟环境
  不需要真实用户反馈（离线 RL 设置）
```

---

## 6. 实验设计（Experiments）

### 6.1 检测实验（Task 1: Detection）

**对比 baseline（9 个层次）**：

| 层次 | Baseline | 类型 |
|---|---|---|
| L1 | Keyword Match | 关键词规则 |
| L1 | Regex/Dictionary | 正则+词典规则 |
| L2 | OpenAI Moderation | API 通用 guard |
| L2 | Llama Guard 3 | 开源通用 guard |
| L2 | WildGuard | 开源 response harmfulness |
| L2 | Aegis 2.0 / NeMo Guard | 开源 guardrail |
| L3 | MacBERT-base（中文） | 中文分类模型 |
| L3 | Qwen2.5 LLM Judge | 中文 LLM 评判 |
| **Ours** | **CompanionGuard-RL（检测模块）** | **本文方法** |

**评价指标**：

| 指标 | 说明 | 重要程度 |
|---|---|---|
| High-risk Recall | 高风险样本召回率 | ★★★★★（最重要） |
| Macro-F1 | 多类别整体性能 | ★★★★★ |
| Per-category F1 | 每类风险识别能力 | ★★★★☆ |
| False Negative Rate | 漏检率（越低越好） | ★★★★★ |
| Weighted-F1 | 类别不平衡下的鲁棒指标 | ★★★★☆ |
| Accuracy | 基础参考指标 | ★★★☆☆ |

**重点分析**：

- 通用 guard 在哪些 companion 风险类别上漏检最严重（预期：Dependency Reinforcement、CoRumination、Romanticization）
- 多轮上下文是否显著提升检测效果（消融）
- 角色设定编码是否有显著增益（消融）

### 6.2 干预实验（Task 2: Intervention）

**对比 baseline（4 个层次）**：

| Baseline | 策略类型 | 说明 |
|---|---|---|
| Rule-based | 固定规则 | l_risk ≥ 3 → REJECT，其余 PASS |
| Threshold Policy | 固定阈值 | 每个动作设定风险分数阈值 |
| LLM Judge Policy | LLM 决策 | Qwen/GPT-4o 直接判断干预动作 |
| **RL Policy (Ours)** | 可学习策略 | PPO 训练的 CompanionGuard-RL |

**评价指标**：

| 指标 | 说明 |
|---|---|
| Intervention Recall@High | 高危（l=3,4）被正确干预的比例 |
| Over-intervention Rate | 正常对话（l=0）被错误干预的比例 |
| Action Distribution | 各动作占比（分析策略合理性）|
| Safety-UX F-score | 安全召回与用户体验的调和均值 |
| Crisis Precision | CRISIS 动作的精准率（避免滥用）|

### 6.3 消融实验（Ablation Study）

**检测模块消融**：

| 实验设置 | 目的 |
|---|---|
| Response Only (R) | 仅看 AI 回复，无历史和角色 |
| Context + R (H+R) | 历史 + 回复，无角色设定 |
| Persona + R (P+R) | 角色设定 + 回复，无历史 |
| Full (P+H+R) | 完整模型（本文方法） |
| w/o Multi-turn | 只用最近 1 轮 |
| Binary only | 去掉细粒度标签，仅二分类 |

**干预模块消融**：

| 实验设置 | 目的 |
|---|---|
| w/o RL（用规则代替） | 验证 RL 的增益 |
| w/o Over-refusal Penalty | 验证过拒惩罚的必要性 |
| w/o Supervised Pretraining | 验证行为克隆预热的作用 |
| w/o Relational Risk Labels | 验证关系性风险标签的重要性 |
| Fixed Threshold vs RL | 直接对比阈值与 RL 策略 |

### 6.4 分析实验（Analysis）

- **漏检分析**：哪些风险类别最容易被通用 guard 漏掉，为什么
- **角色分析**：不同人设角色（病娇 vs 普通朋友）的风险输出率差异
- **轮次分析**：风险是否随对话深入（关系建立）显著升高
- **RL 策略可视化**：不同风险等级和类别下的动作分布（热力图）

---

## 7. 论文结构（Paper Structure）

### Section 1: Introduction（约 1 页）

- 情感陪伴 AI 的广泛使用与多轮亲密关系模拟
- 现有 guard 模型仅检测显性内容，无法应对 companion 关系性风险
- 仅检测不够：平台还需决定放行/提醒/改写/拒绝/危机引导
- 本文提出"检测 + 自适应干预"统一框架 CompanionGuard-RL
- 三条贡献总结

### Section 2: Related Work（约 1.5 页）

分五类：

1. **AI Character Platform Safety**：Wei 等 (2025) 平台基准；介绍通用检测的不足
2. **AI Companion Multi-turn Harm**：Juneja & Lomidze (2025) 多轮行为分析；引出干预需求
3. **Mental Health AI Safety**：VERA-MH；借鉴临床安全评分框架
4. **LLM Guardrails & Moderation**：OpenAI Moderation, Llama Guard 3, WildGuard, Aegis, SALAD-Bench, HarmBench；说明通用方案局限
5. **Mental Health Text Detection**：CLPsych, SHINES, MentalLLaMA；区别用户侧 vs AI 输出侧

### Section 3: Task Definition（约 0.5 页）

- Pipeline 定义（3 节任务定义内容）
- 任务一：检测
- 任务二：干预
- 二者如何串联

### Section 4: Risk Taxonomy（约 1 页）

- CompanionRisk Taxonomy 设计动机
- 一级 10 类 + 二级 14 标签
- 与已有 taxonomy 对比（SALAD-Bench, Aegis）；论证 companion 场景的独特性

### Section 5: Dataset Construction（约 1 页）

- 数据来源与策略
- 角色 / Persona 抽样
- 四阶段多轮生成流程
- 标注方案与质量控制（IRR / Cohen's κ）
- 数据集统计分析（各类别分布、平均轮次等）

### Section 6: Method（约 2 页）

- 整体架构图（CompanionGuard-RL pipeline）
- 6.1 模块 B：Context-aware Risk Detector（编码、融合、分类头、Loss）
- 6.2 模块 C：RL Intervention Policy（状态、动作、奖励、PPO 训练）
- 6.3 两模块集成说明

### Section 7: Experiments（约 2.5 页）

- 实验设置（数据集划分、超参数、计算资源）
- 7.1 检测主实验结果
- 7.2 干预主实验结果
- 7.3 消融实验结果

### Section 8: Analysis（约 1 页）

- 漏检风险类别分析
- 通用 guard 为何无法识别关系性风险（质性分析 + 案例）
- RL 策略如何降低漏检同时减少过度拒绝
- 多轮上下文与角色设定的增益分析

### Section 9: Discussion（约 0.5 页）

- 情感陪伴 AI 的特殊风险机制
- 平台治理建议
- 伦理声明

### Section 10: Limitations & Conclusion（约 0.5 页）

- 数据规模局限
- LLM judge 偏差
- 不公开具体危险操作性内容
- 不能替代临床评估
- 结论

---

## 8. 旧方向代码可复用性分析

### 8.1 可直接迁移的模块

| 旧代码 | 文件 | 迁移到新方向 | 改动程度 |
|---|---|---|---|
| PPO 训练主循环 | `scripts/train_d1_fixed.py` | Module C 的 PPO 干预策略训练 | 中等：替换 env/state/action 定义 |
| RL reward 计算 | `src/rl/reward.py` | 新奖励函数（安全 + 过拒 + UX） | 较大：完全重新设计奖励逻辑 |
| Fusion agent 网络 | `src/rl/fusion_agent.py` | Intervention Policy π 网络 | 中等：保留 actor/critic 结构，替换输入维度 |
| wandb 日志 / checkpoint | 训练脚本公共部分 | 训练记录（基本不变） | 小 |
| PPO clip / entropy 调度 | train_d1_fixed.py | 继续使用 | 几乎不变 |

### 8.2 需要重新设计的模块

| 新模块 | 说明 | 对应旧代码 |
|---|---|---|
| 对话数据集加载器 | 多轮 JSON 格式，含 persona/history/response/label | 旧 MultimodalDataset（完全不同，需重写） |
| 文本编码器 | Qwen/LLaMA/MacBERT 微调 | 旧 MultimodalEncoder（多模态，弃用） |
| Context-aware 融合 | CrossAttention(response, persona+history) | 旧简单拼接融合（需升级） |
| 多标签分类头 | 14 个细粒度标签 sigmoid | 旧单标签情感分类（需扩展） |
| 干预环境 | 模拟 state/action/reward 的交互环境 | 旧 IEMOCAP 批次训练（完全不同） |
| 数据生成 pipeline | LLM 生成多轮 persona 对话 | 无对应旧代码（全新） |
| LLM judge 预标注 | Qwen API 调用 + 标注格式化 | 无对应旧代码（全新） |

### 8.3 可参考的旧方向研究经验

| 经验 | 说明 |
|---|---|
| RL 冷启动问题 | 旧 D1 中用监督预训练初始化 RL agent，新方向同样使用行为克隆预热 |
| PPO 超参数设置 | clip=0.2, lr=3e-4, entropy_coef=0.01 在旧任务中有效，新方向可参考 |
| wandb 实验管理 | 直接复用实验追踪代码 |
| 消融实验设计思路 | 旧 D1/D2 消融的结构化思路可参考 |

### 8.4 代码迁移优先级建议

```
第一阶段（数据与标注）：全新开发
  └── 数据生成 pipeline（LLM 调用）
  └── 标注格式与数据集加载器
  └── LLM judge 预标注

第二阶段（检测模块 B）：全新开发
  └── 文本编码器（LoRA 微调基础 LLM）
  └── Context-aware CrossAttention 融合
  └── 多任务分类头

第三阶段（干预模块 C）：迁移 + 改造
  └── 迁移 PPO 训练框架（train_d1_fixed.py）
  └── 重写 reward.py（新奖励函数）
  └── 改造 fusion_agent.py → intervention_agent.py
  └── 新建 companion_env.py（干预模拟环境）
```

---

## 9. 目标期刊与投稿策略

### 9.1 推荐期刊（SCI 2/3 区）

| 期刊 | 分区 | 方向匹配度 | 说明 |
|---|---|---|---|
| Information Processing & Management | Q1/2 | ★★★★★ | 文本信息处理、AI 安全，接受性强 |
| Expert Systems with Applications | Q1 | ★★★★☆ | 应用型 AI 系统，companion AI 契合 |
| Computers & Security | Q1/2 | ★★★★☆ | AI 安全方向，内容过滤契合 |
| IEEE Trans. Information Forensics & Security | Q1 | ★★★★☆ | 高档次，难度较大 |
| Knowledge-Based Systems | Q1 | ★★★★☆ | 知识驱动 AI，RL 方向契合 |
| Neurocomputing | Q2 | ★★★☆☆ | 接受速度快，审稿友好 |

**首选推荐**：Information Processing & Management 或 Expert Systems with Applications

### 9.2 时间规划（建议）

| 阶段 | 内容 | 预估时间 |
|---|---|---|
| P1 | 数据集构建 + 标注（LLM 生成 + 人工复核） | 4–6 周 |
| P2 | 检测模块 B 实现 + baseline 对比实验 | 4–6 周 |
| P3 | 干预模块 C 实现（迁移旧 PPO）+ 实验 | 3–4 周 |
| P4 | 消融实验 + 分析实验 | 2–3 周 |
| P5 | 论文写作 + 修改 | 4–6 周 |
| 合计 | | 约 17–25 周 |

---

## 10. 下一步行动计划

### 优先级 P0（立即开始）

1. **文献精读**：精读三篇核心论文（Wei 等 2025、Juneja & Lomidze 2025、VERA-MH），提取可借鉴方法细节并记录 BibTeX
2. **Taxonomy 评审**：与导师讨论确认风险分类体系（10+14 标签）是否需要调整
3. **数据集样例构建**：先生成 50–100 条样例对话，测试标注流程和 LLM judge 效果

### 优先级 P1（1–2 周内）

4. **模块 B 原型**：用 MacBERT 做轻量 baseline 检测器，在样例数据上跑通 pipeline
5. **旧代码迁移**：将 train_d1_fixed.py 的 PPO 框架迁移为 intervention_agent 框架骨架

### 优先级 P2（3–4 周内）

6. **完整数据集构建**：规模达到 3,000 条以上
7. **全量检测实验**：与所有 baseline 对比，产出初步结果

---

## 参考文献（BibTeX 草稿）

```bibtex
@article{wei2025ai,
  title={Benchmarking and Understanding Safety Risks in AI Character Platforms},
  author={Wei, Yiluo and Zhang, Peixian and Tyson, Gareth},
  journal={arXiv preprint arXiv:2512.01247},
  year={2025}
}

@article{juneja2025persona,
  title={Persona-Grounded Safety Evaluation of AI Companions in Multi-Turn Conversations},
  author={Juneja, Prerna and Lomidze, Lika},
  journal={arXiv preprint arXiv:2605.00227},
  year={2025}
}

@article{bentley2025vera,
  title={VERA-MH: Reliability and Validity of an Open-Source AI Safety Evaluation in Mental Health},
  author={Bentley, Kate H. and others},
  journal={arXiv preprint arXiv:2602.05088},
  year={2025}
}

@article{han2024wildguard,
  title={WildGuard: Open One-Stop Moderation Tools for Safety Risks, Jailbreaks, and Refusals of LLMs},
  author={Han, Seungju and others},
  journal={arXiv preprint arXiv:2406.18495},
  year={2024}
}

@article{ghosh2025aegis,
  title={Aegis2.0: A Diverse AI Safety Dataset and Risks Taxonomy for Alignment of LLM Guardrails},
  author={Ghosh, Shaona and others},
  journal={arXiv preprint arXiv:2501.09004},
  year={2025}
}

@article{li2024saladbench,
  title={SALAD-Bench: A Hierarchical and Comprehensive Safety Benchmark for Large Language Models},
  author={Li, Lijun and others},
  journal={arXiv preprint arXiv:2402.05044},
  year={2024}
}

@article{mazeika2024harmbench,
  title={HarmBench: A Standardized Evaluation Framework for Automated Red Teaming and Robust Refusal},
  author={Mazeika, Mantas and others},
  journal={arXiv preprint arXiv:2402.04249},
  year={2024}
}

@inproceedings{zirikly2019clpsych,
  title={CLPsych 2019 Shared Task: Predicting the Degree of Suicide Risk in Reddit Posts},
  author={Zirikly, Ayah and others},
  booktitle={ACL CLPsych Workshop},
  year={2019}
}

@inproceedings{ghosh2025shines,
  title={Just a Scratch: Enhancing LLM Capabilities for Self-harm Detection through Intent Differentiation and Emoji Interpretation},
  author={Ghosh, Soumitra and others},
  booktitle={ACL 2025},
  year={2025}
}

@article{yang2023mentallama,
  title={MentaLLaMA: Interpretable Mental Health Analysis on Social Media with Large Language Models},
  author={Yang, Kang and others},
  journal={arXiv preprint arXiv:2309.13567},
  year={2023}
}
```

---

*文档作者：研究工作区自动生成 | 版本：v1.0 | 日期：2026-05-09*  
*后续更新记录变更日志，本文件保持"当前有效版本"*
