模型简介
模型特点
模型能力
使用案例
🚀 Mistral-7B-Instruct-v0.2 - FP8
本项目包含由 FriendliAI 量化为 FP8 的 Mistral-7B-Instruct-v0.2 模型,在保持高精度的同时显著提高了推理效率。
🚀 快速开始
本模型使用前需完成一些准备工作,具体步骤如下:
- 确保已注册 Friendli Suite,可免费使用 Friendli 容器四周。
- 按照 此指南 准备个人访问令牌(PAT)。
- 按照 此指南 准备 Friendli 容器密钥。
准备个人访问令牌
个人访问令牌(PAT)是用于登录容器注册表的用户凭证。
- 登录 Friendli Suite。
- 进入 用户设置 > 令牌 并点击 '创建新令牌'。
- 保存创建的令牌值。
准备容器密钥
容器密钥是启动 Friendli 容器镜像的凭证,需将其作为环境变量传递以运行容器镜像。
- 登录 Friendli Suite。
- 进入 容器 > 容器密钥 并点击 '创建密钥'。
- 保存创建的密钥值。
拉取 Friendli 容器镜像
- 使用按照 此指南 创建的个人访问令牌登录 Docker 客户端。
export FRIENDLI_PAT="YOUR PAT"
docker login registry.friendli.ai -u $YOUR_EMAIL -p $FRIENDLI_PAT
- 拉取镜像
docker pull registry.friendli.ai/trial
运行 Friendli 容器
准备好 Friendli 容器镜像后,可启动它以创建服务端点。
docker run \
--gpus '"device=0"' \
-p 8000:8000 \
-v ~/.cache/huggingface:/root/.cache/huggingface \
-e FRIENDLI_CONTAINER_SECRET="YOUR CONTAINER SECRET" \
registry.friendli.ai/trial \
--web-server-port 8000 \
--hf-model-name FriendliAI/Mistral-7B-Instruct-v0.2-fp8
✨ 主要特性
- 本仓库包含由 FriendliAI 量化为 FP8 的 Mistral-7B-Instruct-v0.2 模型,在保持高精度的同时显著提高了推理效率。
- 注意,FP8 仅受 NVIDIA Ada、Hopper 和 Blackwell GPU 架构支持。
- 此模型与 Friendli 容器 兼容。
📦 安装指南
拉取 Friendli 容器镜像
- 使用按照 此指南 创建的个人访问令牌登录 Docker 客户端。
export FRIENDLI_PAT="YOUR PAT"
docker login registry.friendli.ai -u $YOUR_EMAIL -p $FRIENDLI_PAT
- 拉取镜像
docker pull registry.friendli.ai/trial
运行 Friendli 容器
准备好 Friendli 容器镜像后,可启动它以创建服务端点。
docker run \
--gpus '"device=0"' \
-p 8000:8000 \
-v ~/.cache/huggingface:/root/.cache/huggingface \
-e FRIENDLI_CONTAINER_SECRET="YOUR CONTAINER SECRET" \
registry.friendli.ai/trial \
--web-server-port 8000 \
--hf-model-name FriendliAI/Mistral-7B-Instruct-v0.2-fp8
💻 使用示例
基础用法
from transformers import AutoModelForCausalLM, AutoTokenizer
device = "cuda" # the device to load the model onto
model = AutoModelForCausalLM.from_pretrained("mistralai/Mistral-7B-Instruct-v0.2")
tokenizer = AutoTokenizer.from_pretrained("mistralai/Mistral-7B-Instruct-v0.2")
messages = [
{"role": "user", "content": "What is your favourite condiment?"},
{"role": "assistant", "content": "Well, I'm quite partial to a good squeeze of fresh lemon juice. It adds just the right amount of zesty flavour to whatever I'm cooking up in the kitchen!"},
{"role": "user", "content": "Do you have mayonnaise recipes?"}
]
encodeds = tokenizer.apply_chat_template(messages, return_tensors="pt")
model_inputs = encodeds.to(device)
model.to(device)
generated_ids = model.generate(model_inputs, max_new_tokens=1000, do_sample=True)
decoded = tokenizer.batch_decode(generated_ids)
print(decoded[0])
📚 详细文档
模型信息
属性 | 详情 |
---|---|
模型创建者 | Mistral AI |
原始模型 | Mistral-7B-Instruct-v0.2 |
模型类型 | 文本生成 |
量化者 | FriendliAI |
许可证 | 请参考原始模型卡的许可证 |
指令格式
为了利用指令微调,您的提示应包含在 [INST]
和 [/INST]
标记中。第一条指令应从句子起始 ID 开始,后续指令则不需要。助手生成的内容将由句子结束令牌 ID 结束。
例如:
text = "<s>[INST] What is your favourite condiment? [/INST]"
"Well, I'm quite partial to a good squeeze of fresh lemon juice. It adds just the right amount of zesty flavour to whatever I'm cooking up in the kitchen!</s> "
"[INST] Do you have mayonnaise recipes? [/INST]"
此格式可通过 apply_chat_template()
方法作为 聊天模板 使用。
故障排除
如果遇到以下错误:
Traceback (most recent call last):
File "", line 1, in
File "/transformers/models/auto/auto_factory.py", line 482, in from_pretrained
config, kwargs = AutoConfig.from_pretrained(
File "/transformers/models/auto/configuration_auto.py", line 1022, in from_pretrained
config_class = CONFIG_MAPPING[config_dict["model_type"]]
File "/transformers/models/auto/configuration_auto.py", line 723, in getitem
raise KeyError(key)
KeyError: 'mistral'
从源代码安装 transformers 应该可以解决此问题
pip install git+https://github.com/huggingface/transformers
在 transformers-v4.33.4 之后,应该不需要这样做。
局限性
Mistral 7B Instruct 模型是一个快速演示,表明基础模型可以很容易地进行微调以实现出色的性能。它没有任何审核机制。我们期待与社区合作,探讨如何使模型更好地遵守规则,以便在需要审核输出的环境中部署。
Mistral AI 团队
Albert Jiang, Alexandre Sablayrolles, Arthur Mensch, Blanche Savary, Chris Bamford, Devendra Singh Chaplot, Diego de las Casas, Emma Bou Hanna, Florian Bressand, Gianna Lengyel, Guillaume Bour, Guillaume Lample, Lélio Renard Lavaud, Louis Ternon, Lucile Saulnier, Marie-Anne Lachaux, Pierre Stock, Teven Le Scao, Théophile Gervet, Thibaut Lavril, Thomas Wang, Timothée Lacroix, William El Sayed.
🔧 技术细节
Mistral-7B-v0.2 与 Mistral-7B-v0.1 相比有以下变化:
- 32k 上下文窗口(v0.1 为 8k 上下文)
- Rope-theta = 1e6
- 无滑动窗口注意力
有关此模型的完整详细信息,请阅读我们的 论文 和 发布博客文章。
📄 许可证
请参考原始模型卡的许可证。
⚠️ 重要提示
FP8 仅受 NVIDIA Ada、Hopper 和 Blackwell GPU 架构支持。
💡 使用建议
若遇到
KeyError: 'mistral'
错误,可从源代码安装 transformers 解决,命令为pip install git+https://github.com/huggingface/transformers
,在 transformers-v4.33.4 之后应该不需要这样做。



