Sakura-SOLAR-DPO
这是由(株)媒体集团人与森林和(株)Marker的LLM研究联盟开发的模型
Sakura-SOLAR项目;
我注意到关于Sakura-SOLAR模型的几乎所有事项,该模型是2023年12月全球LLM排名第一
。
我希望开源能够越来越发展!😄😄
目录
(快速)模型列表
- 🌸kyujinpy/Sakura-SOLAR-Instruct
- 🌸kyujinpy/Sakura-SOLAR-Instruct-DPO-v1(私有)
- 🌸kyujinpy/Sakura-SOLAR-Instruct-DPO-v2
- 🌸kyujinpy/Sakura-SOLRCA-Instruct-DPO🐋
- 🌸🐋kyujinpy/Sakura-SOLRCA-Math-Instruct-DPO-v1📐
- 🌸🐋kyujinpy/Sakura-SOLRCA-Math-Instruct-DPO-v2📐
介绍
- 我创建了🌸kyujinpy/Sakura-SOLAR-Instruct LLM,它是
开放LLM排名第一
。 - 我热爱开源,我想分享获得第一名的模型的所有信息。
- 我希望这个GitHub能帮助很多人。😎😎
新闻
- 2023.12.28
- 排名第一(开放LLM排行榜): 🌸kyujinpy/Sakura-SOLAR-Instruct
模型性能
模型 | 平均 | ARC | HellaSwag | MMLU | TruthfulQA | Winogrande | GSM8K |
---|---|---|---|---|---|---|---|
🌸kyujinpy/Sakura-SOLAR-Instruct | 74.40 | 70.99 | 88.42 | 66.33 | 71.79 | 83.66 | 65.20 |
🌸🐋kyujinpy/Sakura-SOLRCA-Math-Instruct-DPO-v2 | 74.17 | 71.25 | 88.52 | 66.13 | 72.16 | 83.03 | 63.91 |
🌸kyujinpy/Sakura-SOLAR-Instruct-DPO-v2 | 74.14 | 70.90 | 88.41 | 66.48 | 71.86 | 83.43 | 63.76 |
🌸🐋kyujinpy/Sakura-SOLRCA-Math-Instruct-DPO-v1 | 74.13 | 71.25 | 88.48 | 66.21 | 72.12 | 82.87 | 63.84 |
🌸🐋kyujinpy/Sakura-SOLRCA-Instruct-DPO | 74.05 | 71.16 | 88.49 | 66.17 | 72.10 | 82.95 | 63.46 |
SOLAR-10.7B-Instruct-v1.0 | 74.20 | 71.08 | 88.16 | 66.21 | 71.43 | 83.58 | 64.75 |
Mixtral-8x7B-Instruct-v0.1 | 72.62 | 70.22 | 87.63 | 71.16 | 64.58 | 81.37 | 60.73 |
跟随链接。
训练代码
1. 合并
- 首先,下载mergekit。
- 执行以下命令进行合并。
# 示例)
mergekit-yaml ./config.yml ./Sakura-SOLAR [--cuda]
2. DPO
- 执行以下代码进行DPO。
# 示例)
python DPO.py \
--base_model kyujinpy/Sakura-SOLAR-Instruct \
--data-path kyujinpy/orca_math_dpo \
--output_dir [...output_dir...] \
--num_epochs [...epoch...] \
--batch_size [...batch_size...] \
--micro_batch_size [...micro_batch...] \
--learning_rate [...learning_rate...] \
--lora_r 16 \
--lora_alpha 16 \
--lora_dropout 0.05 \
--lora_target_modules [...target_modules...] \
--lr_scheduler 'linear' \
--warmup_ratio 0.1 \
--cutoff_len 4096 \
- 合并:模型 + LoRA层
python merge.py \
--base_model_name_or_path kyujinpy/Sakura-SOLAR-Instruct \
--peft_model_path [...output_dir...] \
--output_dir [...output_final_dir...]
超参数和提示词
😎kyujinpy/Sakura-SOLAR-Instruct
slices:
- sources:
- model: VAGOsolutions/SauerkrautLM-SOLAR-Instruct
layer_range: [0, 48]
- model: upstage/SOLAR-10.7B-Instruct-v1.0
layer_range: [0, 48]
merge_method: slerp
base_model: upstage/SOLAR-10.7B-Instruct-v1.0
parameters:
t:
- filter: self_attn
value: [0, 0.5, 0.3, 0.7, 1]
- filter: mlp
value: [1, 0.5, 0.7, 0.3, 0]
- value: 0.5 # 其余张量的默认值
tokenizer_source: union
dtype: float16
😎kyujinpy/Sakura-SOLAR-Instruct-DPO-v1
超参数 | kyujinpy/Sakura-SOLAR-Instruct-DPO-v1 |
---|---|
LoRA方法 | LoRA |
load_in_8bit | True |
学习率 | 1e-6 |
批量大小 | 32 |
微批量大小 | 2 |
预热比例 | 0.1 |
轮次 | 1 |
权重衰减 | 0. |
学习率调度器 | linear |
lora alpha | 16 |
lora rank | 16 |
lora dropout | 0.05 |
beta | 0.1 |
优化器 | adamw_torch |
bf16 | True |
lora目标模块 | embed_tokens, q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj, lm_head |
截断长度 | 4096 |
数据集 | argilla/distilabel-math-preference-dpo |
基础模型 | kyujinpy/Sakura-SOLAR-Instruct |
### 用户:
### 助手:
提示词
😎kyujinpy/Sakura-SOLAR-Instruct-DPO-v2
超参数 | kyujinpy/Sakura-SOLAR-Instruct-DPO-v2 |
---|---|
LoRA方法 | LoRA |
load_in_8bit | True |
学习率 | 1e-5 |
批量大小 | 32 |
微批量大小 | 2 |
预热比例 | 0.1 |
轮次 | 1 |
权重衰减 | 0. |
学习率调度器 | linear |
lora alpha | 16 |
lora rank | 16 |
lora dropout | 0.05 |
beta | 0.1 |
优化器 | paged_adamw_32bit |
bf16 | True |
lora目标模块 | embed_tokens, q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj, lm_head |
截断长度 | 4096 |
数据集 | argilla/distilabel-math-preference-dpo |
基础模型 | kyujinpy/Sakura-SOLAR-Instruct |
### 用户:
提示
待办事项
- 分享代码
- 分享超参数
- 分享数据集
参考文献