spaCy Integration with Hugging Face Hub

Hugging FaceはspaCyライブラリをHugging Face Hubに統合し、ユーザーが標準化されたインフラストラクチャを使用してspaCy NLPパイプラインを共有、発見、デプロイできるようにしました。この統合により、spaCyモデルの集中リポジトリと簡素化されたデプロイメントオプションが提供され、プロトタイピングから本番環境への移行がスムーズになります。

Simplified Model Distribution and Installation

ユーザーは、pip installを使用してHugging Face Hubから直接spaCyモデルをインストールできるようになりました。これにより、手動でのダウンロードが不要になり、依存関係の管理が簡素化されます。モデルは、標準的な方法でspaCyにロードできます:

# Using spacy.load()
import spacy
nlp = spacy.load("en_core_web_sm")

# Importing as module
import en_core_web_sm
nlp = en_core_web_sm.load()

これを容易にするため、Hubはモデルリポジトリに「Use in spaCy」ボタンを提供しており、インストールとロードのための動作可能なコードスニペットを生成します。

Model Discovery and Hub Capabilities

Hugging Face Hubは現在、spaCy 3.1リリースに基づき、spaCy組織から60以上の標準的なモデルをホストしています。公式モデルに加えて、コミュニティが貢献したspaCyモデルは、Hub上の専用フィルターを通じて発見可能です。

Interactive Widgets and Inference API

この統合には、固有表現抽出(NER)用の特化されたウィジェットが含まれており、ユーザーはブラウザ上でインタラクティブにモデルをテストできます。NERはHosted Inference APIを介してすぐに利用可能ですが、品詞(POS)タグ付けおよびテキスト分類のサポートは将来のアップデートで計画されています。

ユーザーは、本番環境でのユースケースのために、HTTPリクエストを介してこれらのモデルとやり取りすることもできます:

curl -X POST --data '{"inputs": "Hello, this is Omar"}' https://api-inference.huggingface.co/models/spacy/en_core_web_sm

Streamlined Model Sharing via spacy-huggingface-hub

開発者は、spacy-huggingface-hubライブラリを使用して、独自のspaCyパイプラインをHubにアップロードできます。このライブラリは、spaCy CLIをhuggingface-hub pushコマンドで拡張し、パッケージ化されたモデル、メタデータ、およびモデルカードの生成を自動化します。

モデルを共有するためのワークフローは以下の通りです:

  1. huggingface-cli loginを介して認証します。
  2. python -m spacy packageを使用してモデルをパッケージ化します。
  3. python -m spacy huggingface-hub pushを使用してパッケージをHubにプッシュします。

Infrastructure for Library Integration

この統合は、様々なライブラリをサポートするために必要なAPIとウィジェットフレームワークを提供するhuggingface_hubライブラリを通じて実現されました。Hugging Faceは、自身のツールをHubに統合したい他のライブラリのメンテナー向けにガイドを提供しています。

Sources

関連

  • Dispatch
  • Dispatch
  • Dispatch
  • プロジェクト
  • Dispatch