GitHub를 Hugging Face에 연결하는 방법

0
10

GitHub와 Hugging Face 간의 연결을 자동화하면 AI 프로젝트를 구축, 버전 생성 및 배포하는 방식이 변화됩니다. 수동으로 파일을 업로드하는 대신 CI/CD 파이프라인은 Hugging Face Spaces 또는 모델을 GitHub 저장소와 항상 동기화된 상태로 유지합니다. 이번 글에서는 GitHub를 Hugging Face에 연결하는 방법을 안내해드리겠습니다.

GitHub를 Hugging Face에 연결하는 방법

시작하기 전에 다음 사항이 있는지 확인하세요.

  • GitHub 계정과 Hugging Face 계정.
  • Git은 로컬 컴퓨터에 설치됩니다.
  • (선택 사항) 프로젝트 코드를 호스팅하는 GitHub 저장소와 앱을 호스팅하는 Hugging Face Space. 아직 이런 것이 없더라도 걱정하지 마세요. 아래 단계가 안내될 것입니다.

GitHub를 HuggingFace에 연결하려면 다음 단계를 따르세요.

  1. 포옹하는 얼굴 액세스 토큰 생성
  2. 토큰을 GitHub 비밀로 저장
  3. GitHub Actions 워크플로 파일 생성
  4. 포옹하는 얼굴 공간을 설정하세요
  5. 커밋하고, 푸시하고, 작동하는 것을 지켜보세요.

1. 포옹하는 얼굴 액세스 토큰 생성

GitHub를 Hugging Face에 연결하는 방법

귀하의 GitHub 리포지토리를 단일 정보 소스로 전환하고 배포를 자동화하겠습니다. 이를 위해 가장 먼저 필요한 것은 Hugging Face의 액세스 토큰입니다. 해당 토큰을 가져오려면 다음 단계를 수행하세요.

  1. Hugging Face 계정에 로그인하세요.
  2. 프로필을 클릭한 다음 설정을 선택합니다.
  3. 왼쪽 사이드바에서 액세스 토큰을 클릭하고 새 토큰 생성을 선택합니다.
  4. 이름을 선택하고 토큰 유형으로 “쓰기”를 선택하여 업데이트를 푸시할 수 있는 GitHub 권한을 부여하세요.
  5. 토큰 생성을 클릭하고 토큰을 복사한 후 어딘가에 저장하세요.

토큰을 다시 가져오지 못할 수도 있으므로 안전한 곳에 보관하세요.

2. 토큰을 GitHub 비밀로 저장

GitHub를 HuggingFace에 연결하는 방법

이제 Hugging Face에서 생성된 토큰이 있으므로 이를 Git 저장소에 저장해 보겠습니다. 이렇게 하려면 아래 단계를 따르세요.

  • GitHub 리포지토리로 이동하여 설정 > 비밀 및 변수 > 작업으로 이동합니다.
  • 새 저장소 비밀을 클릭합니다.
  • 비밀 이름을 HF_TOKEN(정확한 이름이 중요함)으로 지정하고 Hugging Face 토큰을 값 필드에 붙여넣습니다.
  • 비밀 추가를 클릭하세요.

저장소 비밀에서 새로 생성된 비밀을 볼 수 있습니다.

3. GitHub Actions 워크플로 파일 생성

CI/CD 파이프라인을 정의하는 YAML 파일을 생성해야 합니다.

GitHub 리포지토리에서 다음 디렉터리 경로를 만듭니다: .github/workflows/. 워크플로 폴더 내에 배포.yml이라는 파일을 만듭니다.

GitHub를 HuggingFace에 연결

이렇게 하려면 새 파일 만들기 하이퍼링크를 클릭해야 합니다. 그런 다음 파일 이름 지정 필드에 .github/workflows/deploy.yml을 입력합니다.

다음 코드 줄을 붙여넣습니다.

name: Sync to Hugging Face hub

on:
push:
branches: [main] # Triggers the workflow on pushes to the main branch.
workflow_dispatch: # Allows you to manually trigger the workflow from the Actions tab.

jobs:
sync-to-hub:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0 # Fetches all history for all branches and tags.
lfs: true # Checks out any Git LFS files.

- name: Push to Hugging Face Hub
env:
HF_TOKEN: ${{ secrets.HF_TOKEN }}
run: git push https://HF_USERNAME:$HF_TOKEN@huggingface.co/spaces/HF_USERNAME/SPACE_NAME main

HF_USERNAME을 Hugging Face 사용자 이름으로 바꾸고 SPACE_NAME을 공간 이름으로 바꾸는 것을 잊지 마세요.

4. 포옹하는 얼굴 공간을 설정하세요

새로 시작하는 경우 앱이 활성화될 Hugging Face Space를 만드세요. 아래 단계를 따라야 합니다.

  • Hugging Face에 로그인하고 프로필 사진 > New Space를 클릭하세요.
  • Space에 이름을 지정하고 SDK(예: Gradio 또는 Streamlit)를 선택한 다음 Space를 공개로 설정하세요.
  • 공간 만들기를 클릭하세요.

기본 파일을 그대로 둘 수 있습니다. GitHub Action이 이를 덮어씁니다.

5. 커밋하고, 푸시하고, 작동하는 것을 지켜보세요

이제 .github/workflows/deploy.yml 파일을 GitHub 리포지토리에 커밋합니다. 커밋을 기본 분기로 푸시합니다. GitHub 저장소의 작업 탭으로 이동합니다. Hugging Face 허브 워크플로와 동기화가 실행되는 것을 볼 수 있습니다. 성공하면 이제 Hugging Face Space에 코드가 게시됩니다!

Hugging Face는 GitHub를 사용하나요?

예, Hugging Face는 별도의 플랫폼이지만 GitHub와 긴밀하게 통합됩니다. Hugging Face는 모델, 데이터 세트 및 Spaces에 대한 Git 기반 리포지토리를 제공합니다. 즉, GitHub에서와 마찬가지로 표준 Git 명령을 사용하여 복제, 푸시 및 풀을 수행할 수 있습니다. 이 기능을 통해 개발자는 AI 자산의 버전을 제어하고, GitHub Actions를 통해 배포를 자동화하고, 두 플랫폼 간의 코드를 원활하게 동기화할 수 있습니다. 많은 Hugging Face Spaces 및 모델 리포지토리는 지속적인 통합과 보다 쉬운 협업을 위해 GitHub 리포지토리에 직접 연결됩니다.

Hugging Face에 코드를 어떻게 푸시하나요?

Hugging Face에서 저장소 URL(예: https://huggingface.co/spaces/your-username/your-space-name)을 복제한 후 표준 Git 명령을 사용하여 Hugging Face Space 또는 모델 저장소에 코드를 푸시할 수 있습니다. 먼저 Hugging Face 액세스 토큰으로 인증합니다(토큰이 내장된 git 원격 set-url 사용 또는 Huggingface-cli 로그인 사용). 그런 다음 변경 사항을 추가하고 커밋하고 푸시합니다. git add ., git commit -m “message” 및 git push Origin main. 자동화를 위해 GitHub 저장소에 저장된 HF_TOKEN 비밀을 사용하여 모든 GitHub 푸시에서 Hugging Face로 푸시하는 GitHub Actions 워크플로를 설정할 수도 있습니다.

이 가이드를 통해 GitHub 저장소를 Hugging Face에 통합하거나 연결할 수 있기를 바랍니다.