社区供稿 | 新版本源2.0大模型发布:Yuan2-2B-July-hf

简介: 近日,浪潮信息的新一代基础语言大模型源2.0 迎来了重要更新。

引言

近日,浪潮信息的新一代基础语言大模型源2.0 迎来了重要更新。浪潮信息正式发布了 Yuan2-2B-July-hf 模型,标志着源2.0系列模型在性能和功能上的进一步提升。这一版本将为开发者和研究人员提供更强大的工具,以满足各种语言处理需求。

模型介绍

模型名称:

Yuan2-2B-July-hf

发布时间:

2024 年 8 月

源2.0 是浪潮信息发布的全新一代基础语言大模型系列,包含源2.0-102B、源2.0-51B 和源2.0-2B。基于源1.0,源2.0 利用更多样的高质量预训练数据和指令微调数据集,显著提升了模型在语义理解、数学推理、代码生成和知识获取等方面的能力。我们提供了全套预训练、微调和推理服务的脚本,支持研发人员进行深度开发。

开源信息

源2.0系列模型的完整源码和文档已经开源

模型地址:

https://modelscope.cn/models/IEITYuan/Yuan2-2B-July-hf

更新内容

1.英文生成与推理能力的显著提升

  • 在 HumanEval 测试集上的准确率提高至 62.8%,代码生成的准确性显著增强。
  • 在 GSM8K 数学推理任务中的准确率达到 68%,解决复杂数学问题的能力得到提高。
  • 在 MATH数学竞赛中的准确率为 31.2%,在数学推理方面的表现有所提升。

2.编程语言支持的广泛扩展

  • 新增了对 C、JavaScript、SQL、Shell 等多种编程语言的支持,强化了代码生成能力。
  • 强化了添加代码注释、生成单元测试等代码任务能力,提高了代码质量和维护性。

3.任务能力的全方位增强

  • 指令跟随:提升了对复杂指令的理解和执行能力。
  • 文档翻译:改进了多语言翻译的准确性,支持更多语言。
  • 文档总结:增强了长文本总结的能力,提供更为简洁和准确的摘要。
  • 检索增强生成(RAG):在检索和生成任务中表现更加优异。

4.支持更长的序列长度

新版本模型支持 16384个token的序列长度,能够处理更长的文本输入,提高了长篇文档处理的能力,确保生成结果的连贯性和一致性。

使用指南

Yuan2-2B-July-hf模型具备强大的文本生成和代码任务能力,在云实例或本地部署上均可高效运行,只需满足基本的硬件要求。推荐的运行环境为阿里云的PAI-DSW,该平台能够提供稳定且高效的计算资源,确保在多种任务中的最佳表现。

1.运行环境

在开始使用模型之前,请确保您的环境符合以下要求:

  • 推荐运行环境: 阿里云PAI-DSW
  • 最低GPU显存:
  • 推理:6GB
  • 微调:80GB

2.安装所需库

使用以下命令安装所需的Python库:

pip install transformers==4.30.2 torch modelscope

3. 下载和加载模型

Yuan2-2B-July-hf模型支持通过多个平台进行下载,包括魔搭、HuggingFace、OpenXlab、百度网盘、WiseModel等。示例代码使用ModelScope库下载并加载模型:

# 导入所需的库
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
# 源大模型下载
from modelscope import snapshot_download
model_dir = snapshot_download('IEITYuan/Yuan2-2B-July-hf', cache_dir='./')
# 定义模型路径
path = './IEITYuan/Yuan2-2B-July-hf'
# 定义模型数据类型
torch_dtype = torch.float16 # P100
# 获取模型和tokenizer
print("Creat tokenizer...")
tokenizer = AutoTokenizer.from_pretrained(path, add_eos_token=False, add_bos_token=False, eos_token='<eod>')
tokenizer.add_tokens(['<sep>', '<pad>', '<mask>', '<predict>', '<FIM_SUFFIX>', '<FIM_PREFIX>', '<FIM_MIDDLE>','<commit_before>','<commit_msg>','<commit_after>',
'<jupyter_start>','<jupyter_text>','<jupyter_code>','<jupyter_output>','<empty_output>'], special_tokens=True)
print("Creat model...")
model = AutoModelForCausalLM.from_pretrained(path, torch_dtype=torch_dtype, trust_remote_code=True).cuda()
print("Done.")

4. 文本生成测试

使用以下代码进行文本生成测试:

# 输入和生成
prompt = "请问目前最先进的机器学习算法有哪些?"
inputs = tokenizer(prompt, return_tensors="pt")["input_ids"].to("cuda:0")
outputs = model.generate(inputs, do_sample=False, max_length=1024)
# 如果有长文本输出, 参数加上'repetition_penalty=1.2'设置重复性惩罚
# outputs = model.generate(inputs, do_sample=False, max_length=1024, repetition_penalty=1.2)
output = tokenizer.decode(outputs[0])
clean_output = output.replace("<sep>", "\n\n").replace("<eod>", "")
print(clean_output)

在生成长文本时,可以通过增加 repetition_penalty=1.2 参数来设置重复性惩罚,进一步优化生成结果。

5. 测试效果优化

为了确保最佳的测试效果,请注意以下几点:

ž输入:确保输入的问题清晰且具有一定的复杂性,以便模型能够充分展示其能力。

ž参数:调整 max_length 和 repetition_penalty 参数,根据不同任务需求优化生成结果。

6. 总结

通过上述步骤,可以顺利调用Yuan2-2B-July-hf模型,并进行有效的测试。在实际应用中,建议结合具体任务需求,对生成参数进行微调,以获得最佳效果。

测试效果

此次发布的Yuan2-2B-July-hf 模型经过了一系列测试验证,证明其在多个关键能力上展现了卓越的性能。通过对新模型的强化,我们发现它在英文生成与推理、多编程语言支持、文档翻译等任务中都取得了显著提升。

在英文生成与推理能力方面,我们提出了一个涉及多步推理的数学问题。新模型不仅能准确理解问题,还能生成完整的解题过程,最终正确得出David拥有34颗糖果的结论。这个结果不仅体现了新模型在复杂数学推理中的优越性,更证明了其自然语言处理能力的增强。

image.png

在文档翻译任务中,新模型成功将一段包含专业术语的中文技术文档翻译为英文。翻译结果精准流畅,逻辑清晰,展现了源2.0在应对复杂文档翻译任务时的显著进步。

image.png

新模型的多编程语言支持能力也得到了全面验证。我们要求模型将Python代码转换为C、Java和C++语言的等价代码。新模型顺利完成了这一任务,生成的代码正确无误,证明了其在多编程语言支持上的出色表现。

image.png

此外,在代码生成能力测试中,模型解决了一个经典的编程问题,成功生成了符合要求的Python代码,并且得到了正确的结果。这一测试进一步展示了新模型在代码生成与算法实现中的高效性和准确性。

image.png

这些测试结果充分证明了Yuan2-2B-July-hf模型在处理复杂任务时的出色表现,进一步验证了其在实际应用中的广泛潜力和价值。

总结

Yuan2-2B-July-hf 版本的发布为开发者和研究人员提供了更加强大和全面的语言处理能力。新版模型不仅在文本生成和推理能力上取得了显著进步,还扩展了编程语言支持和任务处理能力,满足了更广泛的应用需求。该模型未来在各个领域的广泛应用和创新发展值得期待。

更多信息,请访问以下页面:

Yuan 2.0 Github 项目主页:

https://github.com/IEIT-Yuan/Yuan-2.0

Yuan 2.0 系列模型Hugging Face主页:

https://huggingface.co/IEITYuan

Yuan 2.0 系列模型Modelscope主页(点击阅读原文直达):

https://modelscope.cn/profile/YuanLLM

相关文章
|
4月前
|
存储 人工智能 搜索推荐
社区供稿 | YuanChat全面升级:知识库、网络检索、适配CPU,手把手个人主机部署使用教程
在当下大语言模型飞速发展的背景下,以大模型为核心的AI助手成为了广大企业和个人用户最急切需求的AI产品。然而在复杂的现实办公场景下,简单的对话功能并不能满足用户的全部办公需求,为此我们发布了最新版的YuanChat应用
|
4月前
|
存储 自然语言处理 Linux
非常高兴地宣布,我们发布了RunFlow的第一个版本,这是一款全新且强大的效率工具
RunFlow v1 发布!这是一个跨平台的效率工具,类似 Wox、PowerToys、Alfred 和 Raycast。特色包括:跨平台支持(暂不包括Linux)、多语言(默认英/中文,可扩展)、自定义样式与主题、关键字驱动功能、后置匹配技术、实时刷新结果、上下文菜单、工具栏、固定关键字、可交互界面、独立窗口、热点事件、专注模式和数据安全同步。支持插件扩展,开发插件语言无限制,基于JetBrains Compose Multiplatform。
42 1
非常高兴地宣布,我们发布了RunFlow的第一个版本,这是一款全新且强大的效率工具
|
4月前
|
边缘计算 安全 测试技术
Excelize 开源基础发布 2.8.1 版本,2024 年首个更新
Excelize 是 Go 语言编写的用于操作电子表格办公文档的开源基础库,2024年2月26日,社区正式发布了 2.8.1 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。
60 0
Excelize 开源基础发布 2.8.1 版本,2024 年首个更新
|
4月前
|
小程序 物联网 测试技术
【社区每周】小程序基础库更新2.9.9版本(1月第一期)
【社区每周】小程序基础库更新2.9.9版本(1月第一期)
45 6
|
11月前
|
自然语言处理 数据可视化 项目管理
SolidUI社区-v0.4.0版本发布
SolidUI社区-v0.4.0版本发布
39 0
|
人工智能 自然语言处理 数据可视化
版本动态 | SolidUI 0.2.0 版本发布
版本动态 | SolidUI 0.2.0 版本发布 一句话生成任何图形
87 0
版本动态 | SolidUI 0.2.0 版本发布
|
12月前
|
自然语言处理 Kubernetes 数据可视化
版本动态 | SolidUI 0.3.0 版本发布
版本动态 | SolidUI 0.3.0 版本发布
52 0
|
机器学习/深度学习 计算机视觉 异构计算
设置和使用DragGAN:搭建非官方的演示版
DragGAN的官方版还没有发布,但是已经有非官方版的实现了,我们看看如何使用。
339 1
|
数据可视化 开发工具 git
实录之Cocoapods发布第一个自己的库
自己做开发也快五年了,基本都是在做公司的业务逻辑。这期间也收集了一些开发过程中比较好用的一些方法。把他们都放在了我之前写的一个轮子上面。[ZPCategory](https://github.com/cAibDe/ZPCategory) 以前基本都只是写轮子到自己的[Github](https://github.com/cAibDe)上面需要用的时候就在下载下来,然后拖入到需要的项目中去。逐渐发现这样有点麻烦了。就准备自己发布一个库,反正基本开发过的项目都用Cocoapods。这样可以一劳永逸。
实录之Cocoapods发布第一个自己的库
|
SQL 前端开发 测试技术
版本动态 | SolidUI 0.1.0 版本发布
项目地址:https://github.com/CloudOrc/SolidUI
104 0