youssefoud/test_llm_dataset
收藏数据集概述
模型描述
Mixtral-8x7B Large Language Model (LLM) 是一个预训练的生成式 Sparse Mixture of Experts 模型。它在大多数基准测试中优于 Llama 2 70B。
指令格式
指令格式必须严格遵守,否则模型将生成次优输出。指令模型的提示模板定义如下:
<s> [INST] Instruction [/INST] Model answer</s> [INST] Follow-up instruction [/INST]
其中,<s> 和 </s> 是字符串开始(BOS)和结束(EOS)的特殊标记,而 [INST] 和 [/INST] 是常规字符串。
运行模型
以下是使用 transformers 库运行模型的示例代码:
python
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "mistralai/Mixtral-8x7B-Instruct-v0.1" tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)
text = "Hello my name is" inputs = tokenizer(text, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=20) print(tokenizer.decode(outputs[0], skip_special_tokens=True))
半精度运行
注意 float16 精度仅适用于 GPU 设备:
python
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "mistralai/Mixtral-8x7B-Instruct-v0.1" tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype=torch.float16).to(0)
text = "Hello my name is" inputs = tokenizer(text, return_tensors="pt").to(0)
outputs = model.generate(**inputs, max_new_tokens=20) print(tokenizer.decode(outputs[0], skip_special_tokens=True))
使用 bitsandbytes 降低精度
python import torch from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "mistralai/Mixtral-8x7B-Instruct-v0.1" tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, load_in_4bit=True)
text = "Hello my name is" inputs = tokenizer(text, return_tensors="pt").to(0)
outputs = model.generate(**inputs, max_new_tokens=20) print(tokenizer.decode(outputs[0], skip_special_tokens=True))
使用 Flash Attention 2 加载模型
python import torch from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "mistralai/Mixtral-8x7B-Instruct-v0.1" tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, use_flash_attention_2=True)
text = "Hello my name is" inputs = tokenizer(text, return_tensors="pt").to(0)
outputs = model.generate(**inputs, max_new_tokens=20) print(tokenizer.decode(outputs[0], skip_special_tokens=True))
限制
Mixtral-8x7B Instruct 模型没有任何审查机制。我们期待与社区合作,探索使模型更好地遵守防护措施的方法,以便在需要审查输出的环境中部署。



