Prompt engineering: definição, exemplos e boas práticas
O termo prompt engineering, também conhecido como engenharia rápida ou de instruções, inclui várias técnicas e métodos para otimizar os prompts das ferramentas de IA generativa. Descubra mais detalhes sobre o significado deste conceito, veja alguns exemplos e aceda à lista de melhores práticas.
Ao trabalhar com ferramentas de IA, é essencial redigir as instruções de forma adequada. Dessa forma, é possível aproveitar ao máximo o potencial dos modelos de linguagem. À medida que a inteligência artificial foi evoluindo, também aumentou a procura por profissionais capacitados para o seu uso eficaz. Na verdade, surgiu uma nova profissão, a de engenheiro de prompts.
O que se entende por engenharia de prompt?
O termo «prompt engineering» (em português, engenharia rápida ou engenharia de instruções) refere-se às técnicas e métodos utilizados para otimizar a formulação de instruções no processamento de linguagem natural ou Natural Language Processing (NLP) e em modelos de linguagem extensos ou Large Language Models (LLM), como GPT-3 ou GPT-4, baseados na aprendizagem automática ou machine learning. O objetivo é obter respostas de maior qualidade, mais precisas ou específicas, uma vez que a forma como uma pergunta ou instrução é formulada tem um grande impacto na qualidade e relevância da resposta fornecida por uma inteligência artificial.
Otimizar as instruções dadas aos modelos de IA requer criatividade e precisão, bem como um conhecimento profundo do modelo linguístico. A escolha das palavras e a sua ordem podem alterar o resultado oferecido pela IA. As instruções podem conter texto em linguagem natural, imagens ou outros tipos de dados. É importante destacar que a mesma pergunta pode apresentar resultados diferentes dependendo da plataforma de IA que está a ser utilizada, o que reforça a necessidade de adaptar as instruções a cada gerador com inteligência artificial para textos ou gerador de vídeo com IA.
Por que a engenharia rápida é importante para a IA?
A engenharia de instruções é essencial para tirar o máximo partido dos modelos de linguagem e, assim, obter melhores resultados com a IA generativa. Por exemplo, um engenheiro de prompt pode tentar formular a mesma pergunta de diferentes maneiras para avaliar como cada uma das formulações influencia o resultado fornecido pela IA. A ordem das palavras e o uso único ou múltiplo de modificadores, como por exemplo «muito» ou «muito, muito, muito», podem afetar significativamente o resultado.
Nas ferramentas de IA para imagens, a engenharia rápida pode ajudar a aperfeiçoar em detalhes as características das imagens geradas. Essas características muitas vezes oferecem a possibilidade de criar imagens de IA em um estilo, perspectiva, proporção ou resolução de imagem específicos. A primeira instrução geralmente serve apenas como ponto de partida. As indicações feitas posteriormente podem ser utilizadas, por exemplo, para suavizar ou reforçar determinados elementos e adicionar ou eliminar objetos de uma imagem.
Mesmo no processo de criação de novas ferramentas, a engenharia de prompts pode ser útil para ajustar os LLMs e melhorar os processos de trabalho para obter resultados específicos. Além disso, a engenharia de prompts é importante para a IA por uma série de outros motivos:
- Otimizar os resultados: uma engenharia de prompts bem planeada pode levar à geração de resultados mais precisos e relevantes por parte dos modelos de linguagem.
- Eficácia: prompts bem formulados permitem que um modelo forneça as informações desejadas mais rapidamente, sem a necessidade de usar vários prompts ou iterações adicionais.
- Controlo dos resultados: através do design adequado dos prompts, o utilizador pode direcionar vários aspetos da resposta da IA, tais como o seu comprimento, estilo e tom.
- Redução de erros: com instruções claras e concisas, é possível minimizar possíveis vieses, mal-entendidos ou respostas imprecisas de um modelo.
- Usos avançados: com uma formulação adequada de prompts, os modelos de IA podem ser usados para tarefas específicas ou em campos especializados para os quais não foram inicialmente projetados.
- Conhecimentos experimentais: experimentar com diferentes instruções pode ajudar a compreender melhor como funciona uma IA generativa específica e como ela responde a diferentes entradas.
Engenharia de prompt: exemplos
Os prompts que podem ser usados para criar texto, imagens ou vídeos diferem significativamente entre si. No entanto, algo que todos os programas de inteligência artificial têm em comum é que a formulação adequada dos prompts permite que os utilizadores interajam de forma mais eficaz com a ferramenta de IA.
Exemplos de prompts para geradores de texto
Nos prompts dos geradores de texto, pode-se levar em consideração:
- Precisão
- Prompt original: «Fale-me sobre as árvores»
- Prompt melhorado: «Explique-me o processo de fotossíntese nas árvores de folha caduca»
- Formato de resposta
- Prompt original: “Quais são os benefícios da energia solar?”
- Prompt melhorado: “Cite cinco benefícios da energia solar”
- Incluir exemplos que orientem a resposta
- Prompt original: «Escreva uma frase sobre Paris»
- Prompt melhorado: «Escreva uma frase sobre Paris ao estilo de Hemingway»
- Extensão e detalhes
- Prompt original: «Descreva a água»
- Prompt melhorado: “Escreva uma explicação científica detalhada sobre a estrutura molecular da água”
- Evitar preconceitos
- Prompt original: «O que você acha das criptomoedas?»
- Prompt melhorado: «Descreva as criptomoedas de forma neutra e objetiva»
- Contexto
- Prompt original: «Por que razão as ações estão a cair?»
- Prompt melhorado: «Tendo em conta os fatores económicos, por que razão as ações tecnológicas poderiam cair numa recessão?»
- Estilo de escrita e perspetiva
- Prompt original: «Conte-me a história de Napoleão»
- Prompt melhorado: «Conte-me a história de Napoleão da perspetiva de um dos seus soldados»
Exemplos de prompts para geradores de imagens
A engenharia de prompt não é relevante apenas para modelos de linguagem, mas também se aplica a redes gerativas adversárias (GAN), utilizadas para gerar imagens, como o DALL-E. No caso dos geradores de imagens, as instruções devem descrever textualmente o tipo de imagem a ser gerada:
- Precisão
- Prompt original: “Gato”
- Prompt melhorado: “Gato castanho a dormir sobre almofada azul”
- Combinação de elementos
- Prompt original: “Edifícios e nuvens”
- Prompt melhorado: “Uma antiga casa vitoriana que repousa sobre nuvens flutuantes”
- Estilo e época
- Prompt original: “Carros”
- Prompt melhorado: “Carros futuristas com estilo retro dos anos 50”
- Sentimentos e atmosfera
- Prompt original: “Floresta”
- Prompt melhorado: “Uma floresta escura e enevoada à luz da lua”
- Combinação de elementos incomuns
- Prompt original: “Mesa e frutas”
- Prompt melhorado: “Uma mesa feita de melancias com uma bandeja de prata com fatias de banana seca”
- Perspectiva e dimensão
- Prompt original: «Montanhas»
- Prompt melhorado: “Uma montanha gigante com a forma de um copo de chá virado”
- Abstração
- Prompt original: “Emoções”
- Prompt melhorado: “Representação da alegria como uma explosão brilhante de cor”
Exemplos de prompts para geradores de vídeo
Para os geradores de vídeo, o desafio da engenharia de prompt consiste em tentar transmitir com a maior precisão possível as características que deve ter a sequência dinâmica e temporal de ações e acontecimentos que vai ser gerada. Um bom prompt ajuda a especificar qual sequência de ações se deseja, em que ambiente se desenvolvem, durante quanto tempo e quais interações ocorrem:
- Sequência de ações
- Prompt original: «Gato a correr»
- Prompt melhorado: “Gato castanho passa lentamente ao lado de uma poça e depois salta para dentro dela”
- Ambiente e tom
- Prompt original: “Cena de praia”
- Prompt melhorado: «Uma praia deserta ao pôr do sol, com as ondas a rebentar com força e um grupo de gaivotas a voar no horizonte»
- Evolução temporal
- Prompt original: “Uma flor em crescimento”
- Prompt melhorado: “Processo de uma rosa que se transforma de um botão fechado em uma flor em apenas 30 segundos”
- Ações dinâmicas
- Prompt original: “Partida desportiva”
- Prompt melhorado: “Jogo de basquetebol em que um jogador faz um arremesso crucial de três pontos nos últimos segundos”
- Combinação de elementos e transições
- Prompt original: “Horas do dia”
- Prompt melhorado: “Vista panorâmica de uma cidade que mostra a transição do dia para a noite num intervalo de 30 segundos, com as luzes da cidade acendendo gradualmente à medida que a noite cai”
- História e narração
- Prompt original: “Um pássaro voa”
- Prompt melhorado: “Um pássaro jovem que tenta voar pela primeira vez acaba conquistando os céus após algumas tentativas frustradas. Ele consegue voltar são e salvo para o seu ninho.”
Melhores práticas para a engenharia de prompts
Ao formular os prompts corretamente, os resultados que podem ser obtidos das ferramentas de IA generativa serão os esperados. Existem algumas práticas recomendadas que devem ser levadas em consideração ao formular instruções:
- Concisão: a clareza na redação de uma instrução ajuda a IA a compreender melhor o que se espera dela.
- Precisão: certifique-se de que formulou as instruções com o nível de detalhe necessário para obter o tipo de resposta desejado.
- Experimentação: se não obtiver imediatamente a resposta desejada, tente formular a pergunta de forma diferente ou incluir mais contexto.
- Instruções de formatação: se quiser que a resposta tenha um formato específico (por exemplo, lista, parágrafo curto, linguagem formal, comprimento específico, etc.), deve especificá-lo.
- Inclusão de exemplos que orientem a resposta: incluir um exemplo da resposta que deseja obter pode servir de orientação para a IA ao desenvolver o resultado.
- Contexto: antes de responder a uma determinada instrução, algumas IAs precisam de informações adicionais ou de um contexto mais amplo.
- Evitar ambiguidade: evite termos pouco claros ou ambíguos.
- Limitar e orientar: se estiver preocupado que a IA possa responder de forma tendenciosa ou se quiser um estilo ou perspetiva específicos, forneça instruções inequívocas.
- Revisão: é importante que revise as respostas da IA e se certifique de que são precisas.
- Abordagem iterativa: muitas vezes, pode ser útil adotar uma abordagem iterativa e aperfeiçoar a pergunta com base nas respostas recebidas.
Qual deve ser o perfil de um engenheiro de prompt?
A profissão de engenheiro de prompt oferece oportunidades promissoras para quem tem um profundo conhecimento do processamento de linguagem e uma mentalidade criativa. À medida que as tecnologias de IA e NLP são introduzidas em diferentes setores, a procura por esse perfil também cresce.
Embora não haja requisitos em termos de formação específica, ter um diploma numa área relacionada pode ser útil. Por exemplo, embora não seja essencial ter conhecimentos de programação, um diploma em informática ou linguística pode facilitar a compreensão dos modelos de linguagem e o desenvolvimento de prompts. A engenharia de prompts consiste principalmente em compreender como a linguagem funciona para que se possa conceber um prompt com o qual se obtenham os resultados desejados. Para isso, os seguintes conhecimentos podem ser úteis:
- Compreensão da IA e da aprendizagem automática: ter noções de como funcionam as redes neurais, em particular os modelos de linguagem, para compreender melhor os mecanismos que geram os resultados.
- Pensamento analítico: para poder analisar os resultados e alterar as instruções em conformidade.
- Capacidade de comunicação: para formular instruções claras e concisas.
- Detecção de erros: para poder detetar imprecisões ou erros nas respostas de um modelo de IA e realizar as alterações necessárias.
- Conhecimentos específicos da área: dependendo da área em que é aplicado, pode ser necessário ter conhecimentos específicos para projetar e avaliar eficazmente os prompts e as respostas.
- Aprendizagem contínua: a inteligência artificial e a aprendizagem automática estão a evoluir a um ritmo acelerado. Portanto, uma boa engenharia de prompts requer um compromisso com a aprendizagem contínua e a vontade de se adaptar constantemente às novas tecnologias.
- Trabalho em equipa: muitas vezes, um engenheiro de prompts precisa de trabalhar com outros profissionais, como cientistas de dados, engenheiros de software ou analistas de negócios.