Wie man GitHub mit Hugging Face verknüpft

Wie man GitHub mit Hugging Face verbindet

Den Code von GitHub automatisch in Hugging Face zu übertragen, klingt verlockend, ist aber überraschenderweise komplexer als ein einfacher Klick. Wenn Sie schon einmal versucht haben, Modelle oder Apps synchron zu halten, ohne alles manuell zu kopieren, ist diese Anleitung genau das Richtige für Sie. Im Idealfall läuft alles reibungslos: Der Code wird zu GitHub übertragen und Ihr Space oder Modell in Hugging Face wird automatisch aktualisiert. Bei manchen Konfigurationen ist es jedoch etwas knifflig, insbesondere wenn Schlüssel oder Verzeichnisse nicht korrekt eingerichtet sind. Diese Anleitung erklärt Ihnen die einzelnen Schritte, damit nichts schiefgeht.

Wie man alles vorbereitet, damit die Magie geschieht

Generieren Sie ein Zugriffstoken für Hugging Face

Hier beginnen, wenn Sie Änderungen aus Ihrem GitHub-Repository direkt an Hugging Face übertragen möchten. Es mag etwas ungewöhnlich klingen, aber Sie benötigen dieses Token zur Authentifizierung, ohne ständig Ihr Passwort ändern zu müssen. So geht’s:

  1. Loggen Sie sich in Ihr Hugging Face-Konto ein.
  2. Klicken Sie auf Ihr Profilbild und gehen Sie dann zu Einstellungen.
  3. Klicken Sie in der linken Seitenleiste auf Zugriffstoken und dann auf Neues Token erstellen.
  4. Wählen Sie einen aussagekräftigen Namen, z. B.„GitHub-Automatisierung“, und legen Sie als Token-Typ „ Schreiben “ fest. Dadurch kann Ihr GitHub-Bot Aktualisierungen übertragen (ein Token mit Lesezugriff reicht dafür nicht aus).
  5. Klicken Sie auf „Token erstellen“ und kopieren Sie ihn sofort – sobald Sie die Seite verlassen, ist er möglicherweise nicht mehr verfügbar. Speichern Sie ihn an einem sicheren Ort, beispielsweise in einem Passwort-Manager.

Warum es hilfreich ist: Dieses Token dient als Nachweis für Ihren legitimen Zugriff, ohne Ihr Passwort preiszugeben. Es ist erforderlich, wenn Ihre automatisierte Pipeline Aktionen wie das Übertragen von Code oder das Aktualisieren von Modellen ausführen soll.

Auf manchen Rechnern kann es zunächst zu einem Fehler beim Token kommen, insbesondere wenn die Berechtigungen nicht stimmen oder das Token nicht korrekt eingefügt wurde.Überprüfen Sie daher alles sorgfältig, bevor Sie fortfahren.

Speichern Sie das Token als GitHub-Geheimnis.

Dadurch wird verhindert, dass dieses Token in Ihrem Code offengelegt wird. Geheimnisse müssen schließlich geheim bleiben, nicht wahr?

  1. Gehe zu deinem GitHub-Repository und anschließend zu den Einstellungen.
  2. Klicken Sie auf Geheimnisse und Variablen > Aktionen.
  3. Klicken Sie auf „Neues Repository-Geheimnis“.
  4. Nennen Sie es HF_TOKEN.(Der genaue Name ist wichtig, ändern Sie ihn also nicht.)
  5. Füge das zuvor kopierte Umarmungsgesicht-Token ein.
  6. Speichern.

Wichtiger Hinweis: Bei falscher Namensangabe oder Tippfehlern im Workflow funktioniert es nicht. Sollte der Push fehlschlagen, ist mit Debugging zu rechnen.

Erstellen Sie die GitHub Actions Workflow-Datei

Hier beginnt die Magie der Automatisierung. Sie weisen GitHub an: Bei bestimmten Auslösern (wie dem Pushen von Code) soll ein Skript ausgeführt werden, das sich mit Hugging Face synchronisiert.

Erstellen Sie in Ihrem Repository einen neuen Ordner: .github/workflows/. Fügen Sie darin eine Datei namens deploy.yml hinzu. Falls Sie nicht wissen, wie das geht:

  • Klicken Sie auf „Datei hinzufügen“ > „Neue Datei erstellen“.
  • Benennen Sie den Pfad als .github/workflows/deploy.yml.

Hier ist ein einfacher Codeausschnitt zum Einfügen in diese Datei:

name: Sync to Hugging Face hub on: push: branches: [main] workflow_dispatch: jobs: sync-to-hf: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v3 with: fetch-depth: 0 lfs: true - name: Push to Hugging Face env: HF_TOKEN: ${{ secrets. HF_TOKEN }} run: git push https://:${{ env. HF_TOKEN }}@huggingface.co/spaces// main

Achten Sie darauf, <IHR_HF_BENUTZERNAME> und <SPACE_NAME> korrekt zu vertauschen. Zugegeben, die URL sieht etwas unschön aus, aber sie ist der schnellste Weg, Push-Vorgänge zu authentifizieren, ohne SSH-Schlüssel einrichten zu müssen (was in manchen Konfigurationen umständlich ist).Sie ist allerdings etwas fehleranfällig – wenn sich Ihr Workspace-Name oder Benutzername ändert, muss die URL aktualisiert werden. Außerdem kann der Push in manchen Konfigurationen fehlschlagen, wenn Ihre Token-Berechtigungen nicht stimmen oder Sie Ihr Git-Remote nicht korrekt eingerichtet haben.

Richten Sie Ihren Umarmungsgesichtsraum ein.

Wenn du ganz von vorne anfängst, ist das Erstellen dieses Bereichs ganz einfach. Melde dich einfach bei Hugging Face an, klicke auf dein Profilbild und dann auf „ Neuer Bereich“. Gib ihm einen Namen, wähle ein SDK wie Gradio oder Streamlit und stelle den Bereich auf „Öffentlich“. Die Standarddateien sind nicht so wichtig, da dein GitHub-Workflow sie sowieso überschreibt. Wichtig ist nur, dass deine Python- oder App-Dateien nach der Einrichtung in diesem Bereich liegen und bereit sind, aktualisiert zu werden, sobald GitHub Änderungen überträgt.

Engagieren, durchstarten und zusehen, wie alles passiert

Speichern und übertragen Sie nun die Datei `deploy.yml`. Sobald sie im Hauptzweig angekommen ist, wechseln Sie zum Tab „Aktionen“ und beobachten Sie, wie der Workflow automatisch startet. Bei erfolgreicher Übertragung ist Ihr Code nun live und aktualisiert Ihren Hugging Face Space automatisch bei jedem Push auf GitHub. Mit etwas Glück funktioniert alles reibungslos – in manchen Fällen müssen Sie möglicherweise Berechtigungen anpassen oder Ihre Geheimnisse überprüfen, aber normalerweise klappt es problemlos.

Nutzt Hugging Face GitHub?

Ja, das ist kein Zufall. Die Hugging Face-Repositories sind im Grunde Git-Repositories, die in die Plattform integriert sind. Viele Nutzer verknüpfen ihre Hugging Face Spaces oder Modelle direkt mit GitHub-Repositories, um Updates nahtlos durchzuführen. Klonen, Pushen, Pullen – die üblichen Git-Funktionen – sind möglich. Wenn Sie also mit Git-Workflows vertraut sind, werden Sie sich bei Hugging Face wohlfühlen und Ihre Daten automatisch aktualisieren können. Beachten Sie jedoch, dass Hugging Face unabhängig von GitHub ist, auch wenn es im Hintergrund Git nutzt.

Wie kann ich Code an Hugging Face übertragen?

Auch hier gilt: Es funktioniert wie bei jedem anderen Git-Repository. Klonen Sie es von Hugging Face, dann können Sie Änderungen hinzufügen, committen und pushen.

  • Legen Sie Ihre Remote-URL fest, wahrscheinlich so etwas wie https://huggingface.co/spaces/Ihr-Benutzername/Ihr-Space-Name.
  • Nehmen Sie die Änderungen lokal vor und führen Sie das Programm anschließend aus git add..
  • Engagieren Sie sich mit git commit -m “Your message”.
  • Drücken Sie mit git push origin main.

Um dies zu automatisieren, empfiehlt sich die Einrichtung von GitHub Actions mit dem zuvor erstellten Geheimnis. Denken Sie daran: Falls Probleme auftreten, liegt es oft an fehlenden Berechtigungen oder einer fehlerhaften URL-Formatierung.Überprüfen Sie daher immer die Protokolle im Tab „Aktionen“.

Hoffentlich erspart das dem einen oder anderen viel Ärger. Sobald alles eingerichtet ist, ist es wirklich angenehm, einfach Code einzufügen und die Aktualisierung des Space in Echtzeit zu beobachten.