license: llama2
Xwin-LM:强大、稳定且可复现的大语言模型对齐方案

用Xwin-LM提升你的大语言模型对齐能力!
Xwin-LM致力于研发并开源大语言模型的对齐技术,包括监督微调(SFT)、奖励模型(RM)、拒绝采样、基于人类反馈的强化学习(RLHF)等。我们的首个基于Llama2基础模型的版本在AlpacaEval榜单荣登榜首,并成为首个超越GPT-4的模型。项目将持续更新。
最新动态
模型卡片
基准测试
下表展示了Xwin-LM在805道问题中与Text-Davinci-003的对抗胜率。我们首次同时呈现了与ChatGPT和GPT-4的对抗结果。Xwin-LM模型家族在所有指标上均刷新了纪录,其中Xwin-LM-70B-V0.1首次超越GPT-4,对Text-Davinci-003胜率达95.57%,对GPT-4胜率达60.61%。
模型 |
AlpacaEval (胜率%) |
AlpacaEval (胜率%) |
AlpacaEval (胜率%) |
|
vs. Text-Davinci-003 |
vs. ChatGPT |
vs. GPT4 |
Xwin-LM-70B-V0.1 |
95.57 |
87.50 |
60.61 |
GPT-4 |
95.28 |
84.66 |
50.00 |
WizardLM-70B-V1.0 |
92.91 |
80.19 |
46.70 |
Llama-2-70B-Chat |
92.66 |
81.97 |
51.19 |
Xwin-LM-13B-V0.1 |
91.76 |
81.79 |
55.30 |
ChatGPT |
89.37 |
50.00 |
16.60 |
WizardLM-13B-V1.2 |
89.17 |
75.75 |
41.91 |
Xwin-LM-7B-V0.1 |
87.35 |
76.40 |
47.57 |
Llama-2-13B-Chat |
81.09 |
64.22 |
30.92 |
提示语 |
GTP4响应 |
Xwin-LM响应 |
我把盘子放在苹果上,然后把盘子从厨房拿到餐厅。苹果现在在哪里 |
苹果现在在餐厅,因为你移动盘子时苹果在盘子下方 |
苹果仍在厨房,因为你只移动了盘子。苹果在盘子下方,若想将苹果带到餐厅,应直接移动苹果或将苹果放在盘子上再移动 |
回答下列问题:法语中"晚上好"怎么说 |
法语中"晚上好"说作"bonsoir" |
法语中"晚上好"翻译为"bonsoir"。该问候语用于傍晚及夜间时段(通常18点后),由表示"好"的"bon"与表示"傍晚"的"soir"组合而成。发音为"bone-swahr" |
模型 |
MMLU 5样本 |
ARC 25样本 |
TruthfulQA 0样本 |
HellaSwag 10样本 |
平均分 |
Text-davinci-003 |
56.9 |
85.2 |
59.3 |
82.2 |
70.9 |
Vicuna-13b 1.1 |
51.3 |
53.0 |
51.8 |
80.1 |
59.1 |
Guanaco 30B |
57.6 |
63.7 |
50.7 |
85.1 |
64.3 |
WizardLM-7B 1.0 |
42.7 |
51.6 |
44.7 |
77.7 |
54.2 |
WizardLM-13B 1.0 |
52.3 |
57.2 |
50.5 |
81.0 |
60.2 |
WizardLM-30B 1.0 |
58.8 |
62.5 |
52.4 |
83.3 |
64.2 |
Llama-2-7B-Chat |
48.3 |
52.9 |
45.6 |
78.6 |
56.4 |
Llama-2-13B-Chat |
54.6 |
59.0 |
44.1 |
81.9 |
59.9 |
Llama-2-70B-Chat |
63.9 |
64.6 |
52.8 |
85.9 |
66.8 |
Xwin-LM-7B-V0.1 |
49.7 |
56.2 |
48.1 |
79.5 |
58.4 |
Xwin-LM-13B-V0.1 |
56.6 |
62.4 |
45.5 |
83.0 |
61.9 |
Xwin-LM-70B-V0.1 |
69.6 |
70.5 |
60.1 |
87.1 |
71.8 |
推理指南
对话模板
请严格遵循以下对话模板进行推理。本模型采用Vicuna的提示格式,支持多轮对话。
用户与AI助手的对话。助手提供专业、详尽且礼貌的回答。用户: 你好!助手: 您好。</s>用户: 你是谁? 助手: 我是Xwin-LM。</s>......
HuggingFace示例
from transformers import AutoTokenizer, AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained("Xwin-LM/Xwin-LM-7B-V0.1")
tokenizer = AutoTokenizer.from_pretrained("Xwin-LM/Xwin-LM-7B-V0.1")
(
prompt := "用户与AI助手的对话。助手提供专业、详尽且礼貌的回答。"
"用户: 你好,能帮忙吗?"
"助手:"
)
inputs = tokenizer(prompt, return_tensors="pt")
samples = model.generate(**inputs, max_new_tokens=4096, temperature=0.7)
output = tokenizer.decode(samples[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True)
print(output)
vllm示例
Xwin-LM基于Llama2架构,支持使用vllm进行高效推理。
from vllm import LLM, SamplingParams
(
prompt := "用户与AI助手的对话。助手提供专业、详尽且礼貌的回答。"
"用户: 你好,能帮忙吗?"
"助手:"
)
sampling_params = SamplingParams(temperature=0.7, max_tokens=4096)
llm = LLM(model="Xwin-LM/Xwin-LM-7B-V0.1")
outputs = llm.generate([prompt,], sampling_params)
for output in outputs:
generated_text = output.outputs[0].text
print(generated_text)
计划清单
- [ ] 开源训练代码
- [ ] 释放数学、推理等扩展能力
引用
如果使用本项目的代码或数据,请引用我们的工作。
@software{xwin-lm,
title = {Xwin-LM},
author = {Xwin-LM Team},
url = {https://github.com/Xwin-LM/Xwin-LM},
version = {预发布版},
year = {2023},
month = {9},
}
致谢
感谢Llama 2、FastChat、AlpacaFarm和vllm等优秀项目。