AI Tools
Cloud AI初級

Hugging Face

AI/MLモデル、データセット、アプリのハブ — 200万以上のモデル、推論APIとの統合

Hugging Faceは、2016年にClement Delangue、Julien Chaumond、Thomas Wolfが共同で設立したオープンソースのAIコミュニティおよびプラットフォームです。一言で言えば、「AIモデル、データセット、デモアプリのGitHub」と言えるでしょう。200万以上の事前学習済みモデル、35万以上のデータセット、65万以上のSpacesデモが1つのサイトに集約されており、Transformers、Diffusers、Datasets、Accelerateなどの標準ライブラリも同社が開発・維持しています。 従来のAIモデルの共有は、(1)論文著者のGitHubリポジトリが学習コードのみを提供し、重みは別途リクエスト、(2)Google DriveやDropboxなどの非専門的なストレージに重みが分散、(3)ライセンスやメタデータの標準がない、(4)推論はユーザーが自分で環境を構築するなど、非効率な作業の連続でした。Hugging Face Hubは、git-lfsベースの重みバージョン管理+Model Cardの標準化(README.md+メタYAML)+Inference API(:huggingface.co/api/...)により、「モデルページにアクセス→Runボタンをクリック→即座に推論」という流れを実現しました。まるで「npm、PyPI、Docker Hubがソフトウェアパッケージを標準化するように、HFはAIモデルを標準化」したと言えるでしょう。 生命工学研究者の視点からは、(1)BioGPT、BioBERT、ESMFold、ProtGPT2、ChemBERTaなどのドメイン特化モデルを5行のコードで即座に使用できる、(2)PubMedQA、MedQA、BC5CDRなどの医療NLPベンチマークデータセットを統合、(3)Spacesで作成したタンパク質構造の可視化や薬物相互作用予測デモを即座にフォーク・修正できる、(4)Inference APIにより、GPUなしでもクラウド推論が可能(月間無料枠+有料の専用エンドポイント)、(5)AutoTrainにより、独自のデータセットに対するファインチューニングを自動化できる、といった利点があります。Transformersライブラリを習得すれば、SOTAモデルの90%を統合されたAPIで扱えるようになります。 OllamaやLM Studioなどのローカル実行ツールと並行して使用すると、さらに強力です。HFからGGUFやsafetensorsの重みをダウンロードし、Ollamaでローカル量子化推論を行う、またはHF Inference APIで大規模モデルをクラウドで呼び出す、Spacesに独自のデモをデプロイする、といった組み合わせが可能です。PROサブスクリプション(月額)では、高速な推論とより多くのSpaces GPU時間を提供します。

💻 必要なスペック

🧠RAM

クラウド使用時は0(推論APIはブラウザのみ)。ローカルダウンロードモデル使用時は、モデルのサイズに応じて8〜128GB以上。

🎮VRAM

クラウド使用時は0。ローカルGPU使用時は、4GB以上(小型モデル)〜80GB以上(大型LLM)。Transformersはdevice_map="auto"で複数のGPUに自動分散。

💾ストレージ

ローカルキャッシュの場所はデフォルトで~/.cache/huggingface/hub。大型モデルをダウンロードする場合は、100GB以上を推奨。HF_HOME環境変数で場所を変更可能。

インストール

# Python(Transformersの主要ライブラリ)
pip install transformers datasets accelerate

# 1. モデルのロード + 推論(3行)
from transformers import pipeline
pipe = pipeline("text-generation", model="meta-llama/Llama-3.3-70B-Instruct")
print(pipe("タンパク質構造予測におけるAlphaFoldとESMFoldの違いは?"))

# 2. Inference API(GPUなしでクラウドを呼び出す)
import requests
API_URL = "https://api-inference.huggingface.co/models/microsoft/biogpt"
headers = {"Authorization": f"Bearer {HF_TOKEN}"}
r = requests.post(API_URL, headers=headers, json={"inputs": "COVID-19 mortality is associated with"})

# 3. データセットのロード
from datasets import load_dataset
ds = load_dataset("qiaojin/PubMedQA", "pqa_labeled")

# 4. HF CLIでモデルをダウンロード(ggufのような重みを直接)
pip install huggingface_hub
huggingface-cli login
huggingface-cli download bartowski/Llama-3.3-70B-Instruct-GGUF   --include "*Q4_K_M*" --local-dir ./models/llama-3.3-70b

# 5. Spacesデモのデプロイ(Gradio)
pip install gradio
# app.pyを作成後
gradio deploy
📄 公式ドキュメント🐙 GitHub

📝 アップデートノート

まだアップデートノートはありません。

🧪 関連「生命のコード」

関連する「生命のコード」記事はまだありません。