GitHub Copilot: primeiros passos e aplicando Inteligência Artificial na escrita de expressões SQL
Este artigo marca o início de uma série em que abordarei o uso do GitHub Copilot com diferentes tecnologias. Minha intenção é demonstrar como profissionais de áreas como Desenvolvimento, Infraestrutura, DevOps, Dados e mesmo Inteligência Artificial podem se beneficiar desta excelente ferramenta, considerando sua utilização em conjunto com o Visual Studio Code ou com outros editores/IDEs.
Neste primeiro post serão discutidas algumas das características do GitHub Copilot, bem como de que forma podemos ativá-lo no Visual Studio Code. Apresentarei também exemplos de uso do Copilot na escrita de instruções SQL, tomando por base scripts de bancos de dados.
GitHub Copilot: uma visão geral
O GitHub Copilot surgiu de uma parceria entre a OpenAI e o GitHub, sendo descrito como uma Inteligência Artificial que possibilita pair programming. A implementação do Copilot envolveu seu treinamento a partir de milhões de linhas de código, o que resultou na obtenção de um modelo de IA chamado OpenAI Codex. Além do Visual Studio Code, outras ferramentas como Visual Studio 2022, Neovim e IDEs da JetBrains contam atualmente com suporte ao GitHub Copilot.
Comentários em linguagem natural resultam em sugestões de código, com o GitHub Copilot suportando dezenas de tecnologias. Isto inclui as mais variadas linguagens de programação, soluções de scripting, ferramentas de linha de comando e até dialetos de SQL.
Sugestões são apresentadas pelo Copilot levando em conta o contexto relativo ao projeto em que estamos trabalhando. Um novo método sugerido em um arquivo de código-fonte exemplifica bem esta capacidade, considerando-se aqui a tecnologia utilizada e até mesmo o idioma empregado na codificação.
Como principal benefício do uso do GitHub Copilot temos uma maior produtividade na escrita de código, com diversos relatos no próprio site da solução enfatizando este aspecto. A aceleração no aprendizado de novas tecnologias também é um ponto a ser destacado, já que sugestões ajudam na rápida resolução de eventuais dúvidas de implementação.
Configurando o GitHub Copilot no Visual Studio Code
Para ativar o uso do Copilot no Visual Studio Code devemos ativar a extensão GitHub Copilot:
Este plugin solicitará então que o usuário se conecte ao GitHub, de forma a ativar a utilização do GitHub Copilot a partir do VS Code. Após a realização deste procedimento o Copilot já estará ativo, com a opção para desativar o mesmo (Deactivate Copilot) aparecendo no canto inferior direito deste editor de código:
Há um trial para uso do GitHub Copilot por um período de 30 dias, com a possibilidade de contratação de planos individuais e corporativos. Estudantes, professores e mantenedores de repositórios open source podem obter o acesso ao Copilot sem custo algum, mediante verificação prévia:
Para mais informações acesse:
Utilizando o Copilot com instruções SQL
Na animação seguinte temos um exemplo de uso do GitHub Copilot com um script do SQL Server/Azure SQL:
- O Copilot sugere o código para as tabelas dbo.Municipios e dbo.Cidades, levando em conta as estruturas pré-existentes (dbo.Regioes e dbo.Estados);
- Como sugestão foi escolhida a tabela dbo.Municipios.
Este script utilizado foi disponibilizado no GitHub:
https://github.com/renatogroffe/DockerCompose-SqlServer-DBInitialization_DadosGeograficos
Caso achem útil esta solução, peço por favor um ⭐️ no repositório apoiando. Fica também o convite para que vocês me sigam lá no GitHub!
Podemos ir além, nos valendo de comentários para gerar queries complexas utilizando as diferentes estruturas presentes num script SQL. Exemplos assim foram apresentados em uma live recente no Canal .NET:
Outras tecnologias empregadas em conjunto com o GitHub Copilot foram também abordadas em uma live posterior no Canal .NET: