Hub documentation

Dash sur Spaces

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Dash sur Spaces

Avec Dash Open Source, vous pouvez créer des applications de données sur votre ordinateur portable en Python pur, sans JavaScript.

Apprenez à connaître Dash en créant une application d’exemple avec du code open source. Passez à l’échelle avec Dash Enterprise lorsque votre application Dash est prête à être utilisée au niveau d’un département ou de toute l’entreprise. Ou bien, lancez votre initiative avec Dash Enterprise dès le départ pour profiter d’une productivité accrue des développeurs et d’un accompagnement pratique par l’équipe de Plotly.

Déployer Dash sur Spaces

Pour commencer à utiliser Dash sur Spaces, cliquez sur le bouton ci-dessous :

Cela lancera la construction de votre Space à l’aide du modèle Docker Dash de Plotly. En cas de succès, vous devriez voir une application similaire à celle du modèle Dash.

Personnaliser votre application Dash

Si vous n'avez jamais construit avec Dash auparavant, nous vous recommandons de commencer par notre tutoriel Dash en 20 minutes.

Lorsque vous créez un Dash Space, vous obtenez quelques fichiers clés pour vous aider à démarrer :

1. app.py

C'est le fichier principal de l'application qui définit la logique centrale de votre projet. Les applications Dash sont souvent structurées en modules, et vous pouvez éventuellement séparer votre mise en page, vos callbacks et vos données dans d'autres fichiers, comme layout.py, etc.

Dans app.py, vous verrez :

  1. from dash import Dash, html Nous importons l'objet Dash pour définir notre application, ainsi que la bibliothèque html, qui nous fournit les briques de base pour assembler notre projet.

  2. app = Dash() Ici, nous définissons notre application. Le layout, le serveur et les callbacks sont liés à l'objet app.

  3. server = app.server Ici, nous définissons notre variable serveur, qui est utilisée pour exécuter l'application en production.

  4. app.layout = La mise en page de l’application de démarrage est définie comme une liste de composants Dash, un composant Dash individuel, ou une fonction qui renvoie l’un ou l’autre.

    app.layout est votre mise en page initiale, qui sera mise à jour en tant qu’application monopage par les callbacks et les autres logiques de votre projet.

  5. if __name__ == '__main__': app.run(debug=True) Si vous exécutez votre projet localement avec python app.py, app.run(...) s’exécutera et démarrera un serveur de développement pour travailler sur votre projet, avec des fonctionnalités telles que le rechargement à chaud, le graphe de callbacks, et plus encore.

    En production, nous recommandons gunicorn, un serveur de qualité production. Les fonctionnalités de débogage ne seront pas activées lors de l’exécution de votre projet avec gunicorn, cette ligne ne sera donc jamais atteinte.

2. Dockerfile

Le Dockerfile pour une application Dash est minimal, car Dash a peu de dépendances système. Les exigences clés sont :

  • Il installe les dépendances listées dans requirements.txt (en utilisant uv)
  • Il crée un utilisateur non root pour des raisons de sécurité
  • Il exécute l'application avec gunicorn en utilisant gunicorn app:server --workers 4

Vous devrez peut-être modifier ce fichier si votre application nécessite des dépendances système supplémentaires, des autorisations ou d'autres options CLI.

3. requirements.txt

Le Space installe automatiquement les dépendances listées dans le fichier requirements.txt. À minima, vous devez inclure dash et gunicorn dans ce fichier. Vous devrez ajouter tous les autres packages requis par votre application.

Le modèle Dash Space fournit une configuration de base que vous pouvez étendre selon vos besoins.

Ressources et assistance supplémentaires

Dépannage

En cas de problème :

  1. Assurez-vous que votre notebook s'exécute localement en mode application à l'aide de python app.py
  2. Vérifiez que tous les packages requis sont répertoriés dans requirements.txt
  3. Vérifiez que la configuration du port correspond (7860 est la valeur par défaut pour Spaces)
  4. Vérifiez les journaux de l’espace à la recherche d’erreurs Python

Pour plus d'aide, consultez les forums communautaires Plotly ou ouvrez un ticket.

Update on GitHub