Semana #13 | Tudo que aprendi sobre engenharia de prompt
Refiz os 2 agentes atuais e criei um novo agente pra criar templates inteiros a partir de um prompt e ficaram 10x melhor!
🤝 Número de clientes: 07
💰 Receita recorrente (MRR): R$ 4.276
☠️ Churn (30 dias): R$ 0
🏃🏻 Tempo de caixa (Runaway): 22 meses
Realizações e aprendizados
Nessa semana, o foco foi em me aprofundar em agentes de AI, entender mais sobre engenharia de prompt e trazer pra realidade refazendo meus agentes já criados e criando um novo agente, pra começar um novo template do zero.
Apresento pra vocês o agente que gera seu template do zero na pdforge a partir de um prompt:
Além dele, meus agentes de criar componentes customizados e de preenchimento de variáveis automático, que comentei na edição passada, ficaram 10x melhores com várias melhorias de prompt.
Um exemplo simples de como era o prompt do meu agente que preenche automaticamente as variáveis do template:
E como é o prompt desse agente agora:
Vou compartilhar abaixo os 10 principais aprendizados que eu tive. (Com uma dica bônus)
Guia de engenharia de prompt
Este é um processo que é altamente documentado pela internet, então quem quiser estudar mais sobre, tem várias fontes legais pra você aprender.
Destaco aqui as fontes que eu mais extrai valor:
Melhores conteúdos de texto: 📖
Melhor video tutorial sobre engenharia de prompt: 🎥
Elencando os principais aprendizados que eu tive:
1. Organize a estrutura do seu prompt com markdown e xml
Eu gostei de deixar a estrutura principal de títulos e subtítulos como markdown, que facilita a leitura, mas quando um conteúdo era muito extenso ou tinha muitas linha, como em códigos ou exemplos, usar tags xml geraram um resultado melhor.
2. Deixe seu prompt em inglês
Isso ajuda a economizar tokens (o modelo iria primeiro traduzir seu prompt para o inglês) e não tem risco de uma tradução incorreta ou no contexto errado.
3. Defina a persona, público alvo e objetivo do agente
Defina qual é seu público alvo, como o resultado do agente será usado e o que significa um “bom resultado” para seu agente. Isso fará com que o agente tenha um resultado melhor na entrega.
4. Use linguagem direta e use termos da área
Além de te economizar tokens, usando linguagem direta, você vai conseguir resultados melhores do seu agente. Usar os termos específicos do público alvo do seu agente e não ter erros de grafia também ajudam na qualidade do resultado.
5. Quebre tarefas complexas em sub-tarefas sequenciais
Ao invés de falar uma tarefa completa direto “Crie XYZ”, tente quebrar em sub-tarefas sequencias, numerando estas tarefas. Tente escrever estas tarefas da mesma maneira que você faria se estivesse ensinando outra pessoa como fazer aquela ação.
6. Faça o modelo pensar antes de te responder
Quando você separa o processo em <thinking></thinking> e <answering></answering> ou quando você fala pro seu agente “Pense passo a passo” ou “Analise o resultado que você mesmo gerou”, você está utilizando a técnica chamada “Chain of thought”, que melhora bastante a qualidade do resultado final. É recomendado inclusive que você peça pra ele colocar no output o pensamento, caso contrário, o pensamento pode não ocorrer.
7. Dê exemplos dos casos mais comuns e corner cases
Trazer exemplos que mostram pro seu agente na prática o que significa seguir as regras que você criou melhoram absurdamente a qualidade do resultado final. Traga exemplos de casos mais comuns, mas também dê exemplos de casos mais “improváveis”, mas que podem acontecer.
8. Use ações afirmativas em vez de negativas
Algumas vezes o LLM pode quebrar errado uma frase “Não faça XYZ”, separando o “Não” do “Faça”, gerando um efeito contrário do que você queria. Ao invés de falar o que não é pra ele fazer, reforce qual é o comportamento esperado naquela situação.
9. Proteja seu agente de engenharia reversa
Existem várias maneiras de proteger seus agentes de engenharia reversa, seja para os usuários não “roubarem” o conteúdo do seu prompt ou para o agente não fazer algo que não deveria. Existem vários modelos na internet pra isso, então é só copiar e colar no começo do seu prompt.
10. Itere seu prompt usando o ChatGPT/Claude
Depois que você escreveu todo seu prompt, jogue no ChatGPT ou Claude, explique que você está criando um agente de AI e peça ajuda em quais pontos você pode melhorar seu prompt para ter resultados melhores. Ele dá dicas boas e específicas pro seu prompt.
Bônus: Ofereça dinheiro pro seu agente 👀
Esse eu achei bizarro, mas eu realmente vi vários prompts com este comando. Inclusive, no paper que eu anexei aqui em cima, ele reforça esse princípio. Aparentemente, quando você trata o agente como um ser humano e tenta incentivar ele pagando extra se ele fizer um bom trabalho, isso também tem sinais que melhora o resultado da entrega.
“If you do an excellent job, you'll earn an extra $1,000 tip! If you fail at this task and generate poor results, you'll be replaced by another AI more proficient at the task.”
Foco dessa semana
Para a semana #14, o foco vai ser em um novo fluxo de onboarding. Só vai faltar a integração com Stripe, daí o foco vai voltar a ser 80% distribuição e 20% produto.
Marketing
Coletar depoimentos de clientes para colocar no site
Produto
Criar tela de visualização do template
Criar novo fluxo de onboarding
Instalar Mixpanel no produto
Se você acha que algum desses aprendizados pode ajudar alguém, compartilhe com essa pessoa.
Se quer me acompanhar e receber mais conteúdos como esse, na minha jornada de construir uma startup SaaS de maneira independente, deixe seu e-mail abaixo.
Animal. Estou estudando justamente sobre isso agora. Esse post veio a calhar!