LoginSignup
0
0

HuggingFaceのSpaceを構築する手順書

Last updated at Posted at 2024-05-12

HuggingFaceのSpaceを構築する手順書です。

前提知識: コマンドプロンプトの操作経験者
到達目標: HuggingFaceのSpaceの環境構築及び実行

システム要件

  • ツール
    Git
  • リポジトリ
    Gradioのアプリが開発済みでローカルにClone済みであること。
  • アカウント
    HuggingFaceの開設済みアカウント
    ⚠アカウント作成から一週間程度経過しないとスペースは作成出来ませんでした。(n=1)
    画像は、新規アカウント作成後のSpaceの作成制限。
    image.png

作業手順

  1. Spaceの設定情報をReadMe.mdに追加
  2. アクセストークンを作成
  3. Spaceを作成
  4. Spaceにプッシュ
  5. アプリの動作確認

1. Spaceの設定情報を追加

  • ローカルリポジトリの直下のReadMe.mdファイルの冒頭にSpaceの設定情報を追加する。
    記述サンプルと公式情報:Spaces Configuration Reference
ReadMe.md
---
license: mit
title: Sample
sdk: gradio
emoji: 📊
colorFrom: yellow
colorTo: yellow
pinned: false
---
  • 変更をコミットし、git pullgit pushを実行する。

2. アクセストークンを作成

  • https://huggingface.co/settings/tokens を開き、「New Token」ボタンをクリックし、アクセストークンを作成する。
    • Name: 任意の名前
    • Type: Write
    • 「Generate a token」ボタンをクリックして生成

3. Spaceを作成

https://huggingface.co/spaces を開き「Create new Space」ボタンをクリックし、新しいSpaceを作成する。
image.png
内容を入力し、Select the Space SDKはGradioを選択し「Create Space」を押す。

NOTE
Spaceの可視性の値(PublicPrivate)は、後からSetttings画面で変更が行える。

4. Spaceにプッシュ

SpaceのリポジトリをGit Cloneコマンドで複製する。

  • git cloneします。
git clone https://huggingface.co/spaces/<repo_path>

<repo_path>はリポジトリのパスです。

  • ローカルにClone済みのGradioアプリのリポジトリを、ローカルのSpaceリポジトリにコピーする。

NOTE
.gitフォルダ以外をコピーします。

Spacesのリモートリポジトリにプッシュする

  • Git CloneしたSpaceのローカルリポジトリに移動する。
cd <Spaceのローカルリポジトリ名>
  • git remote set-urlコマンドでリモートURLを変更する。
git remote set-url origin https://<user_name>:<token>@huggingface.co/<repo_path>

<user_name>はHugging Faceのユーザー名、<token>は作成したアクセストークン、<repo_path>はリポジトリのパスです。

NOTE
リモートURLを変更する前に、git remote -vで現在のリモートURLを確認できます。

git remote -v
  • ローカルで変更をステージングし、コミットします。
git add .
git commit -m "Commit message"
  • git pullgit pushをします。
git pull origin main
git push origin main

5. アプリの動作確認

到達目標: 状態がRunningになり、動作確認を行える事
プッシュすると、アプリが自動的にビルドされ、起動する。
BuildingStartingRunningと処理が進む。

https://huggingface.co/spaces/<repo_path>を開き、image.png状態かどうかを確認する。

NOTE
Gradioのアプリのポート番号が7860以外の場合、StartingからRunningに状態が遷移しない現象が発生しました。
→ポート番号を7860に設定し解決しました。

  • アプリの動作確認を行うと作業終了です。お疲れ様でした。

まとめ

HuggingFaceのSpaceの環境構築及び実行の説明を行いました。
GitHub Actionsを使用して自動デプロイする方法は、HuggingFace公式資料を参考にしてください。

関連

GitHubActionを使用してSpaceに自動デプロイする方法

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0