Implementar colaborativamente um projeto de software inteiro com a ajuda de uma IA.
O GPT-Synthesizer o leva pela declaração do problema e explora o espaço de design com você através de um processo de entrevista cuidadosamente moderado. Se você não tem idéia por onde começar e como descrever seu projeto de software, o GPT Synthesizer pode ser seu melhor amigo.
A filosofia de design do sintetizador GPT está enraizada no núcleo e uma crença bastante contrária de que um único prompt não é suficiente para criar uma base de código completa para software complexo. Isso se deve principalmente ao fato de que, mesmo na presença de LLMs poderosos, ainda existem muitos detalhes cruciais na especificação de design que não podem ser efetivamente capturados em um único prompt. Tentar incluir todos os detalhes em um único prompt, se não impossível, causaria uma perda de eficiência do mecanismo LLM. Alimentado por Langchain, o GPT Synthesizer captura a especificação de design, passo a passo, através de um diálogo dirigido pela IA que explora o espaço de design com o usuário.
O sintetizador GPT interpreta o prompt inicial como uma descrição de alto nível de uma tarefa de programação. Em seguida, através de um processo, que chamamos de "síntese imediata", o GPT Synthesizer compila o prompt inicial em vários componentes do programa que o usuário pode precisar de implementação. Esta etapa transforma essencialmente 'desconhecidas desconhecidas' em 'incógnitas conhecidas', que podem ser muito úteis para programadores iniciantes que desejam entender o fluxo geral da implementação desejada. Em seguida, o GPT Synthesizer e o usuário descobrem colaborativamente os detalhes do design que serão usados na implementação de cada componente do programa.
Diferentes usuários podem preferir níveis diferentes de interatividade, dependendo de seu conjunto de habilidades exclusivas, seu nível de especialização e a complexidade da tarefa em questão. O sintetizador GPT se distingue de outras ferramentas de geração de código baseadas em LLM, encontrando o equilíbrio certo entre a participação do usuário e a autonomia da AI.
pip install gpt-synthesizer
Para desenvolvimento:
git clone https://github.com/RoboCoachTechnologies/GPT-Synthesizer.gitcd GPT-Synthesizerpip install -e . O sintetizador GPT é fácil de usar. Ele fornece um assistente de IA intuitivo na sua interface de linha de comando. Ele também fornece uma interface de usuário intuitiva usando o Streamlit. O GPT Synthesizer usa gpt-3.5-turbo-16k do OpenAI como o LLM padrão.
App Streamlit :
gpt-synthesizer-streamlit no terminal.Demonstração:

Interface da linha de comando :
export OPENAI_API_KEY=[your api key]gpt-synthesizer no terminal.Demos:
Como funciona :
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 . Para transparência, a interface do usuário colocará o caminho e o conteúdo da workspace na barra lateral. O código do GPT Synthesizer é fácil de ler e entender. Qualquer pessoa pode personalizar o código para um aplicativo específico. A base de código é fortemente integrada ao Langchain, permitindo a utilização de várias ferramentas, como a pesquisa na Internet e os bancos de dados de vetores.
A estratégia hierárquica do GPT Synthesizer para construir a base de código permite que o GPT3.5 do OpenAI seja uma opção viável para o back -end LLM. Acreditamos que o GPT3.5 fornece uma boa troca entre custo e entendimento contextual, enquanto o GPT4 pode ser muito caro para muitos casos de uso. No entanto, a mudança para outro LLM é facilitada graças à integração de Langchain.
O sintetizador GPT será mantido ativamente como um projeto de código aberto. Congratulamo-nos com todos que contribuam para a nossa comunidade de sistemas de construção para a geração de códigos humanos no loop!
Aqui está uma lista (não exaustiva) de nossos planos futuros para o GPT Synthesizer:
CMakelists.txt para c ++ e setup.py + requirements.txt para python.Olhando dentro do GPT-Synthesizer e a idéia de geração de código baseada em LLM
Para consultas de negócios, como consultoria ou contratação de empregos, entre em contato com [email protected].