Implémentez en collaboration un projet logiciel entier à l'aide d'une IA.
GPT-Synthesizer vous guide à travers l'énoncé du problème et explore l'espace de conception avec vous grâce à un processus d'entrevue soigneusement modéré. Si vous ne savez pas par où commencer et comment décrire votre projet logiciel, le synthétiseur GPT peut être votre meilleur ami.
La philosophie de conception du synthétiseur GPT est enracinée dans la croyance au cœur et plutôt contraire, qu'une seule invite ne suffit pas pour créer une base de code complète pour des logiciels complexes. Cela est principalement dû au fait que, même en présence de LLM puissants, il existe encore de nombreux détails cruciaux dans la spécification de conception qui ne peuvent pas être efficacement capturés dans une seule invite. Tenter d'inclure tous les détails dans une seule invite, voire impossible, entraînerait une perte d'efficacité du moteur LLM. Propulsé par Langchain, le synthétiseur GPT capture la spécification de conception, étape par étape, à travers un dialogue dirigé par l'IA qui explore l'espace de conception avec l'utilisateur.
Le synthétiseur GPT interprète l'invite initiale comme une description de haut niveau d'une tâche de programmation. Ensuite, via un processus, que nous avons nommé «Synthèse de l'invite», GPT Synthesizer compile l'invite initiale dans plusieurs composants de programme dont l'utilisateur pourrait avoir besoin d'implémentation. Cette étape transforme essentiellement les «inconnues inconnues» en «inconnues connues», qui peuvent être très utiles pour les programmeurs novices qui souhaitent comprendre le flux global de leur implémentation souhaitée. Ensuite, le synthétiseur GPT et l'utilisateur trouvent en collaboration les détails de conception qui seront utilisés dans la mise en œuvre de chaque composant de programme.
Différents utilisateurs peuvent préférer différents niveaux d'interactivité en fonction de leur ensemble de compétences uniques, de leur niveau d'expertise, ainsi que de la complexité de la tâche à accomplir. Le synthétiseur GPT se distingue des autres outils de génération de code basés sur LLM en trouvant le bon équilibre entre la participation des utilisateurs et l'autonomie de l'IA.
pip install gpt-synthesizer
Pour le développement:
git clone https://github.com/RoboCoachTechnologies/GPT-Synthesizer.gitcd GPT-Synthesizerpip install -e . Le synthétiseur GPT est facile à utiliser. Il vous fournit un assistant AI intuitif dans votre interface de ligne de commande. Il fournit également une interface utilisateur intuitive à l'aide de Streamlit. GPT Synthesizer utilise gpt-3.5-turbo-16k d'OpenAI comme LLM par défaut.
Application rationalisée :
gpt-synthesizer-streamlit dans le terminal.Démo:

Interface de ligne de commande :
export OPENAI_API_KEY=[your api key]gpt-synthesizer dans le terminal.Démos:
Comment ça marche :
Programming task: *I want to implement an edge detection method from a live camera feed.*Programming language: *python*Components to be added: *Add 'component 1: what component 1 does', 'component 2: what component 2 does', and 'component 3: what component 3 does' to the list of components.*Components to be removed: *Remove 'component 1' and 'component 2' from the list of components.*workspace . Pour la transparence, l'interface utilisateur mettra le chemin et le contenu de l' workspace dans la barre latérale. Le code de GPT Synthesizer est facile à lire et à comprendre. Tout le monde peut personnaliser le code pour une application spécifique. La base de code est étroitement intégrée à Langchain, permettant l'utilisation de divers outils tels que la recherche sur Internet et les bases de données vectorielles.
La stratégie hiérarchique de GPT Synthesizer pour construire la base de code permet à GPT3.5 d'OpenAI d'être une option viable pour le backend LLM. Nous pensons que GPT3.5 fournit un bon compromis entre le coût et la compréhension contextuelle, tandis que GPT4 pourrait être trop cher pour de nombreux cas d'utilisation. Néanmoins, le passage à un autre LLM est facilité grâce à l'intégration de Langchain.
Le synthétiseur GPT sera activement maintenu en tant que projet open source. Nous accueillons tout le monde à contribuer à notre communauté de systèmes de construction pour la génération de code humaine en boucle!
Voici une liste (non exhaustive) de nos plans futurs pour le synthétiseur GPT:
CMakelists.txt pour C ++ et setup.py + requirements.txt pour python.Regarder à l'intérieur de GPT-Synthesizer et l'idée de la génération de code basée sur LLM
Pour les demandes commerciales, telles que des emplois de conseil ou de contrat, veuillez contacter [email protected].