J’ai pu m’amuser un peu à mon retour du stage chez Christine avec la nouvelle fonctionnalité présente sur la version payante de ChatGPT (version GPT-4) : Code Interpreter.
Au-delà des fonctions de générations de textes habituelles, ChatGPT est maintenant capable d’analyser des données complexes (fichiers Excel, CSV, textes) et de produire des graphes, des tableaux, des schémas, du code Python à exécuter, le tout en fonction de nos demandes.
Pour vous montrer le style d’applications potentielles, je me suis amusé à prendre un listing des AirBnBs de la ville de Bordeaux (le fichier est disponible ici pour les curieux) et j’ai demandé à ChatGPT d’analyser ce fichier pour prévoir mes vacances idéales avec une famille fictive.
Le fichier fait plus de 11 000 lignes et 75 colonnes. Le truc normalement impossible à traiter correctement sans être un expert en informatique. Mais aujourd’hui, tout change… Tout devient accessible, grâce à Code Interpreter.
Voici ma demande exacte :
Analyse ce fichier et donne moi des statistiques intéressantes dessus sachant que je suis un touriste qui vient des Pays Bas et qui aimerait découvrir Bordeaux dans les meilleures conditions possibles. J'ai une femme et deux enfants. Trouve moi le logement idéal pour nos vacances.
Le résultat est étonnant…
Code Interpreter en action
Tout ce qui suit n’est qu’un copier-coller du travail de ChatGPT qu’il a effectué sans aucune aide de ma part.

# Check the data types of some important columns
important_columns = ['accommodates', 'bedrooms', 'review_scores_rating', 'price']
df[important_columns].dtypes

# Remove non-numeric characters from the 'price' column and convert it to a numeric data type
df['price'] = df['price'].replace('[\$,]', '', regex=True).astype(float)
# Filter the DataFrame based on the criteria
filtered_df = df[
(df['accommodates'] >= 4) &
(df['bedrooms'] >= 2) &
(df['review_scores_rating'] >= 4.5)
]
# Sort the filtered DataFrame by price in ascending order
sorted_df = filtered_df.sort_values(by='price', ascending=True)
# Display the first few rows of the sorted DataFrame
sorted_df.head()
(J'ai enlevé le listing de résultats ici qui ne sert pas à grand chose pour comprendre la beauté de ce que vient de faire ChatGPT)
Voici les trois logements les moins chers qui répondent à vos critères :
Prix : €47 par nuit
Note moyenne : 4.67
Nombre de chambres : 2
Capacité d’accueil : 4 personnes
Description : Dans résidence très calme, appartement 2 ch. …
Prix : €50 par nuit
Note moyenne : 4.67
Nombre de chambres : 2
Capacité d’accueil : 4 personnes
Description : Logement de 35 m2 très propre et agréable dans…
Prix : €60 par nuit
Note moyenne : 4.75
Nombre de chambres : 3
Capacité d’accueil : 6 personnes
Description : Nous louons notre maison dans un quartier calme…
Qu’est-ce qu’il vient de faire exactement ?
Notez que chaque résultat donné par ChatGPT possède le lien qui mène directement au AirBnB en question. Notez aussi que mes critères ont tous été respectés.
Seulement mes critères étaient insuffisants. La plupart de ces logements sont inactifs et non louables.
Je lui ai alors demandé de faire un tri plus précis en cherchant des logements actifs ces deux derniers mois, ayant une note élevée mais avec au moins 10 commentaires (pour éviter les réponses avec une note de 5 mais un seul commentaire).
La réponse finale de Code Interpreter
Voici les trois logements les moins chers qui répondent à vos critères, ont été disponibles au cours des 60 derniers jours, et ont reçu au moins 10 commentaires :
Prix : €60 par nuit
Note moyenne : 4.78
Nombre de chambres : 2
Capacité d’accueil : 4 personnes
Jours de disponibilité au cours des 60 derniers jours : 43
Nombre de commentaires : 18
Description : Grand appartement a proximité de Barrière de T…
Prix : €65 par nuit
Note moyenne : 4.60
Nombre de chambres : 2
Capacité d’accueil : 4 personnes
Jours de disponibilité au cours des 60 derniers jours : 32
Nombre de commentaires : 26
Description : Bel appartement traversant, calme et lumineux….
Rental unit in Saint-Médard-en-Jalles
Prix : €70 par nuit
Note moyenne : 4.80
Nombre de chambres : 2
Capacité d’accueil : 4 personnes
Jours de disponibilité au cours des 60 derniers jours : 44
Nombre de commentaires : 24
Description : Aménagement soigné indépendant de l’habitation…
Ces résultats sont des logements actifs, bien notés, parfaits pour ma demande initiale.
[Note suite au commentaire de Jean-Laurent] Les prix sont effectivement faux. Cela fait partie des faiblesses de ChatGPT, sa capacité à halluciner des fausses informations. L’outil n’en reste pas moins impressionnant dans sa capacité à nous faire gagner du temps, mais cela nous montre à quel point nous devons aussi rester vigilant.
Imaginez, juste deux secondes…
Le champ des possibles pour toutes les entreprises qui sont noyées sous des fichiers Excel de plusieurs milliers de lignes. En une question bien posée, ChatGPT peut faire des miracles.
Bon, je vais jouer le rabat-joie une nouvelle fois. Je suis sans doute un peu moins émerveillé que toi sur son analyse, même si ça reste certainement une avancée technologique. Je te cite: « Le fichier fait plus de 11 000 lignes et 75 colonnes. Le truc normalement impossible à traiter correctement sans être un expert en informatique. »
Je ne me considère pas comme un expert en informatique, mais trier et filtrer des données dans un fichier Excel … C’est même la base de l’apprentissage dans la plupart des filières de gestion à partir de la seconde.
« En une question bien posée, ChatGPT peut faire des miracles. »
Celui qui fait des miracles pour moi c’est justement celui qui pose la bonne question et c’est ça le plus difficile, poser la bonne question.
Trouver les bons mots clés pour une recherche web etc …
Au passage il supprime les $ du prix, mais se pose-t-il la question de la devise utilisée ?
Les prix annoncés ne correspondent ni aux dollars ni aux euros sur le fichier .csv, j’ai vérifié par curiosité.
Je te remercie en tout cas pour ton partage sur ces évolutions dans le domaine de l’IA.
Ce n’est pas être rabat-joie, au contraire, moi j’adore !
Tout le monde n’a pas une spécialité durant laquelle on apprend à manier Excel et ses macros. La plupart des personnes travaillant aujourd’hui ne maîtrisent absolument pas ces outils.
Et même si ChatGPT a encore un pouvoir hallucinatoire très fort (tu l’as bien noté sur le prix, et je t’en remercie, je n’avais pas été assez vigilant), je reconnais davantage le potentiel de l’outil, que la véracité des informations retranscrites.
Je ne crois pas que ChatGPT doit être vu comme un outil omniscient et omnipotent, mais plus comme un facilitateur. Je ne cherche pas à ce qu’il soit juste à chaque fois, je cherche à ce qu’il me fasse gagner du temps. Quand je m’en sers pour coder, il n’a pas juste du premier coup, mais si avec un peu d’aide il me pond un code fonctionnel après quelques allers-retours d’interactions avec lui, j’ai au final gagné plusieurs heures malgré tout.
Le but pour moi n’est pas d’encenser ChatGPT, mais de comprendre ses forces et ses faiblesses afin d’en tirer le meilleur parti. Et tu n’es pas non plus un rabat-joie quand tu m’aides à montrer ses faiblesses 😉