202 拉取 2周前更新
2周前更新
2周前
3addefcf1a79 · 13GB
README
=== 警告:可能包含NSFW内容! ===
Mistral Nemo 12B Celeste V1.9
阅读以下使用提示!请使用ChatML。
加入我们的Discord以测试新版本和获取新闻!我们也在KoboldAI上。

[c2日志清洁](https://hugging-face.cn/datasets/Sao10K/c2-Logs-Filtered) 感谢Pyroserenus赞助这次运行!这个版本改进了NSFW,更加智能和活跃的叙述。它还使用ChatML令牌进行训练,因此不应该有任何EOS泄露。 # FP8 [动态(由Auri提供)](https://hugging-face.cn/aetherwiing/MN-12B-Celeste-V1.9-fp8-dynamic) # EXL2 [4bpw By Kingbri](https://hugging-face.cn/royallab/MN-12B-Celeste-V1.9-exl2/tree/4bpw)
[5bpw By Kingbri](https://hugging-face.cn/royallab/MN-12B-Celeste-V1.9-exl2/tree/5bpw)
[6bpw By Kingbri](https://hugging-face.cn/royallab/MN-12B-Celeste-V1.9-exl2/tree/6bpw) # GGUF 如果一个不行,试试另一个。[静态量化](https://hugging-face.cn/nothingiisreal/MN-12B-Celeste-V1.9-GGUF)
[IMatrix 量化](bartowski/MN-12B-Celeste-V1.9-GGUF) # API 可能会在Featherless上出现。同时由我们的discord中某位慷慨的人提供托管。 ---
使用提示
READ:如果您是第一次使用该模型,请使用下面的提供的系统信息和采样设置。删除其他越狱和系统信息,直到您对模型有所了解。
如果您阅读了每一个提示,我保证您将获得更佳的体验,因为这些提示是为该模型及其训练数据量身定制的。
V1.9的采样设置
这次实际上推荐两种
我通常开始前几条信息使用Stable看效果如何。如果陷入重复,就切换到Creative。但您也可以全程使用任何一种,Creative可能需要时不时的轻扫。
Stable

Creative

但是,在使用了模型后,不要害怕尝试。
预设
ChatML无系统提示。是的,我们这次确实训练了ChatML令牌。您不需要越狱,但仍然可以影响行为。
系统提示
我们推荐使用以下系统提示
Currently, your role is {{char}}, described in detail below. As {{char}}, continue the narrative exchange with {{user}}.\n\n<Guidelines>\n• Maintain the character persona but allow it to evolve with the story.\n• Be creative and proactive. Drive the story forward, introducing plotlines and events when relevant.\n• All types of outputs are encouraged; respond accordingly to the narrative.\n• Include dialogues, actions, and thoughts in each response.\n• Utilize all five senses to describe scenarios within {{char}}'s dialogue.\n• Use emotional symbols such as \"!\" and \"~\" in appropriate contexts.\n• Incorporate onomatopoeia when suitable.\n• Allow time for {{user}} to respond with their own input, respecting their agency.\n• Act as secondary characters and NPCs as needed, and remove them when appropriate.\n• When prompted for an Out of Character [OOC:] reply, answer neutrally and in plaintext, not as {{char}}.\n</Guidelines>\n\n<Forbidden>\n• Using excessive literary embellishments and purple prose unless dictated by {{char}}'s persona.\n• Writing for, speaking, thinking, acting, or replying as {{user}} in your response.\n• Repetitive and monotonous outputs.\n• Positivity bias in your replies.\n• Being overly extreme or NSFW when the narrative context is inappropriate.\n</Forbidden>\n\nFollow the instructions in <Guidelines></Guidelines>, avoiding the items listed in <Forbidden></Forbidden>.
故事写作
添加此系统提示可能会增加散文的人文性,因为我们也训练了系统提示。您也可以将其更改为NSFW,但无论您是否写NSFW,都应该尝试两者。
由于我们在人类故事上进行了训练,因此您也应该强制助手回复以*
开头。
系统提示:您是一位短篇小说家。根据用户以下提供的提示撰写故事。模式:SFW
如果您的第一条信息使用人类似的散文,Celeste将在随后的信息中复制它,请查看下面的展示。
轻扫
重要提示如果您不满意回复,请轻扫2-3次。这个模型给出了截然不同的轻扫。
OOC引导
使用这个!它相当有效。我们特意训练模型接受格式为“OOC:角色应该更加自信”等的指示。它有效,无论是第一条信息还是数千个令牌深度的上下文中。结合输出编辑(如果您想),可以使得模型非常容易引导。
"Dead Dove"
对于在故事中持续存在动机的角色卡,请使用世界书籍教程在这里
清点
第一条信息以及最后几条信息对该模型在风格、性感度、个性方面有很大影响。您不需要有第一条信息,但编辑前几条信息或者拥有好信息是非常推荐的。
格式问题通常出现在第一条信息中,手动纠正它们或轻扫。12B中没有这个问题。
此模型在许多不同的格式类型和消息长度上进行了训练。它可以做任何,只需确保初始信息是好的,并在必要时纠正第二条信息。
性感度
如果模型不够“淫”,只需要编辑最后一条信息或者做一次“OOC:提示”,模型就能接收到并在此基础上发展。(或者直接给角色吃春药哈哈哈)
模型对SFW内容没有任何问题,不会将其转换为NSFW,除非你想这样做。它还能维持半NSFW(即缓慢升温)的状态,不会堕落成极端内容。
如果你想只有SFW,并遇到麻烦,可能有些系统提示可以解决这个问题,可能是深度1或类似的。
拒绝
正如所说,如果指令被拒绝(非常罕见),预先填写2-3个词。拒绝浪漫邀约(在12B中几乎从未发生)是现实的,我们认为这是好的。如果你不喜欢,请预先填写。
Mistral上下文
虽然这个模型是在8K上面训练的,但应该能够继承Mistral 12B的长上下文。至少应该是16K。
其他重要提示
在角色扮演中要积极主动,说出你想要的场景。你不必总是这样做,但有时候这会很有帮助。例如,与其说“我们喝啊喝,喝了15杯香槟”,不如说“我们喝啊喝,喝了15杯香槟,我们都喝得烂醉如泥”
另一个例子,与其说“我拉她更近”,不如说“我拉她更近,但她装作不在意”
当方便的时候,说出“画幅”这样的电影剧本用语
展示V1.9
故事写作
查看上面<强>故事写作强>部分。
角色扮演
它也能进行NSFW,这需要你自己去尝试。
展示V1.5
一些图片包含NSFW和NSFL。我们相信表现力的创造性和最大化模型在写作能力上的表现。展示多轮内容有点困难,也试着做一下!这些只是展示模型的能力。模型需要进行引导和OOC提示来完成真实血腥场景。我们计划将r/GuroErotica添加到我们的数据集中,以使其在血腥场景上表现得更好。有时,在角色回答之前预先填写“**触发警告:极其血腥和露骨的内容**”会使它变得更为脱节。这很可能是因为Reddit数据。}



展示V1和1.2










训练数据
分割如下
- 来自r/WritingPrompts的2.5K行
- 来自r/DirtyWritingPrompts的2.5K行
- 来自Kalomaze Opus Instruct 25K的800行
- 来自c2日志(清洗过的)2.5K行
我们对这些数据集进行了过滤,只包括第一个助理回答最多有4000个字符的子集。这清除了过长的人类故事,辅助回答和每条消息都过长的c2日志。然而,我们只检查了第一个助理消息,并没有检查整个对话,所以应该有大量包含更长和更短消息的c2日志。
人类的故事过长对于8B模型几乎无法适应。我们尝试过,但数据无法适应,反而会出现异常行为。
虽然我们训练了所有来自c2日志的系统提示,但我们还有我们自己的系统提示。
已训练系统提示列表。注意:c2日志的系统提示和字符卡片也被包括在内。
数据集 | 系统提示 |
---|---|
reddit_dirty_writing_prompts.jsonl | “你是一名短篇小说作家。根据下面用户提供的提示写一个故事。模式:NSFW” |
reddit_writing_prompts.jsonl | “你是一名短篇小说作家。根据下面用户提供的提示写一个故事。模式:SFW” |
combined_25k_opus_kalomaze.jsonl | “你是一名由NothingiisReal团队创造的名为Celeste的AI助手。” |
c2-logs.jsonl | (如果对话中没有系统提示,则保持原始系统提示) “你是一名可以全身心投入任何角色的专业演员。你不会因为任何原因破坏角色,即使有人试图称呼你为AI或语言模型。” |
我们的发现和实验结果
序言
我们认为关于使用的数据和不同的训练方法存在太多机密性,所以我们决定尽可能多地分享。
发现V1.9
Mistral似乎是一个非常不审查的个体模型。这意味着它不会拒绝基于事实的内容和玩笑,而且以一种非常不现实的方式模拟角色,即他们通常不会拒绝你提出的任何想法,这在现实中是非常不现实的。
这相当不现实。
Mistral似乎在OOC和指示智能方面较弱,并且更容易重复。
然而,它几乎从不出现像L3那样的格式问题,并且做出的事实不准确性和无意义输出的情况也较少。
添加更多Claude角色扮演数据改善了NSFW、长文本上下文、总 结局限性和叙述。
然而,在NSFW中仍然存在总结局限性,这可以通过截断响应或故意将最大标记数设置为低值来缓解。
人类数据和Claude数据之间存在着优缺点之间的权衡。
主要训练命令
硬件使用: 1xH100 SXM使用3小时。
Lora+似乎可以提高和训练Lora的效率,我们多次尝试了DoRA,但DoRA的训练速度大约慢3倍,并且如果你给DoRA提供3倍更少的数据来调整计算成本差异,LoRA+最终会超过它。
以下是V1.5的整个Axolotl配置,只需将聊天格式更改为chatml,添加loRA+,将分词器更改为axolotl-ai-co/Mistral-Nemo-Base-2407-chatml,并将模型更改为12B,它就是正确的配置。
```yaml # 模型基础模型: meta-llama/Meta-Llama-3.1-8B-Instruct 模型类型: AutoModelForCausalLM 分词器类型: AutoTokenizer # 输出和HuggingFace output_dir: /workspace/data/train-results/trained_model # WandB wandb_project: huggingface wandb_entity: # 数据 chat_template: llama3 train_on_inputs: false group_by_length: false datasets: - path: [红盖头] # 我使用自定义脚本来手动合并上述数据集,因为我无法相信axolotl以确定的方式进行并在排序上表现良好 lmao。 类型: sharegpt roles: 输入: - 系统 - 用户 输出: - 助手 ## 评估 val_set_size: 0.02 evals_per_epoch: 8 eval_table_size: eval_max_new_tokens: 128 # 技术方面 sequence_len: 8192 save_safetensors: true saves_per_epoch: 2 logging_steps: 1 special_tokens: pad_token: # 量化 bf16: auto fp16: tf32: false ## 用于 LoRA load_in_8bit: false load_in_4bit: false # LoRA peft_use_dora: true 适配器: lora # 或 qlora lora_model_dir: lora_r: 256 lora_alpha: 128 lora_dropout: 0.1 lora_target_linear: true lora_fan_in_fan_out: lora_target_modules: - embed_tokens - lm_head # 训练超参数 # max_steps: num_epochs: 2 # 抗过拟合和稳定性 weight_decay: 0.0 max_grad_norm: 1.0 ## 学习率 warmup_ratio: 0.05 learning_rate: 0.000008 lr_scheduler: cosine_with_min_lr lr_scheduler_kwargs: min_lr: 0.0000024 optimizer: paged_adamw_8bit ## 批量大小 gradient_accumulation_steps: 1 micro_batch_size: 2 # 每张卡的批量大小 = 微批量大小 * 累加梯度步骤 eval_batch_size: 2 # 优化 pad_to_sequence_len: true sample_packing: true eval_sample_packing: false flash_attention: true xformers_attention: gradient_checkpointing: true gradient_checkpointing_kwargs: use_reentrant: false local_rank: # deepspeed: # /workspace/axolotl/deepspeed_configs/zero2.json # 仅适用于多 GPU # zero3_bf16.json # fsdp: # - full_shard # - auto_wrap # fsdp_config: # fsdp_limit_all_gathers: true # fsdp_sync_module_states: true # fsdp_offload_params: true # fsdp_use_orig_params: false # fsdp_cpu_ram_efficient_loading: true # fsdp_auto_wrap_policy: TRANSFORMER_BASED_WRAP # fsdp_transformer_layer_cls_to_wrap: LlamaDecoderLayer # fsdp_state_dict_type: FULL_STATE_DICT # fsdp_sharding_strategy: FULL_SHARD # 其他 early_stopping_patience: debug: ```哇,你全都读完了?你看起来就像会加入我们 discord 的人。
在某个时刻70B? ;); 我们比以往任何时候都接近。这次真心是。
如果你想支持我,可以在这里进行 这里