mcpField
H
hugging-science

hugging-science

github.com/kalarislabsその他7344 回インストール4 日前に更新
リポジトリ

hugging-science について

Hugging Scienceは、機械学習研究者向けに科学データセット、モデル、記事、インタラクティブデモを集めた索引です。17の科学分野を対象とし、解析可能なカタログでリソースの発見を支援します。

主な機能

  1. 0117の科学分野をカバー
  2. 02データセット、モデル、記事、デモを掲載
  3. 03解析可能なMarkdownカタログを提供
  4. 04カタログ取得・絞り込みスクリプトを同梱
  5. 05標準のHugging Faceツールでリソースを利用

活用シーン

  1. 01科学MLタスク向けデータセットの検索
  2. 02分野別のモデルリソースの絞り込み
  3. 03科学タスク向けインタラクティブデモの検索

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/kalarislabs/research-agent-skills --skill hugging-science

インストール後、Claude Code で/hugging-scienceを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
flagship-resources.md
topics-and-slugs.md
using-datasets.md
using-models.md
using-spaces.md
scripts/
fetch_catalog.py

詳細

Hugging Science

Hugging Science は、ML 研究者向けに、科学データセット、モデル、ブログ記事、インタラクティブなデモを厳選してまとめた、LLM に適したインデックスです。科学分野の ML に関する質問を受けたときに活用してください。汎用検索よりも関連性の高い情報が得られ、掲載項目は品質とオープン性の観点からあらかじめフィルタリングされています。

関連する情報源が 2 つあるため、両方を活用してください。

  • huggingscience.co のカタログ — 17 の科学分野にわたるリソースをまとめた、静的で解析可能なインデックスです。llms.txt(簡潔版)、llms-full.txt(全コンテンツ)、topics/<slug>.md(分野別)を提供しています。これらは取得して読み込めるように設計された Markdown ファイルです。
  • Hugging Face の hugging-science 組織 — huggingface.co/hugging-science — コミュニティが投稿したデータセット、いくつかのモデル、約 27 個のインタラクティブな Spaces を提供しています(特に、タンパク質/バインダー設計の BoltzGen、投稿用の Dataset Quest、エコシステムを可視化する Science Release Heatmap があります)。

カタログは、より広範な Hugging Face Hub でホストされているリソースへの リンクを掲載しています。そのため、arcinstitute/opengenome2 のような項目は datasets ライブラリで読み込む通常の HF データセットであり、facebook/esm2_t33_650M_UR50D のような項目は transformers で読み込む通常の HF モデルです。カタログの役割はリソースを厳選して見つけやすくすることであり、利用には標準の Hugging Face API を使用します。

このスキルを使う場面

ユーザーのタスクが科学分野への AI/ML の応用に関係する場合は、このスキルを使用してください。一般的な兆候は次のとおりです。

  • 科学分野の名称を挙げている(タンパク質、ゲノム、分子、結晶、天気、気候、銀河、EEG、マイクロバイオーム、病理学、プラズマなど)
  • 科学分野の X について「データセット/モデルはありますか」と尋ねている
  • 科学データでファインチューニングしたい、科学ベンチマークで評価したい、または科学分野の ML 論文を再現したい
  • 既知の科学分野モデル(Evo-2、ESM2、BoltzGen、Nucleotide Transformer、AlphaFold 由来のモデルなど)について尋ねている
  • 科学分野のタスク(バインダー設計、定理証明など)用のインタラクティブなデモが必要である

タスクが一般的な ML(レコメンデーションシステム、チャットボットの RAG、猫や犬の画像認識など)である場合、このスキルは 適切なツールではありません。代わりに、一般的な HF Hub の知識を活用してください。

基本的なワークフロー

ほとんどの場合、次の 5 ステップを繰り返します。情報の発見を省略しないでください。Hugging Science の価値は、分野ごとに関連性の高いリソースを選び、何百ものリソースを絞り込んでいることにあります。

1. 分野を特定する

ユーザーのタスクを、17 個のトピックのスラッグのうち 1 つ以上に対応付けます。

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 — 1 つの分野(スラッグはハイフン区切りです。例:materials-science.md、earth-science.md、scientific-reasoning.md)

各項目は、Type、Tags、HuggingFace URL(ブログの場合は Link)、および 1 行の説明を含む Markdown ブロックです。項目のスキーマとスラッグの一覧については、references/topics-and-slugs.md を参照してください。

3. 適切なリソースを選ぶ

説明とタグを読みます。キーワードの一致ではなく、判断に基づいてユーザーのタスクに合うものを選びます。考慮する点は次のとおりです。

  • 規模の適合性 — ノートPCで手早く配列を分類するには 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 — BoltzGen の実例を使った gradio_client のパターン

リファレンスファイルは短く、要点を絞っています。該当する 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_...

新しいプロジェクトを作成する場合は、まだ追加されていなければ .gitignore に .env も追加してください。

覚えておくべき重要なこと

カタログは厳選されていますが、網羅的ではありません。 ユーザーが特定のリソースを必要としていて、Hugging Science に掲載されていなくても、HF Hub に存在しないという意味ではありません。見つからない場合は、HF Hub を直接検索してください。ただし、対象分野が一致する場合は、必ずカタログから始めてください。厳選されていることに価値があります。

掲載項目は参照先です。 API のように「Hugging Science を使う」ことはできません。Hugging Science の推論エンドポイントはありません。実際に利用できるリソースはすべて HF Hub 上、または HF Space として提供されており、標準の HF ツールを使って利用します。

多くの科学系モデルでは trust_remote_code=True が必要です。 カスタムアーキテクチャ(Evo-2 や、多くのゲノミクス/材料科学モデル)には、独自のモデリングコードが含まれています。このエコシステムでは一般的なことですが、このフラグを設定すると、モデルリポジトリから任意の Python コードがユーザーのマシン上で実行されます。そのため、フラグを設定する前に、リポジトリ名を明示してユーザーに確認し、回答を待ってください。カタログへの掲載は、審査済みであることを示すものではありません。掲載項目はネットワーク経由で取得した参照先であり、コードレビューの対象ではありません。同じことは、gradio_client 経由で Space にファイルやトークンを送信する場合にも当てはまります。

科学系データセットは大容量で、形状も特殊なことがよくあります。 ゲノミクスのコーパスは数十億トークンに及ぶことがあり、宇宙論の画像は数百 GB になることがあり、材料科学のデータセットには非標準のオブジェクト(結晶構造やグラフ)が含まれています。数 GB を超えるとされるデータセットでは、デフォルトでストリーミング(load_dataset の streaming=True)を使用し、列を前提とする前にスキーマを確認してください。

Spaces は、単発の科学系生成タスクに最適です。 ユーザーが標的タンパク質に対するバインダーを設計したい場合や、ホストされたモデルのデモで推論を実行したい場合は、ローカルでモデルを起動するより、gradio_client 経由で Space を呼び出すほうが高速で低コストです。まず references/using-spaces.md を確認してください。huggingface.co/hugging-science には、このような Space が約 27 件あります。

カタログ自体も変わることがあります。 項目は定期的に追加され、スラッグが変更されることもあります。URL が 404 になる場合は、失敗を取り繕うのではなく、トピックファイルまたは llms.txt を再取得して最新の状態を確認してください。

同梱リソース

  • scripts/fetch_catalog.py — カタログの内容を取得してフィルタリングします。詳しい使い方は --help で確認できます。構造化されたアクセスが必要な場合は、場当たり的な WebFetch 呼び出しよりもこちらを優先してください。
  • references/topics-and-slugs.md — 正確なトピックスラッグ、それぞれの対象範囲、項目のスキーマを記載しています。
  • 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 — ユーザーが無難なデフォルトを求める場合に、分野ごとに推奨するデータセット/モデルを記載しています。

エージェントの実行手順

  1. 環境を確認します。 Python 環境とライブラリのバージョン(python -c "import pkg; print(pkg.__version__)")を確認し、データの形状、型、欠損値を調べます。
  2. 入力を明確にします。 データまたはユーザーに確認し、形式、識別子、パラメーターを確定します。結果に影響する値は推測せず、質問してください。
  3. まず小規模に実行します。 最初にサンプルまたは単一のフォールドで実行し、実行時間とメモリを確認します。
  4. 上記の手順と参考情報に従って、タスク全体を実行します。
  5. 結果を検証します。 ホールドアウトデータ、固定した乱数シード、適切な指標を使用し、データ漏洩がないか確認して、不確実性(信頼区間、シード間の標準偏差)を報告します。
  6. 報告します。 実行した内容(バージョン、コマンド、パラメーター)、確認した内容、未確定の点を明示します。
次の状況が発生した場合対応
メモリ不足または実行速度が非常に遅いサブサンプリング、チャンク処理または遅延計算を使用するか、モデルのサイズを縮小し、変更した内容をユーザーに伝えます。
この手順に記載された関数、フラグ、エンドポイントがインストール済みバージョンにないインストール済みバージョンのドキュメント(help()、--help、公式ドキュメント)を確認して適応し、その旨をユーザーに伝えます。API を決して捏造しないでください。
必須の入力、識別子、パラメーターが曖昧ユーザーに質問するか、実行前に仮定を明示します。

誠実性に関するルール

  • 結果、パラメーター、識別子、引用、統計値を捏造してはいけません。実行または検証できない場合は、その旨を明確に伝えてください。
  • このセッションで計算していない指標を報告してはいけません。すべての数値について、その算出に使用したコードの経路を示してください。
  • ここに記載されたバージョン固有の詳細は古くなっている可能性があるものとして扱い、インストール済みバージョンの公式ドキュメントで確認してください。
  • 費用が発生する操作、共有 GPU やクラウドのクォータを消費する操作、個人データまたは患者データに触れる操作、取り消せない操作を行う前に、必ず許可を得てください。

関連スキル

  • science-aaas:Science および Science 系ジャーナル(Science、Science Advances、Science Translational Medicine、Science Robo…)向けの原稿を作成します。
  • brainstorming-research-ideas:体系的な発想フレームワークを通じて、研究者が影響力の大きい研究テーマを見つけられるよう支援します。

コメント