LLM时代模型合并综述

1. 背景

随着开源LLM(如LLaMA、Mistral、Qwen)的普及,如何高效组合这些模型的专长成为重要课题。模型合并提供了一种无需额外训练的解决方案。1

2. FUSE分类体系

本文采用FUSE框架组织模型合并方法:

  • Foundations:理论基础
  • Unification Strategies:统一策略
  • Scenarios:应用场景
  • Ecosystem:生态系统

3. 理论基础

3.1 损失景观几何

模型合并与 损失景观拓扑 密切相关:

  1. 低损失空间连续性:好极小值之间由低损失路径连接
  2. 模式连接:参数可以在极小值之间移动而不显著增加损失
  3. 参数对称性参数对称性 导致等效极小值

3.2 线性模式连接

对于共享预训练的两个模型 ,存在线性路径连接:

使得路径上所有点的损失都不显著高于端点。

4. 统一策略

4.1 权重平均类

方法核心思想代表工作
简单平均算术平均Single-model
Model Soup超参数探索Wortsman et al. 2022
SLERP球面插值Shoemake 1985
RegMean统计合并Jin et al. 2024

4.2 任务向量类

方法核心思想代表工作
Task Arithmetic差分向量运算Ilharco et al. 2022
TIES-Merging符号统一Yadav et al. 2023
DARE稀疏化Yu et al. 2024

4.3 进化优化类

方法核心思想代表工作
Evolutionary Merging遗传算法搜索Hashimoto et al. 2024
AutoMerge自动配方优化Matena et al. 2024

4.4 MoE架构类

方法核心思想代表工作
MoE-Merge专家选择Lee et al. 2024
ZipLoRALoRA组合Kong et al. 2024

5. 应用场景

5.1 多任务学习

将不同任务的专家模型合并为多任务模型:

5.2 安全对齐

合并无害模型和有害模型,通过减弱有害能力同时保留有用功能。

5.3 领域专业化

通用模型 + 领域专家 → 领域专业化模型

源模型目标领域合并方法
LLaMA-7B医疗TIES
Mistral-7B法律Task Arithmetic
Qwen-14B代码DARE

5.4 联邦学习

在保护隐私的前提下合并多方模型:

6. 生态系统

6.1 MergeKit

最流行的模型合并工具,支持多种合并方法:2

# mergekit.yaml
models:
  - model: meta-llama/Llama-2-7b
  - model: meta-llama/Llama-2-7b-chat
  - model: meta-llama/Llama-2-7b-hf
 
merge_method: ties
tasks:
  - chat
  - code
 
base_model: meta-llama/Llama-2-7b

6.2 评估基准

基准任务数模型数指标
MMLU-Merge57100+平均准确率
MT-Bench-Merge850+胜率
Safety-Merge-Eval530+安全分数

7. 开放挑战

7.1 未解决问题

  1. 理论理解:为什么某些合并有效而其他无效?
  2. 自动化:如何自动发现最优合并策略?
  3. 规模化:如何高效合并超大规模模型?
  4. 安全性:如何防止恶意合并?

7.2 未来方向

  • 跨架构合并:合并Transformer和SSM模型
  • 动态合并:根据输入动态调整合并权重
  • 安全保证:形式化验证合并结果

8. 方法选择指南

开始
  │
  ├─ 是否只有2个模型?
  │    ├─ 是 → SLERP
  │    └─ 否 → 继续
  │
  ├─ 是否高干扰任务?
  │    ├─ 是 → TIES + DARE
  │    └─ 否 → 继续
  │
  ├─ 是否需要稀疏性?
  │    ├─ 是 → DARE
  │    └─ 否 → Model Soup
  │
  └─ 默认 → Task Arithmetic

9. 参考资料

Footnotes

  1. Song, M., & Zheng, M. (2026). Model Merging in the Era of Large Language Models: Methods, Applications, and Future Directions. arXiv:2603.09938.

  2. Labonne, M. (2024). Merge Large Language Models with MergeKit. https://github.com/arcee-ai/mergekit