A StackSpot AI é nossa solução que propõe conexão direta ao contexto de desenvolvimento das empresas. Neste artigo, vamos apresentar mais detalhes sobre o potencial dessa ferramenta no cotidiano das organizações e de devs. Conheça a StackSpot AI e saiba como usá-la com um tutorial completo.
Premissas sobre IA
Antes de tudo, vamos conhecer algumas premissas de quando falamos sobre assistentes de código baseados em inteligência artificial. Confira!
1. A falta de contexto sobre o código da empresa
O primeiro ponto a ressaltar é o cenário de código escrito de uma empresa. Neste contexto, muitas vezes, existem diretrizes que precisam ser seguidas por devs enquanto escrevem o código relativo a uma funcionalidade.
Será que o código gerado pelo assistente genérico vai se preocupar com isso? E se existir um padrão de documentação, será que o assistente genérico vai segui-lo?
Outra situação que acontece bastante em um software que está complexo, é saber o que já existe implementado e pronto.
O maior desafio da reutilização não é do ponto de vista da pessoa programadora utilizar algo que fez anteriormente e sim reutilizar o que já foi feito por outra pessoa dentro da empresa.
Será que já existe um Domain Service que fornece determinada lógica? Será que já existe um endpoint em um microsserviço que já realiza determinada operação? Como saber?
Dessa forma, facilitar o acesso à informação existente é fundamental para diminuir a chance de retrabalho, como acelerar implementação de necessidades que podem ser construídas em cima do que já existe, aceleração de onboarding etc.
2. Uma excelente documentação tende a ser a chave
O caminho padrão para tornar o conhecimento existente no software acessível para o máximo de pessoas é acreditar em uma excelente documentação. Isso já é utilizado largamente pelos projetos de open source de sucesso, afinal de contas novos times começam a utilizá-los todos os dias ao redor do mundo.
Quando sua equipe decide usar uma biblioteca ou framework open source, onde ela vai? Na documentação!
Então, as empresas tentam ir pelo mesmo caminho com a criação de wikis internas utilizando as mais diversas ferramentas. Nestas wikis, quando existentes e bem cuidadas, você pode encontrar guidelines de código, histórico de soluções para problemas que aconteceram, links dos acessos para as descrições de APIs, entre outros.
Ao mesmo tempo que ter essa excelente documentação pode ajudar muito, ainda temos o problema de obrigar profissionais de programação a ficarem trocando de contexto para conseguir tais informações.
Porém é difícil encontrar o que você quer no tempo que você precisa. A troca de contexto, somada a dificuldade de encontrar, muitas vezes, faz você achar que não existe e aí, como já falamos, a possibilidade de reutilização do conhecimento cai.
E se todo esse conhecimento ultracontextualizado fosse acessível diretamente da sua IDE através de linguagem natural? Vamos mais longe. E se fosse acessível diretamente da sua IDE já considerando a stack de tecnologias do time em questão?
3. Conheça StackSpot AI: o seu assistente de código ultracontextualizado
A StackSpot AI é a nossa solução para que todo o conhecimento relacionado a software que sua empresa tem fique acessível para devs. Em um chat aberto dentro da própria IDE, qualquer pessoa do time pode “conversar” com o conhecimento necessário para seu contexto, já conectado com a stack de tecnologia em questão.
O nosso objetivo no restante deste post é que você conheça StackSpot AI afundo e que saiba sobre os conceitos fundamentais para que possa aproveitar a nossa solução e já começar a acelerar sua produtividade do jeito certo: considerando o contexto que você vivencia.
StackSpot AI e conceitos fundamentais
Acessando a nossa página e realizando seu cadastro
O primeiro passo é navegar até nossa página e realizar seu cadastro. Você pode realizar o cadastro usando sua conta do GitHub.
Na página, você vai encontrar o botão de login, neste momento, ele está no canto superior direito.
Quando você clicar, irá acessar a nossa tela de login. Neste momento, basta optar por realizar o login com sua conta do GitHub. Confira o endereço de acesso à página de login.
Instalando o nosso plugin no seu Visual Studio Code
Logo após o seu login, você vai conferir nossa tela de boas-vindas. Nela, você vai encontrar diversos links, agora se concentre no link de instalação do nosso plugin na sua IDE. Neste momento, suportamos o Visual Studio Code, em breve, devemos lançar suporte a outras IDE’s.
Quando você clicar no ícone do Visual Studio Code, realizará o download do arquivo de instalação do nosso plugin, ele tem a extensão vsix. Para realizar a instalação do plugin, siga os seguintes passos:
- Vá ao menu de extensões do Visual Studio Code – ele fica do lado esquerdo da tela;
- Dentro da tela de extensões, você vai encontrar no lado superior um menu formado por três pontinhos;
- Quando clicar neste menu, você vai encontrar a opção de instalação via VSIX.
Essa sequência também está na documentação oficial da StackSpot AI.
Conhecendo o conceito de Knowledge Source
Anteriormente, discutimos o problema da necessária troca de contexto das pessoas programadoras para consultarem a documentação existente em busca das informações necessárias para implementar uma determinada funcionalidade, módulo etc.
O desafio aqui é trazer todo esse conhecimento para o local de trabalho da pessoa desenvolvedora, a sua IDE. Para que seja buscável via nosso chat, nasce o conceito de Knowledge Source na StackSpot AI.
Como o próprio nome diz, podemos criar fontes de conhecimento dentro da StackSpot AI. Atualmente, suportamos dois tipos de fontes:
- Arquivos JSON com descrição de API seguindo a Open API;
- Conjunto de trechos de código chamado de Snippets Group.
Assim, com o tempo, devemos suportar tipos de fontes variadas. Por exemplo, minerar os repositórios de código da sua empresa e extrair os códigos que apresentem as melhores práticas.
Também vamos suportar o scan da sua wiki para trazer conhecimentos documentados e seus respectivos casos de uso, de forma que isso também fique acessível no chat da StackSpot AI.
1. Fluxo de cadastro de arquivo seguindo a Open API
Imagine que você quer facilitar o desenvolvimento de um sistema em cima da API da OpenAI e, além de acessar a documentação da própria OpenAI, também pode perguntar isso direto para o nosso assistente de código.
Primeiramente, realize o download do arquivo descrevendo a API. Baixe diretamente no GitHub da OpenAI.
Agora devemos realizar o cadastro dessa API como Knowledge Source. Para isso vamos seguir um passo a passo:
Primeiramente, clique em “Code Buddy” dentro da nossa plataforma. Ele se encontra do lado esquerdo.
Logo após clicar, já vai aparecer a opção de cadastro de Knowledge Sources. Basta clicar em cima do ícone do sinal de soma.
O próximo passo é escolher a opção de API. Uma vez escolhida, aparece a seguinte tela:
Escolha o nome para sua Knowledge Source, por exemplo, OpenAI API. Aliás, é importante fornecer uma descrição explicando o motivo daquela Knowledge Source.
Quando clicar em next, vai aparecer a tela pedindo para você realizar o upload do seu arquivo de Open API.
Quando o upload terminar, você terá acesso aos itens que foram cadastrados em função da descrição da API.
Pedindo para expandir um deles, você vai perceber que a StackSpot AI realizou um tratamento durante o cadastro para deixar as informações mais interessantes para o processo de indexação de conteúdo.
Pronto, neste momento você registrou seu primeiro Knowledge Source. Registre quantos achar necessário.
2- Fluxo de cadastro de Knowledge Source do tipo Snippet Group
Este formato é mais adequado para você compartilhar guidelines de código, algoritmos etc. O fluxo inicial é exatamente o mesmo, só que em vez de pedir para criar uma API, você vai clicar para criar um Snippet Group. A primeira tela que vai aparecer também é igual.
Dê um nome para seu Snippet Group e também adicione uma descrição explicando o motivo dele existir. Após clicar em Next, deve aparecer a seguinte tela:
Agora você pode adicionar quantos Snippets entender necessários. Quando clicar em “Add Snippet”, você terá a opção de escolher uma linguagem de programação associada ao Snippet, colocar o trecho de código e também um caso de uso para ele.
Tudo aqui vai ser indexado para ser buscável via nosso chat. Então a sugestão é de seguir as boas práticas e detalhar o que acredita ser necessário.
Agora veja um exemplo de um Snippet criado.
Aqui nós temos um Snippet que deve ajudar a pessoa programadora a seguir o guideline da empresa no que diz respeito a retornar valores nulos em um código Java.
Conheça o conceito de StackSpot AI
Para que os Knowledge Sources fiquem realmente poderosos, precisamos conectá-los com a stack de tecnologia que é utilizada por um determinado time. Por exemplo, imagine que você quer acessar a funcionalidade de transcrição de áudio da OpenAI e também quer um exemplo de código contextualizado para a linguagem na biblioteca de sua preferência.
Vamos conseguir conectar esses dois itens no momento de criação de um Workspace (o que já vai acontecer), mas antes precisamos também registrar essa nossa ideia de stack. É justamente por isso que existe o conceito de Studios e Stack AI’s.
Studio na StackSpot AI
Um Studio na StackSpot AI concentra diversas definições de stacks que têm algum tipo de relação. Por exemplo, stacks baseadas no Spring. O nível de granularidade fica sob sua decisão – aliás, consideramos que por framework parece interessante.
Já para criar um novo Studio, você vai utilizar o botão “create” localizado no canto superior direito da plataforma.
Logo após o clique, você vai conferir a tela de criação de um novo Studio. Basta adicionar o nome.
Você pode acessar qualquer Studio que criar no menu “Studios”, do lado esquerdo da tela.
Agora, no Studio, adicione nossa primeira Stack AI, ela é necessária para fornecer o contexto sobre as tecnologias que devem ser priorizadas quando o bate-papo da IA da StackSpot sugere código para você.
Quando você clica no botão para adicionar uma nova Stack AI:
Na primeira etapa, defina um nome e um caso de uso, uma descrição específica dos cenários em que as tecnologias sugeridas pela Stack AI seriam mais adequadas.
Em seguida, você precisa definir as características da sua Stack AI. Por exemplo:
Dessa forma, definimos a linguagem de programação, a estrutura básica, a estrutura de testes, as sugestões de padrões e as dependências. Aqui, você está criando uma possibilidade de contexto de trabalho.
Agora, vamos passar para a etapa em que fornecemos contexto sobre a opção de nuvem preferida dentro dessa Stack.
No exemplo, escolhemos o AWS como provedor de nuvem. Aliás, adicionamos alguns módulos necessários para o uso no contexto do Stack AI. Essa etapa é totalmente opcional.
A próxima etapa é a revisão e, se tudo estiver correto, poderemos criar nossa primeira Stack AI.
Espaços de trabalho: conectando fontes de conhecimento com Stack AI
Sua empresa pode ter várias fontes de conhecimento e muitos estúdios com Stack AIs. No entanto, nem todo projeto precisará acessar todas as combinações ao mesmo tempo. É aí que entra o conceito de Workspaces.
Um espaço de trabalho na StackSpot AI é onde você conecta as fontes de conhecimento com as Stacks AI. Dessa forma, as sugestões de código baseadas nas fontes de conhecimento consideram as características dessa stack.
Por exemplo, se você estiver trabalhando em um projeto que usa Java como linguagem, Spring como estrutura principal e Feign como biblioteca para fazer solicitações HTTP, a expectativa é que as sugestões de consumo de API sejam adaptadas a essas escolhas.
Para criar um novo espaço de trabalho, acesse o menu “Create” (criar) e clique na opção “Workspace” (espaço de trabalho). A primeira etapa é adicionar um nome e uma descrição.
Agora, podemos adicionar as Stack AIs e as fontes de conhecimento necessárias. Por exemplo:
Finalmente, estamos prontos para explorar o StackSpot AI Chat considerando o contexto de que você precisa.
Consuma inovação, comece a transformação
Assine nosso boletim informativo para se manter atualizado sobre as práticas recomendadas mais recentes para aproveitar a tecnologia para gerar impacto nos negócios
Obtenha sugestões contextualizadas por meio do StackSpot AI Chat
Primeiramente, acesse o menu StackSpot AI em seu Visual Studio Code e fazer login no GitHub.
Depois de selecionar o Workspace, é hora de escolher com qual Stack AI você deseja trabalhar.
Agora, vamos começar solicitando assistência no bate-papo. Sua primeira mensagem será “I need to transcript an audio file” (Preciso transcrever um arquivo de áudio).
Aqui, é apresentado um trecho de código criado com base no Feign, que foi uma das dependências que definimos na Stack AI. Observe também que o endereço de endpoint do OpenAI é fornecido para executar a operação. Nesse ponto, podemos ver claramente a inteligência da IA do StackSpot, pois ela faz referência cruzada de informações e aproveita os recursos do Large Language Model (LLM) para gerar uma resposta apropriada.
Aliás, uma sugestão de controlador também foi fornecida para implementar a recepção de áudio que precisa ser transcrita usando o Spring, que foi a estrutura definida na Stack AI. O parâmetro que representa o áudio poderia ser o próprio arquivo, mas essa pequena imprecisão sempre traz algum risco ao trabalhar com LLM. Por isso, é importante priorizar a transparência e evitar falsas promessas.
Também temos aqui uma sugestão de código para tornar as chamadas remotas mais resilientes, que foi um dos padrões definidos na Stack AI que selecionamos.
Finalizando sua experiência
Por fim, também temos uma referência à Knowledge Sources, usada para enriquecer a resposta. Aqui, poderia ter sido encontrada mais de uma fonte:
De fato, foi exatamente isso que buscamos. Em vez de sair do IDE para procurar informações, a pessoa desenvolvedora solicitou o que precisava e nosso bate-papo foi capaz de fornecer uma resposta considerando o contexto necessário.
Neste caso, fizemos a solicitação de forma bastante aberta. Até poderíamos trabalhar com mais especificidade e solicitar um exemplo de como consumir o serviço de transcrição. Por isso, com relação à engenharia de solicitações, é sempre importante seguir as práticas recomendadas, que envolvem o fornecimento de instruções ou solicitações específicas.
StackSpot AI – Conheça o assistente de código para empresas
Enfim, você tem dificuldade para seguir as diretrizes e as práticas recomendadas de codificação da sua organização? Conheça a StackSpot AI.
A IA da StackSpot aproveita o contexto de sua empresa – desde guias de estilo até lógica personalizada – para gerar códigos compatíveis automaticamente. Dessa maneira, basta descrever o que você deseja criar em inglês simples, e ele sugere um código seguro e confiável que se alinhe aos padrões.
Com a StackSpot AI, você obtém todos os benefícios de produtividade da codificação gerada por IA, adaptada às suas necessidades comerciais. Portanto, chega de descobrir débitos técnicos durante as revisões!
Pronto para codificar mais rapidamente e, ao mesmo tempo, aderir às políticas corporativas? Inscreva-se agora para obter acesso antecipado a StackSpot AI.