书生·浦语-对话-20B 书生大模型

简介

上海人工智能实验室与商汤科技联合香港中文大学和复旦大学正式推出书生·浦语200亿参数模型版本 InternLM-20B ,InternLM-20B 在超过 2.3T Tokens 包含高质量英文、中文和代码的数据上进行预训练,其中 Chat 版本还经过了 SFT 和 RLHF 训练,使其能够更好、更安全地满足用户的需求。

InternLM 20B 在模型结构上选择了深结构,层数设定为60层,超过常规7B和13B模型所使用的32层或者40层。在参数受限的情况下,提高层数有利于提高模型的综合能力。此外,相较于InternLM-7B,InternLM-20B使用的预训练数据经过了更高质量的清洗,并补充了高知识密度和用于强化理解与推理能力的训练数据。因此,它在理解能力、推理能力、数学能力、编程能力等考验语言模型技术水平的方面都得到了显著提升。总体而言,InternLM-20B具有以下的特点:

  • 优异的综合性能
  • 很强的工具调用功能
  • 支持16k语境长度(通过推理时外推)
  • 更好的价值对齐

性能评测

在OpenCompass提出的5个能力维度上,InternLM-20B都取得了很好的效果(粗体为13B-33B这个量级范围内,各项最佳成绩)

能力维度 Llama-13B Llama2-13B Baichuan2-13B InternLM-20B Llama-33B Llama-65B Llama2-70B
语言 42.5 47 47.5 55 44.6 47.1 51.6
知识 58.2 58.3 48.9 60.1 64 66 67.7
理解 45.5 50.9 58.1 67.3 50.6 54.2 60.8
推理 42.7 43.6 44.2 54.9 46.4 49.8 55
学科 37.3 45.2 51.8 62.5 47.4 49.7 57.3
总平均 43.8 47.3 49.4 59.2 48.9 51.9 57.4

下表展示了在多个经典数据集上 InternLM 20B 与各个主流开源模型的表现

评测集 Llama-13B Llama2-13B Baichuan2-13B InternLM-20B Llama-33B Llama-65B Llama2-70B
学科 MMLU 47.73 54.99 59.55 62.05 58.73 63.71 69.75
C-Eval (val) 31.83 41.4 59.01 58.8 37.47 40.36 50.13
AGI-Eval 22.03 30.93 37.37 44.58 33.53 33.92 40.02
知识 BoolQ 78.75 82.42 67 87.46 84.43 86.61 87.74
TriviaQA 52.47 59.36 46.61 57.26 66.24 69.79 70.71
NaturalQuestions 20.17 24.85 16.32 25.15 30.89 33.41 34.16
理解 CMRC 9.26 31.59 29.85 68.78 14.17 34.73 43.74
CSL 55 58.75 63.12 65.62 57.5 59.38 60
RACE (middle) 53.41 63.02 68.94 86.35 64.55 72.35 81.55
RACE (high) 47.63 58.86 67.18 83.28 62.61 68.01 79.93
XSum 20.37 23.37 25.23 35.54 20.55 19.91 25.38
推理 WinoGrande 64.64 64.01 67.32 69.38 66.85 69.38 69.77
BBH 37.93 45.62 48.98 52.51 49.98 58.38 64.91
GSM8K 20.32 29.57 52.62 52.62 42.3 54.44 63.31
PIQA 79.71 79.76 78.07 80.25 81.34 82.15 82.54
编程 HumanEval 14.02 18.9 17.07 25.61 17.68 18.9 26.22
MBPP 20.6 26.8 30.8 35.6 28.4 33.6 39.6

总体而言,InternLM-20B 在综合能力上全面领先于13B量级的开源模型,同时在推理评测集上能够接近甚至超越 Llama-65B 的性能。

通过 ModelScope 加载

通过以下的代码加载 InternLM 20B 模型

import torch
from modelscope import AutoModelForCausalLM, AutoTokenizer, snapshot_download

model_id = 'Shanghai_AI_Laboratory/internlm-chat-20b'
model_dir = snapshot_download(model_id, revision='v1.0.0')
tokenizer = AutoTokenizer.from_pretrained(model_dir, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(model_dir, device_map="auto", torch_dtype=torch.bfloat16, trust_remote_code=True).eval()

query = '你好'
response, history = model.chat(tokenizer, query, max_new_tokens=200)
print(response)
query = '请提供三个时间管理的建议'
response, history = model.chat(tokenizer, query, history, max_new_tokens=200)
print(response)

局限性: 尽管在训练过程中我们非常注重模型的安全性,尽力促使模型输出符合伦理和法律要求的文本,但受限于模型大小以及概率生成范式,模型可能会产生各种不符合预期的输出,例如回复内容包含偏见、歧视等有害内容,请勿传播这些内容。由于传播不良信息导致的任何后果,本项目不承担责任。

猜你喜欢

转载自blog.csdn.net/sinat_37574187/article/details/133275304