网站 |指南针中心 |指南针排名 |文档 |安装|报告问题
英语 | 简体中文
通过 Discord 和微信加入我们
重要的
Star我们,您将立即收到来自GitHub的所有发布通知~️
到OpenCompass !
就像指南针指引我们踏上旅程一样,OpenCompass 将引导您完成评估大型语言模型的复杂过程。凭借其强大的算法和直观的界面,OpenCompass 可以轻松评估 NLP 模型的质量和有效性。
探索 OpenCompass 的机会!我们目前正在招聘全职研究人员/工程师和实习生。如果您对 LLM 和 OpenCompass 充满热情,请随时通过电子邮件与我们联系。我们很乐意听取您的意见!
我们很高兴地宣布OpenCompass已获得Meta AI推荐,请点击Llama入门了解更多信息。
注意力
重大变更通知:在 0.4.0 版本中,我们将所有 AMOTIC 配置文件(之前位于 ./configs/datasets、./configs/models 和 ./configs/summarizers 中)合并到 opencompass 包中。建议用户更新其配置参考以反映此结构变化。
[2024.10.14]我们现在支持 OpenAI 多语言 QA 数据集 MMMLU。请随意尝试一下!
[2024.09.19]我们现在支持具有多个后端(huggingface/vllm/lmdeploy)的 Qwen2.5(0.5B 至 72B)。请随意尝试一下!
[2024.09.17]我们现在支持 OpenAI o1( o1-mini-2024-09-12
和o1-preview-2024-09-12
)。请随意尝试一下!
[2024.09.05]我们现在支持通过模型后处理进行答案提取,以更准确地表示模型的功能。作为此更新的一部分,我们集成了 XFinder 作为我们的第一个后处理模型。更详细的信息请参阅文档,并尝试一下!
[2024.08.20] OpenCompass 现在支持 SciCode:科学家策划的研究编码基准。
[2024.08.16] OpenCompass现已支持全新的长上下文语言模型评估基准——RULER。 RULER 通过灵活的配置提供长上下文评估,包括检索、多跳跟踪、聚合和问答。立即查看 RULER 评估配置!
[2024.08.09]我们已经发布了CompassBench-202408的示例数据和配置,欢迎访问CompassBench了解更多详情。
[2024.08.01]我们支持 Gemma2 模型。欢迎尝试!
[2024.07.23]支持ModelScope数据集,您可以按需加载,无需将所有数据下载到本地磁盘。欢迎尝试!
[2024.07.17]我们很高兴地宣布NeedleBench的技术报告发布。我们邀请您访问我们的支持文档以获取详细的评估指南。
[2024.07.04] OpenCompass现已支持InternLM2.5,它具有出色的推理能力、 1M上下文窗口和更强的工具使用性,您可以尝试OpenCompass Config和InternLM中的模型..
[2024.06.20] OpenCompass现已支持推理加速后端之间的一键切换,提高了评估过程的效率。除了默认的 HuggingFace 推理后端之外,它现在还支持流行的后端 LMDeploy 和 vLLM。可通过简单的命令行开关和部署 API 来使用此功能。详细使用请参见文档。
更多的
我们为社区提供 OpenCompass 排行榜,对所有公共模型和 API 模型进行排名。如果您想参与评估,请提供模型库URL或标准API接口至邮箱[email protected]
。
返回顶部
以下是快速安装和数据集准备的步骤。
我们强烈建议使用 conda 来管理您的 python 环境。
conda 创建 --name opencompass python=3.10 -y conda 激活 opencompass
pip install -U opencompass ## 完整安装(支持更多数据集) # pip install "opencompass[full]" ## 具有模型加速框架的环境 ## 使用虚拟环境管理不同的加速框架 ## 因为它们通常存在依赖冲突彼此。 # pip install "opencompass[lmdeploy]" # pip install "opencompass[vllm]" ## API 评估(即 Openai、Qwen) # pip install "opencompass[api]"
如果你想使用opencompass的最新功能,或者开发新功能,你也可以从源代码构建它
git 克隆 https://github.com/open-compass/opencompass opencompass cd opencompass pip install -e 。 # pip install -e ".[full]" # pip install -e ".[vllm]"
您可以选择以下方法之一来准备数据集。
您可以使用以下命令下载并提取数据集:
# 下载数据集到data/文件夹wget https://github.com/open-compass/opencompass/releases/download/0.2.2.rc1/OpenCompassData-core-20240207.zip 解压 OpenCompassData-core-20240207.zip
我们支持从 OpenCompass 存储服务器自动下载数据集。您可以使用额外的--dry-run
运行评估来下载这些数据集。目前,支持的数据集列于此处。最近将上传更多数据集。
您还可以使用 ModelScope 按需加载数据集。
安装:
pip install modelscope[framework]export DATASET_SOURCE=ModelScope
然后提交评估任务,无需将所有数据下载到本地磁盘。可用的数据集包括:
humaneval、triviaqa、commonsenseqa、tydiqa、strategyqa、cmmlu、lambda、piqa、ceval、数学、LCSTS、Xsum、winogrande、openbookqa、AGIEval、gsm8k、nq、种族、siqa、mbpp、mmlu、hellaswag、ARC、BBH、xstory_cloze、峰会、高考台、 OCNLI、CMNLI
一些第三方功能,如 Humaneval 和 Llama,可能需要额外的步骤才能正常工作,详细步骤请参阅安装指南。
返回顶部
按照上述步骤确保OpenCompass正确安装并准备好数据集后。现在您可以使用 OpenCompass 开始您的第一次评估!
您对 OpenCompass 的首次评估!
OpenCompass 支持通过 CLI 或 python 脚本设置您的配置。对于简单的评估设置我们建议使用CLI,对于更复杂的评估,建议使用脚本方式。您可以在 configs 文件夹下找到更多示例脚本。
# CLIopencompass --models hf_internlm2_5_1_8b_chat --datasets demo_gsm8k_chat_gen# Python 脚本opencompass ./configs/eval_chat_demo.py
您可以在 configs 文件夹下找到更多脚本示例。
API评估
OpenCompass 在其设计上并没有真正区分开源模型和 API 模型。您可以用相同的方式甚至在一种设置中评估这两种模型类型。
导出 OPENAI_API_KEY="YOUR_OPEN_API_KEY"# CLIopencompass --models gpt_4o_2024_05_13 --datasets demo_gsm8k_chat_gen# Python 脚本opencompass ./configs/eval_api_demo.py# 您可以使用 o1_mini_2024_09_12/o1_preview_2024_09_12 o1 模型,我们将 max_completion_tokens=8192 设置为默认值。
加速评估
此外,如果您想使用 HuggingFace 以外的推理后端(例如 LMDeploy 或 vLLM)来加速评估,您可以使用以下命令来执行此操作。请确保您已为所选后端安装了必要的软件包,并且您的模型支持使用它进行加速推理。有关更多信息,请参阅此处有关推理加速后端的文档。以下是使用 LMDeploy 的示例:
# CLIopencompass --models hf_internlm2_5_1_8b_chat --datasets demo_gsm8k_chat_gen -a lmdeploy# Python 脚本opencompass ./configs/eval_lmdeploy_demo.py
支持型号
OpenCompass 为许多模型和数据集提供了预定义的配置。您可以使用这些工具列出所有可用的模型和数据集配置。
# 列出所有配置python tools/list_configs.py# 列出所有与 llama 和 mmlu 相关的配置python tools/list_configs.py llama mmlu
如果模型不在列表中,但受到 Huggingface AutoModel 类的支持,您也可以使用 OpenCompass 对其进行评估。欢迎您为 OpenCompass 支持的模型和数据集列表的维护做出贡献。
opencompass --datasets demo_gsm8k_chat_gen --hf-type chat --hf-path internlm/internlm2_5-1_8b-chat
如果您想使用多个 GPU 并行评估模型,可以使用--max-num-worker
。
CUDA_VISIBLE_DEVICES=0,1 opencompass --datasets demo_gsm8k_chat_gen --hf-type chat --hf-path internlm/internlm2_5-1_8b-chat --max-num-worker 2
提示
--hf-num-gpus
用于模型并行(huggingface 格式), --max-num-worker
用于数据并行。
提示
_ppl
的配置通常是为基本模型设计的。 _gen
的配置可用于基本模型和聊天模型。
通过命令行或配置文件,OpenCompass还支持评估API或自定义模型,以及更多样化的评估策略。请阅读快速入门以了解如何运行评估任务。
返回顶部
我们很高兴推出 OpenCompass 2.0,这是一个高级套件,具有三个关键组件:CompassKit、CompassHub 和 CompassRank。
CompassRank已显着增强到排行榜中,现在包含开源基准测试和专有基准测试。此次升级可以对整个行业的模型进行更全面的评估。
CompassHub提供了一个开创性的基准测试浏览器界面,旨在简化和加快研究人员和从业人员对各种基准测试的探索和利用。为了提高您自己的基准在社区中的知名度,我们热烈邀请您将其贡献给 CompassHub。您可以点击此处启动提交流程。
CompassKit是一个强大的评估工具包集合,专为大型语言模型和大型视觉语言模型量身定制。它提供了一套广泛的工具来有效地评估和衡量这些复杂模型的性能。欢迎在您的研究和产品中尝试我们的工具包。
OpenCompass是大型模型评估一站式平台,旨在为大型模型评估提供公平、公开、可重现的基准。其主要特点包括:
对模型和数据集的全面支持:预支持20+ HuggingFace和API模型,70+数据集约40万个问题的模型评估方案,从五个维度全面评估模型的能力。
高效分布式评估:一条指令实现任务划分、分布式评估,仅需数小时即可完成亿级模型的全面评估。
多样化的评估范式:支持零样本、少样本、思维链评估,结合标准或对话式提示模板,轻松激发各种模型的最大性能。
高扩展性的模块化设计:想要添加新的模型或数据集、定制高级的任务划分策略,甚至支持新的集群管理系统?关于 OpenCompass 的一切都可以轻松扩展!
实验管理和报告机制:使用配置文件完整记录每次实验,并支持结果实时报告。
语言 | 知识 | 推理 | 考试 |
单词定义
成语学习
语义相似度
共指消解
翻译
多语言问答
多语言摘要
| 知识问答
| 文本蕴含
常识推理
数学推理
定理应用
综合推理
| 初中、高中、大学、专业考试
体检
|
理解 | 长上下文 | 安全 | 代码 |
阅读理解
内容概要
内容分析
| 长上下文理解
| 安全
鲁棒性
| 代码
|
开源模型 | API模型 |
|
|
返回顶部
主观评价
发布 CompassAreana。
主观评价。
长上下文
使用广泛的数据集进行长上下文评估。
长上下文排行榜。
编码
编码评估排行榜。
非Python语言评估服务。
代理人
支持各种代理框架。
法学硕士工具使用评估。
鲁棒性
支持多种攻击方式。
我们感谢所有为改进 OpenCompass 做出的贡献。请参阅贡献指南以获取最佳实践。
本项目中的部分代码引用并修改自OpenICL。
一些数据集和提示实现是从 chain-of-thought-hub 和 instruct-eval 修改的。
@misc{2023opencompass,title={OpenCompass:基础模型的通用评估平台},author={OpenCompass 贡献者},howpublished = {url{https://github.com/open-compass/opencompass}},year={ 2023}}
返回顶部