项目介绍:calme-2.2-llama3-70b
calme-2.2-llama3-70b是一个基于Meta-Llama-3-70B-Instruct模型进行精调(DPO)后形成的模型版本。它在文本生成任务上表现优异,旨在增强自然语言处理应用的效果。
模型背景
该模型由MaziyarPanahi创建,并使用了PyTorch深度学习框架进行开发。calme-2.2-llama3-70b曾被称为Llama-3-70B-Instruct-DPO-v0.2,为了避免与原始模型混淆,进行了更名。它采用了与ChatML兼容的prompt模板,使其在文本生成应用中具有通用性和灵活性。
数据集与任务表现
模型在多个基准数据集上的测试结果显示,calme-2.2-llama3-70b在许多文本生成任务中取得了显著的成绩:
- AI2 Reasoning Challenge (25-Shot):准确率为72.53%
- HellaSwag (10-Shot):标准化准确率为86.22%
- MMLU (5-Shot):准确率为80.41%
- TruthfulQA (0-shot):mc2评分为63.57
- Winogrande (5-shot):准确率为82.79%
- GSM8k (5-shot):准确率为88.25%
- IFEval (0-shot):严格准确率为82.08%
- BBH (3-Shot):标准化准确率为48.57%
- MATH Lvl 5 (4-Shot):精确匹配率为22.96%
- GPQA (0-shot):标准化准确率为12.19%
- MuSR (0-shot):标准化准确率为15.3%
- MMLU-PRO (5-shot):准确率为46.74%
以上结果表明,该模型在多个类别的任务中都能够提供良好的表现和准确率,特别适用于复杂推理和语言理解任务。
使用方法
calme-2.2-llama3-70b可以通过Hugging Face的transformers库调用使用。以下是在Python中加载和使用该模型进行文本生成的示例代码:
from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer
from transformers import pipeline
import torch
model_id = "MaziyarPanahi/calme-2.2-llama3-70b"
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
trust_remote_code=True
)
tokenizer = AutoTokenizer.from_pretrained(
model_id,
trust_remote_code=True
)
streamer = TextStreamer(tokenizer)
pipeline = pipeline(
"text-generation",
model=model,
tokenizer=tokenizer,
model_kwargs={"torch_dtype": torch.bfloat16},
streamer=streamer
)
messages = [
{"role": "system", "content": "You are a pirate chatbot who always responds in pirate speak!"},
{"role": "user", "content": "Who are you?"},
]
prompt = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
terminators = [
tokenizer.eos_token_id,
tokenizer.convert_tokens_to_ids("