项目简介
NSFW_DPO_Noromaid-7b-Mistral-7B-Instruct-v0.1-GGUF 是一个利用 llama.cpp
工具进行量化的语言生成模型。该模型是以下两个模型的合并版本:
模型配置
这两个模型的合并是通过名为 slerp 的方法实现的。具体配置如下:
-
模型片段:
- 从
mistralai/Mistral-7B-Instruct-v0.1
提取前 32 层。 - 从
athirdpath/NSFW_DPO_Noromaid-7b
提取前 32 层。
- 从
-
参数:
- 自注意力机制
self_attn
和多层感知器mlp
的参数有一系列权重调整。 - 数据类型为
bfloat16
。
- 自注意力机制
模型使用
模型的使用方法很简单。首先安装所需的 Python 包:
!pip install -qU transformers accelerate
然后可以在 Python 脚本中通过如下代码加载和使用模型进行文本生成:
from transformers import AutoTokenizer, pipeline
import torch
model = "MaziyarPanahi/NSFW_DPO_Noromaid-7b-Mistral-7B-Instruct-v0.1"
messages = [{"role": "user", "content": "What is a large language model?"}]
tokenizer = AutoTokenizer.from_pretrained(model)
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
pipeline = pipeline(
"text-generation",
model=model,
torch_dtype=torch.float16,
device_map="auto",
)
outputs = pipeline(prompt, max_new_tokens=256, do_sample=True, temperature=0.7, top_k=50, top_p=0.95)
print(outputs[0]["generated_text"])
这样便可以实现基于该量化模型的文本生成功能。输出的文本可以通过调节 temperature
、top_k
和 top_p
等参数进行不同策略的文本生成。该模型适用于需要生成大段文本的场景,尤其是在角色扮演和情境模拟的应用中具有优势。