项目介绍:T-lite-instruct-0.1
概述
T-lite-instruct-0.1 是 T-lite-0.1 模型的一个指令版本。这款模型的训练使用了 bf16。这是特别设计用于进一步微调而非直接用于对话助手的模型。用户在使用时需谨慎,并且负责进行额外的训练和监督,以确保模型的回应符合可接受的伦理和安全标准。如果有人选择将其整合到工业或商业解决方案中,则完全由他们负责。
数据集
上下文
在指令数据集中,上下文信息来源于:
- 开源的英语数据集(如 UltraFeedback、HelpSteer、SHP 等)
- 通过机器翻译的英语数据集
- 由预训练数据集生成的合成有基础的问答上下文
其中翻译后的上下文通过分类器筛选。
SFT
上下文的回应由强大的模型生成,训练完全基于这些回应。这种方法避免了基于低质量翻译进行模型训练。
奖励建模
奖励模型(RM)训练在以下配对上:
- 强模型 > 我们的模型
- 更强的模型 > 较弱的模型
- 选中的翻译回答 > 被拒绝的翻译回答
- 原始英语数据集中的配对
翻译后的偏好数据经过 RM 集成的初步筛选。
偏好微调
偏好微调分两个阶段:
- 阶段 1:在教师模型(强模型 > 我们的模型)的回复上应用 SPiN
- 阶段 2:使用我们的 RM 进行 SLiC-HF
基准测试
MT-Bench
这个基准测试被小心翼翼地翻译成俄语,使用 gpt-4-1106-preview 作为评审,进行了测试。
MT-Bench | 总分 | 第1轮 | 第2轮 | 编码 | 人文学科 | 数学 | 推理 | 角色 | STEM | 写作 |
---|---|---|---|---|---|---|---|---|---|---|
T-lite-instruct-0.1 | 6.458 | 6.833 | 6.078 | 4.136 | 8.45 | 4.25 | 4.5 | 7.667 | 7.7 | 7.706 |
gpt3.5-turbo-0125 | 6.373 | 6.423 | 6.320 | 6.519 | 7.474 | 4.75 | 4.15 | 6.333 | 6.7 | 7.588 |
Arena
使用俄罗斯版本的 Arena 基准测试,评审同样采用 gpt-4-1106-preview。
Arena General | 得分 | 95% 置信区间 | 平均 Token 数量 |
---|---|---|---|
T-lite-instruct-0.1 | 57.26 | -2.9/2 | 870 |
gpt3.5-turbo-0125 | 50 | 0/0 | 254 |
使用示例
可以通过以下代码示例了解如何使用 T-lite-instruct-0.1 模型:
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
torch.manual_seed(42)
model_name = "t-bank-ai/T-lite-instruct-0.1"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, device_map="auto")
messages = [
{"role": "user", "content": "Напиши рецепт классной пиццы!"},
]
input_ids = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_tensors="pt"
).to(model.device)
terminators = [
tokenizer.eos_token_id,
tokenizer.convert_tokens_to_ids("<|eot_id|>")
]
outputs = model.generate(
input_ids,
max_new_tokens=256,
eos_token_id=terminators,
)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
上述代码提供了如何生成一个关于“制作美味披萨”指令的模型回应示例。模型生成的文本包含详细的食材和制作步骤,展示了该模型在生成任务上的应用潜力。