Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >ChatGLM 更新:LongBench—评测长文本理解能力的数据集,支持 32k 上下文的 ChatGLM2-6B-32K

ChatGLM 更新:LongBench—评测长文本理解能力的数据集,支持 32k 上下文的 ChatGLM2-6B-32K

作者头像
技术人生黄勇
发布于 2024-07-19 10:27:40
发布于 2024-07-19 10:27:40
35800
代码可运行
举报
文章被收录于专栏:技术人生黄勇技术人生黄勇
运行总次数:0
代码可运行

ChatGLM这次推出了两大更新!一个是长文理解能力测试集LongBench,让我们可以检验 ChatGLM 阅读长篇文章的水平。另一个是全新支持32K上下文的ChatGLM2-6B-32K模型!这无疑将会带来更连贯、合理的长篇对话体验。

01

之前有朋友吐槽,ChatGLM 处理长对话时上下文理解得不好,记忆力差。但现在有了新的长文本数据集和支持更长上下文的模型,ChatGLM 的表现大为改善。ChatGLM 推出了评测长文本理解能力的 LongBench 数据集和支持更长上下文的 ChatGLM2-6B-32K 模型。‍‍‍

上下文窗口大小是影响模型解决更广泛问题的重要维度之一。为了解决这一问题,GLM 技术团队基于内部长期的探索,开发了专门针对模型长文本理解能力的评测数据集 LongBench。

该数据集包含了 13 个英文任务、5个中文任务和 2 个代码任务。多数任务的平均长度在5k-15k之间,共包含约4500条测试数据。

从主要任务分类上,LongBench包含单文档QA、多文档QA、摘要、Few-shot学习、代码补全和合成任务等六大类任务 20 个不同子任务。

Few-shot学习(Few-shot Learning)是一种机器学习的范式,旨在解决在极少量(少于常规监督学习所需数据量)标注样本的情况下进行学习和泛化的问题。

LongBench 特点‍

双语:LongBench 能够针对中、英双语的长文本进行更全面的评估。

多任务:LongBench由六大类、二十个不同的任务组成,覆盖了单文档QA、多文档QA、摘要、Few-shot学习、代码补全和合成任务等关键的长文本应用场景。

自动评测:因为模型评测过程中可能产生的高昂成本,尤其是长文本场景下(如人工标注成本或API调用成本)。因此,官方采用了一种全自动的评测方式,旨在以最低的成本,最有效地衡量和评估模型的长文本理解能力。

利用该评测数据集,官方分别对 GPT-3.5-Turbo-16k、Llama2-7B-chat-4k、LongChat-7B-16k、XGen-7B-8k、InternLM-7B-8k、ChatGLM2-6B、ChatGLM2-6B-32k* 等 7 个支持长文本的模型的性能。

在文章《为什么你在用 ChatGPT 的提示词 Prompt 似乎效果不如人意?》中,大模型在不同语言之间的推理能力不同,所以数据集需要包含中英两种语言,以提高模型的表现。‍‍‍

能力变化

为了更有针对性地分析模型在不同文本长度下的相对表现,下图展示了模型在不同文本长度区间上,所有任务上的平均相对分数。

02

使用 LongBench

载入数据

通过Hugging Face datasets来下载并载入LongBench的数据:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from datasets import load_dataset

datasets = ["hotpotqa", "2wikimqa", "musique", "dureader", "narrativeqa", "qasper", "multifieldqa_en", \
    "multifieldqa_zh", "gov_report", "qmsum", "vcsum", "trec", "nq", "triviaqa", "lsht", "passage_count", \
    "passage_retrieval_en", "passage_retrieval_zh", "lcc", "repobench-p"]

for dataset in datasets:
    data = load_dataset('THUDM/LongBench', dataset, split='test')

每个名称对应一个数据集,比如 “hotpotqa” 表示 HotpotQA 数据集,“2wikimqa” 表示 2WikiMQA 数据集,依此类推。

'THUDM/LongBench': 表示数据集所在的路径或名称。在这里,使用了 THUDM/LongBench 表示数据集来自 THUDM 团队的 LongBench 数据集。

split='test': 表示要加载的数据集的分割部分。在这里,使用了 'test' 表示加载测试集数据。

评测

官方提供了以 ChatGLM2-6B 为例提供了一份评测代码。

运行仓库下的pred.py

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
CUDA_VISIBLE_DEVICES=0 python pred.py

在pred/文件夹下得到模型在所有数据集下的输出,此后运行eval.py的评测代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
python eval.py

在result.json中得到在各数据集上的评测结果。

官方的评测结果,朋友们可以自己实验一下。

单文档QA

多文档QA

摘要

Few-shot学习

代码补全

合成任务

这次更新的还有支持32k上下文的模型: ChatGLM-6B-32k。‍

手快的朋友已经下载了模型,并和自家兄弟 ChatGLM-6B 做了对比:给两个模型分别读了一篇万字文章。每个模型根据文章内容提出自己的问题并回答。剔除了引用无效资料和没有目标对象的问题后,下图是统计结果:

从单篇万字文章的统计结果看,ChatGLM-6B-32k 确实提高了知识库调用质量,避免了大量无效输出,可提高效率20%以上。

有朋友觉得大模型很笨,希望它能“一发话就知道怎么写”,但现实中的场景是多种多样的,变化无常。

从上面训练集的内容和评测就可以看出:只有训练集足够大,覆盖足够全,才可能部分满足这种需求,而且训练之后,对话中还需要有良好的提示词。

涉及到的数据集、模型地址‍‍‍‍‍

LongBench

Github:https://github.com/THUDM/LongBench

Huggingface:https://huggingface.co/datasets/THUDM/LongBench

ChatGLM2-6B-32k

https://huggingface.co/THUDM/chatglm2-6b-32k

评测数据地址:

https://huggingface.co/datasets/THUDM/LongBench/resolve/main/data.zip

往期热门文章推荐:

又一家顶级的大模型开源商用了!Meta(Facebook)的 Llama 2 搅动大模型混战的格局

教程|使用免费GPU 资源搭建专属知识库 ChatGLM2-6B + LangChain

工程落地实践|基于 ChatGLM2-6B + LangChain 搭建专属知识库初步完成

工程落地实践|国产大模型 ChatGLM2-6B 阿里云上部署成功

快捷部署清华大模型 ChatGLM2-6B,一键搞定 HuggingFace Space 空间

ChatGLM2-6B 初体验

为什么对ChatGPT、ChatGLM这样的大语言模型说“你是某某领域专家”,它的回答会有效得多?(二)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-08-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 技术人生黄勇 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
ChatGLM2-6B和ChatGLM-6B:开启双语对话生成的新时代
本文将介绍ChatGLM2-6B和ChatGLM-6B这两款中英双语对话模型,探讨它们在不同应用场景下的优缺点,并深入了解它们的训练数据集及获取方式。此外,我们还将了解如何使用这两个模型进行对话生成以及微调它们以适应特定领域或任务。
猫头虎
2024/04/08
6610
ChatGLM2-6B和ChatGLM-6B:开启双语对话生成的新时代
英伟达新研究:上下文长度虚标严重,32K性能合格的都不多
英伟达新研究发现,包括GPT-4在内的10个大模型,生成达到128k甚至1M上下文长度的都有。
量子位
2024/06/04
1370
英伟达新研究:上下文长度虚标严重,32K性能合格的都不多
常见的大模型评测数据集
https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard
码之有理
2024/01/16
8K0
中文大模型 Chinese-LLaMA-Alpaca-2 开源且可以商用
“ Meta 开源 LLAMA2 后,国内出现了不少以此为基座模型训练的中文模型,这次我们来看看其中一个不错的中文模型:Chinese-LLaMA-Alpaca-2 。”
技术人生黄勇
2024/07/19
2360
中文大模型 Chinese-LLaMA-Alpaca-2 开源且可以商用
LangChain + ChatGLM2-6B 搭建个人专属知识库
之前教过大家利用 langchain + ChatGLM-6B 实现个人专属知识库,非常简单易上手。最近,智谱 AI 研发团队又推出了 ChatGLM 系列的新模型 ChatGLM2-6B,是开源中英双语对话模型 ChatGLM-6B 的第二代版本,性能更强悍。
程序员树先生
2023/07/14
6.1K6
LangChain + ChatGLM2-6B 搭建个人专属知识库
ChatGLM2-6B和ChatGLM-6B:双语对话生成的领先之选
ChatGLM2-6B和ChatGLM-6B12是由清华大学的KEG和数据挖掘小组(THUDM)共同开发和发布的两个开源中英双语对话模型。这两款模型基于GLM模型的混合目标函数,在1.4万亿中英文tokens的庞大数据集上进行了训练,并进行了模型对齐2。主要目标是生成流畅、自然、有趣和有用的对话回复3。
默 语
2024/11/20
1750
ChatGLM2-6B和ChatGLM-6B:双语对话生成的领先之选
​港中文提出CLongEval中文基准测试集,准确评估大模型长上下文能力
ClongEval: A Chinese Benchmark for Evaluating Long-Context Large Language Models
数据派THU
2024/04/16
6800
​港中文提出CLongEval中文基准测试集,准确评估大模型长上下文能力
加菲猫的AI大模型初体验
话说加菲猫捡垃圾,买了矿卡P108组装了一台跑AI模型的机器,就开始AI大模型学习之路了。
加菲猫的VFP
2024/04/11
1720
加菲猫的AI大模型初体验
清华第二代60亿参数ChatGLM2开源!中文榜居首,碾压GPT-4,推理提速42%
ChatGLM-6B自3月发布以来,在AI社区爆火,GitHub上已斩获29.8k星。
新智元
2023/09/08
7100
清华第二代60亿参数ChatGLM2开源!中文榜居首,碾压GPT-4,推理提速42%
Jupyter AI:通过聊天生成代码、修改错误,支持各种大模型
“ Jupyter Lab 的GitHub Copilot、Cursor:免费开源的智能开发插件 Jupyter AI。”
技术人生黄勇
2024/07/19
4180
Jupyter AI:通过聊天生成代码、修改错误,支持各种大模型
ChatGLM实战:基于LangChain构建自己的私有知识库
在之前的 ChatGLM 微调训练的实验中,由于数据量较小,调试效果并不理想。同时,数据需要符合 Prompt 的 jsonl 格式,而短时间内整理出合适的项目训练数据并不容易。然而,在社区中了解到了langchain基于本地知识库的问答功能,这或许我也可以自己搭建一个本地知识库,直接导入本地文件,从而实现本地知识库的问答功能。这样,我只需导入一部小说,就能让系统理解小说内容,并回答相关问题。
MavenTalker
2023/09/06
6.5K3
ChatGLM实战:基于LangChain构建自己的私有知识库
LLM 大模型学习必知必会系列(十一):大模型自动评估理论和实战以及大模型评估框架详解
大语言模型(LLM)评测是LLM开发和应用中的关键环节。目前评测方法可以分为人工评测和自动评测,其中,自动评测技术相比人工评测来讲,具有效率高、一致性好、可复现、鲁棒性好等特点,逐渐成为业界研究的重点。
汀丶人工智能
2024/05/26
3K0
LLM 大模型学习必知必会系列(十一):大模型自动评估理论和实战以及大模型评估框架详解
全新近似注意力机制HyperAttention:对长上下文友好、LLM推理提速50%
Transformer 已经成功应用于自然语言处理、计算机视觉和时间序列预测等领域的各种学习任务。虽然取得了成功,但这些模型仍面临着严重的可扩展性限制,原因是对其注意力层的精确计算导致了二次(在序列长度上)运行时和内存复杂性。这对将 Transformer 模型扩展到更长的上下文长度带来了根本性的挑战。
机器之心
2023/11/14
3330
全新近似注意力机制HyperAttention:对长上下文友好、LLM推理提速50%
1分钟快速将智能聊天机器人接入国产ChatGLM开源模型
“ 了解如何在短短1分钟内,让智能聊天机器人与国产ChatGLM开源模型无缝连接,为你的应用增添智能交流能力!”
技术人生黄勇
2024/07/19
1550
1分钟快速将智能聊天机器人接入国产ChatGLM开源模型
LLM资料大全:文本多模态大模型、垂直领域微调模型、STF数据集、训练微调部署框架、提示词工程等
自ChatGPT为代表的大语言模型(Large Language Model, LLM)出现以后,由于其惊人的类通用人工智能(AGI)的能力,掀起了新一轮自然语言处理领域的研究和应用的浪潮。尤其是以ChatGLM、LLaMA等平民玩家都能跑起来的较小规模的LLM开源之后,业界涌现了非常多基于LLM的二次微调或应用的案例。本项目旨在收集和梳理中文LLM相关的开源模型、应用、数据集及教程等资料,目前收录的资源已达100+个!
汀丶人工智能
2024/04/29
3.1K0
LLM资料大全:文本多模态大模型、垂直领域微调模型、STF数据集、训练微调部署框架、提示词工程等
【玩转GPU】训练一个自己的ChatGLM2-6B微调模型
最近清华大学又给我们整出了ChatGLM2-6b,其性能相比上一代拥有了较大的提升。如果想要微调现有的大语言模型,现在也许是个不错的时机。
Moemu
2023/07/17
4.6K1
基于 ChatGLM-6B 搭建个人专属知识库
之前树先生教过大家如何利用微调打造一个垂直领域的 LLM 专属模型。但是微调一方面需要专业知识,通常需要很多计算资源和时间,以便在不同的超参数设置上训练多个模型并选择最佳的一个,另一方面动态扩展比较差,新增和修改原有的数据都要重新微调一次。总得来说对非专业人员不友好。
程序员树先生
2023/05/16
3.9K6
基于 ChatGLM-6B 搭建个人专属知识库
ChatGLM-6B 部署与 P-Tuning 微调实战
自从 ChatGPT 爆火以来,树先生一直琢磨想打造一个垂直领域的 LLM 专属模型,但学习文本大模型的技术原理,从头打造一个 LLM 模型难度极大,所以这事儿就一直搁置了。
程序员树先生
2023/05/06
4.2K4
ChatGLM-6B 部署与 P-Tuning 微调实战
InstructGLM:基于ChatGLM-6B在指令数据集上进行微调
https://github.com/yanqiangmiffy/InstructGLM
致Great
2023/08/25
1.2K0
InstructGLM:基于ChatGLM-6B在指令数据集上进行微调
ChatGLM2-6B和ChatGLM-6B:开源双语对话模型,探索无限对话可能!
本文介绍了ChatGLM2-6B和ChatGLM-6B这两个开源的中英双语对话模型,它们由清华大学的KEG和数据挖掘小组(THUDM)开发和发布。这两个模型是基于GLM模型的混合目标函数,在1.4万亿中英文tokens数据集上进行训练,并实现了模型对齐。本文将探讨它们的优势、应用场景、训练数据集来源以及如何使用它们进行对话生成和微调。
猫头虎
2024/04/08
7280
ChatGLM2-6B和ChatGLM-6B:开源双语对话模型,探索无限对话可能!
推荐阅读
相关推荐
ChatGLM2-6B和ChatGLM-6B:开启双语对话生成的新时代
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验