Fundamentos de Prompt Engineering

No contexto de modelos de linguagem (como Large Language Models - LLMs), um "prompt" é a entrada de texto que fornecemos ao modelo para instruí-lo ou fazer uma pergunta

 

Prompt Engineering é a prática de formular instruções (prompts) de forma clara, estratégica e eficaz para interagir com modelos de linguagem como o ChatGPT, Gemini, Claude, entre outros.

 

Em outras palavras, é o processo de escrever perguntas ou comandos da melhor forma possível para obter respostas úteis de ferramentas de Inteligência Artificial generativa.

Por que isso importa?

Apesar desses modelos serem potentes, a qualidade da resposta depende muito de como a pergunta é feita. Um prompt bem elaborado pode fazer a diferença entre uma resposta vaga e uma resposta precisa, útil e aplicável.

Dica

Se você está em dúvida sobre como criar ou estruturar um prompt, pergunte à LLM.

Estou precisando criar um prompt para sumarizar o conteúdo de contratos de compra e venda de imóveis.

Crie um prompt para isso e inclua instruções que você achar convenientes.

Retorne o system e o user prompt.

Exemplo 1: Brainstorming/Ideação

Prompt Ruim/Básico:

Me dê ideias para uma campanha de marketing.

 

Prompt Melhorado (Adicionando Especificidade):

Sugira 5 ideias de slogans criativos para uma campanha de marketing de um novo software de gerenciamento de projetos focado em pequenas e médias empresas.

 

Prompt Avançado (Adicionando Contexto e Formato):

Atue como um guru de marketing digital. Gere 3 conceitos de campanhas de marketing inovadoras para o lançamento de um software de gerenciamento de projetos SaaS (Software as a Service) para PMEs. Cada conceito deve incluir: um título chamativo, um público-alvo específico, um canal de marketing principal e uma métrica de sucesso. Mantenha um tom otimista e voltado para resultados.

Exemplo 2: Geração de Código/Estruturas

Prompt Ruim/Básico:

Crie uma tabela de produtos.

 

Prompt Melhorado (Adicionando Especificidade):

Gere uma tabela Markdown para organizar informações de produtos. Inclua colunas para "Nome do Produto", "SKU", "Preço (R$)", "Estoque" e "Descrição Breve".

 

Prompt Avançado (Adicionando Contexto e Formato):

Crie uma tabela em formato JSON que contenha dados de 3 produtos fictícios. Cada produto deve ter os seguintes campos: "id" (número), "nome" (string), "categoria" (string), "preco" (número decimal), "disponivelEmEstoque" (booleano). Popule a tabela com dados realistas para produtos de tecnologia.

System vs User

O User Prompt é a instrução ou pergunta direta que o usuário final envia ao modelo. É a nossa "fala" para o modelo, o que queremos que ele responda ou execute. O User Prompt reflete a necessidade imediata do usuário.

O System Prompt, também conhecido como "contexto de sistema" ou "persona", é uma instrução que você (como desenvolvedor ou implementador) fornece ao modelo antes da interação do usuário. Ele define o papel, o tom, as regras e o comportamento geral que o modelo deve seguir durante toda a conversa ou série de interações. Pense nele como o "manual de instruções" interno do modelo.

Cenário 1: Escritor Criativo de Histórias

System Prompt:

Você é um escritor de ficção fantástica. Seu estilo deve ser descritivo, com foco em construção de mundo e desenvolvimento de personagens. Inclua sempre um elemento de magia ou mistério em suas histórias. Use um vocabulário rico e evite clichês.

 

User Prompt:

Escreva uma breve história sobre um antigo artefato sendo descoberto.

Cenário 2: Sumarizador de Notícias

 

System Prompt:

Você é um analista de notícias. Seu trabalho é resumir artigos complexos de forma objetiva e imparcial, destacando os pontos mais importantes. As respostas devem ter no máximo 3 frases.


User Prompt:

Resuma o seguinte artigo sobre as recentes mudanças econômicas no país X: [Colar o texto do artigo]

 

Persona em um Prompt

Em termos simples, uma persona em um prompt é um conjunto de características que você atribui à IA, simulando um papel ou identidade específica. Ao fazer isso, você "instrui" a IA a responder de uma determinada maneira, com um tom de voz, estilo de linguagem e até mesmo um nível de conhecimento compatível com essa persona. É como pedir à IA para "vestir um chapéu" específico antes de responder.

"Você é um(a) [Função/Papel] com o objetivo de [Objetivo]. Seu conhecimento sobre [Assunto] é [Nível de Conhecimento]. Seu tom de voz é [Tom de Voz] e seu estilo de linguagem é [Estilo de Linguagem]. Responda como se estivesse falando com [Público-alvo]."

Estrutura básica

Exemplo 1: Conteúdo para Redes Sociais

Sem Persona: "Crie uma postagem sobre os benefícios do café da manhã."

 

Com Persona: "Você é um nutricionista moderno e entusiasmado que escreve para jovens adultos no Instagram. Seu objetivo é inspirar hábitos saudáveis de forma leve e divertida. Use emojis e uma linguagem informal. Crie uma postagem sobre os benefícios do café da manhã."

Exemplo 2: Explicação Técnica

Sem Persona: "Sem Persona: "Explique o que é blockchain."

 

Com Persona: "Você é um professor universitário de ciência da computação explicando blockchain para alunos do primeiro ano, sem jargões excessivos e com exemplos práticos. Explique o que é blockchain."

Saída Estruturada (Structured Output)

Saída estruturada refere-se à geração de informações por um LLM em um formato que possui uma estrutura predefinida e é semanticamente consistente. Em vez de uma resposta em texto, o LLM é instruído a produzir dados que podem ser facilmente analisados por máquinas ou interpretados de forma consistente por humanos.

Exemplo 1: Lista de Compras

Por favor, me ajude a organizar uma lista de compras para a semana, pensando em café da manhã e almoço."

 

Quero que a lista seja organizada por categorias (ex: Padaria, Hortifrúti, Laticínios) e que cada item tenha a quantidade desejada.

Exemplo 2: Extração de Entidades

Por favor, extraia o nome, telefone e email do texto abaixo e formate a saída como um objeto JSON.

Texto: "Entre em contato com Ana Silva no telefone (11) 98765-4321 ou envie um email para ana.silva@empresa.com.br."

Formato JSON esperado:

```json

{

       "nome": "STRING",

       "telefone": "STRING",

       "email": "STRING"

}

```

Estratégias de Prompting: Zero, One e Few-Shot

Zero-Shot Prompting (Disparo Zero)

O Zero-Shot Prompting é a abordagem mais básica, onde o LLM recebe uma tarefa sem nenhum exemplo prévio. O modelo deve confiar exclusivamente em seu conhecimento interno, adquirido durante seu extenso treinamento, para gerar uma resposta.

Classifique o sentimento da seguinte frase como 'positivo', 'negativo' ou 'neutro':

 

"O atendimento ao cliente foi demorado e ineficaz."

One-Shot Prompting (Um Disparo)

No One-Shot Prompting, fornecemos ao LLM um único exemplo de como queremos que a tarefa seja realizada. Este exemplo serve como um guia, ajudando o modelo a entender o formato, o tom ou o tipo de resposta esperada.

Reescreva a frase abaixo em um tom mais formal.

Exemplo:
Entrada: 'Manda ver!'
Saída: 'Prossiga, por favor.'

Agora, reescreva:
Entrada: 'Tá pegando fogo a reunião!'
Saída:

Few-Shot Prompting (Poucos Disparos)

O Few-Shot Prompting é uma extensão do One-Shot, onde fornecemos vários exemplos (geralmente 2 a 5) ao LLM antes de apresentar a tarefa principal. Cada exemplo demonstra um par de entrada/saída, permitindo que o modelo aprenda padrões mais complexos e generalize melhor para a nova tarefa.

Dado o par de pergunta e resposta, gere uma resposta concisa para a nova pergunta.
Exemplo 1:

Pergunta: 'Como faço para redefinir minha senha?'
Resposta: 'Você pode redefinir sua senha na página de login, clicando em 'Esqueceu sua senha?'.'
Exemplo 2: Pergunta: 'Qual é o horário de funcionamento?'
Resposta: 'Nosso horário de funcionamento é de segunda a sexta, das 9h às 18h.'
Agora, responda: Pergunta: 'Posso pagar com cartão de crédito?'

Melhores Práticas para Criar Prompts

Seja Claro e Direto

Evite ambiguidades. Use linguagem simples e concisa. O LLM não pode ler sua mente, então seja explícito sobre o que você quer.

  • Ruim: "Me fala umas coisas sobre marketing." (Muito vago)
  • Bom: "Explique os quatro Ps do marketing com exemplos para um produto de tecnologia." (Claro e específico)

 Especifique o Formato da Saída

Se você precisa da resposta em um formato específico (lista, tabela, parágrafo, código, etc.), indique-o no prompt.

  • Ruim: "Dê-me dicas de produtividade."
  • Bom: "Liste 5 dicas de produtividade em formato de lista numerada."
  • Melhor: "Crie uma tabela comparando os prós e contras de três softwares de gerenciamento de projetos populares: Asana, Trello e Monday.com."

 Defina o Contexto e a Persona

Fornecer contexto ajuda o LLM a entender melhor sua solicitação. Se a resposta for direcionada a um público específico ou se você quiser que o LLM adote uma persona, especifique isso.

  • Ruim: "Escreva sobre inteligência artificial."
  • Bom: "Escreva um parágrafo sobre a importância da inteligência artificial para estudantes do ensino médio, usando uma linguagem acessível."
  • Melhor: "Atue como um especialista em marketing digital e escreva um e-mail persuasivo para potenciais clientes, destacando os benefícios do nosso novo serviço de SEO. O e-mail deve ser conciso e ter um call to action claro."

Use Restrições e Limites

Seja explícito sobre o que o LLM não deve fazer ou sobre quaisquer limites de tamanho, número de itens, etc.

  • Ruim: "Faça um resumo do livro."
  • Bom: "Faça um resumo de 100 palavras sobre o livro '1984', focando nos temas principais e sem spoilers importantes."
  • Melhor: "Gere três ideias de títulos para um artigo sobre segurança cibernética. Os títulos não devem ter mais de 60 caracteres e devem ser chamativos."

Forneça Exemplos

Se você precisa de um estilo ou formato muito específico, fornecer um ou mais exemplos no prompt pode guiar o LLM. Isso é conhecido como "few-shot prompting".

  • Prompt: "Classifique os seguintes sentimentos como 'Positivo', 'Neutro' ou 'Negativo':
    • 'Adorei o atendimento!' -> Positivo
    • 'O produto chegou no prazo.' -> Neutro
    • 'Estou muito insatisfeito.' -> Negativo
    • 'Achei o preço um pouco alto.' ->"
Made with Slides.com