huggingface_hub v1.0: オープン機械学習の基盤を築く5年

TL;DR: 5 年間の開発を経て、huggingface_hub は v1.0 に到達しました — これは、200,000 依存ライブラリを支える Python パッケージとしての成熟を示すマイルストーンであり、200 万以上の公開モデル、50 万の公開データセット、100 万の公開 Spaces へのコア機能を提供します。このリリースでは、次の10年のオープン機械学習を支えるために設計された破壊的変更が導入され、約 300 人の貢献者と何百万ものユーザーによるグローバルコミュニティが推進しています。

🚀 v1.0 へのアップグレードを強く推奨します。大幅なパフォーマンス向上と新機能の恩恵を受けられます。

ライブラリの背景

このライブラリは、2020 年にシンプルな Git ラッパーとして始まり、5 年間で Hugging Face Hub を支える成熟した基盤へと進化しました。

基盤の年 (2020-2021)

初期リリースでは基本が確立されました。バージョン 0.0.8 では Git コマンドをラップする最初の API が導入され、バージョン 0.0.17 ではプライベートリポジトリとアップロード用のトークンベース認証が追加されました。

大転換: Git から HTTP へ (2022)

2022 年 6 月、バージョン 0.8.1 で HTTP Commit API が導入され、Git LFS を使用せずに HTTP 経由でファイルをアップロードできるようになり、ライブラリ間で共有される git 対応キャッシュレイアウトが追加されました。

拡大する API 範囲 (2022–2024)

Hub が拡大するにつれ、ライブラリはリポジトリメタデータ、Webhook、Spaces 管理、Inference Endpoints、Jobs API、プルリクエストやコメントといったコミュニティ機能、そしてリクエストごとの課金型推論を提供する Inference Providers などのプリミティブを追加しました。

Ready. Xet. Go! (2024-2025)

バージョン 0.30.0 で Xet(チャンクレベルのストレージプロトコル)が導入され、6,000,000 以上のリポジトリにまたがる 77PB 超のデータが透過的に移行され、アップロードとダウンロードが高速化されました。

成長とインパクトの測定

現在、このライブラリは大規模に採用されており、何百万ものモデルを支え、数十万人のユーザーと企業に利用されています。

  • 月間ダウンロード数 1.135 億件、累計 16 億件(2025年10月)。
  • 2M 超の公開モデル、50 万超の公開データセット、100 万超の公開 Spaces(プライベートコピーも含む)へのアクセスを提供。
  • 日次ユーザー 6 万人超、月次ユーザー 55 万人超が利用。
  • スタートアップから Fortune 500 まで、20 万社以上が信頼。
  • 200,000 以上の GitHub リポジトリと 3,000 の PyPI パッケージの依存関係で、Keras、LangChain、PaddleOCR、ChatTTS、YOLO、Google Generative AI、Moshi、NVIDIA NeMo、Open Sora などの主要フレームワークが含まれます。
  • 約 300 人の貢献者によって構築されました。

次の10年に向けた構築

バージョン 1.0 では、次の10年にわたってライブラリをスケールさせるための戦略的な破壊的変更が導入されます。

httpx と hf_xet による最新 HTTP インフラストラクチャ

httpx への移行とデフォルト hf_xet の採用により、パフォーマンス、スレッド安全性、非同期サポートが向上します。

  • httpx は requests に取って代わり、ネイティブ HTTP/2、真のスレッド安全性、統一された sync/async API を提供します。
  • hf_xet はファイル転送のデフォルトパッケージとなり、オプションの hf_transfer に取って代わります。
  • カスタム HTTP バックエンドは configure_http_backend() から set_client_factory()set_async_client_factory() へ移行できます。

MCP と Tiny-Agents でエージェントをシンプルに

MCP 統合と tiny-agents により、開発者は約 70 行の Python で AI エージェントを構築できます。

  • MCPClient はエージェントがツールとやり取りするための標準化された方法を提供します。
  • tiny-agents CLI は Hub から直接エージェントを実行し、ローカルまたはリモートの MCP サーバーに接続し、任意の Gradio Space をツールとして使用します。
  • 既存の InferenceClient と多数の Inference Providers のサポート上に構築されています。

現代的ワークフロー向けのフル機能 CLI

再設計された hf CLI は huggingface-cli に代わり、Typer ベースのインターフェースで認証、転送、リポジトリ管理、キャッシュ、ジョブを網羅します。

  • hf auth login は認証に使用します。
  • hf downloadhf upload はファイル転送に使用します。
  • hf repo はリポジトリ管理に使用します。
  • hf cache lshf cache rm はキャッシュ管理に使用します。
  • hf jobs run はクラウドコンピュートに使用します。
  • プラットフォーム非依存のインストーラ:
    # macOS or Linux
    curl -LsSf https://hf.co/cli/install.sh | sh
    
    # Windows
    powershell -ExecutionPolicy ByPass -c "irm https://hf.co/cli/install.ps1 | iex"
    

将来に向けた整理

レガシークラスとパターンが削除され、コードベースが簡素化され、将来志向の機能に注力できるようになりました。

  • Git ベースの Repository クラスは廃止され、upload_file()create_commit() といった HTTP ベースのメソッドが標準となりました。
  • トークン管理は HfFolder から、明示的な login()logout()get_token() 関数へ移行しました。
  • InferenceApi クラスは、機能が充実した InferenceClient に取って代わりました。
  • hf_transferhf_xet バイナリパッケージに完全に置き換えられました。
  • ほとんどの非推奨は数か月前に警告と移行ガイダンスとともに告知されました。

移行ガイド

包括的な移行ガイドによりアップグレードが容易になり、transformers v5 を除くほとんどのライブラリで後方互換性が維持されています。

  • ガイドは各変更に対するステップバイステップの手順を提供し、なぜそれが必要だったかを説明します。
  • 可能な限り後方互換性が保たれています。例えば、HfHubHttpError は旧 requests と新 httpx のベース HTTPError クラスの両方を継承しています。
  • 以前の v0.* バージョンは脆弱性修正のみを目的に PyPI に残り、開発は v1.0 以降に集中しています。
  • 主な例外は transformers で、v4 リリースには huggingface_hub v0.x が必要で、今後の v5 リリースには v1.x が必要です(issue #3340 の互換性表参照)。

謝辞

貢献者、コミュニティ、ユーザーへの感謝。

  • 280 人以上の貢献者がコード、ドキュメント、翻訳、コミュニティサポートを通じてライブラリを構築しました。
  • 広範な Hugging Face コミュニティがフィードバック、バグ報告、提案を提供しました。
  • 個人開発者から大企業まで、ユーザーは huggingface_hub をワークフローの基盤として信頼しています。

Sources