Neste artigo você vai aprender o que é o GitHub Copilot, e como essa ferramenta de assistência de código por Inteligência Artificial pode te ajudar a programar melhor
Conteúdo também disponível em vídeo:
Fala programador(a), beleza? Bora aprender sobre o que o GitHub Copilot tem nos oferecer! =)
O que é o GitHub Copilot?
É uma inteligência artificial de assistência de código, os criadores denominam como uma prática de pair programming
Por isso o nome Copilot de copiloto, enquanto você é o piloto principal
O software é fruto de uma parceria entre o GitHub (Microsoft) e a OpenAI, que cuida de toda a parte de inteligência artificial
A proposta não é substituir o programador e sim dar sugestões de boas implementações de código, evitando a busca massiva em documentação, Google e Stack Over Flow
Como ter acesso ao GitHub Copilot?
O Copilot vai trabalhar inicialmente como uma extensão para o editor de código, temos já disponível para testes no VS Code
Ou seja, a partir do Marketplace você poderá baixá-lo e instalar no seu editor, como qualquer outra extensão
Porém no momento ele se encontra em uma espécie de closed beta, você deve solicitar o acesso para ser aprovado e começar a utilizar
O Copilot não é um autocomplete
Apesar de ele escrever muito código, a ideia é que haja um raciocínio do programador e escolha a forma que se adéqua melhor ao seu código
Ao ativar a IA você receberá logo uma sugestão, porém ainda é possível alterar entre outras existentes com botões de Next e Previous
Alterando o código sugerido em tempo real
Atualmente 10 sugestões são realizadas, e você pode comparar elas também
Como o GitHub Copilot funciona?
O Copilot faz um condessamento de todo o código aberto na web, treinando a sua IA para resolver da melhor forma os problemas que temos no dia a dia
Estas sugestões ficam armazenadas no software
Além disso ele é treinado em linguagem natural, conseguindo compreender sugestões por meio de comentários
Ao programar você tem duas opções: escrever o que deseja com o código em forma de comentário ou começar a programar algo
As informações serão transmitidas ao Copilot, que inicia os processamentos e também a apresentar as sugestões
E então você escolhe a que deseja
Veja o fluxograma:
O código do Copilot é perfeito?
Não, o código que é gerado pelo Copilot parte do que ele entende do seu código e consegue interpretar
O que não quer dizer que é a prova de falhas, você deve sempre revisar, testar e principalmente ler o código gerado 🙂
Algumas vezes o código que recebemos pode nem funcionar ou também não fazer sentido para a nossa utilização
O software ainda está nascendo, mas o pessoal que desenvolve está melhorando o mesmo a cada dia
Como podemos interagir com o GitHub Copilot
Como dito anteriormente, teremos a extensão instalada no VS Code
A partir daí poderemos receber sugestões a partir de comentários no código ou do próprio código
Basta digitar algo, que uma espécie de auto complete inicia e podemos ler a sugestão do Copilot:
O autocomplete é sinalizado pelo ícone do Copilot, para o programador entender de onde veio a sugestão
Linguagens aceitas pelo Copilot
O Copilot entende diversas linguagens de programação já, porém algumas delas foram mais aprimoradas que as outras
As que estão mais avançadas são: Python, JavaScript, TypeScript, Ruby, e Go
Porém é possível encontrar exemplos em HTML, CSS e outras linguagens
A expectativa é que com o tempo cada vez mais linguagens estejam maduras na ferramenta
Como a IA foi/é treinada?
Conforme mencionado anteriormente a principal fonte de informação é código aberto, incluindo repositórios no GitHub
Outra possível fonte de informação é o Stack Over Flow
Desta maneira os códigos são enviados para o OpenAI Codex, um software de IA feito pela OpenAI
Lembrando que o GitHub é da Microsoft e também o Visual Studio Code, por isso a forte relação entre estas ferramentas para o Copilot
Já o próprio Copilot é uma parceria entre a Microsoft e a OpenAI
IA responsável
Atualmente o mundo das inteligências artificiais tem sofrido um pouco com usuários mal intencionados
Pensando nisso o time que desenvolve o Copilot trabalhou e trabalha para que o código gerado não seja desrespeitoso/ofensivo
Abriu também um e-mail para que você envie qualquer instrução que achar ofensiva ou algo do tipo, como um sistema de report, para que eles analisem
E ainda na mesma linha, trabalham para proteger o usuário que o código gerado traga algum problema ou para que não apresente falhas de segurança
Mas sempre ressalta a importância da conferência e teste
Previsão de lançamento e próximos passos
O GitHub Copilot ainda encontra-se em um beta fechado, que apenas os escolhidos/liberados podem utilizar
E ainda não há uma previsão de lançamento para o público em geral
Outra informação interessante divulgada é que se esta fase inicial de certo, provavelmente haverá uma versão paga do Copilot
O que já era de se esperar, não é? 😀
Será o fim dos programadores?
Creio eu que não, mas uma coisa sabemos: programadores são caros
Aumentando a agilidade com que os softwares ficam prontos em uma empresa gera uma consequência, precisamos de menos programadores
Acredito então que o Copilot venha mais para o fim de: tornar a possibilidade de entregar um produto interessante mais democrática, com menos custos, já que o desenvolvedor programará mais rápido
Porém é algo que ainda teremos que esperar, e ver as cenas dos próximos capítulos =)
Conclusão
Neste artigo você aprende os principais conceitos e recursos que envolvem o GitHub Copilot
Um software criado por meio de uma parceria da MicroSoft (GitHub, VS Code) e OpenAI
Esta aplicação tem com premissa auxiliar os devs com códigos gerados, baseado em trechos de código ou comentários
Já que ela entende a linguagem natural, e consegue interpretar o que precisamos realizar com boa acurácia
Neste momento ainda está numa espécie de closed beta, que precisamos nos cadastrar para ter acesso
E também não são todas as linguagens que desempenham bem no Copilot, as mais indicadas para utilização são: Python, JavaScript, TypeScript, Ruby, e Go
Lembrando que a ideia principal não é substituir programadores, e sim auxiliá-los com as tarefas do dia a dia
Confira nossos cursos gratuitos no Youtube, com vídeos todos os dias!
Se inscreva e ative o sininho para receber as notificações e aprender mais ainda sobre desenvolvimento web!
Veja também nosso catálogo de cursos na Udemy, todos com exercícios e projetos práticos, nas mais diversas tecnologias
O link acima contém um cupom de desconto para os cursos!