Github Copilot – Inteligência artificial aplicada no processo de escrita de código

Thiago Candido

O Github, em parceria com a OpenAI, lancou a preview técnica do Github Copilot, ferramenta que utiliza técnicas de inteligência artificial (IA) para auxiliar e facilitar o processo de escrita de código, não se limitando apenas a completar chamadas ou comandos, como nos conhecidos “autocompletes” de IDEs como Visual Studio e IntelliJ, mas escrevendo linhas e funções inteiras a partir de um “docstrings”, ou seja, de uma documentação da funcionalidade escrita utilizando linguagem natural.

Criado a partir de um trabalho conjunto do Github, plataforma da Microsoft de hospedagem de código-fonte com controle de versão Git, com a OpenAI, empresa focada em R&D de soluções de IA para diversas áreas do conhecimento, o Github Copilot está sendo utilizado há meses por centenas de desenvolvedores das empresas fundadoras do projeto.

A partir de repositórios públicos de código-fonte obtidos no Github, o modelo de inteligência artificial Codex, criado pela OpenAI a partir do modelo GPT-3, foi treinado para gerar código a partir de definições escritas em linguagem natural. O resultado desse trabalho é o sistema que é disponibilizado via um plugin do Visual Studio Code, editor de texto da Microsoft.

O que é um “modelo” de inteligência artificial?

Um modelo é um objeto que representa o que foi aprendido por um algoritmo de aprendizado de máquina.

Em junho de 2020, a OpenAI publicou o GPT-3, modelo de linguagem autoregressivo, utilizado para diversas tarefas da área de linguística computacional, como responder perguntas, sumarizar textos, gerar redações a partir de tópicos, etc. Até então era o maior modelo já criado, com mais de 175 bilhões de parâmetros. Esse sistema gerou muita controvérsia por inúmeros fatores; dentre eles a possibilidade de poder ser utilizado como uma máquina de fake news, ou até mesmo, pela possibilidade de substituir pessoas desenvolvedoras de código.

Escrevemos aqui mais sobre esse assunto, mas o que entendemos como tarefa de qualquer sistema de IA avançado, não é de substituir determinado cargo ou tipo de profissão, mas sim de ser uma ferramenta poderosa para potencializar resultados e otimizar a produtividade.O Github Copilot é um exemplo disso.

As próprias empresas anunciam de forma clara na landing page do serviço que: “O GitHub Copilot tenta entender sua intenção e gerar o melhor código possível, mas o código que ele sugere pode nem sempre funcionar, ou mesmo fazer sentido”.

Elas também sugerem a melhor forma de utilização da ferramenta: “Funciona melhor quando você divide seu código em pequenas funções, usa nomes significativos para parâmetros de funções e escreve boas docstrings e comentários à medida que avança. Ele também parece funcionar melhor quando o ajuda a navegar em bibliotecas ou estruturas desconhecidas”.

Com isso, vemos que isso é mais uma área onde a IA pode criar uma ferramenta que possui como foco ajudar profissionais a serem mais eficientes e a tomarem melhores decisões.

O Github Copilot atualmente conta com suporte da língua inglesa para definição de funcionalidades e consegue gerar código em dezenas de linguagens diferentes, mas tem como foco as linguagens Python, JavaScript, TypeScript, Ruby, e Go.

Compartilhe este insight:

Comentários

Participe deixando seu comentário sobre este artigo a seguir:

Subscribe
Notify of
guest
0 Comentários
Inline Feedbacks
View all comments

AUTOR

Thiago Candido
Especialista em inteligência artificial e engenharia de dados com experiência profissional na indústria e setor financeiro

SOLUÇÕES EXIMIACO

Desenvolvimento de Software

Gestão de times para acelerar entregas e atuar na resolução de problemas complexos.

NOVOS HORIZONTES PARA O SEU NEGÓCIO

Nosso time está preparado para superar junto com você grandes desafios tecnológicos.

Entre em contato e vamos juntos utilizar a tecnologia do jeito certo para gerar mais resultados.

Insights EximiaCo

Confira os conteúdos de negócios e tecnologia desenvolvidos pelos nossos consultores:

Engenharia de Software

Três vantagens reais de utilizar orquestradores BPM para serviços

Arquiteto de software e solução com larga experiência corporativa
Desenvolvimento de Software

Os principais desafios ao adotar testes

Especialista em Testes e Arquitetura de Software
Arquitetura de Dados

Insights de um DBA na análise de um plano de execução

Especialista em performance de Bancos de Dados de larga escala

Acesse nossos canais

Simplificamos, potencializamos e aceleramos resultados usando a tecnologia do jeito certo

EximiaCo 2022 – Todos os direitos reservados

0
Queremos saber a sua opinião, deixe seu comentáriox
()
x

Github Copilot – Inteligência artificial aplicada no processo de escrita de código

Para se candidatar nesta turma aberta, preencha o formulário a seguir:

Condição especial de pré-venda: R$ 14.000,00 - contratando a mentoria até até 31/01/2023 e R$ 15.000,00 - contratando a mentoria a partir de 01/02/2023, em até 12x com taxas.

Tenho interesse nessa capacitação

Para solicitar mais informações sobre essa capacitação para a sua empresa, preencha o formulário a seguir:

Tenho interesse em conversar

Se você está querendo gerar resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

O seu insight foi excluído com sucesso!

O seu insight foi excluído e não está mais disponível.

O seu insight foi salvo com sucesso!

Ele está na fila de espera, aguardando ser revisado para ter sua publicação programada.

Tenho interesse em conversar

Se você está querendo gerar resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

Tenho interesse nessa solução

Se você está procurando este tipo de solução para o seu negócio, preencha este formulário que um de nossos consultores entrará em contato com você:

Tenho interesse neste serviço

Se você está procurando este tipo de solução para o seu negócio, preencha este formulário que um de nossos consultores entrará em contato com você:

× Precisa de ajuda?