关于 hugging-science
Hugging Science 是面向 ML 研究者的精选科学资源索引,收录数据集、模型、文章和交互演示。目录按领域组织以便发现资源,实际使用通过标准 Hugging Face 工具完成。
主要功能
- 01精选科学资源目录
- 02覆盖 17 个科学领域
- 03按主题获取目录或搜索
- 04链接至 Hugging Face 数据集和模型
- 05提供数据集、模型及 Spaces 使用指南
适用场景
- 01查找科学 ML 任务的数据集
- 02寻找特定科学领域的模型
- 03定位交互式科学演示
- 04为微调或评测筛选资源
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ crazymsn/ academic-skills --skill hugging-science安装后在 Claude Code 中输入/hugging-science确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/flagship-resources.mdtopics-and-slugs.mdusing-datasets.mdusing-models.mdusing-spaces.mdscripts/fetch_catalog.py详细介绍
Hugging Science
Hugging Science 是一个经过精选、适合大模型使用的科学数据集、模型、博客文章和交互式演示索引,面向机器学习研究人员。当你遇到科学机器学习问题时,可以使用它——相比通用搜索,它能提供更高信噪比的结果,而且条目都经过质量和开放性筛选。
它有两个相关入口,应当同时使用:
huggingscience.co上的目录——一个静态、可解析的索引,涵盖 17 个科学领域。它提供llms.txt(精简版)、llms-full.txt(完整内容)和topics/<slug>.md(按领域划分)。这些都是专为获取和阅读而设计的 Markdown 文件。hugging-scienceHugging Face 组织——huggingface.co/hugging-science——包含社区提交的数据集、少量模型和约 27 个交互式 Spaces(特别是用于蛋白质/结合体设计的 BoltzGen、用于提交内容的 Dataset Quest,以及用于生态系统可视化的 Science Release Heatmap)。
目录会指向托管在更广泛的 Hugging Face Hub 上的资源。因此,像 arcinstitute/opengenome2 这样的条目是常规 HF 数据集,可通过 datasets 库加载;像 facebook/esm2_t33_650M_UR50D 这样的条目是常规 HF 模型,可通过 transformers 加载。目录的作用是精选和发现;资源的使用则通过标准 Hugging Face API 完成。
何时使用此技能
当用户的任务涉及将 AI/机器学习应用于科学领域时,请启用此技能。常见信号包括:
- 提到某个科学领域(蛋白质、基因组、分子、晶体、天气、气候、星系、脑电图、微生物组、病理学、等离子体等)
- 询问“有没有适用于 X 的数据集/模型”,且 X 属于科学领域
- 希望在科学数据上微调、在科学基准上评估,或复现科学机器学习论文
- 询问特定的知名科学模型(Evo-2、ESM2、BoltzGen、Nucleotide Transformer、AlphaFold 衍生模型等)
- 需要用于科学任务的交互式演示(结合体设计、定理证明等)
如果任务属于通用机器学习(推荐系统、聊天机器人 RAG、猫狗图像识别),则此技能并不适用——请改用通用 HF Hub 知识。
核心工作流
大多数调用都会遵循以下五步循环。不要跳过发现环节——Hugging Science 的价值在于,它已从数百种资源中筛选出各领域高信噪比的精选内容。
1. 确定领域
将用户的任务映射到 17 个主题 slug 中的一个或多个:
astronomy · benchmark · biology · biotechnology · chemistry · climate · conservation · earth-science · ecology · energy · engineering · genomics · materials-science · mathematics · medicine · physics · scientific-reasoning
有些任务会涉及多个主题(例如,药物发现 → chemistry + biology + medicine)。请获取每个相关主题的内容。
2. 获取相关目录内容
使用随附脚本,以便干净、结构化地访问:
python scripts/fetch_catalog.py topic biology
python scripts/fetch_catalog.py topic materials-science --filter models
python scripts/fetch_catalog.py search "protein language model"
python scripts/fetch_catalog.py all # full llms-full.txt
你也可以直接获取原始 Markdown:
https://huggingscience.co/llms.txt— 精简索引https://huggingscience.co/llms-full.txt— 所有领域的全部条目https://huggingscience.co/topics/<slug>.md— 单个领域(slug 使用连字符,例如materials-science.md、earth-science.md、scientific-reasoning.md)
每个条目都是一个 Markdown 区块,包含 Type、Tags、HuggingFace URL(博客则为 Link)以及一行描述。条目结构和 slug 列表请参见 references/topics-and-slugs.md。
3. 选择合适的资源
阅读描述和标签。根据用户的任务进行判断,而不是只看关键词是否重合。需要权衡以下因素:
- 规模匹配 — 对于在笔记本电脑上快速进行序列分类,Evo-2 40B 大材小用;ESM2 35M 可能恰到好处。
- 许可证和访问权限 — 大多数资源都是开放的,但请查看底层的 HF 模型卡。
- 模态匹配 — DNA、蛋白质、SMILES 和晶体结构各不相同;许多“生物学”模型不能互换。
- 时效性 / 替代关系 — 如果较旧和较新的条目都能处理同一任务,除非有理由,否则优先选较新的条目。
如果不确定该选哪项资源,简要向用户介绍排名靠前的 2–3 个候选项及其权衡,然后等用户选择后再继续。如果选择会实质性地改变工作内容,不要默默替用户决定。
领域专用的首选资源(即“拿不准时,从这里开始”的条目),请参阅 references/flagship-resources.md。
4. 使用资源
具体做法取决于资源类型。编写代码前,请先阅读对应的参考文件:
- 数据集 →
references/using-datasets.md— 通过datasets加载、超大语料的流式处理、常见列和拆分 - 模型 →
references/using-models.md— 本地transformers、Hugging Face Inference API、超大型模型的 Inference Providers、GPU 配置 - Spaces(交互式演示) →
references/using-spaces.md—gradio_client用法,并附有完整的 BoltzGen 示例
这些参考文件简短且重点明确。如果你已熟悉相关 API,可以快速浏览;否则,请在编写代码前完整阅读。与通用 HF 用法相比,其中有几处重要差异(例如 trust_remote_code 要求、科学数据的 dtype 易错点)。
5. 引用方法论
如果目录中有与任务匹配的博客文章(Type: blog 或主题文件的 Blog Posts 部分中的文章),请在向用户解释方案时附上其 URL。方法论博客由数据集 / 模型作者撰写,能解答模型卡通常不会提及的“为何采用这种设计”问题。请将它们视为引用——简短写一句“查看 ,了解 X 背后的方法论”即可。
身份验证:HF_TOKEN
许多目录资源需要授权访问(临床数据、大型基础模型、私有 Spaces)。请通过 HF_TOKEN 环境变量进行身份验证。
如果有 .env 文件,请从中加载 HF_TOKEN — 用户会在此保存密钥。任何调用 HF API 的脚本都应在开头使用 python-dotenv:
from dotenv import load_dotenv
load_dotenv() # picks up HF_TOKEN from .env in cwd or any parent dir
如果 .env 不存在或未定义 HF_TOKEN,请妥善回退——许多资源是公开的,无需令牌即可使用。不要将令牌硬编码、回显令牌,也不要优先建议使用 huggingface-cli login;用户更倾向于使用 .env。
.env 文件应包含如下内容的一行:
HF_TOKEN=hf_...
如果你在创建新项目,也请将 .env 添加到 .gitignore(如果尚未添加)。
需要记住的几件重要事项
目录经过筛选,并不包含所有资源。 如果用户需要某项特定资源,而 Hugging Science 中没有列出,并不代表 HF Hub 上不存在。作为备用方案,请直接搜索 HF Hub。但如果领域相符,始终应当先查阅目录——筛选整理正是它的价值所在。
目录条目只是索引。 不要把「使用 Hugging Science」当作调用 API。Hugging Science 没有推理端点。所有可用资源都位于 HF Hub 或 HF Space 上,应通过标准 HF 工具使用。
许多科学模型都需要 trust_remote_code=True。 自定义架构(Evo-2 以及许多基因组学/材料科学模型)都附带自定义建模代码。这在该生态中很常见。请传入此标志并告知用户。
科学数据集通常体量很大,结构也可能很特别。 基因组学语料可能包含数十亿个 token;宇宙学图像可能达到数百 GB;材料数据集则包含非标准对象(晶体结构、图)。对于声称超过几 GB 的数据,默认使用流式加载(在 load_dataset 中设置 streaming=True),并在假设数据集包含哪些列之前先检查其架构。
对于一次性的科学生成任务,Spaces 非常实用。 如果用户想为目标蛋白设计结合蛋白,或在托管模型演示中运行推理,通过 gradio_client 调用 Space,比在本地启动模型更快、成本更低。请先查看 references/using-spaces.md——huggingface.co/hugging-science 上有约 27 个此类 Space。
目录本身也可能发生变化。 条目会定期添加,偶尔也会更改 slug。如果某个 URL 返回 404,请重新获取主题文件或 llms.txt 以了解当前状态——不要掩盖这个错误。
附带资源
scripts/fetch_catalog.py— 获取并筛选目录内容。运行时添加--help可查看完整用法。需要以结构化方式访问内容时,优先使用此脚本,而不是临时调用 WebFetch。references/topics-and-slugs.md— 精确的主题 slug、各主题涵盖的内容以及条目架构。references/using-datasets.md— 加载科学数据集的模式和注意事项。references/using-models.md— 在本地、通过 Inference API 或 Inference Providers 运行科学模型。references/using-spaces.md— 使用gradio_client以编程方式调用 HF Spaces(尤其是 BoltzGen)。references/flagship-resources.md— 用户需要合适默认选项时,各领域首选的数据集/模型。