Vous pouvez désormais utiliser des fonctionnalités précieuses de Gemini avec AppSheet !

Vous avez sans doute remarqué une nouvelle fonctionnalité disponible dans la liste des tâches réalisables avec un robot, et des types d’actions à réaliser avec celles-ci. Regardons ensemble quelles sont-elles !

Rappel : robot et tâche, y voir clair

Rappelons qu’un robot est constitué de deux parties :

  • un event (évènement), appelé aussi déclencheur
  • un process (processus), autrement dit une série d’étapes qui peuvent être des actions, des branches, des durées d’attente, etc.
AppSheet Codergo Illustration de principe d'un robot : un déclencheur et un process
Schéma d’un robot : un déclencheur et un processus

Lorsqu’on construit un robot, nous pouvons trouver la tâche « AI task », c’est à dire Gemini, dans le paramétrage d’une étape.

Maintenant que nous avons planté le décor, passons aux choses sérieuses !

Rappel : l’IA et ses implications

Avant toute chose, rappelons qu’un appel à l’IA est en fait la génération d’une réponse selon un modèle de probabilités, et que le résultat qui en est issu est donc soumis à votre jugement. Ceci étant dit, c’est un formidable facilitateur dans tous les métiers : utilisons-la, et avec sagesse !

Pour l’aspect technique, rappelons que notre prompt, c’est à dire l’instruction qu’on donnera au modèle, sera transformé en tokens (jetons), qui représentent dans une certaine mesure la complexité de la requête. En clair, plus la requête est complexe ou a de données d’entrées, plus elle « pèse » lourd.

Un prompt « parfait » comporte 5 grands ingrédients :

  • le rôle
  • la tâche
  • l’audience
  • le contexte ou les contraintes
  • le format de réponse attendu

Le minimum nécessaire étant la tâche, c’est dans cette optique que celle-ci est explicitement demandée ici. Pour en savoir plus sur l’IA, je vous invite à consulter les articles écrits ici, , ou encore .

La tâche « AI Task »

La tâche explicitement demandée ici est : que voulez-vous que l’IA fasse ? Aujourd’hui vous pouvez faire deux opérations : Extract (« Extraire ») et Categorize (« Catégoriser »).

D’autres viendront plus tard : Analyser un sentiment, Classifier, Affecter, ou encore Prioriser.

L’action « Extract »

L’action Extract

Dans cet exemple, la donnée d’entrée se situe dans la colonne « file », c’est à dire que je fournis un fichier. Ce peut être une image ou un fichier PDF (qui est par ailleurs…un format d’image !).

J’indique également que je souhaite que le résultat de la requête aille dans la colonne « summary ».

Notez que si je ne peux sélectionner qu’un seul champ d’input, je peux sélectionner plusieurs champs d’output.

Enfin, des instructions additionnelles sont demandées : c’est tout l’enjeu du prompt, et c’est ici que devront être fournis les ingrédients manquant au prompt.

Cas d’usage concret : analyser des factures PDF

Je reçois régulièrement des factures (toujours trop, n’est-ce pas?) au format PDF. Je souhaite récupérer des informations sur ces factures, afin de m’aider à planifier ma trésorerie.

Les informations que je souhaite stocker sont classiques : émetteur de la facture, montant à régler, date d’échéance, etc. Voici donc les outputs que je souhaite utiliser :

IA output list
Les informations que je souhaite collecter avec mon IA

Et voici le prompt à utiliser pour tout cela :

The file provided is an invoice. 

I want you to extract the content of the file, and set the outputs as:
- content:  list of items reported in the invoice with bullet points
- total_vat: the amount of invoice, tax included.
- date_invoice: the date of the invoice
- label: the  invoice issuer
- due_date: the due date as stated in the invoice. Note that if not stated, this is commonly 30 days after the invoice date.

En français, ça donne :

Le fichier fourni est une facture. 

Je souhaite que vous extrayiez le contenu du fichier et que vous définissiez les sorties comme suit :
- content : liste des éléments figurant sur la facture avec des puces
- total_vat : montant de la facture, taxes incluses.
- date_invoice : la date de la facture
- label : l'émetteur de la facture
- due_date : la date d'échéance indiquée sur la facture. Notez que si elle n'est pas mentionnée, cette date est généralement fixée à 30 jours après la date de la facture.

Maintenant, regardons le comportement de mon IA lorsque je lui fournis plusieurs factures très différentes.

Codergo - Le résultat de l'extraction des données avec l'IA d'AppSheet
Le résultat de l’extraction des données avec l’IA d’AppSheet

L’IA a correctement restitué les informations présentes dans mes factures, comme vous pouvez le constater. De plus, elles sont restituées dans les champs attendus.

L’action Categorize

Cette action permet de demander à catégoriser la donnée d’entrée selon une liste fournie.

Cette fois, la donnée d’entrée n’est pas un fichier ou une image, mais de la donnée simple, par exemple un texte. Contrairement au cas précédent, on peut cette fois sélectionner plusieurs champs d’input, qui sont autant d’éléments permettant d’établir un contexte pour notre tâche, et un seul champ d’output.

Les paramètres de la tâche AI « Categorize »

La donnée de sortie doit impérativement être de type Enum, c’est à dire un champ permettant une liste à choix unique – il faut par ailleurs indiquer dans le prompt la liste des valeurs possibles.

Cas d’usage concret : catégoriser une facture PDF

Pour rester sur le même exemple que précédemment, après avoir extrait des informations, je souhaite catégoriser ma facture selon le type d’occurrence : unitaire, mensuel, ou annuel.

Voici le paramétrage utilisé:

Paramétrage pour catégoriser une facture

Et le prompt utilisé dans la partie « Additional instructions » est :

/

The content, total_vat and label provided in input are information from an invoice.
I need you to determine wether the invoice may be a recurring one, and if so, the value of the recurrence.
The output can be:
- single: this is a unique invoice for a single work for example
- monthly: a recurring invoice billed monthly
- yearly: a recurring invoice billed yearly

Ce qui en français donne:

Le content, le total_vat et label fournis en entrée sont des informations provenant d'une facture.
J'ai besoin que vous déterminiez si la facture peut être récurrente, et si c'est le cas, la valeur de la récurrence.
La sortie peut être :
- single: il s'agit d'une facture unique pour un seul travail par exemple
- monthly: il s'agit d'une facture récurrente facturée mensuellement
- yearly: une facture récurrente facturée annuellement

Voyons le résultat pour quelques factures fournies :

Codergo - Le résultat de la catégorisation des données avec l'IA d'AppSheet
Le résultat de la catégorisation des données avec l’IA d’AppSheet

De façon assez surprenante, la catégorisation est correcte sur l’échantillon fourni :

  • le premier poste concerne l’achat de nouveaux postes de travail : c’est du ponctuel
  • le deuxième concerne la téléphonie, réglée mensuellement
  • le troisième concerne l’hébergement de mon site internet, réglé annuellement
  • le troisième concerne l’ajout ponctuel d’une licence anti-virus : c’est bien du ponctuel

Deux tâches aujourd’hui : et ensuite ?

Nous venons de décrire le fonctionnement de deux tâches IA proposées en avant-première aujourd’hui. Parmi les nouvelles tâches, indiquées dans la documentation et annoncées lors du dernier Google CLoud Next à Las Vegas, nous aurons bientôt :

  • Analyze sentiment : Analyser le sentiment d’une entrée sur la base des détails fournis
    • Exemple : Analyser le sentiment d’une demande d’assistance (positif, neutre ou négatif)
  • Assign : Attribuer un élément en fonction des détails fournis
    • Exemple : Attribuer un responsable pour une demande d’assistance
  • Classify : Classer un élément en fonction des détails fournis
    • Exemple : Classer les rapports de dépenses, par exemple : audit des besoins, risque faible, risque moyen
  • Extract table : Extraire des données d’une image téléchargée (ex: photo) ou d’un fichier (ex: PDF) et les enregistrer dans les lignes d’un tableau existant
    • Exemple : Créer des données à partir d’archives papier
  • Prioritize : Attribuer un niveau de priorité à un ticket en fonction des détails fournis
    • Exemple : Attribuer une priorité à une demande d’assistance, par exemple élevée, moyenne ou faible

Comme vous le voyez, la notion de prioriser, classifier, assigner, analyser des sentiments…sont très proches, dans l’esprit, de la tâche « Catégoriser » actuellement disponible. L’avenir nous dira les nuances souhaitées et ou les fonctionnalités spécifiques que nous pourrons attendre de ces différentes tâches.

AppSheet et l’IA, exemples de combo gagnant

Avec le déploiement prochain en disponibilité générale du déclencheur « Gmail Event », qui s’ajoute au déclencheur « Forms Event », nous pouvons imaginer les scénarios suivants :

  • un Forms de remontée d’incident > Analyse par IA > Classification gravité et affectation porteur d’une action
    • secteur QHSE
  • un mail de facture reçu > Analyse par IA > Catégorisation et mise à jour d’un prévisionnel de trésorerie
    • secteur administration/comptabilité
  • un Chat de demande de support > Analyse par IA > Catégorisation priorité et sentiment, et assignation responsable
    • secteur IT

Vous l’avez compris, les possibilités deviennent infinies !

Conclusion

Dans cet article, nous avons présenté les deux premières tâches AI proposées par Google AppSheet, présenté les tâches à venir, et présenté des exemples de cas pratiques. Le reste n’est qu’une question d’imagination ou de cas d’usage concret à mettre en œuvre !

Si vous avez des questions, un besoin ou un projet, contactez-nous !

Partagez cet article