大模型评估标准集制作,工作流程,及必备技能
생성일: 2025년 5월 26일
답변에 사용된 모델 Deep Research by Chat01
생성일: 2025년 5월 26일
답변에 사용된 모델 Deep Research by Chat01
大模型评估标准集制作,工作流程,及必备技能
请问你希望我从哪个角度来介绍大模型评估标准集的制作?例如:
提供这些信息可以帮助我更好地满足你的需求。
中文语言模型,通用能力,案例分析,4全部
好的,我将为你整理中文语言模型通用能力评估标准集的制作流程、常见工作流程、相关案例分析,以及所需的技能要求。 我会结合实际使用中流行的评测方法(如CMMLU、Elo对战、MMLU中文子集等),说明如何构建评估集、设计任务流程,并列举企业或社区实际案例。很快整理好后与您分享。
在构建中文大语言模型的评估基准时,首先需要明确评测任务的类别和覆盖面。常见任务类型包括:问答(如阅读理解、知识问答等)、语言理解(如分类、自然语言推理)、推理(数学推理、逻辑推理)、对话与写作(开放式生成、摘要、翻译等)等。这些任务类别应尽量全面,涵盖模型在理解、知识、推理、生成等方面的通用能力。比如CLUE基准就精心选择了单句/句对分类以及机器阅读理解等九种任务,以测试模型不同方面的语言理解能力 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。在任务选择时应注重多样性和代表性,避免任务过于单一或简单 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。同时,可结合中文的特点设计评测内容,如加入成语完形填空、古文理解等具有中文特有现象的任务,以考查模型处理中文特有语言现象的能力 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。
评测标准集中的题目设计需要遵循明确的规范,以确保题目质量和难度适当。首先,题目应措辞清晰、语义明确,避免歧义和漏洞。题干应当直接对应所测能力,避免无关信息干扰。其次,题目的难度应适中:既不能过于简单、一眼可答,也不应完全超出当前模型能力范围。 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 提出只有具有挑战但可解的任务才具有区分度,过简单或已被彻底解决的任务应避免收录。另外,不同题目在难度上应有一定梯度,以便全面评价模型在简单到复杂场景下的表现。对于选择题类任务,要保证唯一正确答案且干扰选项具有迷惑性;对于开放问答或生成类任务,需要预先制定参考答案或评价标准,以便后续自动或人工评分。设计题目时还应考虑一致性:不同题目遵循统一的格式和说明风格(例如明确告诉模型回答所需的输出格式),以减少模型因理解格式而非内容出错的可能。最后,针对中文评测,还应确保题目用词符合中文语言习惯,必要时可以参考权威题库或教材用语,保证题目专业性和标准性。
评估数据可来自多种渠道,常见来源包括开源数据集、人工设计和翻译改编三大类:
实际制作评测集时,可将以上多种来源结合使用:优先汇总公开数据,辅以人工命题扩充,再对部分外语高质量题目进行翻译本地化,从而获得覆盖面广且难度适宜的题目集合。
拿到初始数据后,需要经过系统的清洗和标注流程以确保数据质量:
数据清洗:首先清除重复题目和高度相似的题目,避免模型因为记忆或模式匹配而取巧。然后,检查并修正格式错误(如编码问题、错别字、不一致的符号等)。对从网络获取的原始文本要过滤噪音(如去除广告、HTML标签)。对于问答类数据,要确保题干和答案配对正确,一问对应一个答案。如数据量很大,可以编写脚本自动检测异常(例如选项数量不符、答案缺失等)并人工复核。CLUE构建过程中也提到通过交叉验证的方法过滤过于简单的样例,从而提高数据集的辨别难度 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。类似地,可以依据模型在小样本上的初步正确率来筛除100%容易的题目,以免它们拉高基准分数上限。
难度平衡:清洗后,应分析题目难度分布,避免全部题目都过易或过难。可参考人类答题的正确率或模型试跑结果,将题目难度分层,剔除极端简单题,并酌情保留少量极难题以测试模型上限。必要时可增删题目以平衡不同难度层次的比例。
人工审核与标注:对于客观题(如单选题、判断题),需要确保每道题都有唯一正确答案并已正确标注。在数据汇集中,不同来源的答案标注可能不一致,需要统一格式(例如将选项A/B/C/D统一为数字或字母标记)。最好由至少两名标注员交叉核对答案,对有歧义或错误的题目进行讨论修正。对于主观题(如简答、写作任务),可以在数据集中提供参考答案或评分要点。标注员需根据预先制定的标准对参考答案进行验证,确保其准确全面。如有可能,可提供多参考答案或允许答案的多种表述,以方便后续自动评测匹配。
标注工具使用:在人工标注和审核过程中,可以借助专业的标注工具或平台提升效率。例如,使用Doccano、LabelStudio等工具标注分类和问答数据,能方便地管理标注进度和人员协作;对于需要大规模人工回答的问题,可采用众包平台并设计严格的质控机制(加入测试题、抽样检查等)以确保标注质量。
经过清洗与标注,评估标准集的数据应当保证干净无误、难度适宜且标注一致,为后续模型评测打下可靠基础。
为了客观评估模型能力并防止调优过拟合,通常将标准集划分为验证集(dev)和测试集(test)。划分时应遵循以下原则:
随机取样,分布一致:从清洗后的题目池中按照一定比例随机抽取作为验证集,其余作为测试集。要确保两部分在题目类型、难度分布上大致一致。例如如果包含多个领域或任务类型,验证集与测试集在各类别上的占比应与整体相近,以避免某模型“专长”某子集而夸大性能。CLUE基准构建中即采用了随机打乱后划分训练集、开发集和测试集的方法 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。这样能保证不同集合之间分布均衡,评测更公平 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。
验证集用途:验证集主要用于模型开发过程中的参数调试和Few-Shot示例选择等。开发者可以在验证集上尝试不同提示词(prompt)设计、Few-Shot示例、超参数设置,从而大致了解模型表现和问题所在。然而要注意控制验证集信息泄漏,不能对验证集反复微调模型参数(避免将验证集当训练集)。
测试集用途:测试集用于最终评估模型的真实泛化能力。测试集应严格保密,在模型最终定型之前不被使用,以防模型有机会“记住”测试题解答。很多权威基准都会隐藏测试集答案,只提供评测服务器。例如CLUE上线了在线榜单,提交模型对测试集的预测,由服务器计算分数但不公开测试集具体内容。这种机制可以有效防止测试集泄露,确保评测结果的可信度。
数量比例:验证集和测试集的大小取决于数据总量和评测需求。一般来说,如果题目较多,可按例如8:2的比例划分(80%用于测试,20%验证)。若题目总数有限,则可减少验证集比例(甚至不设验证集,直接所有题用于测试,但这样评测前就无法调试模型了)。像一些多学科综合测试(如CMMLU每个子科目只有百余道题 (XiaHan19/cmmlu · Datasets at Hugging Face) ),通常给出少量开发题(比如每个科目5题)供Few-Shot示例或调试,剩下作为正式测试 (XiaHan19/cmmlu · Datasets at Hugging Face) 。总之,要在留足测试难度的同时,也给予模型开发者一定反馈空间。
完成划分后,应锁定测试集不再改动,并利用验证集充分调优模型或提示设计,以期模型在最终未知的测试集上取得真实水平的表现。
在准备好高质量的数据后,需要将评估集构建为模型可读取、评测工具可调用的形式。这一步包含将原始题目转换成统一的输入输出格式、制定评测时的提示模板等工作:
格式规范化:根据任务类型设定统一的数据格式。例如,对于选择题,可以将题目、选项和答案组织为JSON或CSV格式;对于问答对话,可以采用每行一个JSON包含{"prompt": ..., "answer": ...}的形式。统一的结构便于后续批量加载和处理。
模板设计:为不同任务设计提示(prompts)模板,确保在评测时以正确形式提问模型。比如,对于单项选择题,可采用模板:"问题:{题干}\n选项:A. {选项A} B. {选项B} ...\n请给出正确答案的选项。";对于阅读理解,则可能需要提供一段文章然后提问。模板设计要保证模型能够充分理解问题需求,同时不同模型之间使用等价的提示以保证公平。如果有Few-Shot评估需求,则还需在模板中插入若干示例。比如zero-shot提问只给问题本身,而few-shot会在正式问题前呈现格式相同的示例问答。
Few-Shot示例挑选:在few-shot评测设置下,需要为每个任务准备一小组代表性示例(通常来自验证集或训练集中模型未见过的数据)。这些示例应能正确示范任务要求,并覆盖多样的子类型。如一个摘要任务few-shot提示中可以提供新闻摘要、小说摘要等不同风格例子。示例数量一般为1到5个,过多会超出模型上下文长度且可能使提示冗长。选择示例时还应避免包含待测问题答案或泄露测试信息。
多语言或多模态支持:如果评估集包含不同语言或模态(如图像+文本),需在构建时考虑兼容性。针对中文以外的题目,可在提示中明确标注语言(例如 "Translate the following Chinese question to English and answer:" 在跨语言任务中)。对于多模态题目,需要确定提供图像的方式(如给模型图像URL或描述)。像M3Exam这类含图的题 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) ,评测框架需支持将图像输入模型的多模态接口。
构建完成后,应对评估集做一次全面自测:使用几个已知模型跑通全部任务,检查格式是否有误,评分脚本是否正常运行。这确保真正评测时流程顺畅无误。
有了标准化的评估集,就可以将模型接入进行评测。关键是搭建一个统一的评测接口来调用不同模型,并严格控制评测过程的一致性:
模型接入:针对要评测的每个模型,需要编写相应的接口代码。例如,调用OpenAI的GPT模型可使用其API,通过HTTP请求发送prompt并获取回复;调用本地的ChatGLM或InternLM模型则可能使用HuggingFace Transformers接口加载权重并推理。应该封装统一的函数,例如generate_answer(model, prompt),内部根据模型类型分别实现调用逻辑。这样不同模型的输出流程一致,便于批量评测。接入时要注意参数设置统一,例如温度、最大生成长度、top_k/top_p等,避免因采样随机性导致结果波动。
Zero-Shot与Few-Shot评测:根据评测方案选择零样本或小样本设定。Zero-Shot评测中,模型仅看到问题描述,不提供任何示例,直接作答。这测试模型纯粹的即时推理能力。例如在CMMLU这样多学科选择题基准中,多采用零样本让模型直接回答各领域问题,以模拟“裸考”情形 (CMMLU: Measuring massive multitask language understanding in Chinese) 。Few-Shot评测则会在提示中加入若干示例问答,让模型参考这些示例再回答新问题。这可以提升模型表现,但需确保所有模型看到相同的示例和顺序。评测者可以对比zero-shot和few-shot下模型分数,以衡量它对范例的依赖程度。
提示词规范:为了公平比较,所有模型应使用相同的提示模板和措辞。尤其在多轮对话模型评测中,要统一使用例如“系统提示+用户提问”的格式。有的模型(如ChatGPT系列)对指令格式较敏感,因此在设计prompt时需考虑兼容性。例如,可以在问题前加一句"请用中文作答:"确保模型以中文回答。对于要求列举步骤的任务,可以在提示中明确要求模型输出推理过程。这种Chain-of-Thought提示在数学或逻辑推理题中常被使用,以测试模型的逐步推理能力。无论哪种,所有模型必须采用相同提示流程,以免提示不当造成成绩不具可比性。
输出规范:评测时通常要求模型输出特定格式以利于评分。比如选择题只需输出选项字母或编号,判断题输出“对/错”,简答题直接输出答案句子。如果模型输出包含多余内容(如解释、寒暄),评测脚本应能提取有效答案部分或在提示中预先告诉模型“请直接给出答案,不要多余解释”。统一的输出规范有助于后续打分的自动化。
在模型接入与执行评测时,需实时记录每道题模型的回答和用时,以及发生的错误(如超时、无响应)情况。确保所有模型都在相同环境和相同测试集下运行完毕后,才能进入结果汇总与评分环节。
评测完成后,需要对模型输出的答案进行客观的评分。根据任务类型不同,可采用多种自动评价指标:
准确率和精确匹配:对于选择题、判断题、填空题等有标准唯一答案的任务,直接使用准确率(Accuracy)作为评测指标,即模型答案与标准答案完全一致的比例。这类客观题打分最为直接可靠。若类别不平衡也可计算宏平均F1等指标,但通常准确率已足够直观。在CLUE等分类任务中,模型的最终成绩就是各子任务准确率或F1的平均值 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。
文本重叠指标:对于生成类任务,如摘要、翻译、问答这类有参考答案的开放题,可采用传统的N-gram重叠率指标。例如BLEU常用于机器翻译评价,衡量译文与参考译文在字词序列上的重合程度;ROUGE(尤其ROUGE-L)常用于摘要任务,统计生成摘要和参考摘要的共现句子序列覆盖率。这些指标计算方便且有一定参考价值,但也存在局限——模型可能用同义句表达导致分数偏低,或通过拼凑参考句子取得高分却不一定真正理解。
语义匹配指标:为弥补表层匹配的不足,可以使用基于语义表示的度量,如BERTScore。BERTScore利用预训练语言模型的向量表示计算生成文本与参考答案在语义上的相似度,即比较每个词向量的匹配分数,更关注语义等价而非字面匹配。此指标在中文评测中也适用,能一定程度上缓解同义表达评分不足的问题。
特定任务指标:对于代码生成等特殊任务,可采用专门的自动评测。典型如HumanEval测评编程题时,通过运行模型生成的代码看是否通过预设的单元测试来判定正确与否。EvalPlus框架进一步扩充了HumanEval的测试点数量,对代码准确性进行更加严格的自动评估 (evalplus/evalplus: Rigourous evaluation of LLM-synthesized code) 。再比如开放领域问答任务,可构造知识库检索看看模型答案是否包含正确实体。
LLM自动评分:随着大模型自身能力增强,近期流行利用GPT等语言模型作为“评委”来自动打分。具体做法是将模型的回答和参考答案一并输入一个强大的GPT-4模型,并让其根据预先制定的评分标准打分或做偏好判断。例如,在SuperCLUE开放题评测中,主办方就引入GPT-4/Turbo作为“超级评审”,提升了主观题评分的准确性 (SuperCLUE: 中文通用大模型综合性基准 - GitHub) 。GPT评审可以采取两种形式:一是得分制,让评审模型给出0-5星这类评分,二是比较制,让评审模型在不同模型答案中选出更优者。这种方法利用了模型对语言细微差异的敏感性,能自动评估连贯性、准确性等人为难以量化的维度。需要注意设置明确的评分Prompt,确保评审模型按要求(例如只考虑事实准确,不被文风所惑)打分。此外,应通过少量人工校验来验证GPT评审与人类一致性,以确保可靠。
在实际应用中,往往多种指标结合使用。例如,对于生成长文本的能力评测,可以同时报告ROUGE、BERTScore以及GPT-4打分,以全面衡量模型表现。自动打分可以快速处理大量结果,但对于模型输出的合理但不在参考答案中的内容,纯自动指标可能无法完全公正,因此通常还需结合人工评估作为补充。
自动指标无法覆盖的主观质量、创意等方面,需要引入人工评估来补充。人工评测的流程设计应尽量做到客观、公平,常用做法包括双盲评估、Elo对战和A/B测试等:
双盲评估:在人工对比不同模型输出时,采用“双盲”可以最大程度减少偏见。具体是指:评估人员不知道所查看的答案来自哪个模型,甚至不知道有哪些模型参与(以免对某些著名模型有先入为主印象)。同时,评估人员也不直接看到标准答案(防止只按标准答案匹配来打分)。他们只根据预设的评价维度对各个匿名答案打分或排序。双盲能保证评价只基于内容好坏,杜绝品牌或身份偏见,也是学术比赛常用的评审方式。
评价指标与Rubric:人工评估前需要制定明确的评价指标或评分标准(Rubric)。比如,对话生成可以从“是否准确回答问题”“语气和礼貌”“逻辑连贯性” 等方面打分;创意写作可以从“内容丰富度”“语言优美度”“一致性”打分。每个维度定义1-5分的具体含义,以指导评委打分保持一致。评估人员在评测前应经过培训熟悉Rubric,并可先进行一些样本的打分练习,确保不同人理解一致。评估过程中可安排多名评委独立打分,最后取平均或多数意见,以降低单一评委偏好带来的随机性。
Elo对战:这是近年来在大模型竞技中常用的方法,即让模型两两对比“对战”,由人判断哪一方给出的答案更好,然后根据Elo积分算法更新模型的分数和排名。具体流程是:每次评委同时看到同一道题目下两个模型的回答,对比后选择优胜者或判断平局。一轮轮对战后,通过Elo公式可以得到各模型的相对评分。像Chatbot Arena和国内的Compass Arena等平台就采用这种多人对战累计Elo的方式排名模型实力。Elo对战的优点是判断相对优劣往往比绝对打分更简单,评委只需做A/B选择即可。而且Elo分可随着对战增多逐渐稳定,反映模型综合表现。然而Elo机制需要相当数量的对战次数才能收敛排名,评估成本较高。
A/B测试:广义的A/B测试指将两个方案交替呈现给用户观察反馈。在模型评测中,常用作偏好测试:将模型A和模型B的回答随机顺序展示给用户,请用户选择更喜欢哪一个(或判断是否质量相当)。这与Elo对战类似,但通常A/B测试更多用于产品上线前的人机对比或者新旧模型对比,由实际终端用户来打分,以评估用户体验差异。A/B测试需要测试规模足够大、用户背景多样,结果才具有统计显著性。
人工评估安全与伦理:在人工评测开放式回答时,还需考虑人员安全和数据安全。评委可能会看到模型生成的不当内容(例如偏见、色情等),需要提前做好筛除或告知。对评估用的未公开模型输出也应签署保密协议,避免泄露。
综合而言,人工评估应与自动评估相结合。如先用自动指标筛选出模型在客观指标上的差距,再用人工评比细化主观质量上的高低。这种多层次的评测流程既保证了效率(大量题目用机器判分),又确保了全面性(关键项目由人工最终裁定),从而得到对大模型能力更加可靠、公正的评价结果。
下面选取几个知名的中文语言模型评估基准,介绍其评估维度、任务类型、数据构成和创新点。
评估维度与任务类型:CLUE(Chinese Language Understanding Evaluation)是首个大规模中文自然语言理解评测基准,于2020年推出。它包含9个不同的NLU任务,涵盖单句分类、句对分类和机器阅读理解三大类别 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。具体任务包括新闻标题短文本分类(TNEWS,15类新闻主题)、应用描述长文本分类(IFLYTEK,119类应用场景)、关键词识别(CSL,根据论文摘要判断关键词真假)、语义相似判断(AFQMC,判断问句对语义是否相同)、自然语言推理(OCNLI,判断句子对的蕴含关系)、代词消解(CLUEWSC2020,根据上下文判断代词指代是否正确)等,以及两项阅读理解任务:篇章问答提取(CMRC 2018,从文章中抽取问题答案)和多选阅读理解(C<sup>3</sup>对话阅读理解,以及成语完形填空(CHID,在句子空格处选择正确成语)) (CLUE: A Chinese Language Understanding Evaluation Benchmark) (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。通过这些任务,CLUE评估模型在文本分类、语义理解、推理和阅读理解等多个方面的能力。
数据构成:CLUE的九个子任务数据主要来自公开的数据集,同时补充了新构建的数据。例如,TNEWS数据来自今日头条新闻标题分类语料,IFLYTEK来自爱飞翔公司提供的应用描述分类数据,OCNLI则是模仿英文MNLI而由人工在中文语料上编写的蕴含判断数据 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。值得一提的是,CLUE团队新创建了两个数据集:** CLUEWSC2020**(中文Winograd模式挑战)和CSL(中文学术论文关键词)以填补中文公开数据中对应任务的空白 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。CLUEWSC2020从文学作品中挑选句子,由语言学专家人工标注代词与名词是否指代同一实体,共1838个二分类问题 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。CSL数据则来源于中文核心期刊论文摘要及关键词,通过引入假关键词混淆,要求模型判断给定关键词列表是否都是原始关键词,以评估模型的抓取关键信息能力 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。总体来看,CLUE汇集了七个公开数据集和两个新数据集 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。数据量从几千到几十万不等,每个任务划分训练集、开发集和测试集,官方提供线上榜单对测试集进行评测认证。
创新点:作为中文第一个综合性评测基准,CLUE有多方面创新:(1) 覆盖广泛任务:它将分类、匹配、阅读理解等多种NLP任务纳入同一框架,弥补了此前中文缺乏统一标准评测的局面 (CLUE: A Chinese Language Understanding Evaluation Benchmark) (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。(2) 中文特色:CLUE特别关注中文语言现象,创建了代词消解、成语填空等具有中国特色的挑战任务,考察模型对四字成语这种中文特有语言单位的理解能力 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。(3) 难度适中:CLUE选择任务时强调了“具有挑战但可解”,筛除了太简单的任务,并通过交叉验证过滤了一些容易样本,保证了基准的区分度 (CLUE: A Chinese Language Understanding Evaluation Benchmark) (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。(4) 诊断集与分析:CLUE发布了一个小型的诊断集,包含九种语言学或逻辑现象,用于分析模型错误类型 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。此外CLUE提供了排行榜和工具包(如PyCLUE),方便研究者提交模型结果、快速评估模型在各子任务的表现 (CLUE: A Chinese Language Understanding Evaluation Benchmark) 。总体而言,CLUE开创了中文NLU评测的先河,推动了中文预训练模型的发展,其榜单一度成为衡量中文模型效果的权威标准。
图:M3Exam基准中不同语言、难度和题型的示例。左侧是英文中等难度的科学题和中文高中难度的历史题(包含图表);右侧是斯瓦希里语、泰语、爪哇语等低资源语言的题目。标签显示了题目语言、教育水平(low中学/ mid高中/ high大学)、科目领域,以及是否需要图片信息 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。
评估维度与任务类型:M3Exam是阿里达摩院提出的一个多语言、多模态、多难度的大模型评测基准 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。它主张以人类考试题来评估通用人工智能能力,涵盖语言理解、领域知识和问题解决等多种技能 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。M3Exam包含了9种语言的真实考试真题,既有英语、中文这样的高资源语言,也包括斯瓦希里语、泰语、爪哇语等低资源语言 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。题目形式以选择题为主,每题提供题干和若干选项,大约23%的题目还需要处理图像(如阅读示意图、图表等)才能作答 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。在难度上,M3Exam按教育阶段分为三层:中学水平、高中水平和大学专业水平,分别对应低级、中等、高级难度 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。因此,其评估维度横跨多语言能力(看模型能否理解不同语言的问题)、多模态理解(看模型处理图文混合信息的能力)、以及不同认知水平的问题解答能力。
数据构成:M3Exam的数据源于各类正式考试真题,包括中学会考、高考以及大学入学考试等,不仅涉及学术科目(数学、物理、历史等),也涵盖通识知识和语言能力测试题。据论文介绍,M3Exam共收录了12,317道多选题,分属9种语言、3个学历层级 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。其中约1/4的题目带有图片,例如理科考试中常见的几何图形、历史题中的统计图等 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。这些题目均为人工出题且权威发布,质量高且难度可信。数据按语言分别存储,并划分出了开发集(dev)和测试集(test),方便在few-shot时选取示例或进行零样本评估 (GitHub - DAMO-NLP-SG/M3Exam: Data and code for paper "M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models") 。需要强调的是,为了防止泄题,M3Exam只开放题目本身,标准答案进行了加密,需通过许可证获取 (GitHub - DAMO-NLP-SG/M3Exam: Data and code for paper "M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models") 。
创新点:M3Exam是第一个将多语言和多模态这两大复杂因素融入统一基准的评测集。它有几点创新:(1) 真实考试场景:与传统NLP基准偏学术任务不同,M3Exam直接取材人类考试,问题设置更贴近综合智能考察。例如,一道高考物理题可能需要模型同时具备物理公式推导和阅读图表的能力,这比单纯NLP任务更具挑战,也更能体现AGI所需的多种技能融合 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。(2) 三重多样性:M3Exam提出了“Multilingual, Multimodal, Multilevel”三M特性 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) ,在语言上覆盖从高资源到低资源,在模态上结合文字与图像,在难度上跨度大。这种三维度的多样性在此前评测中未有先例。(3) 发现模型短板:通过M3Exam的测试,研究者观察到即使最先进的GPT-4模型,依然难以在某些维度上取得理想成绩:例如对低资源语言(斯瓦希里语等)理解很吃力,多模态复杂问题的正确率也远低于单模态文本题 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。这为后续研究指明了改进方向。(4) 统一评估框架:M3Exam发布了配套的代码和评测脚本,方便社区复现结果 ([2306.05179] M3Exam: A Multilingual, Multimodal, Multilevel Benchmark for Examining Large Language Models) 。它证明了利用人类考试作为测试集的可行性,并为不同语言的大模型评测提供了统一基准,有助于跟踪模型在跨语言、多知识层面的发展。
评估维度与任务类型:CMMLU(Chinese Massive Multitask Language Understanding)和C-Eval都是面向中文复杂知识和推理能力的评测基准。它们借鉴了英文的MMLU基准思路,但聚焦中文语境中模型对各学科知识的掌握程度。CMMLU覆盖了67个科目,范围包含自然科学、社会科学、工程技术、人文艺术等各大领域,题目难度横跨小学程度到专业水平 (CMMLU: Measuring massive multitask language understanding in Chinese) 。C-Eval则设计了52个学科,并明确划分了四个难度等级(中学、高中、大学、专业) (NeurIPS Poster C-Eval: A Multi-Level Multi-Discipline Chinese Evaluation Suite for Foundation Models) 。两者的任务类型以单项选择题为主,每题有4个选项,涉及数学公式推导、百科知识、常识判断、法律案例分析等多种形式。本质上,它们考查模型的知识广度(涵盖领域之广)和推理深度(高难度专业题)以及中文语言理解(中文出题的准确理解)。
数据构成:这类评测集合的题目主要来源于中文的真实考试和专业题库。例如C-Eval明确指出题目取自初高中竞赛题、大学本科期末考试题、执业资格考试题等权威来源 (NeurIPS Poster C-Eval: A Multi-Level Multi-Discipline Chinese Evaluation Suite for Foundation Models) 。CMMLU的题目则强调许多是无法通过简单翻译英文得到的,因为它们包含中国本土的知识背景和表述方式 (CMMLU: Measuring massive multitask language understanding in Chinese) 。例如历史科目可能涉及中国朝代纪元,语文科目考察古典诗词。这些都是英文基准中没有或不适合直接翻译的部分。CMMLU的数据除了常规学科外,还专门纳入了与中国相关的知识领域,以确保评估贴近中文模型实际应用场景 (CMMLU: Measuring massive multitask language understanding in Chinese) 。在数据规模上,每个科目提供少量开发题(如5题)和较多测试题(通常数百题) (XiaHan19/cmmlu · Datasets at Hugging Face) 。所有题目均人工检查过答案正确性,并按照科目归类,以便分析模型在不同知识领域的强项与弱项。
创新点:CMMLU和C-Eval开创了中文大模型“大考”的评测方式,主要亮点在于:(1) 本土化的多学科覆盖:区别于翻译自英文的评测,这些基准直接基于中文环境设计,包含许多中国特色的学科和问题 (CMMLU: Measuring massive multitask language understanding in Chinese) 。这有效避免了英文数据隐含的文化偏倚,评测更加公平合理地反映中文模型性能。(2) 高难度设置:评测设定了60%作为及格线(对应人类考试及格分),然而大多数现有模型在该基准上难以达到60%准确率 (CMMLU: Measuring massive multitask language understanding in Chinese) 。例如,CMMLU对20多个中外主流模型评测发现,绝大部分模型连及格都不到 (CMMLU: Measuring massive multitask language understanding in Chinese) ;在清华C-Eval中也只有GPT-4模型的平均正确率略超60%,其它模型均明显低于人类水平 (NeurIPS Poster C-Eval: A Multi-Level Multi-Discipline Chinese Evaluation Suite for Foundation Models) 。这一结果凸显了当前模型在高级推理和知识运用上的巨大提升空间。 (CMMLU: Measuring massive multitask language understanding in Chinese) 。(3) 多角度分析:这些基准不仅给出总分,还按科目细分成绩,分析模型在哪些领域表现较好(如计算机、体育常识)哪些较弱(如法律、医学),为研究者改进模型提供了线索。例如发现某些中文预训练模型在政治、经济类题目上表现不佳,提示相应语料的欠缺。(4) 评测框架开放:CMMLU发布了数据和评测代码,集成到开源评测工具中 (CMMLU: Measuring massive multitask language understanding in Chinese) ;C-Eval则提供了官方网站和排行榜方便查询各模型成绩 (GLM-130B - C-Eval) 。这种开放性进一步促进了国内大模型的良性竞争和进步。
综上,CMMLU和C-Eval通过大规模、多学科、难度分明的中文试题,全面检验了大模型的知识储备和推理能力,是当前衡量中文类GPT模型学术水平的重要基准。
除了上述基准外,近期还有一些值得关注的中文大模型评测实践:
SuperCLUE综合评测:这是CLUE团队在2023年推出的升级版中文通用大模型测评基准 (SuperCLUE - CLUE中文语言理解基准测评) 。SuperCLUE包括了基础能力和应用能力两大维度,下设七类能力测试(如语言理解、逻辑推理、知识问答、代码能力、数学能力、指令遵循、工具使用等),覆盖约70多个数据集共40万道题 (OpenCompass/opencompass - Gitee) 。它引入强大的GPT-4作为评审模型对开放题进行打分,并采用了更加丰富的评估指标体系。SuperCLUE每月发布排行榜,引领了国内大模型综合评测的新标准。
官方模型评测:很多大模型研发团队也会制定自有的评测集合。例如智谱AI推出的GLM系列模型,其130B版本在发布时就评估了中英两个语种下共112项任务的零样本表现,包括中文的CLUE、FewCLUE基准等 (GLM-130B: An Open Bilingual Pre-Trained Model | GLM-130B) 。结果显示GLM-130B在这些任务上的综合表现超过了同期的GPT-3等模型 (Brief Review — GLM-130B: An Open Bilingual Pre-trained Model) 。2024年发布的GLM-4更是在清华的SuperBench全球大模型评测中,在五大能力上全面逼近GPT-4水平,被誉为“全能选手” (清华发布最新全球大模型评测:智谱GLM-4、文心一言直追GPT-4) 。这些官方评测通常结合多个公开基准(如上文提到的CLUE、C-Eval等)再加入团队自建的特殊测试(如长上下文理解,工具使用能力测试等),全方位展示模型实力。例如,GLM-4的评测包括了对话聊天、代码生成、知识问答、创意写作等,并通过Compass Arena模型对战获得了高于GPT-4的对战胜率。这些实践说明,灵活运用多种评测基准并结合人工评价,是当前顶尖模型验证效果的常见做法。
制作大模型评估标准集并组织评测,需要跨多领域的技能和知识储备:
数据处理能力:能够熟练运用脚本和工具清洗、大规模处理文本数据。这包括正则表达式清理格式、Python数据处理(如Pandas库)、JSON/CSV等数据格式转换等技能。还需具备基本的数据库或文件系统操作常识,以管理可能体量庞大的语料(如上百GB级的预训练数据 (CLUE: A Chinese Language Understanding Evaluation Benchmark) )。同时要懂得数据抽样、统计分布分析的方法,以平衡数据难度和类别分布。
Python编程:评测全流程都离不开编程实现,从数据清洗脚本到评测自动化脚本都需要扎实的Python功底。需掌握Python中处理文本和结构化数据的常用库(如 re、json、pandas 等),以及调用深度学习模型的框架(如TensorFlow/PyTorch的基本用法)。还应能编写模块化的评测代码,将不同模型接口封装统一,方便批量评测。良好的编程习惯和测试意识可以减少评测过程中脚本错误导致的偏差。
NLP基础知识:对自然语言处理的基础概念和常用任务有深入理解。这包括了解各类NLP任务的定义和评价方法(例如知道问答用准确率/ROUGE评测,翻译用BLEU评测等),理解中文语言的一些特殊难点(如分词、语义歧义、成语俗语等)。还应熟悉常用中文NLP数据集和基准(如上述CLUE、CMRC、XNLI等),了解它们测试的具体能力,以便在构建新评测集时有据可循。NLP基础也包括对语言模型原理的了解,如Transformer、注意力机制,这有助于理解模型错误的成因并设计有针对性的测试。
标注工具使用:掌握使用数据标注和管理工具的技能。在人工标注或审核数据时,熟练应用如Doccano(文本分类和序列标注)、Label Studio(多类型数据标注)等工具,可以大大提高效率。这些工具支持团队协作、进度跟踪和结果导出,能规范标注流程。此外,熟悉众包平台的操作也是有益的技能,可用于获取大量人工反馈。在使用众包时,要会设计任务界面、编写清晰的标注指南,并设置验证机制确保标注质量。
统计分析与可视化:评测结果产出后,需要对大量数据进行分析总结,因而需要一定的统计学和可视化技能。具体包括:能够计算不同模型在各子任务上的均值、方差,进行显著性检验判断模型差异是否具备统计意义;能绘制清晰的图表(柱状图、折线图、雷达图等)展示各模型能力谱图,例如OpenCompass榜单就用雷达图展示模型在语言、知识、代码等维度的得分分布 (OpenCompass使用LawBench数据测评本地Qwen大模型 - 博客园) 。熟练使用如Matplotlib、Seaborn或Plotly等绘图库,或擅长用Excel、Tableau等工具生成报告图表,将使评测报告更加直观易读。
Prompt设计:大模型评测中,设计合适的Prompt对公平性和有效性影响重大。因此需要具备Prompt Engineering的技能,懂得如何编写指令来引导模型产出所需格式的答案。例如,会使用明确的指示语(“请列举…/请一步步推理并给答案”),掌握控制模型输出长度和风格的小技巧(比如设置role或示例)。在few-shot提示设计上,要明白如何选择代表性示例、如何在不同示例间过渡,使整个Prompt连贯且易于模型理解。还应了解不同模型(GPT-3.5/4、ChatGLM、LLaMA等)在Prompt解析上的差异,避免使用一套Prompt评所有模型时出现某些模型不能很好遵循的问题。总之,优秀的Prompt设计能力可以最大化模型性能上限并保证各模型比较的公正性,是评测工作者的重要技能。
模型调用与API使用:评测工作需要调动各类模型,因此要求熟悉主流大模型的调用方法。对于OpenAI API,需会使用Python的库(如openai包)与其REST接口通信,处理好鉴权、频率限制、并发请求等问题。对于本地开源模型如ChatGLM、InternLM等,需要会加载模型权重并使用推理接口(如transformers库的AutoModel系列)。还应掌握一些优化推理速度和节省显存的方法,例如低精度推理(int8/4)、模型裁剪,以及使用GPU/多线程加速批量推理。如果需要评测非文本模型(如多模态模型),也要了解相应调用接口(比如图像识别模型的输入输出格式)。此外,处理API可能出现的异常(超时、断线)和错误码也是必要技能。熟练运用这些,可以确保评测过程高效流畅,不会因为技术问题中断。
评估框架使用:社区已有多种开源评测框架工具,掌握它们能显著加快评测集成和结果分析的速度。比如EleutherAI的lm-eval-harness框架提供了统一的任务定义和评测流水线,许多基准(包括CMMLU等)已实现其中,使用者只需配置YAML即可对接模型评测 (GLM-130B: An Open Bilingual Pre-Trained Model (ICLR 2023)) 。再如OpenCompass(司南评测体系) (上海AI实验室推出OpenCompass开放评测体系,提供大模型能力参考) 是由上海AI实验室等推出的开源评测平台,集成了上百种中文数据集并支持从模型加载、推理到报告生成的一站式流程,评测人员需要会编写Compass的配置文件,选定任务集合和指标,让框架自动完成评测。 (OpenCompass 初体验,新手如何跑通第一个模型评测原创 - CSDN博客) 。EvalPlus则是专注代码能力评测的工具包,扩充了HumanEval测试用例,被用于细化评估模型的代码正确性 (evalplus/evalplus: Rigourous evaluation of LLM-synthesized code) 。评测人员应该对这些框架的用法有基本了解,包括安装配置、编写评测任务配置、阅读输出结果等能力。这样可以少造轮子,利用成熟工具快速完成评测,并方便地与社区结果对齐比较。此外,关注这些框架的更新(例如OpenCompass新增对长文本的评测能力 (大模型评测体系司南OpenCompass2.0发布,年度大模型榜单揭晓) )也很重要,以便引入新的评测维度。总之,会使用评测框架能让评测工作事半功倍,也是现代大模型评测工程师的必备技能之一。
综上,从数据到模型、从自动到人工,大模型评估标准集的制作与评测是一项跨学科综合的工作。既需要严谨的数据处理和编程能力保障客观公正,又需要NLP领域知识和创意来设计有洞察力的评测。此外,还要不断学习社区最新工具和方法,以完善评测流程、提高评测效率。具备以上关键技能,将能胜任通用大模型评估基准集制作的工作,并为推动大模型能力提升作出贡献。