Ingénierie rapide
Explorer l'interpréteur de code ChatGPT d'OpenAI : une plongée approfondie dans ses capacités

Les progrès d'OpenAI dans le traitement du langage naturel (NLP) sont marqués par l'essor des grands modèles linguistiques (LLM), qui sous-tendent des produits utilisés par des millions de personnes, notamment l'assistant de codage GitHub Copilot et le moteur de recherche Bing. Ces modèles, grâce à leur capacité unique à mémoriser et à fusionner des informations, ont établi des références sans précédent dans des tâches telles que la génération de code et de texte.
Comprendre l'interpréteur de code de ChatGPT
Pour comprendre l’importance de l’interpréteur de code ChatGPT, il est essentiel de comprendre d’abord ce que c’est et comment il a été construit.
Essentiellement, l'interpréteur de code ChatGPT exploite les capacités de ChatGPT mais introduit une compétence accrue dans la compréhension, l'interprétation et même la génération de code dans une myriade de langages de programmation. Cette fonctionnalité transforme ChatGPT d'un générateur de texte en un outil inestimable pour les développeurs, aidant à la compréhension du code, au débogage et même à la génération de code.
Formation GPT pour le codage : l'approche du Codex
Le Copilote GitHub que le béton ey Interpréteur de code de ChatGPT utiliser le Modèle de codex développé par OpenAI.
Codex, un modèle de langage GPT spécialisé, est conçu pour avoir des capacités d'écriture de code Python performantes. Formé sur le code de source publique de GitHub, Codex met en valeur son potentiel en alimentant les fonctionnalités de GitHub Copilot. Lorsqu'il est évalué pour sa capacité à synthétiser des programmes à partir de docstrings, une mesure de l'exactitude fonctionnelle, Codex surpasse les deux GPT-3 que le béton ey GPT-J.
Une observation frappante est que l'échantillonnage répété améliore la performance du Codex. Lorsque jusqu'à 100 échantillons par problème sont utilisés, le taux de réussite du modèle augmente jusqu'à 70.2 %. Une telle efficacité suggère la possibilité d'utiliser le classement heuristique pour sélectionner des échantillons de code précis, sans nécessiter une évaluation complète pour chacun.
Pour évaluer ses capacités, le modèle a été chargé de créer des fonctions Python autonomes basées uniquement sur des docstrings. La précision du code généré a ensuite été évaluée à l'aide de tests unitaires. Dans un jeu de données comprenant 164 problèmes de programmation originaux, incluant des tests de compréhension du langage, d'algorithmes et de mathématiques de base, Codex a été résolu avec 12 B paramètres. 28.8 % d'entre eux en une seule tentative.
En affinant davantage le modèle en affinant les fonctions autonomes correctement mises en œuvre, son efficacité a été renforcée, ce qui a permis de résoudre le Codex-S 37.7 % de défis du premier coup. Cependant, dans le domaine pratique de la programmation, une approche par essais et erreurs est courante. Imitant ce scénario du monde réel, le modèle Codex-S, lorsqu'on lui donne 100 chances, est traité avec succès 77.5 % des défis.
Les modèles génératifs comme ChatGPT, qui produisent du code, sont généralement évalués en comparant les échantillons générés à une solution de référence. Cette comparaison peut être exacte ou utiliser une mesure de similarité comme le score BLEU. Cependant, ces mesures basées sur la correspondance ne parviennent souvent pas à saisir les nuances du codage. L'une des principales critiques du BLEU est son inefficacité à capturer les caractéristiques sémantiques du code.
Au lieu de s'appuyer uniquement sur l'appariement, une mesure plus pertinente a été proposée : la correction fonctionnelle. Cela signifie que le code produit par le modèle doit réussir un ensemble donné de tests unitaires. L'idée est alignée sur les pratiques de codage standard, car les développeurs utilisent souvent des tests unitaires pour évaluer l'efficacité et la précision de leur code.
Cette métrique évalue non seulement la précision, mais aussi l'utilisabilité fonctionnelle du code généré.
Construction passe@k la métrique est introduite comme mesure de l’exactitude fonctionnelle. Cela signifie essentiellement que si l’un des « k » échantillons de code générés réussit les tests unitaires, le problème est considéré comme résolu. Cependant, au lieu de simplement l’utiliser sous sa forme directe, un estimateur sans biais est utilisé pour calculer pass@k afin d’éviter une variance élevée.
Pour évaluer les capacités du code de ChatGPT, la recherche a utilisé le HumanEval base de données. Cet ensemble de données se compose de problèmes Python écrits à la main, chacun accompagné de tests unitaires.
Compte tenu des risques associés à l'exécution de code inconnu ou non fiable, un environnement sandbox a été conçu pour tester le code généré en toute sécurité. Cet environnement utilisé gVisière pour émuler les ressources et créer une barrière entre le système hôte et le code en cours d'exécution. Ainsi, même si le modèle produit du code malveillant, celui-ci reste contenu et ne peut pas nuire à l'hôte ou au réseau.
Utilisation de l'interpréteur de code ChatGPT
ChatGPT d'OpenAI a connu de nombreuses évolutions, l'interpréteur de code se démarquant comme une fonctionnalité révolutionnaire dans le Modèle GPT-4. Contrairement aux interfaces de chat traditionnelles, l'interpréteur de code permet aux utilisateurs de plonger plus profondément dans les tâches de calcul, en mélangeant de manière transparente les lignes entre les conversations homme-IA et les processus de calcul.
À la base, l'interpréteur de code s'apparente à avoir un ordinateur intégré au chatbot. Cette fonctionnalité dynamique offre aux utilisateurs un espace disque temporaire pour télécharger une pléthore de formats de fichiers allant des types courants tels que TXT, PDF et JPEG à des types plus spécialisés tels que CPP, PY et SQLite. Cette étendue de prise en charge amplifie sa polyvalence dans diverses tâches, qu'il s'agisse de traitement de documents ou de manipulation d'images.
Fonctionnant dans un environnement robuste et sécurisé, l'interpréteur de code est équipé de plus de 300 bibliothèques préinstallées. Cet environnement sandbox garantit la sécurité tout en offrant une puissance de calcul considérable. Il est intéressant de noter que, lorsqu'il est sollicité, il crée un script Python en temps réel pour exécuter la requête de l'utilisateur. Prenons l'exemple de la conversion d'un PDF image en un format interrogeable grâce à l'OCR : il suffit à l'utilisateur de télécharger le document, et ChatGPT s'occupe du reste.
La limite de taille des fichiers à télécharger est un point d'interrogation. Bien que les spécifications définitives n'aient pas encore été annoncées, les expériences utilisateurs suggèrent que le système peut traiter efficacement des fichiers bien supérieurs à 100 Mo. Quelle que soit leur taille, il est essentiel de noter que ces fichiers sont transitoires et sont supprimés une fois la session de chat terminée.
L'excellence de Code Interpreter ne réside pas seulement dans ses prouesses techniques, mais aussi dans son accessibilité. OpenAI propose cette fonctionnalité aux abonnés de ChatGPT Plus, fourni avec le modèle GPT-4. Ainsi, cet outil révolutionnaire n'est plus réservé à l'élite technologique, mais devient progressivement accessible à un public plus large.
La distinction entre le modèle ChatGPT standard et l'interpréteur de code réside dans leurs paradigmes d'interaction. Alors que le premier génère principalement des réponses textuelles, le second comprend et exécute le code, offrant des résultats directs. Cela en fait non seulement un atout précieux pour les professionnels de la technologie, mais permet également à ceux qui n'ont pas de connaissances en codage d'effectuer des tâches de calcul complexes.
Les capacités de l'interpréteur de code ChatGPT peuvent révolutionner plusieurs aspects du développement logiciel et de la science des données :
- Génération de code automatisée: Pour les applications logicielles et les scripts d'analyse de données, avec une description de haut niveau, le système peut produire des structures passe-partout ou des extraits de code complexes, accélérant les processus de développement et d'analyse des données.
- Revues de code et validation des données: Les outils basés sur l'IA comme ChatGPT peuvent aider à améliorer la qualité et la sécurité des bases de code des logiciels. De plus, dans le domaine de la science des données, ces outils peuvent jouer un rôle déterminant dans l'examen et la validation des scripts de traitement et de transformation des données, garantissant l'exactitude et l'efficacité.
- Aide à l'analyse des données: Pour les scientifiques des données, l'interpréteur de code ChatGPT peut aider à générer du code pour l'exploration préliminaire des données, la visualisation et même les tests statistiques de base, facilitant ainsi le flux de travail d'analyse des données.
Si vous souhaitez en savoir plus sur les subtilités de ChatGPT et l'ingénierie rapide, Unite AI propose une analyse complète de «ChatGPT : ingénierie avancée des invites'.
Configuration de l'interpréteur de code ChatGPT
L'intégration de l'interpréteur de code permet à la plate-forme d'interpréter les requêtes des utilisateurs, de les exécuter en tant que code Python et d'afficher les résultats dans un format de chat interactif. Pour accéder à cette fonctionnalité, les utilisateurs peuvent accéder à la ChatGPT paramètres, explorez la section des fonctionnalités bêta et activez l'interpréteur de code.
Ce qui le distingue, c'est son mécanisme transparent. Lorsque les utilisateurs demandent une tâche, la plate-forme dévoile chaque étape du parcours de traitement, offrant une clarté sur la façon dont les commandes sont interprétées et exécutées. Surtout, pour des raisons de confidentialité et de sécurité, l'interpréteur de code fonctionne sans aucune connexion Internet.
Explorer les avantages de l'interpréteur de code ChatGPT
Visualisation de données & Analyse
ChatGPT dépasse le cadre des graphiques traditionnels, offrant des représentations graphiques à la fois conventionnelles et innovantes. Cela garantit que les utilisateurs peuvent afficher leurs données dans des formats qui fournissent les informations les plus significatives.
Cependant, il ne s'agit pas seulement de visualiser des données brutes. Le modèle ChatGPT est capable de traiter et d'affiner les données. Malgré sa puissance, les utilisateurs doivent faire preuve de prudence.
Les analystes financiers apprécieront particulièrement la capacité de l'Interpréteur de Code à analyser et visualiser les cours boursiers. Grâce à une intégration transparente, les utilisateurs peuvent télécharger des ensembles de données et les visualiser sous différents formats. Cette fonctionnalité est particulièrement utile pour réaliser des analyses de données complexes.
La vidéo ci-dessous montre comment l'interpréteur de code de ChatGPT a créé un TSLA analyse des stocks.
Ă€ retenir:
- L'action Tesla a fait face à la volatilité mais a également fait preuve de résilience lors de périodes de croissance.
- Des volumes de transactions élevés à des jours spécifiques indiquent un intérêt ou des réactions significatifs du marché aux événements clés.
- Le rendement à la baisse depuis le début de l'année (YTD) suggère que les investisseurs devraient analyser à la fois les facteurs internes de l'entreprise et les conditions du marché externe lorsqu'ils envisagent de futurs investissements.
Mise en œuvre de la vision par ordinateur et de l'OCR
La détection des visages, fonction essentielle en vision par ordinateur, a été abordée avec une technique classique : le Classificateur Haar Cascade d'OpenCV.
L'image ci-dessous présente l'utilisation du classificateur Haar Cascade classique.
Le processus d'extraction de texte à partir d'images, connu sous le nom de reconnaissance optique de caractères (OCR), a été réalisé de manière transparente à l'aide de Tesseract, le texte étant ensuite structuré par GPT-4, améliorant la compréhensibilité.
Dans la vidéo suivante, voyez comment Tesseract (OCR) extrait le texte d'une image de certificat.
L'interpréteur de code excelle dans le domaine de la manipulation vidéo, audio et image. Avec des commandes simples, les utilisateurs peuvent réaliser des modifications détaillées, telles que la conversion de GIF en MP4 avec des améliorations spécifiques. Téléchargez simplement votre fichier, entrez les modifications souhaitées et regardez la magie se produire.
Bibliothèque externe Python dans votre interpréteur de code ChatGPT
L'interpréteur de code ChatGPT est une plateforme de programmation dynamique dotée d'un vaste ensemble de bibliothèques Python. Celles-ci couvrent tous les domaines, de la visualisation de données avec Seaborn à l'apprentissage automatique avancé avec Torch. Mais c'est bien plus qu'une simple boîte à outils statique.
Inspiré par ce Page ChatGpt de Korakot Chaovavanich.
En commençant par le dernier version nltkNous avons téléchargé un fichier .whl sur l'interpréteur. Nous avons ensuite demandé à ChatGPT de localiser le répertoire site-packages approprié en analysant l'emplacement d'un paquet existant. L'étape suivante consistait à décompresser le fichier wheel dans un emplacement temporaire et à déplacer les fichiers vers le répertoire site-packages identifié. Cependant, un problème s'est posé.
À la recherche d'une solution de contournement, nous avons demandé : "Veuillez vous assurer que NLTK est installé dans l'environnement Python et qu'il est accessible après l'installation."
ChatGPT a répondu, fournissant une solution. Il a suggéré d'ajouter le répertoire temporaire à sys.path, permettant à Python d'identifier et d'extraire des modules du package nltk décompressé à cet emplacement. Cette tactique a fait des merveilles, menant à l'installation réussie de NLTK.
Grâce à l'utilisation de fichiers .whl, l'installation a fait preuve d'ingéniosité et d'adaptabilité. Malgré les difficultés initiales, l'interpréteur de code ChatGPT a démontré sa polyvalence et sa capacité à répondre aux besoins des codeurs, garantissant aux novices comme aux experts une expérience de codage raffinée.
Dans une démonstration fascinante des capacités de l'interprète, un tweet récent de @DominikPeters a mis en lumière une démonstration unique. Peters a demandé à GPT-4 de générer un quiz sur les arrondissements de Paris, et le modèle a fourni un site web performant. Le quiz fonctionnel est disponible pour une expérience pratique sur dominik-peters.de/gpt-arrondissement-quiz/.
J'ai demandé à GPT-4 de me coder un quiz sur les arrondissements de Paris, ça a marché. https://t.co/Uhv7tPLspq pic.twitter.com/3agFZllEEQ
– Dominik Peters (@DominikPeters) le 30 avril 2023
Récapitulation
L'avancée d'OpenAI avec l'interpréteur de code ChatGPT est une véritable révolution pour les codeurs comme pour les non-codeurs. Sa polyvalence, capable de gérer un large éventail de tâches – de l'aide au débogage pour les développeurs à la création aisée de quiz parisiens – témoigne du potentiel illimité de l'IA pour améliorer nos expériences numériques. Voici un résumé de notre analyse :
Comprendre votre outilComme vous vous lieriez d'amitié avec un collègue, familiarisez-vous avec l'interpréteur de code. Conçu sur la base de Codex, optimisé à partir de GPT-4, il est capable de gérer plusieurs langages de programmation, ce qui en fait le compagnon idéal pour toutes vos aventures de codage.
Adoptez la révolution de l'IA: Les pratiques de codage traditionnelles sont sur le point de connaître un changement sismique. Avec des outils pilotés par l'IA comme l'interpréteur de code ChatGPT, des tâches telles que l'identification des bogues, la génération de code et même les révisions de code peuvent être accélérées.
Au-delà du simple codeL'utilisation de l'Interpreter ne se limite pas au texte ou au code. Sa capacité à traiter de multiples formats de fichiers, des simples fichiers TXT aux scripts PY complexes, souligne son utilité dans divers domaines.
N'arrêtez jamais d'expérimenterNotre exploration de l'installation de la bibliothèque NLTK reflète l'importance de la persévérance et de l'adaptabilité, valeurs incarnées par l'interpréteur de code. En cas de problème, il existe souvent une solution.
Rejoignez la conversation sur l'IA: Les applications du monde réel, comme le montre le quiz des arrondissements de Paris, soulignent l'immense utilité réelle de l'outil. Adoptez-le, explorez-le et laissez-le amplifier vos projets.
La vidéo ci-dessus est faite en utilisant Gen-2 que le béton ey À mi-parcours.
En résumé, l'interpréteur de code ChatGPT est bien plus qu'un simple outil ; il révolutionne notre façon d'appréhender la technologie. Pour les innovateurs comme pour les passionnés, il promet un monde riche en possibilités de codage.






















