Desde muito tempo atrás (e coloque tempo nisso kkkkkk), aqui no blog temos apresentado e implementado diversos bots para o Telegram e Facebook Messenger em conjunto com a utilização de vários serviços de Inteligência Artificial (AIaaS). Esses posts foram produzidos com o objetivo de demonstrar a implementação de bots para plataformas de mensagens e de expor as mais variadas formas de aplicação de IA na resolução de problemas do dia a dia de forma eficiente, desde automatização de respostas até a conversão de texto em voz.
Logicamente, a aplicabilidade da IA não se restringe ao uso na automatização de conversas em chats. Dentre alguns outros exemplos de emprego da IA, podemos citar a geração automática de código. Isso significa que uma determinada IA é capaz de receber o pedido para implementar a solução de um problema e responder com o código fonte na linguagem de programação solicitada pelo usuário.
Essa capacidade de geração e análise de código que certas IAs possuem pode servir como auxílio para desenvolvedores na solução de um determinado bug, ajudar na refatoração de um trecho de código ou gerar uma documentação, por exemplo. Sendo assim, diversas extensões foram desenvolvidas para que IDEs (Ambiente de Desenvolvimento Integrado) possam usar a IA como facilitador do desenvolvimento de projetos, visando eficiência e agilidade no trabalho do programador.
A lista a seguir foi catalogada a partir das extensões que funcionam como assistente de codificação e são as mais bem ranqueadas no marketplace do VSCode. Para cada membro da lista foi adicionada uma descrição, as IDEs suportadas e quais linguagens de programação podem ser manejadas pela extensão.
1- IntelliCode
O IntelliCode é uma ferramenta da Microsoft baseada em inteligência artificial e tem como principal objetivo aumentar a precisão e a consistência na criação de código, de modo que uma linha inteira de código possa ser sugerida e preenchida de uma só vez. Essa extensão busca entender o contexto do código (variáveis, funções e o tipo de código) para fornecer sugestões eficientes.
A IA presente no IntelliCode foi treinada por meio da análise de milhares de contribuições de código aberto no GitHub.
As IDEs suportadas pelo IntelliCode são Visual Studio e Visual Studio Code (VSCode). Além disso, essa extensão da suporte às seguintes linguagens: Python, JavaScript, TypeScript, Java, C#, C++, SQL, XAML.
2- GitHub Copilot
O GitHub Copilot (Copilotinho para os íntimos kkkk) é uma ferramenta de auxilio à programação por meio de IA que ajuda na escrita de código de maneira mais rápida e inteligente. O Copilot tem a capacidade de propor linhas de código, funções ou, até mesmo, blocos código enquanto o desenvolvedor digita. De certo modo, podemos dizer que essa ferramenta possibilita o pair programming, onde a dupla é formada pelo desenvolvedor e a IA.
O Copilot, o qual faz uso do modelo de inteligência artificial Codex, criado pela OpenAI, foi treinado através da análise de linhas de código publicamente disponíveis em repositórios do GitHub.
As IDEs com suporte do Copilot são Visual Studio, VSCode, Neovim e IDEs da JetBrains. Com relação às linguagens, as suportadas são as seguintes: JavaScript, TypeScript, Python, Java, C#, C++, Go, Ruby, PHP, Kotlin, SQL, Swift e R.
É importante ressaltar que o Copilot possui um período de 30 dias de uso gratuito, sendo necessário a aquisição de um plano para a continuação do acesso ao serviço.
3- Tabnine
O Tabnine é um assistente de código que utiliza a IA para acelerar e simplificar o desenvolvimento de software, mantendo o código privado e seguro. Ele aumenta a velocidade da implementação e a qualidade do código, automatizando o fluxo de trabalho de codificação por meio de ferramentas de IA personalizadas.
O Tabnine se adapta ao estilo do programador, aprendendo a medida em que o código vai sendo escrito. Ele sugere padrões baseados em seu próprio repositório, oferecendo personalização contínua ao longo do tempo. Nesse contexto, é importante ressaltar que são oferecidas duas opções do seu modelo de IA: o modelo local e o modelo na nuvem. O modelo local roda diretamente no computador do desenvolvedor, garantindo a privacidade na sua totalidade, pois nenhum código é compartilhado com a nuvem. Por sua vez, o modelo na nuvem oferece atualizações mais frequentes e é treinado em conjuntos de dados maiores, proporcionando sugestões mais precisas e complexas.
O Tabnine é compatível com um amplo conjunto de editores de código e IDEs, permitindo sua integração em diversos ambientes de desenvolvimento. Algumas das IDEs e editores suportados são os seguintes: Visual Studio, VSCode, Neovim, Eclipse e IDEs da JetBrains. Além disso, ele pode ser usado em projetos que utilizam linguagens como: C, C++, C#, CSS, Dart, Go, Haskell, Java, JavaScript, Kotlin, Perl, PHP, Python, Ruby, Rust e Scala.
4- Blackbox AI
O BlackBox AI é um assistente de codificação baseado em IA projetado para aumentar a produtividade do desenvolvedor e agilizar o processo de implementação. Ele funciona com um ChatGPT para programadores, onde o usuário diz o que deseja e recebe o código gerado.
Assim como todas as ferramentas expostas anteriormente, o BlackBox AI possui uma capacidade avançada de geração de código. Usando modelos de aprendizado de máquina, esse assistente pode sugerir código em tempo real, gerar trechos de código inteiros com base em descrições de linguagem natural e oferecer sugestões sensíveis ao contexto que se alinham com o estilo de codificação e as melhores práticas de programação.
É importante informar também que o uso do BlackBox AI não é cobrado. Por outro lado, a utilização da sua API gera custos de acordo com o número de requisições.
O Blackbox AI está disponível para mais de 20 linguagens de programação, incluindo Python, JavaScript, TypeScript, Java, C++, PHP, Go e Ruby. Para integrar-se aos fluxos de trabalho dos desenvolvedores, a BlackBox AI oferece extensões para IDEs, incluindo: VSCode e Jupyter Notebooks.
5- Codeium
O Codeium é uma ferramenta de geração de código alimentada por inteligência artificial, semelhante ao GitHub Copilot. Por meio dele, é possível acelerar o desenvolvimento, uma vez que ele oferece preenchimentos de código de uma linha e ou múltiplas, chat integrado ao IDE, além da possibilidade de refatoração automática e do serviço de explicar como o código funciona (Sim! É isso mesmo que você leu). Além disso, a principal vantagem do Codeium em relação aos seus pares é o fato dele ser gratuito para desenvolvedores individuais.
O Codeium possui suporte a mais de 70 linguagens de programação. Dentre essas linguagens, podemos citar: Python, JavaScript, TypeScript, Java, C++, C# e PHP. No caso de suporte à IDEs, existe suporte às seguintes: Visual Studio, VSCode, , Neovim, IDEs da JetBrains e Sublime Text.
Bom, é isso!
Espero que algumas das extensões que compõe essa lista possam te ajudar a codificar os seus futuros projetos.
Qualquer dúvida, deixa um comentário.