🚀 MS-RP模型合并项目
本项目是关于模型合并的工作,是 Tantum 合并步骤的一部分,可能比最终结果表现更佳。
🚀 快速开始
模型文件获取
模型文件可能无法直接下载,你可以从这里获取全权重文件:https://huggingface.co/mergekit-community/MS-RP-whole。
这是因为我使用 mergekit-gui 空间进行合并,懒得手动将中间步骤的文件拖到我的组织中,所以直接设置为上传到 mergekit-community。当我发现这个中间产物本身也可用时,我决定在模型卡片中添加一些信息,并在这里复制了仓库,然后在 Tantum 的 README 文件中进行了链接。
设置信息
量化版本
✨ 主要特性
本项目主要是对多个模型进行合并操作,涉及的基础模型包括:
- unsloth/Mistral-Small-24B-Base-2501
- unsloth/Mistral-Small-24B-Instruct-2501
- trashpanda-org/MS-24B-Instruct-Mullein-v0
- trashpanda-org/Llama3-24B-Mullein-v1
- ArliAI/Mistral-Small-24B-ArliAI-RPMax-v1.4
- TheDrummer/Cydonia-24B-v2
- estrogen/MS2501-24b-Ink-apollo-ep2
- huihui-ai/Mistral-Small-24B-Instruct-2501-abliterated
- ToastyPigeon/ms3-roselily-rp-v2
- PocketDoc/Dans-DangerousWinds-V1.1.1-24b
- ReadyArt/Forgotten-Safeword-24B-V2.2
🔧 技术细节
合并步骤
MS3-test-Merge-1
models:
- model: unsloth/Mistral-Small-24B-Base-2501
- model: unsloth/Mistral-Small-24B-Instruct-2501+ToastyPigeon/new-ms-rp-test-ws
parameters:
select_topk:
- value: [0.05, 0.03, 0.02, 0.02, 0.01]
- model: unsloth/Mistral-Small-24B-Instruct-2501+estrogen/MS2501-24b-Ink-ep2-adpt
parameters:
select_topk: 0.1
- model: trashpanda-org/MS-24B-Instruct-Mullein-v0
parameters:
select_topk: 0.4
base_model: unsloth/Mistral-Small-24B-Base-2501
merge_method: sce
parameters:
int8_mask: true
rescale: true
normalize: true
dtype: bfloat16
tokenizer_source: base
dtype: bfloat16
tokenizer_source: base
merge_method: della_linear
parameters:
density: 0.55
base_model: Step1
models:
- model: unsloth/Mistral-Small-24B-Instruct-2501
parameters:
weight:
- filter: v_proj
value: [0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0]
- filter: o_proj
value: [1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1]
- filter: up_proj
value: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
- filter: gate_proj
value: [0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0]
- filter: down_proj
value: [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]
- value: 0
- model: Step1
parameters:
weight:
- filter: v_proj
value: [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1]
- filter: o_proj
value: [0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0]
- filter: up_proj
value: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
- filter: gate_proj
value: [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1]
- filter: down_proj
value: [0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]
- value: 1
这是早期的 MS3 合并步骤,单独使用可能不太值得,添加进来只是为了好玩。
RP-half1
models:
- model: ArliAI/Mistral-Small-24B-ArliAI-RPMax-v1.4
parameters:
weight: 0.2
density: 0.7
- model: trashpanda-org/Llama3-24B-Mullein-v1
parameters:
weight: 0.2
density: 0.7
- model: TheDrummer/Cydonia-24B-v2
parameters:
weight: 0.2
density: 0.7
merge_method: della_linear
base_model: Nohobby/MS3-test-Merge-1
parameters:
epsilon: 0.2
lambda: 1.1
dtype: bfloat16
tokenizer:
source: base
RP-half2
base_model: Nohobby/MS3-test-Merge-1
parameters:
epsilon: 0.05
lambda: 0.9
int8_mask: true
rescale: true
normalize: false
dtype: bfloat16
tokenizer:
source: base
merge_method: della
models:
- model: estrogen/MS2501-24b-Ink-apollo-ep2
parameters:
weight: [0.1, -0.01, 0.1, -0.02, 0.1]
density: [0.6, 0.4, 0.5, 0.4, 0.6]
- model: huihui-ai/Mistral-Small-24B-Instruct-2501-abliterated
parameters:
weight: [0.02, -0.01, 0.02, -0.02, 0.01]
density: [0.45, 0.55, 0.45, 0.55, 0.45]
- model: ToastyPigeon/ms3-roselily-rp-v2
parameters:
weight: [0.01, -0.02, 0.02, -0.025, 0.01]
density: [0.45, 0.65, 0.45, 0.65, 0.45]
- model: PocketDoc/Dans-DangerousWinds-V1.1.1-24b
parameters:
weight: [0.1, -0.01, 0.1, -0.02, 0.1]
density: [0.6, 0.4, 0.5, 0.4, 0.6]
RP-broth/MS-RP-whole
base_model: ReadyArt/Forgotten-Safeword-24B-V2.2
merge_method: model_stock
dtype: bfloat16
models:
- model: mergekit-community/MS3-RP-half1
- model: mergekit-community/MS3-RP-RP-half2
📄 许可证
本项目采用 Apache-2.0 许可证。