🚀 Dolphin 2.5 Mixtral 8X7B - GPTQ
本项目提供了Dolphin 2.5 Mixtral 8X7B模型的GPTQ量化版本,可用于不同硬件环境下的高效推理。该模型基于Mixtral架构,在多种数据集上进行训练,具备出色的编码能力和良好的通用性。
📦 模型信息
属性 |
详情 |
模型类型 |
Mixtral |
训练数据 |
ehartford/dolphin、jondurbin/airoboros-2.2.1、ehartford/dolphin-coder、migtissera/Synthia-v1.3、teknium/openhermes、ise-uiuc/Magicoder-OSS-Instruct-75K、ise-uiuc/Magicoder-Evol-Instruct-110K、LDJnr/Pure-Dove |
模型创建者 |
Eric Hartford |
量化者 |
TheBloke |
许可证 |
apache-2.0 |
✨ 主要特性
- 多数据集训练:使用多个高质量数据集进行训练,提升了模型的通用性和专业性。
- 多种量化选项:提供多种GPTQ量化参数,可根据硬件和需求选择最合适的版本。
- 高效推理:GPTQ量化模型在保证一定精度的前提下,显著减少了显存使用,提高了推理效率。
🚀 快速开始
下载模型
在text-generation-webui中下载
- 从
main
分支下载:在“Download model”框中输入TheBloke/dolphin-2.5-mixtral-8x7b-GPTQ
。
- 从其他分支下载:在下载名称末尾添加
:branchname
,例如TheBloke/dolphin-2.5-mixtral-8x7b-GPTQ:gptq-4bit-128g-actorder_True
。
从命令行下载
推荐使用huggingface-hub
Python库:
pip3 install huggingface-hub
下载main
分支到dolphin-2.5-mixtral-8x7b-GPTQ
文件夹:
mkdir dolphin-2.5-mixtral-8x7b-GPTQ
huggingface-cli download TheBloke/dolphin-2.5-mixtral-8x7b-GPTQ --local-dir dolphin-2.5-mixtral-8x7b-GPTQ --local-dir-use-symlinks False
从其他分支下载,添加--revision
参数:
mkdir dolphin-2.5-mixtral-8x7b-GPTQ
huggingface-cli download TheBloke/dolphin-2.5-mixtral-8x7b-GPTQ --revision gptq-4bit-128g-actorder_True --local-dir dolphin-2.5-mixtral-8x7b-GPTQ --local-dir-use-symlinks False
在text-generation-webui中使用
- 点击Model tab。
- 在Download custom model or LoRA下输入
TheBloke/dolphin-2.5-mixtral-8x7b-GPTQ
。
- 若从特定分支下载,输入例如
TheBloke/dolphin-2.5-mixtral-8x7b-GPTQ:gptq-4bit-128g-actorder_True
。
- 点击Download。
- 模型开始下载,完成后显示“Done”。
- 在左上角点击Model旁边的刷新图标。
- 在Model下拉菜单中选择刚下载的模型:
dolphin-2.5-mixtral-8x7b-GPTQ
。
- 模型将自动加载,即可使用!
- 若需要自定义设置,设置后点击Save settings for this model,然后点击右上角的Reload the Model。
- 准备好后,点击Text Generation标签,输入提示词开始!
💻 使用示例
基础用法
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
model_name_or_path = "TheBloke/dolphin-2.5-mixtral-8x7b-GPTQ"
model = AutoModelForCausalLM.from_pretrained(model_name_or_path,
device_map="auto",
trust_remote_code=False,
revision="main")
tokenizer = AutoTokenizer.from_pretrained(model_name_or_path, use_fast=True)
prompt = "Write a story about llamas"
system_message = "You are a story writing assistant"
prompt_template=f'''<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
'''
print("\n\n*** Generate:")
input_ids = tokenizer(prompt_template, return_tensors='pt').input_ids.cuda()
output = model.generate(inputs=input_ids, temperature=0.7, do_sample=True, top_p=0.95, top_k=40, max_new_tokens=512)
print(tokenizer.decode(output[0]))
print("*** Pipeline:")
pipe = pipeline(
"text-generation",
model=model,
tokenizer=tokenizer,
max_new_tokens=512,
do_sample=True,
temperature=0.7,
top_p=0.95,
top_k=40,
repetition_penalty=1.1
)
print(pipe(prompt_template)[0]['generated_text'])
📚 详细文档
提示模板
本模型使用ChatML提示模板:
<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
已知兼容的客户端/服务器
GPTQ模型目前支持Linux(NVidia/AMD)和Windows(仅NVidia)。macOS用户请使用GGUF模型。Mixtral GPTQ目前有特殊要求,请参阅上文描述。
提供的文件和GPTQ参数
提供了多个量化参数,允许您根据硬件和需求选择最佳参数。每个单独的量化版本位于不同的分支中,以下是获取不同分支的说明。大多数GPTQ文件使用AutoGPTQ制作,Mistral模型目前使用Transformers制作。
兼容性
提供的文件经过测试,可与AutoGPTQ 0.6(从源代码编译)和Transformers 4.37.0(从Github安装)一起使用。
🔧 技术细节
模型训练
该模型基于Mixtral-8x7b,基础模型具有32k上下文,微调时使用16k上下文。训练使用了qLoRA和Axolotl,在4x A100上训练1.5个epoch,耗时3天。
数据集更新
在2.5版本中,移除了Samantha和WizardLM,添加了Synthia、OpenHermes、PureDove、新的Dolphin-Coder数据集和MagiCoder数据集。
模型特点
该模型在编码方面表现出色,经过大量编码数据训练。它非常听话,但未经过DPO微调,因此可能需要在系统提示中进行引导。模型未经过审查,过滤了数据集以去除对齐和偏差,这使模型更易服从。建议在将模型作为服务公开之前实现自己的对齐层,因为它会高度服从任何请求,包括不道德的请求。
📄 许可证
本项目使用apache-2.0许可证。
🔗 相关链接
👏 致谢与贡献
感谢chirper.ai团队和gpus.llm-utils.org的Clay!如果您愿意贡献,捐赠将非常感激,这将帮助提供更多模型并开展新的AI项目。捐赠者将获得优先支持、访问私人Discord房间等福利。
特别感谢Aemon Algiz以及众多Patreon支持者!同时感谢a16z的慷慨资助。
🚧 未来计划
Dolphin 3.0数据集正在开发中,将包括增强的通用聊天用例、结构化输出、Agent案例(如Autogen、Memgpt、Functions)和角色扮演等功能。
如果您想在经济上支持这些努力,请访问Ko-fi。还有周边商品可供购买。