Skip to content

GitHub action that'll sync files from a GitHub Repo with the Hugging Face Hub 🤗

License

Notifications You must be signed in to change notification settings

nateraw/huggingface-sync-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

huggingface-sync-action

A GitHub action that'll sync files from a GitHub repo with the Hugging Face Hub. 🤗

A simple example repo using this can be found here.

Usage

The first step is to add a Hugging Face token with write access to your repo as a GitHub Secret. Below, mine is called HF_TOKEN. Then, you can use this action in your repo as shown below. 🤗

uses: nateraw/[email protected]
with:
  # The github repo you are syncing from. Required.
  github_repo_id: ''

  # The Hugging Face repo id you want to sync to. (ex. 'username/reponame')
  # A repo with this name will be created if it doesn't exist. Required.
  huggingface_repo_id: ''

  # Hugging Face token with write access. Required.
  # Here, we provide a token that we called `HF_TOKEN` when we added the secret to our GitHub repo.
  hf_token: ${{ secrets.HF_TOKEN }}

  # The type of repo you are syncing to: model, dataset, or space.
  # Defaults to space.
  repo_type: 'space'
  
  # If true and the Hugging Face repo doesn't already exist, it will be created
  # as a private repo.
  #
  # Note: this param has no effect if the repo already exists.
  private: false

  # If repo type is space, specify a space_sdk. One of: streamlit, gradio, or static
  #
  # This option is especially important if the repo has not been created yet.
  # It won't really be used if the repo already exists.
  space_sdk: 'gradio'
  
  # If provided, subdirectory will determine which directory of the repo will be synced.
  # By default, this action syncs the entire GitHub repo.
  #
  # An example using this option can be seen here:
  # https://github.com/huggingface/fuego/blob/830ed98/.github/workflows/sync-with-huggingface.yml
  subdirectory: ''