paint-brush
Utilisation de l'interpréteur de code pour réviser les projets NFT 🦾par@bankless
296 lectures

Utilisation de l'interpréteur de code pour réviser les projets NFT 🦾

par Bankless - Metaversal5m2023/08/16
Read on Terminal Reader

Trop long; Pour lire

ChatGPT est un chatbot IA développé par OpenAI qui peut générer des réponses de type humain basées sur des entrées de texte. Code Interpreter est un plugin interne développé par l'équipe OpenAI. Il est capable d'utiliser le langage de programmation Python pour effectuer toutes sortes de tâches différentes, de l'extraction de la palette de couleurs d'une image téléchargée à l'analyse des extraits de code fournis.
featured image - Utilisation de l'interpréteur de code pour réviser les projets NFT 🦾
Bankless - Metaversal HackerNoon profile picture
0-item


Chère Nation HackerNoon,


Le mois dernier, j'ai écrit sur les plugins ChatGPT sur le thème de la cryptographie.


Les créateurs de l'IA ont depuis publié une autre ressource puissante, Code Interpreter, qui est vraiment impressionnante.


Il peut en fait faire bien plus que simplement analyser du code.


Pourtant, en tant que créatif en crypto, j'ai toujours voulu avoir une compréhension plus approfondie des contrats intelligents, alors à quoi pourrait ressembler une révision de code de base d'un projet NFT avec un interpréteur de code ?


Je vais partager une approche générale du processus ci-dessous, et nous verrons comment ça se passe !


-WMP

Examen du code NFT avec Code Interpreter

Qu'est-ce que ChatGPT et qu'est-ce que l'interpréteur de code ?

ChatGPT est un chatbot IA développé par OpenAI qui peut générer des réponses de type humain basées sur des entrées de texte. Ça peut être amélioré avec des plugins , qui sont des ressources tierces qui permettent à l'IA d'interagir avec d'autres logiciels et services.


Code Interpreter lui-même est un plugin interne développé par l'équipe OpenAI. Il est capable d'utiliser le langage de programmation Python pour effectuer toutes sortes de tâches différentes, de l'extraction de la palette de couleurs d'une image téléchargée à l'analyse des extraits de code fournis.


Ici, notez que Code Interpreter n'est actuellement disponible que pour les utilisateurs de ChatGPT Plus, un abonnement mensuel qui coûte environ 20 $ actuellement, et il doit être activé via la section "Fonctionnalités bêta" du menu "Paramètres" de ChatGPT.

Exemple : Explorer les bases de la base de code Nouns DAO avec Code Interpreter

Le plugin Code Interpreter, qui est encore à l'état expérimental, reste dans un «environnement d'exécution en bac à sable» et n'a donc pas de capacités de navigation sur Internet pour le moment.


Cela dit, si vous voulez que Code Interpreter examine le code, vous devrez copier et coller des extraits dans ChatGPT selon vos besoins pour le moment. Dans ce cas, j'ai leRéférentiel DAO GitHub prêt à partir, donc nous pouvons commencer comme ça…

1. Amorcez le chat avec le contexte


Nouns DAO, comme le montre son référentiel, est composé d'une gamme de contrats intelligents imbriqués. Pour rendre ces informations digestes pour Code Interpreter, j'ai copié le code de ces contrats intelligents individuels un par un : Gonfleur.sol , NomsArt.sol , NomsAuctionHouse.sol , NomsDescripteur.sol ,

NomsSeeder.sol , NomsToken.sol , et SVGRenderer.sol .


Le contrat intelligent "Art" à lui seul comptait 450 lignes de code, il est donc intéressant de voir le plugin gérer de gros morceaux d'informations à un moment comme celui-là. Une fois que Code Interpreter dispose de tous les détails pertinents du contrat intelligent, vous pouvez commencer à le guider pour approfondir.

2. Posez vos questions de recherche

Avec Code Interpreter ayant un contrôle sur la base de code d'un projet, vous pouvez ensuite utiliser le plugin comme quelque chose qui s'apparente à un assistant de recherche pour comprendre le code.


Par exemple, j'ai demandé à Code Interpreter de fournir une analyse de haut niveau de la conception technique de Nouns DAO après lui avoir fourni les sept contrats intelligents susmentionnés. A cela, le plugin a apporté divers bons points comme :


  • La conception modulaire : « Le projet est structuré de manière modulaire, chaque contrat étant responsable d'une partie spécifique du système. Cela aide à maintenir le code et permet une flexibilité dans la mise à jour indépendante de certaines parties du système . ”


  • Génération d'art en chaîne : " Contrairement à de nombreux projets NFT qui stockent des métadonnées et de l'art hors chaîne (généralement sur IPFS ou similaire), Nouns DAO semble avoir la capacité de générer de l'art en chaîne à l'aide de NounsArt.sol, NounsDescriptor.sol et SVGRenderer contrats .sol. Cette approche est moins courante et fournit un mécanisme unique pour créer des actifs numériques distincts et vérifiables entièrement dans la blockchain Ethereum .


  • Utilisation d'OpenZeppelin : « Le projet utilise les bibliothèques OpenZeppelin, qui sont des implémentations standard, bien testées et sécurisées d'interfaces et d'utilitaires de contrat communs. Cela démontre l'accent mis sur la sécurité et la fiabilité .


Si j'allais de 0 à 100 dans la recherche d'un projet NFT que je ne connaissais pas, est-ce que je trouverais ce genre d'informations utiles comme point de départ du côté technique des choses ? Absolument! Vous êtes également à peu près uniquement limité par votre imagination ici. J'ai demandé à Code Interpreter à quoi ressemblerait une version simplifiée de l'architecture des noms, et ainsi de suite. Si vous pouvez y penser, le plugin peut essayer d'y répondre.


Pourtant, vous devez également être très prudent car toutes les réponses que vous recevrez de Code Interpreter ne seront pas correctes…

3. Attention aux hallucinations

Un exemple d'hallucination d'analyse ChatGPT


En réalité, le contrat intelligent Inflator.sol utilisé par Nouns DAO est destiné à "décompresser les données compressées à l'aide de l'algorithme Deflate". Le code vous le dit en clair !


Pourtant, lors d'un passage, lorsque j'ai demandé à Code Interpreter d'analyser cette partie de la structure technique des noms, le plugin a indiqué à tort que cet élément était intéressant en tant que «mécanisme de taux d'inflation centré sur la finance qui peut être vu dans certains protocoles DeFi mais n'est pas couramment vu dans les projets NFT.


Le point ici, alors, est que Code Interpreter est encore expérimental et loin d'être infaillible. Ne considérez pas ses réponses comme entièrement correctes car souvent, à divers endroits, elles ne le seront pas. Parfois, reformuler votre invite de certaines manières peut résoudre ces problèmes, mais si vous utilisez Code Interpreter dans un proche avenir, assurez-vous de vous entraîner à revérifier ses sorties comme je l'ai fait avec son analyse du contrat Inflator.sol !

Zoom arrière

Dans l'ensemble, Code Interpreter est un nouvel outil vraiment convaincant que les personnes non techniques et techniques peuvent utiliser, entre autres, pour analyser plus en profondeur les NFT. Auparavant, l'analyse de code n'était réservée qu'aux experts, mais ce plugin est un grand pas en avant pour le rendre plus accessible et compréhensible pour tous.


Il est également assez tôt dans ce domaine, donc je soupçonne que les performances de Code Interpreter et des plugins similaires ne feront que s'améliorer avec le temps. Cependant, si vous n'êtes pas un codeur comme moi, il est particulièrement important de vous rappeler d'utiliser cet outil comme un autre élément de votre recherche et comme une source qui doit être vérifiée comme n'importe quoi d'autre, plutôt que comme une sorte de machine d'analyse parfaite, ce qui n'est pas le cas !


Biographie de l'auteur

William M.Peaster est le créateur de Métaverse — une newsletter Bankless centrée sur l'émergence des NFT dans la cryptoéconomie. Il est également rédacteur principal pour le principal bulletin d'information Bankless.


Également publié ici .