🤖
AI・機械学習

Hugging Faceモデル使い方入門:PythonでAIを動かす基本ステップ

#Hugging Face #AIモデル #Python #NLP #使い方入門 #transformers
AI

ヨミアゲAI編集部

AI音声・動画制作に関する情報をお届けします

Hugging Faceは、2026年現在、AI開発、特に自然言語処理(NLP)分野におけるデファクトスタンダードとしてその地位を確立しています。オープンソースの精神と活発なコミュニティに支えられ、世界中の開発者や研究者がモデル、データセット、アプリケーションを共有し、協力し合うエコシステムを形成しています。Hugging Face Hubには、2026年3月現在、200万以上のAIモデルと50万以上のデータセットが公開されており、多様なAIタスクに対応するリソースが手に入ります。

本記事では、このHugging FaceモデルをPythonで利用するための基本的な使い方を、ステップバイステップで解説します。

1. Hugging Faceモデルを動かすための準備

Hugging Faceモデルを利用するには、Python環境と主要ライブラリであるtransformersのインストールが必要です。

Python環境のセットアップ

まず、プロジェクトごとに仮想環境を構築することをお勧めします。これにより、依存関係の衝突を防ぎ、環境をクリーンに保つことができます。

# 仮想環境の作成
python -m venv hf_env

# 仮想環境のアクティベート (macOS/Linux)
source hf_env/bin/activate

# 仮想環境のアクティベート (Windows PowerShell)
# .\hf_env\Scripts\Activate.ps1

必要なライブラリのインストール

次に、Hugging Faceの主要ライブラリであるtransformersをインストールします。多くのモデルはPyTorchまたはTensorFlowフレームワークで動作するため、どちらか一方、または両方をtransformersと一緒にインストールします。ここではPyTorchを推奨します。

pip install transformers[torch] accelerate datasets

💡 ポイント: transformers[torch]とすることで、PyTorchとその依存関係が自動的にインストールされます。もしTensorFlowを使用する場合はtransformers[tf]を指定してください。accelerateは大規模モデルの学習・推論を効率化するライブラリ、datasetsはデータセットを扱うためのライブラリです。

インストールが完了したら、transformersのバージョンを確認してみましょう。2026年3月時点での安定版は4.38.1前後ですが、常に最新版を利用することが推奨されます。

pip show transformers

2. Hugging Faceモデルの基本的な使い方:テキスト分類を例に

Hugging Faceモデルの利用方法は大きく分けて2つあります。手軽に利用できる**パイプライン(pipeline)機能と、より詳細な制御が可能なトークナイザー(Tokenizer)とモデル(Model)**を個別に使う方法です。

パイプライン機能で手軽に利用する

パイプラインは、事前学習済みモデルとそれに必要な前処理・後処理をまとめて実行できる高レベルAPIです。初めてHugging Faceモデルを使う方にとって最も簡単な方法です。ここでは、センチメント分析(テキスト分類の一種)を例に挙げます。

from transformers import pipeline

# 2026年3月時点の安定版 `transformers` ライブラリバージョン 4.38.1 を想定
# 最新版は適宜確認してください

# センチメント分析パイプラインを初期化
# デフォルトで "distilbert-base-uncased-finetuned-sst-2-english" モデルが使用されます
classifier = pipeline("sentiment-analysis")

# テキストを分析
text_to_analyze = "Hugging Face models are incredibly powerful and easy to use!"
result = classifier(text_to_analyze)
print(result)

# 特定のモデルを指定することも可能
# classifier = pipeline("sentiment-analysis", model="distilbert-base-uncased-finetuned-sst-2-english")

このコードを実行すると、入力されたテキストがポジティブかネガティブか、そしてその確信度(スコア)が出力されます。

トークナイザーとモデルを個別に利用する

より細かい制御が必要な場合や、モデルの内部動作を理解したい場合は、トークナイザーモデルを個別にロードして使用します。

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

# 使用するモデルの名前を指定
model_name = "distilbert-base-uncased-finetuned-sst-2-english"

# トークナイザーとモデルをロード
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)

# GPUが利用可能であれば、モデルをGPUに移動
if torch.cuda.is_available():
    model.to("cuda")
    device = "cuda"
else:
    device = "cpu"
print(f"Using device: {device}")

# 入力テキストをトークン化
text_to_analyze = "This movie was absolutely fantastic! I highly recommend it."
inputs = tokenizer(text_to_analyze, return_tensors="pt")

# GPUを使用する場合、入力もGPUに移動
if device == "cuda":
    inputs = {k: v.to(device) for k, v in inputs.items()}

# モデルで推論を実行(勾配計算は不要なのでwith torch.no_grad()を使用)
with torch.no_grad():
    logits = model(**inputs).logits

# 推論結果を解釈
predictions = torch.argmax(logits, dim=-1).item()
# このモデルでは、0がネガティブ、1がポジティブにマッピングされています
sentiment = "Positive" if predictions == 1 else "Negative"
print(f"Sentiment: {sentiment}, Logits: {logits}")

⚠️ 注意: GPUがない環境やVRAMが不足している場合、モデルの推論にはCPUが使用され、処理速度が大幅に低下する可能性があります。多くの一般的なモデルでは、最低でも8GB以上のGPUメモリがあると快適に動作します。

3. さらにHugging Faceを活用するために

Hugging Faceのエコシステムは、モデルの推論だけでなく、学習、デプロイ、データセット管理など、多岐にわたる機能を提供しています。

さらなる活用方法

  • ファインチューニング(Fine-tuning): 既存の事前学習済みモデルを、特定のタスクやデータセットに合わせて再学習させることで、性能を向上させることができます。Hugging FaceのTrainer APIを使えば、比較的容易に実現可能です。
  • Hugging Face Spaces: モデルを使ったインタラクティブなデモアプリケーションを簡単に構築し、共有できるプラットフォームです。StreamlitやGradioといったフレームワークに対応しています。
  • Hugging Face Inference API: ホストされたモデルをREST API経由で利用できます。自分でモデルをデプロイする手間なく、手軽にAI機能をアプリケーションに組み込めます。

SpacesとInference APIの料金体系(2026年3月時点)

機能 無料枠(2026年3月時点) 有料枠(一部)
Hugging Face Spaces CPU上で小規模なデモアプリをホスト可能 より強力なGPU(例: NVIDIA A100)、プライベートスペース、高可用性など
Inference API 月間約3万リクエストまで無料で利用可能 高スループット、専用エンドポイント、商用利用向けプランなど

Hugging Faceは、AI開発のあらゆる段階で強力なサポートを提供するプラットフォームです。この入門記事を参考に、ぜひHugging Faceモデルの活用を始めてみてください。

AI音声でナレーションを作ってみませんか?

ヨミアゲAIを試す(無料)