Brief IA : ChatGPT et Python : transformer les partitions musicales

ChatGPT et Python : transformer les partitions musicales

Brief IA
Tom Levy·5 min·7 vues

L'article explore l'utilisation de l'IA pour développer des logiciels d'édition PDF plus sûrs et efficaces, en mettant en avant une solution personnalisée créée avec ChatGPT. Cela souligne l'importance de la sécurité des fichiers dans le développement de logiciels, face à des outils existants qui ne répondent pas toujours aux besoins spécifiques des utilisateurs.

En bref
1Denise voulait numériser et modifier ses partitions musicales pour les rendre plus lisibles.
2ChatGPT a été utilisé pour créer un script Python supprimant les arrière-plans colorés des PDF.
3Le script Python a permis de créer un outil déterministe, répondant aux besoins de Denise sans altérer les partitions.
💡Pourquoi c'est importantCette approche montre comment l'IA peut être utilisée pour développer des solutions personnalisées et efficaces dans des situations du quotidien.
Le brief IA que lisent les pros

Tu veux les meilleurs outils IA avant les autres ?

On teste et on décrypte les nouveaux outils IA chaque soir, en 5 min. Gratuit.

Inclus dès l'inscription : notre sélection des meilleurs guides & comparatifs IA.

Choisis ton rythme

Gratuit · Pas de spam · Désabonnement en 1 clic

📄
L'analyse en français

Une approche innovante

Récemment, Denise, ma femme, a rejoint le chœur de son église. Elle a une belle voix et souhaitait s'entraîner avec de nouvelles chansons. Ces chansons étaient imprimées sur des feuilles de papier jaune, et elle voulait les numériser en PDF, enlever la couleur et les réimprimer en plus grand format, sur du papier 8,5 par 11 pouces, pour éviter de porter ses lunettes de lecture.

Un après-midi, elle m'a demandé comment enlever l'arrière-plan jaune tout en conservant la musique, afin de ne pas gaspiller trop d'encre de son imprimante couleur. Imprimer en noir et blanc aurait également consommé beaucoup d'encre pour un fond gris, rendant le texte difficile à lire.

Les limites de ChatGPT

Elle prévoyait aussi d'utiliser PlayScore 2, une application qui joue la musique pour qu'elle puisse chanter en même temps. Elle craignait que le logiciel n'apprécie pas la couleur de fond.

J'ai d'abord suggéré d'utiliser Photoshop pour enlever le fond jaune, mais la procédure s'est révélée trop compliquée. Chaque image nécessitait des réglages de curseur légèrement différents, ce qui était frustrant et chronophage.

J'ai donc proposé d'utiliser ChatGPT. Elle avait un compte ChatGPT Plus, donc cela semblait une option raisonnable.

Déterminisme vs. non-déterminisme

J'ai effectué quelques tests avec des requêtes telles que :

  • « Donne-moi un PDF que je peux télécharger où le fond jaune a été remplacé par du blanc. »
  • « Tu l'as fait correctement, mais malheureusement, la qualité du texte est très basse. Peux-tu le régénérer en pleine résolution, s'il te plaît ? »

Ces tests ont fonctionné, mais ChatGPT a subtilement modifié les PDF résultants. Denise craignait que ChatGPT ne change les notes, les paroles ou un autre aspect de la musique originale. Elle ne voulait pas risquer de mal pratiquer.

ChatGPT et d'autres IA sont non-déterministes. Cela signifie que vous pouvez fournir la même entrée plusieurs fois et obtenir des résultats différents à chaque fois. C'est un peu comme parler à un plombier ou à un électricien. Les IA basent leurs résultats sur une série complexe de calculs de probabilité, donc les résultats peuvent varier à chaque exécution.

Denise a constaté cela dans ses interactions avec ChatGPT. Elle ne voulait pas donner sa musique à ChatGPT et recevoir quelque chose où l'IA aurait pris des libertés avec les partitions. Elle souhaitait un outil pour enlever la couleur de fond qui soit strictement déterministe.

Python peut le faire

Pour mon projet final dans le cadre de ma certification en programmation Python à Harvard, j'ai écrit un outil de gestion d'images interactif capable d'effectuer des transformations d'images de type Photoshop, et de les traiter en séquences. Je savais donc que Python avait les bibliothèques nécessaires pour réaliser ce que Denise voulait.

Cependant, je n'avais pas le temps d'écrire un programme Python pour cela. C'était une semaine très chargée, avec un long retard de projets professionnels à gérer.

Mais ChatGPT avait tout le temps du monde. C'est là que les choses deviennent intéressantes. Vous pouvez utiliser un outil non-déterministe comme ChatGPT pour générer un programme déterministe, comme un outil de décoloration en Python.

J'ai donc décidé de demander à ChatGPT d'écrire un script Python pour enlever la couleur. Pour créer le script, j'ai donné cette instruction, puis je suis allé aider ma femme à préparer le dîner.

Le script Python

J'ai demandé :

« Écris un script Python qui prend en entrée un jpeg et remplace tous les pixels qui ne sont pas gris ou noirs par du blanc, en le sauvegardant sous le nom name-decolor.jpg où name est le nom du fichier. Permets des gris légèrement teintés pour que le texte noir sur un fond coloré soit correctement rendu. Peux-tu faire la même chose si un PDF est présenté ? Il doit également fonctionner pour les PDF multi-pages. »

Lorsque le dîner était prêt, ChatGPT avait terminé. La première version du script avait quelques problèmes car je devais installer une bibliothèque Python. Mais après cela, il a simplement fonctionné.

Il fonctionne très simplement. Vous exécutez le programme decolor_pdf.py depuis la ligne de commande, en lui fournissant un seul fichier PDF. Il génère un nouveau fichier PDF avec la couleur de fond supprimée.

% python decolor_pdf.py input.pdf

Résultats et leçons

Oui, ça fonctionne. Si vous souhaitez télécharger une copie pour vous-même, elle est disponible sur mon dépôt GitHub. Ma femme était préoccupée par l'utilisation de captures d'écran dans cet article à partir des hymnes d'église protégés par des droits d'auteur, alors elle a visité le site de la Bibliothèque publique de New York et a récupéré une chanson du domaine public pour démontrer.

Il y a quelques leçons utiles à tirer de cette expérience :

  • Si vous souhaitez l'aide d'une IA, vous n'avez pas toujours besoin de compter sur un traitement non-déterministe. Parfois, vous pouvez simplement lui demander d'écrire un programme basé sur un algorithme fiable.

  • Vous n'avez pas besoin de passer beaucoup de temps à créer une interface ou un design. Parfois, un simple outil en ligne de commande fera l'affaire.

  • N'ayez pas peur de peaufiner votre spécification avec l'IA. Essayez ce qu'elle crée, puis demandez des ajustements et des corrections.

  • Python peut faire beaucoup de choses. Il existe de nombreuses bibliothèques, donc si vous n'êtes pas sûr de ce que vous voulez utiliser, construisez-le en Python.

Voilà. Si vous avez besoin d'une solution rapide à un problème, essayez de demander à ChatGPT de l'écrire pour vous. Cela a fonctionné pour moi, et j'ai pu donner à ma femme un outil fonctionnel tout en l'aidant à préparer un poulet rôti.

Suivez Brief IA

L'actu IA du jour, aussi dans votre fil.

Commentaires