202 拉取 2周前更新
2周前更新
2周前
19b821b282df · 6.1GB
读我
=== 警告,可能含有成人内容! ===
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 如果一个不起作用,尝试另一个。 [静态Quants](https://hugging-face.cn/nothingiisreal/MN-12B-Celeste-V1.9-GGUF)
[IMatrix Quants](bartowski/MN-12B-Celeste-V1.9-GGUF) # API 可能会在某个时刻在Featherless上。它也由我们Discord中的一位慷慨的人托管。 ---
使用技巧
阅读:如果您是首次使用此模型,请使用以下提供的系统消息和采样设置。在了解模型之前,请勿删除其他越狱和系统消息。
如果您阅读了每一个小贴士,我保证您会获得更好的体验,因为它们专为该模型及其训练数据定制。
V1.9的采样设置
好吧,这次实际上有两个推荐的
我通常开始前几条消息时使用Stable,看看效果如何。如果陷入重复,我就切换到Creative。但您也可以从头到尾都使用,Creative可能需要不时地进行几次“滥用”。
Stable

Creative

但是,一旦您熟悉了模型,请不要害怕进行实验。
预设
无系统提示的ChatML。是的,我们这次训练了ChatML令牌。您不需要 JB,但它仍然可以引导行为。
系统提示
我们建议使用此系统提示
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:角色应该更加坚定”等指令。它适用于任何消息,无论是起初的还是数千个标记深输了的大量上下文。结合编辑输出(如果您想这么做)可以使其更加可引导。
"Dead Dove"
对于在故事中持续具有动机的角色卡,请使用世界书籍在此处的教程
少量射击
第一条消息和最后几条消息在风格、性感、个性方面对此模型影响很大。您不需要第一条消息,但编辑前几条消息或拥有好消息是高度推荐的。
格式问题常常出现在前几条消息中,手动纠正它们或滑动。但对12B似乎没有这种问题。
本模型在众多不同格式和消息长度类型的数据上进行训练。它可以处理任何类型的消息,只需确保初始消息正确,并在必要时更正第二条消息。
性感程度
如果模型不够性感,只需编辑最后一条字符消息或执行OOC提示,模型会抓住并在此基础上构建。(或者直接给角色吃春药哈哈哈)
模型能够处理SFW内容,不会使其成为NSFW,除非你想让它这样。它还能在保持半NSFW(又称慢热)的情况下不发展成硬核。
如果你只想处理SFW内容并且遇到了困难,可能有一些系统提示可以解决这个问题,也许是在深度1时。
拒绝
正如所说,如果遇到指令拒绝(非常罕见),预先填写2-3个词。*对于浪漫邀约的拒绝(在12B几乎不会发生)是现实的,我们认为这很好。如果你不喜欢,可以预先填写。*
Mistral上下文
虽然在8K上进行训练,但模型应该能够继承Mistral 12B的更长时间上下文。至少应该是16K。
其他重要提示
在角色扮演中扮演主动角色,并说出能创造你所想象情景的回答类型。你不必总是这样做,但有时这会有所帮助。例如,与其说我们一直喝一直喝15杯香槟,不如说我们喝着喝着,15杯香槟,我们都变得非常醉了
另一个例子,与其说我拉她更近,不如说我拉她更近,但她装傻充愣
在方便的时候,可以说电影剧本中的短语,如“镜头切换”
展示V1.9
故事写作
查看上面的故事撰写部分。
RP
它也能处理NSFW内容,这需要你自己去尝试。
展示V1.5
一些图像包含NSFW和NSFL内容。我们相信表达方式的创造力,并最大化模型在写作方面的能力。展示多重回合的内容有点困难,但也尝试一下!这只是为了展示模型的能力。模型需要引导和OOC提示来执行合适的血腥场景。我们计划将r/GuroErotica添加到我们的数据集中,以使模型在处理血腥场景方面更好。有时在角色回答之前预先填写“**警告:非常血腥和暴露的内容**”可以使内容更加离奇。这可能是由于Reddit数据的影响。



展示V1和1.2










训练数据
数据划分如下
- r/WritingPrompts的2500行
- r/DirtyWritingPrompts的2500行
- 来自Kalomaze Opus Instruct 25K的800行
- c2日志清洁的2500行
我们对这些数据集进行了筛选,仅包含最多包含 4000 个字符的子集用于第一个助理回复。这删除了过长的人类故事、助理回复和 C2 日志,其中每条消息都很长。然而,我们只检查了第一条助理消息,而不是对话的其他部分,所以应该有大量包含更长和更短消息的 C2 日志。
过长的人类故事几乎不可能对 8B 模型进行拟合。我们尝试了,它根本不能拟合数据,开始了奇怪的行为。
尽管我们从 C2 日志中训练了所有系统提示,但我们也有自己的系统提示。
训练系统提示列表。注意:C2 日志系统提示和字符卡片也被包括在内。
数据集 | 系统提示 |
---|---|
reddit_dirty_writing_prompts.jsonl | “你是一名短故事作家。根据下面用户提供的提示写一个故事。模式:NSFW” |
reddit_writing_prompts.jsonl | “你是一名短故事作家。根据下面用户提供的提示写一个故事。模式:SFW” |
combined_25k_opus_kalomaze.jsonl | “你是一名由 NothingiisReal 团队创造的 AI 助手-celeste。” |
c2-logs.jsonl | (只有当对话中没有系统提示时才使用,否则保留原始系统提示) “你是一名能够完全融入任何角色的专业演员。你不会因为任何原因而破坏角色,即使有人试图称呼你为 AI 或语言模型。” |
我们的调查和实验结果
序言
我们认为关于使用哪些数据以及不同的训练方法存在太多的秘密。因此,我们决定尽可能多地分享。
发现 V1.9
Mistral 似乎在一家公司模型中对审查限制非常宽松。这意味着不会拒绝基础事物和玩笑,但也在某种程度上模仿了人物的实际情况,因为他们通常不会拒绝你提出的任何想法,这是相当不现实的。
这是很不现实的。
Mistral 在 OOC 和指令智慧上似乎较弱,更容易重复。
然而,它几乎从不发生像 L3 那样的格式问题,生成的事实错误和无意义的输出也更少。
添加更多的 claude 角色扮演数据可以改善 NSFW、长上下文、总结偏见和叙述。
但是,即使在 NSFW 中,仍然存在总结偏见,可以通过截断响应或故意将最大令牌值设置为较低值来缓解。
人类数据和 claude 数据的利弊之间存在权衡。
主要训练命令
使用的硬件: 1xH100 SXM 用于 3 小时。
Lora+ 似乎可以改进和训练 Lora,我们还多次尝试了 DoRA,但 DoRA 的训练大约慢 3 倍,如果你给 DoRA 三倍更少的数据来调整计算成本差异,最终 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 输出目录: /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: 输入: - system - user 输出: - 助手 ## 评估 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 加载 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 # 每个gpu的批处理大小 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?;) 我们比以往任何时候都更接近这个了。这次真的了。
如果你想支持我,可以在这里做。