Hub documentation
đ§ Label Studio sur Spaces
đ§ Label Studio sur Spaces
Label Studio est une plateforme de labellisation de donnĂ©es open source permettant dâĂ©tiqueter, dâannoter et dâexplorer de nombreux types de donnĂ©es. De plus, Label Studio intĂšgre une puissante interface de machine learning qui peut ĂȘtre utilisĂ©e pour lâentraĂźnement de nouveaux modĂšles, lâapprentissage actif, lâapprentissage supervisĂ© et de nombreuses autres techniques dâentraĂźnement.
Ce guide vous apprend Ă dĂ©ployer Label Studio pour lâĂ©tiquetage et lâannotation de donnĂ©es au sein du Hugging Face Hub. Vous pouvez utiliser la configuration par dĂ©faut de Label Studio en tant quâapplication autonome hĂ©bergĂ©e entiĂšrement sur le Hub Ă lâaide de Docker, Ă des fins de dĂ©monstration et dâĂ©valuation, ou vous pouvez connecter votre propre base de donnĂ©es et votre stockage cloud pour hĂ©berger une application de production complĂšte sur Spaces.
âĄïž DĂ©ployer Label Studio sur Spaces
Vous pouvez déployer Label Studio sur Spaces en quelques clics :
Spaces vous demande de définir :
Un Owner : soit votre compte personnel, soit une organisation dont vous ĂȘtes membre.
Un nom dâespace : le nom de lâespace au sein du compte oĂč vous crĂ©ez lâespace.
Le Visibility : private si vous souhaitez que le Space ne soit visible que par vous ou votre organisation, ou public si vous souhaitez quâil soit visible par dâautres utilisateurs ou applications utilisant lâAPI Label Studio (recommandĂ©).
đ Utilisation de la configuration par dĂ©faut
Par défaut, Label Studio est installé dans Spaces avec une configuration qui utilise le stockage local pour la base de données de l'application afin de stocker la configuration, les identifiants de compte et les informations de projet. Les tùches d'étiquetage et les éléments de données sont également conservés dans le stockage local.
Le stockage dans les Hugging Face Spaces est Ă©phĂ©mĂšre par dĂ©faut. Pour conserver vos donnĂ©es entre les redĂ©marrages, attachez un Storage Bucket â consultez la section sur la persistance ci-dessous.
AprĂšs avoir lancĂ© Label Studio, lâĂ©cran de connexion standard sâaffiche. Vous pouvez commencer par crĂ©er un nouveau compte Ă lâaide de votre adresse e-mail, puis vous connecter avec vos nouvelles identifiants. PĂ©riodiquement aprĂšs la connexion, Label Studio vous avertit que le stockage est Ă©phĂ©mĂšre et que les donnĂ©es pourraient ĂȘtre perdues si votre Space est redĂ©marrĂ©. Un message de Heidi, la mascotte utile de Label Studio, vous invite Ă©galement Ă crĂ©er un nouveau projet afin de commencer Ă annoter vos donnĂ©es. Pour dĂ©marrer, consultez le tutoriel « Zero to One » de Label Studio, qui propose un guide pour construire une interface dâannotation destinĂ©e Ă lâanalyse de sentiments.
đ ïž Configuration d'une instance de Label Studio prĂȘte pour la production
Pour rendre votre Space prĂȘt pour la production, vous devrez effectuer trois modifications de configuration :
Désactiver la création illimitée de nouveaux comptes.
Activez la persistance en attachant un Storage Bucket ou une base de données externe.
Facultativement, attachez un stockage cloud pour les tĂąches dâĂ©tiquetage.
Désactiver la création illimitée de nouveaux comptes
La configuration par défaut de Label Studio permet la création illimitée de nouveaux comptes pour toute personne disposant de l'URL de votre application. Vous pouvez restreindre les inscriptions en ajoutant les secrets de configuration suivants à vos ParamÚtres de Space.
LABEL_STUDIO_DISABLE_SIGNUP_WITHOUT_LINK: DĂ©finir cette valeur surtruedĂ©sactive la crĂ©ation de compte sans restriction.LABEL_STUDIO_USERNAME: il sâagit du nom dâutilisateur du compte que vous utiliserez en tant que premier utilisateur de votre espace Label Studio. Il doit sâagir dâune adresse e-mail valide.LABEL_STUDIO_PASSWORD: le mot de passe qui sera associĂ© au premier compte utilisateur.
Redémarrez le Space pour appliquer ces paramÚtres. La possibilité de créer de nouveaux comptes depuis l'écran de connexion sera désactivée. Pour créer de nouveaux comptes, vous devrez inviter de nouveaux utilisateurs dans les paramÚtres Organization de l'application Label Studio.
Activer la persistance avec les buckets de stockage HF
Par dĂ©faut, cet espace stocke toutes les configurations de projet et les annotations de donnĂ©es dans le stockage local avec SQLite. Si lâespace est rĂ©initialisĂ©, toutes les donnĂ©es de configuration et dâannotation de lâespace seront perdues.
La mĂ©thode la plus simple pour activer la persistance est dâattacher un Storage Bucket, qui monte le stockage dâobjets persistant directement dans le Space. Label Studio Ă©crit sa base de donnĂ©es SQLite et les mĂ©dias tĂ©lĂ©versĂ©s dans le bucket montĂ©, de sorte que les projets et les annotations survivent aux redĂ©marrages.
Créer un bucket :
hf buckets create <your-namespace>/label-studio-data
Attachez-le dans Space Settings â Storage Buckets, chemin de montage
/data.DĂ©finissez deux variables dâespace :
LABEL_STUDIO_BASE_DATA_DIR=/data STORAGE_PERSISTENCE=1Reconstruction d'usine de l'Espace.
Définissez un secret Space
SECRET_KEYpour maintenir les sessions utilisateurs actives entre les redémarrages. Sans cela, Label Studio génÚre une clé aléatoire à chaque démarrage et tous les utilisateurs se déconnectent lors du redémarrage.
Laissez un agent de codage le faire pour vous
Si vous prĂ©fĂ©rez ne pas naviguer dans les paramĂštres de lâEspace, vous pouvez demander Ă un agent de codage ayant accĂšs Ă huggingface_hub de provisionner lâEspace pour vous. Indiquez-lui votre identifiant dâEspace et le nom du bucket, et il pourra exĂ©cuter lâĂ©quivalent de :
from huggingface_hub import HfApi, Volume
api = HfApi()
space_id = "<your-namespace>/<your-space>"
# Attach the bucket at /data
api.set_space_volumes(
space_id,
volumes=[
Volume(type="bucket", source="<your-namespace>/label-studio-data", mount_path="/data"),
],
)
# Tell Label Studio to write its SQLite DB and media into the mounted bucket
api.add_space_variable(space_id, "LABEL_STUDIO_BASE_DATA_DIR", "/data")
api.add_space_variable(space_id, "STORAGE_PERSISTENCE", "1")
# Optional: set a stable SECRET_KEY so sessions survive restarts
api.add_space_secret(space_id, "SECRET_KEY", "<random-string>")
# Factory rebuild so the new mount and variables take effect
api.restart_space(space_id, factory_reboot=True)Consultez le guide manage-spaces pour en savoir plus sur la gestion des espaces et des montages de volumes via huggingface_hub.
Activer la persistance avec Postgres
Pour des dĂ©ploiements multi-utilisateurs plus lourds, vous pouvez Ă la place activer la persistance en connectant une base de donnĂ©es Postgres externe Ă votre space, ce qui garantit que tous les paramĂštres de projet et dâannotation sont conservĂ©s.
DĂ©finissez les variables secrĂštes suivantes pour correspondre Ă votre propre instance hĂ©bergĂ©e de Postgres. Nous recommandons vivement de les dĂ©finir en tant que secrets afin dâĂ©viter de divulguer des informations sur votre service de base de donnĂ©es au public dans la dĂ©finition de vos spaces.
DJANGO_DB: dĂ©finissez cette valeur surdefault.POSTGRE_NAME: DĂ©finissez cette variable avec le nom de la base de donnĂ©es Postgres.POSTGRE_USER: DĂ©finissez cette variable avec le nom d'utilisateur Postgres.POSTGRE_PASSWORD: DĂ©finissez cette variable avec le mot de passe de votre utilisateur Postgres.POSTGRE_HOST: DĂ©finissez cette variable sur l'hĂŽte oĂč votre base de donnĂ©es Postgres est exĂ©cutĂ©e.POSTGRE_PORT: DĂ©finissez cette variable sur le port sur lequel votre base de donnĂ©es Postgres est exĂ©cutĂ©e.STORAGE_PERSISTENCE: dĂ©finissez cette variable sur1pour supprimer l'avertissement relatif au stockage Ă©phĂ©mĂšre.
Redémarrez le Space pour appliquer ces paramÚtres. Les informations sur les utilisateurs, les projets et les annotations seront stockées dans la base de données et rechargées par Label Studio si le space est redémarré ou réinitialisé.
Activer le stockage cloud
Par défaut, le seul stockage de données activé pour cet espace est le stockage local. En cas de réinitialisation de l'espace, toutes les données seront perdues. Pour activer un stockage permanent, vous devez activer un connecteur de stockage cloud. Choisissez le connecteur cloud approprié et configurez les secrets associés.
Amazon S3
STORAGE_TYPE: définissez cette valeur surs3.STORAGE_AWS_ACCESS_KEY_ID:<YOUR_ACCESS_KEY_ID>STORAGE_AWS_SECRET_ACCESS_KEY:<YOUR_SECRET_ACCESS_KEY>STORAGE_AWS_BUCKET_NAME:<YOUR_BUCKET_NAME>STORAGE_AWS_REGION_NAME:<YOUR_BUCKET_REGION>STORAGE_AWS_FOLDER: définissez cette variable sur une chaßne vide.
Google Cloud Storage
STORAGE_TYPE: définissez cette valeur surgcs.STORAGE_GCS_BUCKET_NAME:<YOUR_BUCKET_NAME>STORAGE_GCS_PROJECT_ID:<YOUR_PROJECT_ID>STORAGE_GCS_FOLDER: définissez cette valeur sur une chaßne vide.GOOGLE_APPLICATION_CREDENTIALS: définissez cette variable sur/opt/heartex/secrets/key.json.
Azure Blob Storage
STORAGE_TYPE: définissez cette valeur surazure.STORAGE_AZURE_ACCOUNT_NAME:<YOUR_STORAGE_ACCOUNT>STORAGE_AZURE_ACCOUNT_KEY:<YOUR_STORAGE_KEY>STORAGE_AZURE_CONTAINER_NAME:<YOUR_CONTAINER_NAME>STORAGE_AZURE_FOLDER: définissez cette variable sur une chaßne vide.
đ€ Ătapes suivantes, retours et assistance
Pour commencer avec Label Studio, consultez le tutoriel « De zĂ©ro Ă un » de Label Studio, qui vous guide Ă travers un projet dâannotation dâanalyse de sentiments. Vous trouverez un ensemble complet de ressources sur Label Studio et la communautĂ© Label Studio sur la page dâaccueil de Label Studio. Cela inclut la documentation complĂšte, un terrain de jeu interactif pour tester diffĂ©rentes interfaces dâannotation, ainsi que des liens pour rejoindre la communautĂ© Slack de Label Studio.
Update on GitHub