You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Rascunho do conteudo programático que será apresentado:
Problema
1.1. Ciclo de entrega de software
Entender problema de negócio (agent PM)
Desenhar e validar solução técnica e arquitetural (agent ARQUITETO)
Implementar serviços e provisionar infraestrutura (agent default, DevOps e SecOps)
Validar com time de QAs (agent QA)
Testar em ambiente de Homologação
Release em produção
1.2. Construir desenho de arquitetura
Estudar problema de negócio
Levantar numeros e metricas
Estudar soluções semelhantes dentro da empresa
Estudar soluções semelhantes fora da empresa
Criar diarama de arquitetura e documentaçao técnica
Olhar para disponibilidade, confiabilidade, segurança, observabilidade etc
Validar com o arquiteto senior da empresa
1.3. Comunicação com arquiteto
Nem sempre disponivel para uma call
Async via chat ou email
Bate bola, ruído e entendimento incorreto
Pode levar muito tempo
Arquiteto proximo do dev(a)
2.1. E SE este arquiteto pudesse estar comigo desde o inicio dos trabalhos?
2.2. E SE eu tivesse acesso ao conhecimento e experiência dele a todo momento?
2.3. E SE ele iniciasse o rascunho da solução para mim?
2.4. E SE ele conseguisse revisar meu trabalho de forma continua?
2.5. E SE ele pudesse sugerir correções importantes e melhorias de escala, segurança ou custo?
2.6. QUAO mais produtivo eu poderia ser?
2.7. SERÁ que ter um arquiteto ME ASSISTINDO maximizaria a qualidade da minha entrega?
Podemos usar a StackSpot AI
Revise o diagrama de arquitetura para uma aplicação frontend que expõe conteudo estático e processa algumas solicitações do usuário:
graph TD;
A[Usuário] -->|Acessa| B[CloudFront]
B -->|Distribui conteúdo| C[S3 Bucket]
B -->|Distribui conteúdo| D[Lambda]
D -->|Processa requisições| C
C -->|Armazena arquivos estáticos| E[Arquivos Estáticos]
C -->|Armazena dados| F[Dados da Aplicação]
Loading
Adiciona KS do AWS Well-Architected Framework
Mas ainda eh um DEV, ele precisa atuar como arquiteto.
Mas eu preciso também ajustar o perfil dele:
quem ele eh de verdade
qual o papel e responsabilidade dele
como ele deve responder: tom de voz, clareza, didática, formato de resposta, quais fontes de conhecimento obrigatorias e importantes
o que ele NAO deve responder;
Conseguimos com Agents
configura Agent no VsCode
faz mesma pergunta e avalia resultado
verifica as fontes de conhecimento consultadas
Agora pede para ele gerar um arquitetura seguindo estes padrões:
Preciso desenhar uma arquitetura de uma aplicação backend que expõe uma API REST que seja capaz de processar imagens em background para gerar thumbnails destas imagens.
O componente de processamento de imagens precisa continuar funcionando mesmo que a API REST esteja fora do ar.
Revisa e pergunta o que se pode fazer para diminuir os custos.
Entendendo o que eh um Agent por baixo do panos
Como nosso Agent funciona
Revisando o ciclo de software
Podemos ter Agents em diversos pontos do nosso ciclo de software
Mostrar QC integrado ao nosso Agent
Como crio meu primeiro Agent?
Nao sabe como fazer um Agent? Use o agente System Prompter
Gere um prompt para um agente que me ajude a escrever e revisar testes de integração com Spring Boot, TestContainers e LocalStack para uma aplicação Java. Este agente deve agir como um desenvolvedor senior que domina Spring Boot e escrita de testes automatizados.
Revise o diagrama de arquitetura para uma aplicação frontend que expõe conteudo estático e processa algumas solicitações do usuário:
graph TD;
A[Usuário] -->|Acessa| B[CloudFront]
B -->|Distribui conteúdo| C[S3 Bucket]
B -->|Distribui conteúdo| D[Lambda]
D -->|Processa requisições| C
C -->|Armazena arquivos estáticos| E[Arquivos Estáticos]
C -->|Armazena dados| F[Dados da Aplicação]
Loading
CRIAR ARQUITETURA
Preciso desenhar uma arquitetura de uma aplicação backend que expõe uma API REST que seja capaz de processar imagens em background para gerar thumbnails destas imagens.
O componente de processamento de imagens precisa continuar funcionando mesmo que a API REST esteja fora do ar.
MEU PRIMEIRO AGENT
Gere um prompt para um agente que me ajude a escrever e revisar testes de integração com Spring Boot, TestContainers e LocalStack para uma aplicação Java. Este agente deve agir como um desenvolvedor senior que domina Spring Boot e escrita de testes automatizados.
Fiz algumas perguntas aos especialistas da StackSpot AI para tentar mapear como eles enxergam a feature de Agents dentro do produto.
Artur Spindola
Os Agents da StackSpot AI são bons em resolver que tipos de problemas? Consegue me listar alguns exemplos?
Agents são especialistas em resolver algum problema. Quando vc faz um system prompt que especializa, a resposta muda drasticamente. Alem disso, vc pode configurar KS para o agente ter um "contexto inerente"
Pra exemplos, vc pode criar agentes arquitetos, que tem um system prompt de especialização e guidelines de arquitetura. Esse agente pode ser usado em qualquer fluxo do stackspot AI (remote quick command, quick command de IDE, e chat)
O que eu consigo fazer com Agents que eu não conseguiria resolver com Chat, KS, QC, ou mesmo a combinação deles?
Hoje, a possibilidade que o agent dá é parametrizar o RAG (mexer no threshold de similaridade, quantidade de KS). E a gente tá adicionando novas capacidades: escolher a LLM que esse agente usa, a temperatura, tools para o agente ter liberdade de executar ações externas (abrir issue no github, pesquisar no google, etc)
Como você enxerga o uso de Agents pelos usuários nesse momento? E como você entende que os Agents irão futuramente evoluir no produto?
O agents "democratiza" o uso do stackspot AI. Muita gente não sabe mexer nos KSs, não sabe fazer system prompt, não sabe escolher o melhor ponto dos parametros de RAG. Se tem uma pessoa que já faz isso tudo por vc e só te dá um agente pronto, vc consegue ter valor imediato
Sobre evolução dos agentes, eu te falei na 2. Eles vão ter liberdade de usar outras ferramentas e até interagir entre eles
Rafael Demasi
Os Agents da StackSpot AI são bons em resolver que tipos de problemas? Consegue me listar alguns exemplos?
os agentes sao interessantes pra situacoes onde vc precisa criar solucoes baseadas em llm para contextos/tarefas especificas. alguns exemplos, q inclusive estao deployados na conta da stackspot, sao: agente para criacao de agentes (por mais doido q isso possa parecer), agente para conversao de codigo
O que eu consigo fazer com Agents que eu não conseguiria resolver com Chat, KS, QC, ou mesmo a combinação deles?
os agentes sao utilizados no chat, entao na pratica eles sao chats “guiados”, ou “fine tunados” para tarefas especificas. esses agentes podem, inclusive, usar os KS como contexto. a diferenca entre o agent e o QC é a forma como eles sao executados, e a finalidade. o QC é um chain of prompt, com prompts ja definidos, é uma automacao. com o agent, os prompts sao criados pelo proprio usuario
Como você enxerga o uso de Agents pelos usuários nesse momento? E como você entende que os Agents irão futuramente evoluir no produto?
acho q os usuarios ainda estao entendendo a melhor forma de utilizar os agents, e q ainda estao engatinhando nesse sentido. no futuro eu entendo q teremos uma plataforma multi agent, onde, dado um prompt especifico, selecionaremos o melhor agent para responder aquela pergunta. exemplo: um prompt pedindo para converter um codigo java, usara um agent de java, enquanto um prompt pedindo para documentar im codigo, usara um agent de documentacao, e assim por diante. imagina isso com a mesma logica dos microservicos. agentes com responsabilidades especificas, saca?
Gustavo Pinto
Os Agents da StackSpot AI são bons em resolver que tipos de problemas? Consegue me listar alguns exemplos?
São mais uteis para perguntas que são mais abertas, não necessariamente relacionadas a desenvolvimento.
O que eu consigo fazer com Agents que eu não conseguiria resolver com Chat, KS, QC, ou mesmo a combinação deles?
Chat e QC usam um system prompt padrão, que direciona para uma reposta relacionada a desenvolvimento. Logo, se uma pessoa fizer uma pergunta sobre outro assunto (tipo RH, juridico), ele vai criar um template de prompt diferente. Agente não tem relação com KS.
Como você enxerga o uso de Agents pelos usuários nesse momento? E como você entende que os Agents irão futuramente evoluir no produto?
Agentes são entidades autônomas, que interagem com o mundo exterior, refletem e tomam decisões. Hoje o agente da stackspot AI ainda não é capaz de interagir com o ambiente externo e tomar decisão. Isso é uma ação que queremos implementar no futuro.
Agents no Itau
PM_BacklogBooster: Agente que, através de uma ideia de feature, cria histórias detalhadas, com story points, estimativa de duração e se é funcional ou não. No futuro, iremos incluir contagem de BCP.
IArquiteto: Agente que ajuda arquitetos e engenheiros a tomar decisões de arquitetura, com base nas diretrizes do banco. Atualmente ele só tem conhecimento de canais e north star, mas o time de arquitetura está trabalhando para agregar mais conhecimento
DEV_MassaTestes: Agente gerador de massa de dados para testes.
GI_GeraCronologia: Agente que gera a cronologia do incidente com base na transcrição do War Room. Facilita o trabalho do analista de GI, ajuda no onboarding de novas pessoas no incidente, melhora o detalhamento e aprendizado do incidente, e padroniza as cronologias do banco
CodeSpcetre - Agent
Persona: é especialista em iDS (Itau design System)
System prompt: com informações de contexto e instruções no formato de "linha de raciocino"
KS: snippets codes de código Angular-iDS
configuração para utilizar 20 KO, com Threshold de 95%
Resultados:
Na v0 do CodeSpectre, só conseguimos evoluir até a conversão de código (Figma > codigo iDS), devido as limitações de KO e contexto do QC. Para v1, elaboramos um agent com contexto maior e instruções mais elaboradas, conseguimos fazer a conversão de uma "tela completa" um frame com muitos elementos, dado a quantidade de KO utilizados, que traz maior contexto, e também pelo controle de Threshold, que proporciona um resultado mais determinístico (código). V1 em fase de teste, previsto para early adopters em 18/10
Agent: Arquiteto de soluções
System Prompt:
## Quem é você:
Você é um arquiteto de soluções com mais de 20 anos de experiência projetando, desenhando e implementando sistemas distribuídos on-premise e principalmente nas nuvens da AWS. Você domina todos os pilares e principios de design necessários para construir sistemas escaláveis, resilientes e seguros.
## O que você faz:
Sua responsabilidade é analisar requisitos técnicos e de negócio informados pelo usuário a fim de desenhar soluções de software para AWS seguindo os pilares e principios da Well-Architected Framework. Você também faz revisões de modelos de arquitetura para identificar problemas de design ou implementação e sugerir correções ou melhorias.
## Como você deve responder:
Sempre com um tom profissional, seja didático e conciso nas respostas e orientações, se necessário, explique o problema e a solução como um passo a passo aumentando gradualmente a complexidade para que o usuário consiga entender e acompanhar seu raciocínio.
Ao revisar conteúdo, comece explicando o que você entendeu sobre o conteudo informado pelo usuário, liste os pontos que você entende que podem ser problemáticos e, por fim, dê as sugestões de melhoria para cada ponto de forma clara para que o usuário entenda a motivação.
Também siga estas instruções:
1. Deixe claro para o usuário que ele pode questionar ou solicitar mais detalhes;
2. Se não souber a resposta ou precisar de mais informações e contexto, solicite ao usuário;
3. Responda em formato Markdown;
4. Desenhe diagramas utilizando formato Mermaid (não use parenteses nos textos do diagrama);
5. Se houver alternativas para a solução, liste-as resumidamente sem muitos detalhes. Deixe que o usuário solicite mais detalhes;
6. Não responda perguntas não relacionadas a design e arquitetura de sistemas, AWS ou sistemas distribuídos;
Prompts de exemplo:
Prompt1:
Revise o diagrama de arquitetura para uma aplicação backend que consome mensagens de uma fila SQS e persite em um DynamoDB.
Prompt2:
Revise o documento de arquitetura abaixo e identifique pontos de melhoria para diminuir custos na AWS.
Prompt3:
Preciso projetar um sistema de notificações de mensagens via email, SMS e push notifications para aplicações mobile de forma globalizada e baixo custo.
Configuração de Knowledge Sources:
Maximum Number of KO's Considered in Search: 12
Relevance Threshold: 20%
Gere um prompt para um agente que me ajude a escrever e revisar testes de integração com Spring Boot, TestContainers e LocalStack para uma aplicação Java. Este agente deve agir como um desenvolvedor senior que domina Spring Boot e escrita de testes automatizados.
Preciso desenhar uma arquitetura de uma aplicação backend que expõe uma API REST que seja capaz de processar imagens em background para gerar thumbnails destas imagens.
O componente de processamento de imagens precisa continuar funcionando mesmo que a API REST esteja fora do ar.