国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Table des matières
Début avec Gradio
Installation
Concepts de base et terminologie
Composants Gradio
Composants d'entrée et de sortie
Personnalisation de l'apparence des composants
Interfaces de construction pour LLMS
Interfaces de construction pour les modèles ML classiques
Déploiement des applications Gradio
Gradio meilleures pratiques et conseils
1. Utilisez des scripts pour l'organisation et la maintenabilité
2. Optimiser l'allocation de l'espace pour les composants
3. Fournir des informations complètes
4. Gérer efficacement les ensembles de fonctionnalités
5. Gérer correctement les variables d'environnement
6. Implémenter la gestion des erreurs et la validation
7. Optimiser les performances
8. Conception de l'accessibilité
9. Mettre en ?uvre une divulgation progressive
10. Mettre à jour et maintenir régulièrement
11. Levier HuggingFace Resources
12. H?te des grands modèles sur HuggingFace Hub
13. Utilisez des ensembles de données HuggingFace
Conclusion et ressources supplémentaires
Maison Périphériques technologiques IA Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Mar 05, 2025 am 11:10 AM

L'utilité des modèles d'IA d'aujourd'hui est considérablement diminuée sans interfaces utilisateur accessibles. En utilisant Gradio, une bibliothèque d'interface utilisateur Python open source, vous pouvez combler cet écart entre les LLM et les utilisateurs finaux non techniques. Il vous permet de créer des prototypes rapides pour vos projets d'IA et de simplifier leur déploiement à un public plus large.

Ce didacticiel s'adresse aux ingénieurs d'apprentissage automatique qui n'ont généralement aucune expérience de développement Web. Il couvre les bases de Gradio et les concepts de base, la création d'interface pour divers types de modèles d'IA, les fonctionnalités avancées pour UX et l'interactivité, et le déploiement et le partage des meilleures pratiques.

Commen?ons.

Début avec Gradio

Installation

Nous allons commencer par la création d'un environnement virtuel (de préférence conda):

$ conda create -n gradio_tutorial python=3.9 -y
$ conda activate gradio_tutorial

Ensuite, vous pouvez utiliser PIP pour installer Gradio et ses dépendances:

$ pip install gradio ipykernel

Nous avons également installé le package IPYKERNEL afin que nous puissions afficher les interfaces Gradio directement dans Jupyter Notebooks. Ce processus vous oblige à ajouter l'environnement virtuel que vous avez créé en tant que noyau à Jupyter Lab. Voici la commande pour le faire:

$ ipython kernel install --user --name=gradio_tutorial
$ jupyter lab  # Start the lab

Cela devrait vous permettre de créer un ordinateur portable avec un noyau qui a installé Gradio. Pour vérifier, importez-le sous son alias standard et imprimez sa version:

import gradio as gr
print(gr.__version__)
4.37.1

Concepts de base et terminologie

Nous plongerons dans Gradio en apprenant ses concepts clés et sa terminologie à travers un exemple de ?Hello World?:

def greet(name):
   return f"Hello, {name}!"
demo = gr.Interface(
   fn=greet,
   inputs=['text'],
   outputs="text",
)
demo.launch()

Lorsque vous exécutez le code ci-dessus dans une cellule, la sortie sera une petite interface interactive qui renvoie un message de salutation personnalisé:

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Gradio tourne autour de quelques concepts clés:

  1. Interface : la classe de base pour créer des internes.
  2. Composants : éléments d'entrée et de sortie comme les zones de texte, les images et l'audio. Il y a plus de 30 composants intégrés pour l'instant.
  3. Fonctions : Python fonctionne qui traite les informations des composants d'entrée et renvoie les résultats à afficher avec les composants de sortie.
  4. Lancement : La méthode pour démarrer votre application Gradio.

ci-dessus, nous avons créé une fonction de voeux qui prend et renvoie une entrée de texte. Pour cette raison, les composants d'entrée et de sortie sont spécifiés sous forme de texte à l'intérieur de la classe d'interface.

En fin de compte, nous appelons la méthode de lancement, qui démarre un serveur local. Pour rendre l'interface utilisateur à la disposition de n'importe qui, vous pouvez définir le paramètre de partage sur true. Cela lancera un tunnel SSH et déploiera l'application Gradio sur une page Web publiquement partageable:

demo.launch(share=True)
Running on public URL: https://d638ed5f2ce0044296.gradio.live
This share link expires in 72 hours. For free permanent hosting and GPU upgrades, run gradio deploy from Terminal to deploy to Spaces (https://huggingface.co/spaces)

Composants Gradio

Vous passerez la plupart de votre temps à bricoler dans différents composants et comment les placer sur la page tout en créant des applications Gradio. Alors, examinons de plus près ce que vous avez à votre disposition.

Composants d'entrée et de sortie

Gradio propose un large éventail de composants pour la construction d'interfaces interactives. Ces composants sont généralement divisés en deux catégories: entrée et sortie.

Les composants d'entrée permettent aux utilisateurs de fournir des données au processeur sous-jacent (cela peut être n'importe quelle fonction Python). Certaines entrées courantes sont:

  • TextBox
  • Image
  • Audio
  • curseur
  • Dropdown

Voici une interface factice qui utilise certains des composants ci-dessus:

$ conda create -n gradio_tutorial python=3.9 -y
$ conda activate gradio_tutorial

Dans cet exemple, la fonction process_inputs nécessite cinq paramètres. Par conséquent, nous devons créer cinq composants d'entrée et les transmettre aux entrées. Bien que le nombre de composants d'entrée doit correspondre au nombre de paramètres de fonction requis, ce n'est pas une règle stricte. Pour éviter les erreurs et les avertissements, définissez des valeurs par défaut pour les paramètres qui ne nécessitent pas d'entrée utilisateur de l'interface utilisateur.

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Remarquez comment nous utilisons une classe TextBox pour spécifier le composant d'entrée au lieu d'un texte de cha?ne ordinaire comme le premier exemple. Il est toujours recommandé d'utiliser des classes dédiées pour spécifier les composants d'entrée et de sortie pour les rendre personnalisables. Par exemple, toutes les classes de composants ont un attribut d'étiquette utile, tandis que Slider et Dropdown ont des arguments pour spécifier la plage et les options disponibles.

De nombreux composants d'entrée peuvent également être utilisés pour afficher la sortie. Voici quelques scénarios courants:

  • étiquette: pour afficher des résultats de texte ou de classification
  • Image: pour afficher des images traitées ou générées
  • Audio: pour la lecture audio traitée ou générée
  • Plot: pour afficher des graphiques ou des graphiques

comme les entrées, le nombre de composants de sortie doit correspondre au nombre de valeurs renvoyées de la fonction de traitement.

Personnalisation de l'apparence des composants

Gradio vous permet de personnaliser l'apparence de vos composants en fonction de vos besoins. Voici un exemple qui utilise des zones de texte personnalisées:

$ pip install gradio ipykernel

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Dans cet exemple, nous avons personnalisé les composants de la zone de texte en spécifiant le nombre de lignes, en ajoutant un espace réservé et un texte d'informations, et en incluant un bouton de copie pour la sortie.

Expérimentez avec différents composants et leurs propriétés pour créer des interfaces qui conviennent le mieux aux exigences de votre application AI. Pour savoir quel type de propriétés vous pouvez changer pour votre composant, vous pouvez visiter ses documents, ou mieux encore, utiliser le? Opérande dans Jupyter Lab après son nom de classe:

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Interfaces de construction pour LLMS

Mettons tout ce que nous avons appris ensemble en créant deux interfaces de texte et d'image réelles qui sont alimentées par LLMS.

Tout d'abord, nous construire un traducteur de langue de l'anglais au turc, à l'espagnol ou au chinois:

$ conda create -n gradio_tutorial python=3.9 -y
$ conda activate gradio_tutorial

Initialement, nous définissons une fonction Translate_text. Dans son corps, nous définissons la clé API OpenAI et créons une carte de langue. Ensuite, nous construisons l'invite pour la traduction. Ensuite, à l'intérieur d'un bloc d'essai à l'exception, nous envoyons une demande au point de terminaison ChatCompletion avec une invite système. En fin de compte, nous retournons le premier choix.

Maintenant, nous pouvons construire l'interface:

$ pip install gradio ipykernel

Le code est simple, comme ceux des interfaces antérieures, mais nous introduisons quelques nouvelles propriétés:

  • Type Argument des zones de texte Modifiez le champ de saisie de texte en clair vers la saisie du mot de passe, cachant le texte.
  • Les arguments de titre et de description de la classe d'interface ajoutent un titre H1 et un sous-titre au centre supérieur de la page.

Voici le résultat:

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Vous vous demandez peut-être pourquoi nous demandons la clé de l'API de l'utilisateur dans le cadre de l'application plut?t que de le fournir nous-mêmes. La raison a à voir avec la fa?on dont Gradio déploie les internes.

Si nous fournissons notre propre clé API en tant que variable d'environnement (qui est une pratique standard), la version publiquement partageable de l'application ne fonctionnerait pas car elle n'aurait pas accès à nos variables d'environnement. Dans la section de déploiement, nous verrons comment résoudre ce problème en déploiement de nos applications dans des espaces HuggingFace.

Créons-nous une autre interface utilisateur pour générer des images:

$ ipython kernel install --user --name=gradio_tutorial
$ jupyter lab  # Start the lab

Nous créons une fonction nommée generate_surrealist_art qui envoie une demande à Dall-E-3 et renvoie l'URL d'image générée à l'aide d'une invite surréaliste. Ensuite, nous allons alimenter cette fonction dans une classe d'interface:

import gradio as gr
print(gr.__version__)
4.37.1

Nous spécifions deux entrées pour la clé API et le concept que nous voulons capturer dans une image surréaliste. Ensuite, nous créons un composant de sortie pour l'image générée avec la classe d'image. Si vous définissez son argument de valeur sur STR, le composant peut télécharger et afficher des images à partir d'URL, ce qui est exactement ce dont nous avons besoin.

Et voici le résultat:

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Interfaces de construction pour les modèles ML classiques

Maintenant, créons une interface pour un modèle de régression tabulaire classique. Nous utiliserons l'ensemble de données Diamonds, qui est disponible dans SeaBorn.

Commencez par créer un nouveau répertoire de travail et un nouveau script nommé App.py à l'intérieur. Ensuite, collez le code de ce Github Gist qui charge les données, le traite à l'aide d'un pipeline Scikit-Learn et forme un modèle de régression aléatoire.

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

L'étape suivante consiste à créer une fonction de traitement qui accepte le même nombre d'entrées qu'il existe des fonctionnalités dans l'ensemble de données Diamonds:

$ conda create -n gradio_tutorial python=3.9 -y
$ conda activate gradio_tutorial

La fonction convertit ces entrées en un dataframe et la transmet à la méthode .prect () du pipeline de modèle formé. En fin de compte, il renvoie une cha?ne avec le prix prévu.

Maintenant, la classe d'interface doit correspondre à la signature de cette fonction: neuf composants d'entrée pour le traitement des fonctionnalités et une sortie pour afficher le prix prévu:

$ pip install gradio ipykernel

à l'intérieur de la classe, nous créons trois listes déroulantes pour les fonctionnalités catégorielles. Les options sont remplies des catégories uniques de chaque fonctionnalité. Nous créons également six composants de curseur pour accepter les fonctionnalités numériques. Les plages de curseurs sont déterminées par les valeurs minimales et maximales de chaque fonctionnalité.

Tout ce que nous avons à faire maintenant est d'exécuter le script pour exécuter et déployer l'application:

$ ipython kernel install --user --name=gradio_tutorial
$ jupyter lab  # Start the lab

Voici le résultat:

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Pour les meilleures pratiques et les conseils d'optimisation, passez à la section des meilleures pratiques ci-dessous.

Déploiement des applications Gradio

Nous avons déjà vu à quel point il est facile de déployer des applications Gradio en activant un seul argument. Bien s?r, l'inconvénient de cette méthode est que les démos expirent dans les 72 heures. Ainsi, la méthode recommandée de déploiement de Gradio passe par des espaces de calins. Huggingface a acquis Gradio en 2021, ce qui rend l'intégration entre les deux plates-formes sans couture.

Ainsi, pour ce tutoriel ou toutes les futures applications que vous créez avec Gradio, inscrivez-vous à un compte gratuit sur HuggingFace.co et naviguez vers Settings & GT; Jetons pour générer un jeton d'accès:

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Le jeton n'est affiché qu'une seule fois, alors assurez-vous de le stocker dans un endroit s?r.

Avec ce jeton, vous pouvez déployer autant d'applications Gradio que vous le souhaitez avec l'hébergement permanent sur les espaces. Par exemple, nous déploierons le modèle de prédiction des prix du diamant de la section précédente, et vous le trouverez étonnamment facile.

Tout ce que vous avez à faire est de naviguer vers le répertoire avec le script d'interface utilisateur et d'appeler Gradio Deploy sur le terminal:

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Le terminal vous guide à travers la conversion de votre script en un espace fonctionnel de la surface. Il demande des détails tels que:

  • Le jeton d'accès que vous avez généré
  • Titre de l'espace: Cela fera partie de l'URL de l'espace après le déploiement
  • le nom du script contenant du code d'interface utilisateur Gradio (app.py par défaut)
  • matériel de l'espace; Laissez vide pour utiliser uniquement les processeurs (gratuit)
  • Toutes les variables d'environnement que le script utilise (c'est là que vous stockez en toute sécurité les touches API et les secrets d'utilisateur)
  • Dépendances - Entrez une par une en appuyant sur Entrée

et le terminal vous présente une liaison d'espace déployée. Voici à quoi il ressemble:

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Une autre grande chose à propos de cette méthode de déploiement est que Gradio convertit automatiquement la démo en API REST de travail. Les instructions pour accéder et interroger sont toujours situées en bas:

Construire des interfaces utilisateur pour les applications AI avec Gradio en Python

Donc, en une seule fois, vous avez à la fois l'hébergement interne permanent pour votre application pour les utilisateurs non techniques et une API REST pour vos collègues et amis développeurs.

Pour plus d'options de déploiement et de partage, telles que l'intégration de démos dans les pages Web, l'ajout d'authentification Google aux applications, etc., visitez la section "Partage de votre application" de la documentation de Gradio.

Gradio meilleures pratiques et conseils

Lors du développement d'interfaces utilisateur avec Gradio, suivre les meilleures pratiques peut considérablement améliorer l'expérience utilisateur et la maintenabilité de votre application. Voici quelques recommandations clés:

1. Utilisez des scripts pour l'organisation et la maintenabilité

Organisez des applications Gradio dans les scripts Python pour un meilleur contr?le de version, collaboration et déploiement.

2. Optimiser l'allocation de l'espace pour les composants

Utilisez des outils de dimensionnement et de mise en page appropriés (par exemple, Gr.Column (), Gr.Row ()) pour assurer une interface équilibrée et réactive.

3. Fournir des informations complètes

Utiliser les attributs ?info? et ?étiqueter? pour donner des instructions et un contexte clairs pour chaque composant.

4. Gérer efficacement les ensembles de fonctionnalités

Pour les modèles avec de nombreuses fonctionnalités, utilisez des entrées de fichiers (CSV, JSON) pour activer les prévisions par lots et simplifier l'interface.

5. Gérer correctement les variables d'environnement

Utilisez Python-Dotenv pour le développement local et définissez des variables dans les espaces de visage étreintes pour le déploiement.

6. Implémenter la gestion des erreurs et la validation

Valider les entrées, fournir des messages d'erreur clairs et utiliser des blocs d'essai à l'exception pour la gestion gracieuse des erreurs.

7. Optimiser les performances

Implémentez la mise en cache, le chargement paresseux pour les grands modèles et utilisez Gr.loadingStatus () pour les taches de longue durée.

8. Conception de l'accessibilité

Assurer un contraste élevé, fournir du texte alt pour les images et activer la navigation au clavier pour tous les éléments interactifs.

9. Mettre en ?uvre une divulgation progressive

Utilisez des accordéons ou des onglets pour organiser des interfaces complexes, révélant des options avancées au besoin.

10. Mettre à jour et maintenir régulièrement

Gardez les dépendances à jour, surveillez les bogues et améliorez en continu en fonction des commentaires des utilisateurs.

11. Levier HuggingFace Resources

Utiliser les outils et les ressources de HuggingFace pour une intégration transparente avec Gradio, y compris les référentiels de modèles et les ensembles de données.

12. H?te des grands modèles sur HuggingFace Hub

Pour les grands modèles tabulaires, téléchargez sur HuggingFace Hub et chargez directement dans votre script Gradio pour améliorer les performances et réduire les exigences de stockage locales.

13. Utilisez des ensembles de données HuggingFace

Pour les grands ensembles de données, téléchargez sur HuggingFace Hub et accédez-les directement dans votre application Gradio pour rationaliser la gestion des données et améliorer les temps de chargement.

Conclusion et ressources supplémentaires

Dans cet article, nous avons appris les bases de la construction d'interfaces utilisateur pour les applications AI en utilisant Gradio. Nous venons de plonger sous la surface car Gradio offre de nombreuses autres fonctionnalités pour construire des interfaces complexes. Par exemple, l'état d'interface permet à votre application de se souvenir des sorties d'un appel de fonction à un autre. Les interfaces réactives changent dynamiquement l'interface utilisateur dès que l'entrée utilisateur change. Avec des blocs, vous pouvez créer des applications avec des mises en page et des conceptions personnalisées.

De même, consultez ces ressources connexes pour plus de contenu:

  • 10 packages Python pour ajouter à votre pile de science des données
  • 7 outils d'IA génératifs essentiels pour construire des applications IA hors de propos
  • 5 projets que vous pouvez construire avec les modèles Gen AI
  • CI / CD pour le cours d'apprentissage automatique
Topicsartificial IntelligenceShon

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefa?on, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel PHP
1502
276
Kimi K2: le modèle agentique open source le plus puissant Kimi K2: le modèle agentique open source le plus puissant Jul 12, 2025 am 09:16 AM

Rappelez-vous le flot de modèles chinois open source qui a perturbé l'industrie du Genai plus t?t cette année? Alors que Deepseek a fait la majeure partie des titres, Kimi K1.5 était l'un des noms importants de la liste. Et le modèle était assez cool.

Grok 4 vs Claude 4: Quel est le meilleur? Grok 4 vs Claude 4: Quel est le meilleur? Jul 12, 2025 am 09:37 AM

à la mi-2025, l'AI ?Arme Race? se réchauffe, et Xai et Anthropic ont tous deux publié leurs modèles phares, Grok 4 et Claude 4.

10 robots humano?des incroyables qui marchent déjà parmi nous aujourd'hui 10 robots humano?des incroyables qui marchent déjà parmi nous aujourd'hui Jul 16, 2025 am 11:12 AM

Mais nous n'aurons probablement pas à attendre même 10 ans pour en voir un. En fait, ce qui pourrait être considéré comme la première vague de machines vraiment utiles, de type humain, est déjà là. Les dernières années ont vu un certain nombre de prototypes et de modèles de production sortant de T

L'ingénierie contextuelle est la & # 039; New & # 039; Ingénierie rapide L'ingénierie contextuelle est la & # 039; New & # 039; Ingénierie rapide Jul 12, 2025 am 09:33 AM

Jusqu'à l'année précédente, l'ingénierie rapide était considérée comme une compétence cruciale pour interagir avec les modèles de langage grand (LLM). Récemment, cependant, les LLM ont considérablement progressé dans leurs capacités de raisonnement et de compréhension. Naturellement, nos attentes

L'application mobile d'immersité de Leia apporte une profondeur 3D aux photos de tous les jours L'application mobile d'immersité de Leia apporte une profondeur 3D aux photos de tous les jours Jul 09, 2025 am 11:17 AM

Construit sur le moteur de profondeur neuronale propriétaire de Leia, l'application traite des images fixes et ajoute de la profondeur naturelle avec un mouvement simulé - comme les casseroles, les zooms et les effets de parallaxe - pour créer de courts bobines vidéo qui donnent l'impression de pénétrer dans le SCE

Quels sont les 7 types d'agents d'IA? Quels sont les 7 types d'agents d'IA? Jul 11, 2025 am 11:08 AM

Imaginez quelque chose de sophistiqué, comme un moteur d'IA prêt à donner des commentaires détaillés sur une nouvelle collection de vêtements de Milan, ou une analyse de marché automatique pour une entreprise opérant dans le monde entier, ou des systèmes intelligents gérant une grande flotte de véhicules.

Ces modèles d'IA n'ont pas appris la langue, ils ont appris la stratégie Ces modèles d'IA n'ont pas appris la langue, ils ont appris la stratégie Jul 09, 2025 am 11:16 AM

Une nouvelle étude de chercheurs du King’s College de Londres et de l’Université d’Oxford partage les résultats de ce qui s'est passé lorsque Openai, Google et Anthropic ont été jetés ensemble dans un concours fardé basé sur le dilemme du prisonnier itéré. Ce n'était pas

Crise de commandement dissimulé: les chercheurs jeu aiment être publiés Crise de commandement dissimulé: les chercheurs jeu aiment être publiés Jul 13, 2025 am 11:08 AM

Les scientifiques ont découvert une méthode intelligente mais alarmante pour contourner le système. Juillet 2025 a marqué la découverte d'une stratégie élaborée où les chercheurs ont inséré des instructions invisibles dans leurs soumissions académiques - ces directives secrètes étaient la queue

See all articles