WeDoData+IA #1 // Comment enrichir ses bases de données avec ChatGPT ?

Wedodata
Wedodata
Published in
5 min readJun 20, 2023

Parmi ses nombreuses applications, ChatGPT peut vous permettre d’enrichir vos bases de données. Explorons cette possibilité via un exemple concret d’enquête : comment raconter la diversité des cinéastes sélectionnés à Cannes ?

Notre point de départ pour cette enquête : la liste de tous les réalisateurs·trices sélectionné·e·s en Compétition officielle à Cannes depuis 1946.

Cette liste, nous l’avons scrapée depuis Wikipedia (vous pouvez vous aider de ChatGPT pour scraper en Python par exemple, ce sera l’objet d’un prochain tuto).

La liste que nous avons scrapée depuis Wikipédia, édition par édition

Nous avons ainsi récupéré une liste de 1798 films, le nom de leur réalisateur·trice et l’année où leur film a été sélectionné. Cela représente au total 1055 réalisateurs·trices uniques depuis la création du festival.

Pour mesurer la place des femmes parmi eux/elles, nous cherchons comment obtenir le genre de chacun·e. Il est possible mais fastidieux et extrêmement chronophage de faire cette recherche ligne à ligne en s’aidant d’un moteur de recherche.

Nous allons donc plutôt faire remonter l’info en utilisant l’API de ChatGPT dans un Google SpreadSheet.

Première étape : installez et activez l’extension

ChatGPT nécessite une inscription préalable. Lors de celle-ci, vous avez droit à 5000 tokens gratuits utilisables pendant 30 jours — un quota amplement suffisant pour tester l’API de ChatGPT.

Après cette période d’essai, le coût d’utilisation de l’API de ChatGPT est d’environ un centime de dollars pour 5000 tokens (1000 tokens équivaut environ à 750 mots).

1/ Installez l’extension “GTP for Sheets and Docs”

Dans le menu en haut de page, choisissez Extensions > Modules complémentaires > Télécharger des modules complémentaires

Extensions > Modules complémentaires > Télécharger des modules complémentaires

Une fois sur la Marketplace de Google, recherchez “GPT for Google Sheets and Docs” et cliquez sur le premier résultat.

Les résultats de recherche sur la Marketplace de Google

2/ Créer une clé d’API OpenAI

Sur le site de OpenAI, créez un compte ou connectez-vous. Dans le menu choisissez Documentation > QuickStart > Build your application
Puis cliquez sur “Create new secret key”

Création de la clé d’API sur le site de OpenAI

3/ Activez la clé dans Google Sheets

Dans le menu choisissez Extensions > GPT for Sheets and Docs > Set API key et collez le code de la clé API dans la fenêtre qui s’ouvre.

Activation de la clé d’API dans Google Sheets

Ça y est ! Vous êtes prêt à entrer dans le vif du sujet.

Deuxième étape : enrichir la base de données

Pour enrichir notre base de données, nous vous conseillons de faire un prompt classique à GPT, à l’intérieur d’une formule de tableur

=GPT(“Classe les réalisateurs par sexe : si c’est un homme écris ‘H’, si c’est une femme, écris ‘F’”; [cellule à laquelle on fait référence])

Les résultats de la formule

⚠️ Attention à utiliser plusieurs types de guillemets entre l’instruction et la spécification du genre. En l’occurrence, sur cet exemple, la question est entre double quote (“ “), et la spécification entre simple quote (‘ ‘). Si vous ne changez pas de type de guillemets, GPT ne comprendra pas le prompt correctement.

Avantage : lorsque le film a été réalisé par plusieurs personnes notamment de sexes différents, il va donner les résultats pour les deux, en les séparant par un slash ou une virgule.

Le cas des films avec plusieurs réalisateurs

Autre façon de faire, mais moins adapté dans notre étude : l’extension propose une fonction spécifique appelée GPT_CLASSIFY, qui s’écrit de la manière suivante :
=GPT_CLASSIFY([cellule à laquelle on fait référence]; “homme, femme”)

Mais dans ce cas, elle ne vous permettra pas de gérer les multi-réalisateurs·trices. En effet, la fonction CLASSIFY a pour objectif d’attribuer une catégorie à un groupe de mot donc cette fonction de ne peut pas gérer la pluralité.

Utilisation de la fonction CLASSIFY

Troisième étape : la vérification des résultats

Dernière étape et non des moindres, c’est bien évidemment… la vérification des résultats. Hé oui, ChatGTP nous fournit bien volontiers des résultats en un temps record… mais comment s’assurer qu’ils sont vrais ?

ChatGPT peut se tromper ou “halluciner” ; c’est-à-dire inventer des résultats en cherchant coûte que coûte à vous répondre.

Dans cet exercice, nous avions “genré” au préalable à la main les les 1055 réalisateurs·trices uniques. C’est ce travail long et fastidieux qui nous a permis de calculer le taux d’erreur de ChatGPT : l’enrichissement réalisé par ChatGPT comporte 1,5% de mauvaises réponses dans cette étude. Et même 5,7% d’erreurs si vous utilisez la fonction GPT-Classify dans ce cas-là.

Nous avons identifié le principal biais de ChatGPT dans ce cas précis : les erreurs portent toutes sur des prénoms qui peuvent être à la fois féminin et masculin.

Par exemple, Brillante Mendoza ou Flora Gomes sont classés en “F” avec GPT alors qu’il s’agit d’hommes.

Il s’agit donc de toujours vérifier par sondage les résultats, afin de limiter le nombre d’erreurs, de trouver à quoi sont dus les biais dans les erreurs pour identifier les cas similaires et ainsi corriger la base plus facilement.

Bilan de l’expérience

Malgré ces précautions d’usage, ChatGPT reste d’une aide précieuse pour structurer notre fichier de données. Et c’est un formidable outil de productivité qui nous permet de nous concentrer sur notre valeur ajoutée, l’analyse, le storytelling et la création graphique.

Extrait de notre “schéma des possibles” qui liste les différents usages que nous explorons avec l’intelligence artificielle

--

--

Wedodata
Wedodata

Studio de datajournalisme et datavisualisations : trouver et raconter des histoires en partant de bases de données structurées ou à créer / wedodata.fr