排行榜文档

使用模板构建排行榜

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

使用模板构建排行榜

要构建一个排行榜,最简单的方法是查看我们的演示模板这里

📏 目录

我们的演示排行榜模板包含 4 个部分:两个 Space 和两个数据集。

  • 前端 Space 向用户展示结果,包含评估的说明,并可选择接受模型提交。
  • 请求数据集 存储用户的提交以及模型评估的状态。它由前端(提交时)和后端(运行时)更新。
  • 结果数据集 存储评估的结果。它在评估完成后由后端更新,并由前端获取以进行显示。
  • 后端 Space 是可选的,前提是您手动或在自己的集群上运行评估。它会检查当前待处理的提交,并使用 Eleuther AI Harness (lm_eval) 或 HuggingFace 的 lighteval 启动它们的评估,然后更新评估状态并存储结果。如果您使用更特定的评估套件,则需要对其进行编辑以适应您自己的用例。

🪛 开始使用

您应该将两个 Space 和两个数据集复制到您的组织中,以开始构建您自己的排行榜!

设置前端

要开始构建您自己的前端排行榜,您需要编辑 2 个文件

  • src/envs.py 用于定义您自己的环境变量(例如复制此项目的组织名称)
  • src/about.py 用于定义您任务所需的任务和 few-shots 数量

设置虚假结果以初始化排行榜

完成此操作后,您需要编辑“虚假结果”文件以适应您的任务格式:在子字典 results 中,将 task_name1 和 metric_name 替换为您在上面任务中定义的正确值。

"results": {
    "task_name1": {
        "metric_name": 0
    }
}

到这一步,您应该已经在前端看到一些显示的结果了!

您想要添加的任何其他模型都需要在请求和结果中各有一个文件,遵循与已存在文件相同的模板。

可选:设置后端

如果您计划在 Space 上运行评估,那么您需要编辑后端,以您想要的方式运行与您最相关的评估。根据您想学习的套件,这部分可能会花费最多的时间。

但是,如果您只想使用排行榜来显示结果,或者计划手动或在自己的计算资源上运行评估,则此步骤是可选的。

🔧 技巧与窍门

以上述方式设置的排行榜是可调节的,可以提供从全自动评估(用户提交模型,然后进行评估等)到全手动(每次新评估都由人工控制)再到半自动的各种模式。

在 Space 中运行后端时,您可以选择

  • 将您的后端 Space 升级到所需的计算能力级别,并在本地运行您的评估(使用 lm_evallighteval 或您自己的评估套件);这是适用于各种评估类型最通用的解决方案,但它会限制您可能的模型大小,因为您可能无法将最大的模型放入后端
  • 使用一个通过 API 调用进行模型推理的套件,例如 lighteval,它使用 inference-endpoints 自动从 Hub 中启动模型进行评估,从而允许您根据当前模型调整计算资源的规模。

如果您在自己的计算资源上运行评估,您仍然可以从后端获取一些文件来拉取和推送 resultsrequest 数据集。

排行榜设置好后,别忘了设置它的元数据,以便我们的排行榜查找器(Leaderboard Finder)能索引到它。请参阅 LeaderboardFinder Space 中的“标签是什么意思?”部分。

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.