L-MChat-7b 项目介绍
项目背景
L-MChat-7b 是一个创新的语言模型,结合了两个不同模型的优势,分别是 Nexusflow/Starling-LM-7B-beta 和 FuseAI/FuseChat-7B-VaRM。这一合并过程通过使用 LazyMergekit 工具实现,旨在提升模型的文本生成能力。
模型配置
L-MChat-7b 模型通过以下配置实现合并:
- 模型来源:合并的基础模型为 FuseAI/FuseChat-7B-VaRM,并结合了 Nexusflow/Starling-LM-7B-beta 的部分结构。
- 层范围:两个模型的层结构都涉及 0 到 32 层。
- 合并方法:使用了 slerp(球面线性插值)技术。
- 参数配置:对于不同的模块如自注意力层(self_attn)和 MLP 层,设定了特定的参数值调整。
- 数据类型:使用 bfloat16 数据类型以优化计算性能。
使用方法
使用 L-MChat-7b 模型非常简单,只需执行以下 Python 代码:
!pip install -qU transformers accelerate
from transformers import AutoTokenizer
import transformers
import torch
model = "Artples/M-LChat-7b"
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 = transformers.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"])
通过此脚本,用户可以生成高质量的文本输出。
评估结果
L-MChat-7b 在多个基准测试中展现了优异的性能,包括:
- AI2 Reasoning Challenge (25-Shot):65.61 正确率
- HellaSwag (10-Shot):84.59 正确率
- MMLU (5-Shot):65.44 正确率
- TruthfulQA (0-shot):50.94 多选题准确率
此外,在其他多个数据集上的表现也纳入评估,如 Winogrande、GSM8k 等,整体平均分为 69.57。
许可证
L-MChat-7b 采用 Apache 2.0 许可证,允许用户在多种应用中使用此模型,但不得直接与 OpenAI竞争。
总结
L-MChat-7b 通过结合不同模型的强项,为用户提供了一种高效且可靠的文本生成工具。在不同的评估指标中均取得了较为满意的成绩,适合用于多种自然语言处理任务。更多详细评估结果可以参考 Open LLM Leaderboard。