「Hugging Faceってブラウザで眺めるだけのサイトでしょ?」
そう思っていた方、実はちょっともったいないことをしていたかもしれません 😲
Hugging Face Hubの裏側には、APIキーもログインも不要で叩けるJSON APIが存在しているんです。しかもトレンドモデルのランキングや詳細情報まで取得できちゃいます。今回はそのAPIをPythonで活用する方法をざっくり解説していきます!
🔑 APIキーなしで使えるエンドポイント

まず使えるエンドポイントを確認しておきましょう。
GET https://huggingface.co/api/models→ モデル一覧GET https://huggingface.co/api/datasets→ データセット一覧GET https://huggingface.co/api/spaces→ Spaces一覧
これらは認証なし・登録なしで誰でもアクセスできます。イメージとしては「公開図書館の蔵書検索システムが外からAPIで叩ける」感じですね 📚
🐍 Pythonでトレンドモデルをランキング取得してみよう
実際にPythonでトレンド上位のモデルを取得するコードを書いてみましょう。ポイントをまとめるとこんな感じです。
sort=likesでいいね数順に並べられるlimitで取得件数を指定できる- カーソルページネーションで大量データも順に取得可能
import requests
import json
# Hugging Face Hub API(キー不要!)
BASE_URL = "https://huggingface.co/api/models"
def get_trending_models(limit=10):
params = {
"sort": "likes", # いいね数で並び替え
"direction": "-1", # 降順(多い順)
"limit": limit, # 取得件数
}
response = requests.get(BASE_URL, params=params)
response.raise_for_status()
models = response.json()
print(f"🏆 Hugging Face トレンドモデル TOP{limit}")
print("-" * 40)
for i, model in enumerate(models, 1):
name = model.get("modelId", "不明")
likes = model.get("likes", 0)
downloads = model.get("downloads", 0)
print(f"{i:2}. {name}")
print(f" ❤️ いいね: {likes:,} 📥 DL数: {downloads:,}")
get_trending_models(limit=10)
📊 週次レポートを自動生成するアイデア
このAPIの面白いところは、定期実行と組み合わせると「週次AIトレンドレポート」が自動で作れる点です。つまり、こんな活用が考えられます。
- ✅ GitHub Actionsで毎週月曜に実行 → Slackへ通知
- ✅ CSVに書き出してスプレッドシートで可視化
- ✅ タスクタイプ(
pipeline_tag)でフィルタして特定分野だけ追う
以下はタスクタイプを指定して絞り込む例です。
# 画像生成モデルだけに絞る例
params = {
"sort": "downloads",
"direction": "-1",
"limit": 5,
"filter": "text-to-image", # パイプラインタグで絞り込み
}
response = requests.get(BASE_URL, params=params)
for model in response.json():
print(model["modelId"], "|", model.get("downloads", 0))
ここが重要です。filter パラメータには text-generation、text-to-image、automatic-speech-recognition などが使えます。AIのどの分野が今熱いのか、数字で追えるのが面白いですよね 🔥
まとめ
Hugging Face HubのJSON APIは、キー不要・登録不要で誰でも使えるにもかかわらず、あまり知られていない「隠れた便利ツール」でした。Pythonの requests さえあれば今日からすぐに試せます。
AI界隈のトレンドを「感覚」ではなく「データ」で追いかけたい方には特におすすめです。ぜひ週次レポート自動化にも挑戦してみてください 🚀





