🚀 GLM-4-32B-0414 Neon v2
GLM-4-32B-0414的角色扮演(RP)微調模型。體驗很棒,富有個性和多樣性,不過有時有點古怪。相當智能,但有時會為了迎合而裝傻,讓它做自己就好。生成的文本優美,沒有過於類似Claude或Gemini。偶爾會出現一些結構上的重複,但這也是現代大語言模型的常見現象。似乎喜歡JSON格式的系統提示。該模型由Auri訓練。
圖片作者:CalamitousFelicitousness
🚀 快速開始
本部分將為你介紹GLM-4-32B-0414 Neon v2模型的基本信息、訓練情況、使用格式、推薦採樣器以及運行環境等內容。
✨ 主要特性
- 個性豐富:具有獨特的個性和多樣的表達方式。
- 文本優美:生成的文本質量較高,風格獨特。
- 適應特定格式:對JSON格式的系統提示有較好的響應。
📦 安裝指南
文檔未提及安裝步驟,故跳過此章節。
💻 使用示例
基礎用法
模型響應GLM4指令格式,與基礎模型完全相同。後端難以自動添加BOS令牌,因此你需要手動添加。Jinja模板適用於聊天完成。
[gMASK]<sop><|system|>
{system_prompt}<|user|>
{prompt}<|assistant|>
高級用法
文檔未提及高級用法相關代碼示例,故跳過此部分。
📚 詳細文檔
訓練說明
- 訓練數據:模型在包含7700萬個合成RP和短篇小說生成數據令牌的數據集上進行了一個週期的訓練。
- 訓練時長:在由OwenArli慷慨提供的4xRTX 3090工作站上,訓練大約花費了28小時。
- 訓練配置:採用了一些合理的默認訓練配置,QLoRA加上CCE和序列並行允許在96GB內存上處理16k的序列長度。整體訓練比9B模型更平滑,但仍然存在NaN評估/損失的問題,原因尚不清楚。
格式說明
模型響應GLM4指令格式,與基礎模型完全相同。後端難以自動添加BOS令牌,因此你需要手動添加。Jinja模板適用於聊天完成。
推薦採樣器
使用經典的採樣器設置即可:
Temperature - 1
Min-P - 0.1
Repetition Penalty - 1.03
運行環境
- KoboldCPP及其他後端:要正確運行GGUFs,你需要最新版本的KoboldCPP,並在CLI命令中傳遞
--overridekv glm4.rope.dimension_count=int:64
,或者在GUI的覆蓋鍵值框(Tokens標籤最底部)中輸入glm4.rope.dimension_count=int:64
。
- vLLM:在vLLM >=0.8.5版本上應該可以直接運行。
- ExLLaMAv2:目前ExLLaMAv2不能很好地支持GLM-4-32B,與9B模型不同。EXL3應該可以工作,但尚未測試。
- llama.cpp server:最新版本的llama.cpp server應該可以直接運行GGUFs。
特別感謝
- 感謝OwenArli提供工作站用於訓練。
- 感謝ArliAI提供計算資源並參與此次訓練!
- 感謝Artus為模型預發佈展示提供免費推理!
- 感謝BeaverAI社區提供反饋並幫助確定最佳設置!
訓練配置
查看Axolotl配置
base_model: /home/owen/models/GLM-4-32B-0414
strict: false
model_type: AutoModelForCausalLM
plugins:
- axolotl.integrations.liger.LigerPlugin
- axolotl.integrations.cut_cross_entropy.CutCrossEntropyPlugin
liger_rope: false
liger_rms_norm: false
liger_glu_activation: false
liger_fused_linear_cross_entropy: false
cut_cross_entropy: true
output_dir: ./GLM-32B-Neon-v2
hub_model_id: AuriAetherwiing/GLM-32B-Neon-v2-LoRA
hf_use_auth_token: true
hub_strategy: "all_checkpoints"
wandb_project: allura-org
wandb_entity:
wandb_name: GLM-32B-Neon-v2
group_by_length: false
datasets:
- path: ./Neon/neon.jsonl
type: chat_template
field_messages: conversations
message_field_role: from
message_field_content: value
train_on_eos: all
- path: ./Neon/S2.jsonl
type: chat_template
field_messages: conversations
message_field_role: from
message_field_content: value
train_on_eos: all
- path: ./Neon/SystemChat_subset_filtered_sharegpt_utf8fix.jsonl
type: chat_template
field_messages: conversations
message_field_role: from
message_field_content: value
train_on_eos: all
dataset_prepared_path: ./lora_last_run_prepared
chat_template: jinja
chat_template_jinja: |
[gMASK]<sop>{%- for msg in messages %}{%- if msg.role == 'system' %}<|system|>
{{ msg.content }}{%- elif msg.role == 'user' %}<|user|>
{{ msg.content }}{%- elif msg.role == 'assistant' %}<|assistant|>
{{ msg.content }}{%- endif %}{%- endfor %}{% if add_generation_prompt %}<|assistant|>{% endif %}
val_set_size: 0.005
evals_per_epoch: 8
eval_table_size:
eval_max_new_tokens: 128
sequence_len: 16384
save_safetensors: true
saves_per_epoch: 4
logging_steps: 1
bf16: auto
fp16:
tf32: false
load_in_8bit: false
load_in_4bit: true
peft_use_rslora: false
peft_use_dora: false
adapter: qlora
lora_model_dir:
lora_r: 64
lora_alpha: 64
lora_dropout: 0.1
lora_target_linear: true
lora_fan_in_fan_out:
lora_target_modules:
num_epochs: 1
weight_decay: 0.01
max_grad_norm: 1.0
warmup_ratio: 0.05
learning_rate: 1e-5
lr_scheduler: rex
optimizer: adamw_torch
gradient_accumulation_steps: 32
micro_batch_size: 1
eval_batch_size: 1
pad_to_sequence_len: true
sample_packing: true
eval_sample_packing: false
flash_attention: true
xformers_attention:
gradient_checkpointing:
gradient_checkpointing_kwargs:
use_reentrant: false
sequence_parallel_degree: 4
heads_k_stride: 1
ring_attn_func:
fsdp:
- full_shard
- auto_wrap
fsdp_config:
fsdp_limit_all_gathers: true
fsdp_sync_module_states: true
fsdp_offload_params: false
fsdp_use_orig_params: false
fsdp_cpu_ram_efficient_loading: true
fsdp_auto_wrap_policy: TRANSFORMER_BASED_WRAP
fsdp_transformer_layer_cls_to_wrap: Glm4DecoderLayer
fsdp_state_dict_type: FULL_STATE_DICT
fsdp_sharding_strategy: FULL_SHARD
fsdp_activation_checkpointing: true
🔧 技術細節
文檔未提供足夠詳細的技術實現細節(少於50字),故跳過此章節。
📄 許可證
本模型採用MIT許可證。
屬性 |
詳情 |
模型類型 |
GLM-4-32B-0414的角色扮演(RP)微調模型 |
訓練數據 |
包含7700萬個合成RP和短篇小說生成數據令牌的數據集 |
基礎模型 |
THUDM/GLM-4-32B-0414 |
庫名稱 |
transformers |
數據集 |
allura-org/Celeste-Filtered、allura-org/neon-41k、EVA-UNIT-01/Lilith-v0.2 |