
[ad_1]
A humanidade percorreu um longo caminho em sua jornada tecnológica. Chegamos à beira de uma era em que os conceitos que conhecemos coletivamente como ficção científica estão rapidamente se tornando fatos científicos. O conceito de inteligência artificial é altamente antecipado, mas controverso. Partes da sociedade estão apreensivas sobre seu uso, e talvez por boas razões. Existem preocupações válidas sobre o uso seguro e ético desta nova tecnologia. Independentemente de qualquer disputa social, os robôs chegaram! O nome desse robô em particular é GitHub Copilot; se você é um desenvolvedor de software, ou está aprendendo a ser um, pode ser seu novo melhor amigo.
O que é o GitHub Copilot?
O GitHub Copilot é uma ferramenta de assistente de código de IA que se integra ao seu IDE. Foi desenvolvido pela OpenAI em cooperação com o GitHub. Ele usa o modelo de linguagem OpenAI Codex como fonte para sugerir código gerado em tempo real conforme você digita com base no conteúdo do buffer do seu editor. Atualmente, existem plug-ins disponíveis para Visual Studio, Visual Studio Code, JetBrains e Neovim. Como usuário do Vim, criei este artigo para fornecer exemplos reais de como são essas sugestões usando o plug-in GitHub Copilot para Neovim.
Como funciona?
O OpenAI Codex analisa fontes de código público para treinar seu mecanismo para transformar linguagem natural em código executável. No momento, está em versão beta privada, portanto, se você estiver interessado, poderá ingressar na lista de espera para acesso.
Introdução ao GitHub Copilot
A instalação do GitHub Copilot é um processo simples que envolve as seguintes etapas:
- Junte-se à lista de espera da visualização técnica
- Baixe e instale o plug-in
- Ative o plug-in
Junte-se à lista de espera de visualização técnica
No momento da redação deste artigo, o GitHub Copilot está disponível apenas para um pequeno grupo de desenvolvedores. Antes de poder usá-lo, você precisará solicitar acesso à visualização técnica para ativar o plug-in. Inscreva-se na lista de espera em https://github.com/features/copilot/signup.
Instale o plug-in
O GitHub Copilot tem plugins disponíveis para os editores de código mais comuns. Este artigo se concentra no plug-in Neovim, mas se você quiser experimentar um dos outros, leia a documentação em https://github.com/github/copilot-docs, caso contrário, siga para instalar o plug-in GitHub Copilot Neovim .
-
Instale o plugin seguindo a documentação oficial disponível no repositório GitHub do plugin https://github.com/github/copilot.vim Recomendo fortemente que você use um gerenciador de plugins como o vim-plug para instalar o plugin GitHub Copilot para Neovim, e todos os seus outros plugins do Neovim também.
-
Execute o
:Copilot setup
comando e você será solicitado a inserir seu código de ativação. -
Concorde com os termos e condições de telemetria e estará pronto para começar a receber código gerado por IA diretamente no Neovim.
Configurar o plug-in
Por padrão, as seguintes combinações de teclas são configuradas:
Chave | Ação |
---|---|
Tab |
Aceite a sugestão |
Ctrl-] |
Dispensar a sugestão atual |
Alt-[ |
Cycle to the next suggestion |
Alt-] |
Alternar para a sugestão anterior |
Eu tenho a tecla Alt no meu sistema reservada para outro aplicativo, então optei por remapeá-los para Ctrl-\
, Ctrl-j
e Ctrl-k
respectivamente. Eu fiz isso adicionando o seguinte à minha configuração do Neovim. O arquivo de configuração do Neovim geralmente está localizado em ~/.config/nvim/config
.
imap <silent> <C-j> <Plug>(copilot-next) imap <silent> <C-k> <Plug>(copilot-previous) imap <silent> <C-\> <Plug>(copilot-dismiss)
Como eu estava editando minha configuração do Neovim eu já estava recebendo sugestões! A linha 137 na imagem abaixo é uma sugestão automática do plugin GitHub Copilot.
Diversão com o copiloto
Este divertido exemplo abaixo foi escrito usando as sugestões do Copilot, com o mínimo de ajuda minha. Eu só escrevi o comentário inicial para começar.
O Copilot nos deu o esboço básico das etapas a serem seguidas, embora o Copilot precise de um pouco mais de ajuda para descobrir o que estamos fazendo. Adicionar o URL da API deve ajudar. Vamos ver o que acontece…
Acho engraçado que o Copilot nos dê a API do GitHub como sugestão para o URL da API. Eu realmente gosto de como ele foi capaz de preencher o bloco de importação para mim com base apenas nos comentários. Obrigado Copiloto!
Agora vou usar as sugestões de cada linha e ver o que o Copilot pode fazer sozinho.
Muito útil. Este é essencialmente um programa válido. A Copilot entendeu que estamos trabalhando com dados do usuário e injetou um User
digite lá, mas a definição não existe. O Copilot precisará conhecer a estrutura de nossos dados para nos dar sugestões sobre como analisá-los. Vamos colocar isso lá e continuar com a lógica para analisar os dados.
Mas espere! Há outro problema, se você o pegou. A resposta da API do GitHub retornará um único modelo, enquanto o Copilot nos configura para analisar um array; no entanto, por causa deste exemplo, vou deixá-lo como está. Eu não estou pensando em executar este código de qualquer maneira.
Organizado! O Copilot até nos deu alguns campos para trabalhar, embora não sejam os campos reais que são retornados da API do GitHub – eu sei, eu sei: estou esperando muito de um robô. Em seguida, vamos pular para alguma lógica de análise. Vou apenas adicionar alguns comentários para pedir ao Copilot que me sugira algumas soluções e veja o que acontece.
Bem… estou impressionado. Eu posso ver absolutamente como isso pode aumentar a velocidade para o desenvolvimento. Isso é especialmente verdadeiro para uma linguagem como Go, que pode exigir instruções mais explícitas para realizar operações comuns, como excluir um elemento de uma matriz de modelos.
Pensamentos finais
Copilot é o nome perfeito para esta ferramenta. Descobri que ele faz um ótimo trabalho em prever minhas intenções enquanto estou criando o código. O Copilot pode se tornar o melhor amigo de um desenvolvedor e tenho certeza de que mudará rapidamente a maneira como os programadores escrevem código. Posso ver como o Copilot pode ser uma ferramenta de aprendizado incrível. Pode ser extremamente benéfico para estudantes, bem como para programadores experientes que estão aprendendo os fundamentos de um novo idioma.
A tecnologia é empolgante e torna nossas vidas mais convenientes. Talvez, no entanto, precisemos estar cientes de nossa dependência das ferramentas inovadoras de que dispomos. O GitHub Copilot é tão útil e conveniente que talvez seja possível que os programadores dependam demais dele. O Copilot pode economizar muito tempo consultando a documentação, mas isso vem com o custo de não entender completamente os conceitos críticos ou ter nossos músculos de codificação atrofiados por falta de prática. Deve-se sempre ter tempo para revisar as sugestões do Copilot e pesquisar por que as soluções que ele oferece funcionam.
Links e leitura adicional
Se você quiser saber mais sobre o Copilot, aqui está uma lista de links que podem ajudá-lo a mergulhar mais fundo:
[ad_2]
Source link