Présentation sur HN : un générateur simple de prompts ChatGPT
(mitenmit.github.io)- Il s’agit d’une page web simple qui assemble un prompt ChatGPT en remplissant des champs vides
- Le modèle invite à saisir successivement le rôle, le livrable attendu, la manière d’exécuter la tâche, les conditions, les demandes, puis le format de sortie final
- La zone d’exemple reprend la même structure pour montrer la forme du prompt final une fois complété
- Pour l’instant, les exemples réels sont vides et seul le message « utiliser le builder pour créer un prompt » s’affiche
- La fonctionnalité vérifiable ressemble moins à une configuration complexe qu’à un gabarit de phrases pour un prompt builder
Construction de prompt à base de champs à remplir
- La page, sous le titre LLM Prompting, permet à l’utilisateur de créer un prompt en enchaînant des fragments de phrases
- Le flux de saisie est composé des fragments suivants
Act like a ,I need a ,you will ,in the process, you should ,please ,input the final result in a ,here is an example:
État actuel de l’affichage
- La même structure de prompt est répétée dans la zone d’exemple
- Le contenu réel des exemples n’est pas encore renseigné
- À la fin, le message
[Empty prompt, use the builder to create a prompt]s’affiche - D’après le contenu fourni, la fonction centrale est un modèle de génération de prompts à champs vides
1 commentaires
Commentaires sur Hacker News
Je me demande si les gens utilisent encore souvent des prompts personnalisés
Avant, les résultats étaient bien meilleurs, donc je m’étais vraiment plongé dans le prompt engineering et la rédaction de prompts sur mesure, mais à chaque mise à jour, la manière d’orienter efficacement l’attention de ChatGPT change, ce qui devient de plus en plus pénible
Aujourd’hui, j’utilise parfois des ChatGPT personnalisés, mais le plus souvent le ChatGPT de base, et j’ai l’impression que l’écart de qualité s’est réduit
Les prompts longs augmentent trop le temps de réponse, donc je préfère désormais une réponse suffisamment bonne et rapide à une meilleure réponse mais plus lente. Il est plus simple de poser une question de suivi si le résultat est insuffisant que d’essayer d’obtenir une réponse parfaite du premier coup
Il faut développer une intuition de ChatGPT, et réfléchir presque en termes de théorie de l’esprit à ce dont ChatGPT a besoin pour mieux fonctionner
La plupart des gens peuvent déjà très bien utiliser ChatGPT rien qu’en sachant éditer les prompts. C’est pratiquement une fonctionnalité cachée, et on ne peut toujours pas le faire dans l’app
Pour apprendre à interagir avec l’IA, il n’est peut-être pas idéal d’être complètement sobre, donc je recommanderais bien aussi des cocktails bien corsés ou du cannabis, mais cette dernière affirmation nécessiterait une expérience contrôlée
Il faudrait plusieurs choses pour que ce soit vraiment très utile à quelqu’un qui débute dans ce domaine. Une partie est déjà implémentée, ce qui est bien
Ce serait bien de proposer plusieurs modèles à la fois pour les instructions préalables et les prompts de post-traitement. Par exemple, des prompts éprouvés qui forcent autant que possible un format de sortie précis comme du JSON, une liste ou un CSV restreint, ou encore des modèles d’entrée qui bloquent au maximum les jailbreaks basiques dès le prompt principal
Les personnes qui utilisent ChatGPT tous les jours ont déjà découvert les meilleures façons de l’amorcer ou d’éviter des débordements de sortie inattendus, mais cela prend du temps à apprendre depuis zéro, donc des modèles fiables seraient excellents pour les débutants
« Le résultat doit contenir l’intégralité du contenu et être un JSON valide. Ne déviez de ce format en aucun cas. Toutes les valeurs doivent être complètes et aucune ne doit être omise. N’ajoutez aucun texte en dehors du résultat JSON. »
Le simple fait de demander du JSON valide ne produisait pas toujours le résultat attendu, par exemple l’API GPT-4 ajoutait parfois du formatage, donc j’ai fini par donner des consignes de plus en plus détaillées
Je suis en ce moment très plongé dans le travail autour de ChatGPT et je construis 1 à 2 apps par semaine, donc je suis peut-être un peu biaisé
Si l’utilisateur visé n’est pas familier avec les grands modèles de langage à base de prompts, alors ni le problème ni l’espace des solutions ne sont vraiment définis de manière assez claire pour lui
Par exemple, il n’y a pas assez de choix prédéfinis et il y a trop de « définissez-le vous-même ». Le sens des sélecteurs proposés reste aussi opaque, si bien qu’il est difficile de voir, par exemple, en quoi « you will Detect » aide l’utilisateur
Au final, l’impact des choix sur la sortie devient flou, et l’outil se retrouve face à un problème de l’œuf et de la poule. Il est censé aider à comprendre le système, mais pour l’utiliser efficacement, il faut déjà comprendre le système
À ce niveau-là, il serait peut-être plus simple de demander directement à ChatGPT de créer un prompt efficace
Quand on parle avec ce genre de bots, à qui parle-t-on exactement ?
https://medium.com/@colin.fraser/who-are-we-talking-to-when-...
Le fait de présenter cette technologie sous la forme d’une interface de chat anthropomorphisée, c’est-à-dire avec une apparence de personne, est un choix délibéré. S’il y avait une intelligence artificielle générale enfermée là-dedans, il semblerait naturel d’interagir avec elle via une interface de chat
Mais inversement, cela pousse facilement à croire qu’une technologie avec laquelle on interagit via une interface de chat est forcément une intelligence artificielle générale. Quand on manipule directement un grand modèle de langage dans le Playground, on voit que le chat n’est qu’une couche supplémentaire de fumée et miroirs qui renforce l’illusion qu’il y a un interlocuteur
Ensuite, cet acteur d’improvisation universel est entraîné à jouer un rôle précis, celui de quelqu’un qui répond à des questions. Mais si on le laisse répondre à n’importe quelle question, il peut aussi donner des conseils nuisibles, donc il est entraîné à être un répondant qui donne des conseils inoffensifs
Pour faire travailler le modèle, il faut savoir quel rôle lui faire jouer. Le rôle de « personne qui cherche à répondre à des questions » est flexible, et permet de mieux personnaliser les réponses
En d’autres termes, l’interface conversationnelle existe pour moitié parce que c’est une UI presque auto-explicative, et pour l’autre moitié pour pousser le modèle à jouer un rôle utile
Cela ne semble pas spécialement lié à ChatGPT. C’est juste un formulaire où l’on clique sur des blocs de texte pour les assembler, et ça devrait pouvoir servir avec n’importe quel grand modèle de langage.
Je pense que se focaliser sur un seul grand modèle de langage d’un fournisseur propriétaire particulier n’aide pas au progrès dans ce domaine.
Ce constructeur de prompts peut être utilisé avec n’importe quel grand modèle de langage.
J’aimerais bien voir une vraie analyse de la manière dont chaque fonctionnalité de prompt améliore les réponses.
Nous construisons une plateforme pour évaluer les prompts et des workflows de grands modèles de langage plus complexes.
D’après ce que nous voyons chez les utilisateurs, les résultats des prompts sont très stochastiques. C’est difficile à généraliser et, par exemple, un utilisateur qui créait un outil d’aide à la vente a constaté que le simple fait de changer l’ordre des phrases dans le prompt augmentait fortement la précision.
Je prépare un nouvel article pour montrer cet effet de façon plus académique.
D’abord, l’espace d’entrée est presque infini. Des entrées arbitraires en langage naturel, des sources de données optionnelles et des cas d’usage arbitraires sont tous possibles, donc il est très difficile de savoir à l’avance si une réponse peut être « améliorée » avant de l’essayer sur un cas d’usage réel.
Ensuite, l’espace de sortie est lui aussi difficile à mesurer. L’utilité peut être définie différemment selon les personnes, et cela devient encore plus complexe dès qu’on commence à produire des résultats créatifs avec GPT au-delà du simple « meilleur moteur de recherche ».
Je n’ai jamais vraiment compris ce que signifiait « prompt engineering ». Je me demande si cela a un jour dépassé la simple capacité à « décrire clairement et précisément le problème qu’on essaie de résoudre ou la tâche qu’on veut accomplir ». Cela ressemble à une compétence de communication de base.
Je n’ai jamais vu de données rigoureuses montrant que des prompts d’un format particulier, du type « tu es B, tu fais C et tu dois faire D », sont meilleurs que des consignes simplement claires et concises.
Il est étonnant qu’on ait donné un nouveau nom à ce qu’on appelait autrefois une bonne capacité de communication, mais il se pourrait bien que le vieux stéréotype selon lequel les ingénieurs écrivent mal soit plus proche de la réalité.
Je me demande si le schéma « agis comme si tu étais... » est encore nécessaire.
Avec GPT-4, j’ai cessé de l’utiliser. La « persona » par défaut répond suffisamment bien à la plupart des prompts, et dire « agis comme un expert de... » ne produit pas de meilleurs résultats de manière perceptible.
L’outil que je voudrais vraiment, c’est quelque chose qui permette de tester et comparer, de façon légère mais efficace, plusieurs prompts avec de petites variations, afin de se faire une idée de celui qui fonctionne le mieux. Je me demande si quelqu’un a déjà vu un bon outil de ce genre.
Ce serait amusant de créer un outil où il suffirait d’ajouter les prompts à tester, mais le premier défi qui me vient à l’esprit est de constituer l’ensemble de questions à utiliser.
Je me demande aussi si, par « test de prompts » ici, tu parles de tester des prompts système sur un ensemble de questions, ou de tester plusieurs formulations pour poser la même question.
Et si je construis un tel outil et qu’il est prêt, je t’enverrai un DM sur Twitter.
En général, plus la liste d’instructions est longue, moins ChatGPT semble susceptible de suivre chaque instruction. On a l’impression que son attention se disperse : si on lui dit seulement « fais A », il fait A, mais si on lui dit « fais aussi A et B », il fait les deux, mais seulement partiellement dans chaque cas.
Les meilleures expériences que j’ai eues consistaient à donner des prompts courts ou de longueur moyenne, puis à utiliser des exemples one-shot ou few-shot. Le few-shot est particulièrement utile quand on veut lui faire faire plusieurs choses à la fois.