Conheça StackSpot AI: o assistente conectado com seu contexto

Capa do artigo com StackSpot AI em destaque e fundo escuro com hexágonos em tons de vermelho e roxo.
A IA generativa pode ser o que você precisa para construir códigos ainda melhores, por isso criamos a StackSpot AI, nosso assistente de código.

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

Vamos começar refletindo sobre 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á ficando complexo é que é complicado saber o que já existe implementado e pronto para ser reutilizado.

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?

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! 

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.

Além de ser 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. 

Print da página de StackSpot AI, nela, é possível ver no canto superior direito um botão laranja com a palavra login escrita em branco. É este o botão que deve ser clicado.

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.

Print da tela de login de StackSpot AI, nela temos o logo no topo, depois temos dois botões, “Continue with email” e em seguida “Continue with Github”.

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.

Print da tela de boas-vindas da StackSpot AI, nela temos várias opções como IDE’s Extension, Get Started, How to install extension, How to create Knowledge Sources, entre outras. O foco inicial será na primeira que está mais à esquerda.

Quando você clicar no ícone do Visual Studio Code, vai ser realizado 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: 

  1. Vá ao menu de extensões do Visual Studio Code – ele fica do lado esquerdo da tela; 
  2. Dentro da tela de extensões, você vai encontrar no lado superior um menu formado por três pontinhos; 
  3. Quando clicar neste menu, você vai encontrar a opção de instalação via VSIX. 

Essa sequência também é descrita na documentação oficial da StackSpot AI.

Conhecendo o conceito de Knowledge Source

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:

  1. Arquivos JSON com descrição de API seguindo a Open API; 
  2. Conjunto de trechos de código chamado de Snippets Group.

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 agora, além de acessar a documentação da própria OpenAI, também pode perguntar isso direto para o nosso assistente de código. 

O primeiro passo é realizar o download do arquivo descrevendo a API. Ele pode ser baixado diretamente no GitHub da OpenAI. 

Agora devemos realizar o cadastro dessa API como Knowledge Source. Para isso vamos seguir um passo a passo:

Primeiro, clique em “Code Buddy” dentro da nossa plataforma. Ele se encontra do lado esquerdo. 

Print da tela da StackSpot AI onde podemos ver o título no canto superior esquerdo, abaixo estão os ícones Home, Studios, Workspace, Code Buddy e Tutorials, nessa ordem e um abaixo do outro. Ao lado dos ícones, está Knowledge Sources.

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.

Print da tela anterior só que com zoom, nela está Knowledge Sources e ao lado, com o sinal de soma acionado, duas opções: API e Snippets Group.

O próximo passo é escolher a opção de API. Uma vez escolhida, a seguinte tela deve ser apresentada:

Print da tela Create Knowledge Source API, nela temos o primeiro estágio chamado Knowledge Source Information com espaços a serem completados: Name, Identification (Slug) e Description.

Escolha o nome para sua Knowledge Source, por exemplo, OpenAI API. Também é 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. 

Print da tela Create Knowledge Source API no segundo estágio. Aqui aparece Adding Knowledge Objects e um campo para fazer o upload do seu arquivo.

Quando o upload terminar, você terá acesso aos itens que foram cadastrados em função da descrição da API. 

Print de tela com várias linhas de código.

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. 

Print de tela de um código de exemplo.

Pronto, neste momento você registrou seu primeiro Knowledge Source. Registre quantos achar necessário.

  1. 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. 

Print da tela Create Snippets Group, nela temos o primeiro estágio chamado Knowledge Source Information com espaços a serem completados: Name, Identification (Slug) e Description.

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:

Print da tela Create Snippets Group no segundo estágio. Aqui aparece como Insert Code e um campo Add Snippet.

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. 

Print de tela para inserir a linguagem, input your code Snippet e use case Snippet.

Agora veja um exemplo de um Snippet criado. 

Print de tela com as informações apresentadas anteriormente preenchidas.

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. 

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 – inclusive, consideramos que por framework parece interessante.

Para criar um novo Studio, você vai utilizar o botão “create” localizado no canto superior direito da plataforma. 

Print da tela de Studios selecionada com duas opções: My Studios e All Studios, a partir da última temos duas opções: Java com Spring e Spring boot.

Logo após o clique, você vai conferir a tela de criação de um novo Studio. Basta adicionar o nome.

Print da tela Create Studio com os campos de nome, identification (já preenchido) e description. Por último, há a opção de enviar uma imagem para o Studio.

Você pode acessar qualquer Studio que criar no menu “Studios”, do lado esquerdo da tela.

Print da tela que mostra a seção Studios com ênfase, nela estão a seção Java com Spring com Stack AI e Actions, e Springboot com as mesmas opções que a anterior.

Agora, no Studio, vamos adicionar 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, a tela a seguir é exibida:

Print da tela de Create Stack AI. Nesse primeiro momento, aparece Stack Information com os espaços Name e Use Case.

A primeira etapa é definir um nome e um caso de uso, este precisa ter 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. Veja um exemplo:

Print da tela de Create Stack AI. Na segunda etapa, a Definition, aparecem mais campos a serem preenchidos, na imagem já com exemplos: programming language com Java, test framework com Junit 5, observability com New Relic, framework com Springboot, pattens com observability, reactive programing, clean architecture e rest, e dependências com feign e reactor.

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.

Print da tela de Create Stack AI na parte de Cloud Attributes com dois campos a serem preenchidos: providers com o exemplo de AWS, e Modules com rds, ec2, sqs, s3 e sns.

No exemplo, escolhemos o AWS como provedor de nuvem. 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. Veja um exemplo:

Print da tela de newt-reviewer dentro de Workspaces na parte de Stack AI.
Print da tela de newt-reviewer dentro de Workspaces com a área de Knowledge Sources.

Agora, estamos prontos para explorar o StackSpot AI Chat considerando o contexto de que você precisa.

Obtenha sugestões contextualizadas por meio do StackSpot AI Chat

A primeira etapa é acessar o menu StackSpot AI em seu Visual Studio Code e fazer login no GitHub.

Print na tela de login, nele está StackSpot AI, espaço para o e-mail e a opção de continuar com GitHub.

Print da tela já após o login, onde você seleciona o seu Workspace.

Depois de selecionar o Workspace, é hora de escolher com qual Stack AI você deseja trabalhar.

Print da tela onde temos a opção de escolher a Stack.

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).

Print da tela com trecho de código criado com base no Feign.

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. Aqui, 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.

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. Aqui é importante priorizar a transparência e evitar falsas promessas.

Print de tela com sugestão de código.

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.

Print de tela com sugestão de código.

Para finalizar, também temos uma referência à Knowledge Sources que foi usada para enriquecer a resposta. Aqui, poderia ter sido encontrada mais de uma fonte:

Print da tela com a Knowledge Source open ai api.

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.

Fizemos a solicitação de forma bastante aberta. Poderíamos ter sido mais específicos e solicitado um exemplo de como consumir o serviço de transcrição. 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

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. 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. 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. 

Consuma inovação e transforme sua empresa

Assine nossa newsletter e fique em dia com as melhores práticas de tecnologia para gerar impacto nos negócios.

Summary

Related posts

*Material em Inglês

Baixe grátis o eBook
e descubra caminhos para evoluir sua empresa