Ao utilizar assistentes de inteligência artificial, como o Assistente de Inteligência Artificial do Cronapp (Diana), a eficácia na comunicação com modelos de linguagem é fundamental para obter resultados satisfatórios. Assim, a criação de prompts eficazes desempenha um papel crucial, pois orienta o modelo a entender exatamente o que se espera dele. Nesta documentação, exploraremos algumas estratégias para desenvolver prompts que aumentam a precisão das respostas ao utilizar os assistentes. Ao aplicar essas técnicas, você poderá aproveitar ao máximo as capacidades do Assistente Diana do Cronapp.

Definições de prompts

Prompts são entradas específicas fornecidas pelo usuário para orientar um assistente de IA a gerar uma resposta ou saída adequada a uma tarefa ou instrução determinada. 

Exemplo de prompt
Qual o resultado da soma entre 10 e 5?


Quando consultado por esse prompt, o Assistente Diana do Cronapp fornece uma saída:

Saída
O resultado da soma entre 10 e 5 é 15.


Um prompt pode incluir diversos componentes, como a tarefa ou instrução que o assistente de IA deve realizar, o contexto da tarefa
, exemplos de demonstração e o texto de entrada que o assistente deve utilizar para gerar a resposta. Dependendo do caso de uso, da disponibilidade de dados e da tarefa, o prompt deve combinar um ou mais desses elementos para otimizar os resultados.

Para estruturar essa combinação, é comum o uso de modelos de prompts que definem a formatação e a estrutura dos mesmos. Esses modelos funcionam como “receitas” para o assistente de IA, adaptando-se a diferentes casos de uso, podendo incluir instruções específicas, exemplos simples, contexto relevante e perguntas direcionadas, otimizando a interação com o modelo.

Modelo de prompt
Diga o sentimento do seguinte {{Tipo de Texto, por exemplo, “resenha de produto”}} 
e categorize-o como {{Positivo}} ou {{Negativo}}. 

Aqui estão alguns exemplos: 

Texto: {{O produto superou minhas expectativas; eu simplesmente adorei!}} 
Resposta: {{Positivo}} 

Texto: {{O item quebrou após uma única utilização; estou muito decepcionado.}} 
Resposta: {{Negativo}} 

Texto: {{Entrada}} 
Resposta: ""


No exemplo acima, as chaves duplas indicam os locais onde devem ser inseridas informações específicas no modelo. Essas chaves não devem ser incluídos no texto final do prompt. Os usuários podem copiar e colar esse modelo, preenchendo com seu próprio texto e exemplos, a fim de seguir as instruções ao utilizá-lo em assistentes de IA. 

Engenharia de prompts

Engenharia de prompts refere-se à prática de criar e otimizar entradas de texto (prompts), escolhendo cuidadosamente palavras, frases, sentenças, pontuação e caracteres separadores para utilizar efetivamente um assistente de IA. Em outras palavras, a engenharia de prompt é a arte de se comunicar com um assistente de IA. Prompts de alta qualidade condicionam o assistente a gerar respostas mais precisas e relevantes.

A abordagem ideal de engenharia de prompts para atender às suas necessidades depende tanto da natureza da tarefa quanto dos dados disponíveis. Entre os tipos mais comuns de solicitações compatíveis com a maioria dos assistentes de IA, destacam-se:

  • Classificação: o prompt apresenta uma pergunta com várias opções de resposta, e o modelo deve selecionar a alternativa correta. Um exemplo de uso de classificação é a análise de emoções, em que o modelo recebe um trecho de texto e deve identificar a emoção expressa, classificando-a como "raiva", "alegria" ou "tristeza".
  • Pergunta-resposta, sem contexto: o assistente deve responder à pergunta com base em seu conhecimento interno, sem qualquer contexto ou documento.
  • Pergunta-resposta, com contexto: o usuário fornece um texto de entrada junto com uma pergunta, e o modelo deve responder com base nas informações contidas no texto fornecido.
  • Resumo: o prompt é um trecho de texto, e o assistente deve gerar uma resposta que resuma os principais pontos contidos na entrada.
  • Geração de texto aberto: dado um prompt, o assistente deve responder com um texto original que corresponda à descrição fornecida. Isso inclui a geração de textos criativos, como histórias, poemas ou roteiros de filmes.
  • Geração de código: o assistente deve gerar código com base nas especificações do usuário. Por exemplo, um prompt pode solicitar a geração de código em JavaScript ou Java.
  • Matemática: a entrada apresenta um problema que exige raciocínio matemático, podendo envolver cálculos numéricos, lógica, geometria ou outras áreas relacionadas.
  • Raciocínio ou pensamento lógico: o assistente deve realizar uma série de deduções lógicas.
  • Raciocínio em cadeia de pensamento: apresenta um raciocínio passo a passo mostrando como a resposta foi obtida a partir do prompt fornecido.

Prompt eficientes

Criar um prompt adequado é essencial para obter respostas precisas e eficazes com um assistente de IA, como o Assistente Diana do Cronapp. Nesta seção, você aprenderá a criar prompts consistentes, claros e objetivos, otimizando tanto a precisão das respostas quanto o desempenho do Assistente Diana. A imagem abaixo mostra um exemplo de criação de um bom prompt e, ao lado, as técnicas aplicadas.


Para criar um prompt eficaz para um assistente de IA, é essencial seguir algumas técnicas, como fornecer informações contextuais relevantes, incluir referências ou exemplos que ajudem na compreensão da tarefa, utilizar instruções claras, objetivas e completas, e especificar o formato desejado para a resposta. Essas práticas ajudam a garantir uma resposta mais precisa e alinhada às necessidades do usuário.

Figura 1 - Exemplo de criação de um prompt eficiente

Forneça instruções claras e completas 

O Assistente Diana funciona melhor com instruções simples e diretas. Ao descrever claramente as expectativas da tarefa e reduzir a ambiguidade sempre que possível, você garante que o assistente possa interpretar o prompt de forma adequada.

Por exemplo, considere um problema de classificação em que o usuário deseja uma resposta a partir de um conjunto de opções possíveis. O exemplo "bom" abaixo ilustra a saída esperada pelo usuário nesse caso:

Exemplo bom
Prompt do usuário: "A fotossíntese é o processo pelo qual as plantas, algas e 
algumas bactérias convertem a luz solar em energia química, utilizando dióxido 
de carbono e água."


Qual é o tema do texto acima?
a) biologia
b) português
c) matemática

Saída:
a) biologia


Por outro lado, quando as instruções não são claras e específicas, o assistente pode produzir uma resposta mais detalhada do que o necessário para a tarefa de classificação. O exemplo "ruim" abaixo ilustra esse caso:

Exemplo ruim
Prompt do usuário: "Classifique o seguinte texto: 'A fotossíntese é o processo
pelo qual as plantas, algas e algumas bactérias convertem a luz solar em energia 
química, utilizando dióxido de carbono e água.'"

Saída:
"O tema do texto é o processo de fotossíntese."

Coloque a instrução no final da solicitação

Incluir a descrição da tarefa, instrução ou pergunta no final do prompt ajuda o assistente a identificar quais informações ele precisa buscar. No caso da classificação, as opções de resposta também devem ser apresentadas ao final.

No exemplo a seguir, relacionado a perguntas e respostas em um contexto de livro aberto, o usuário formula uma pergunta específica sobre o texto. Ao posicionar a pergunta no final do prompt, o modelo pode se concentrar melhor na instrução.

Exemplo
Prompt do usuário: "Em 1969, o homem pousou na Lua pela primeira vez durante a
missão Apollo 11. Neil Armstrong foi o primeiro astronauta a caminhar na 
superfície lunar, seguido por Buzz Aldrin. A missão foi um marco importante na
corrida espacial entre os Estados Unidos e a União Soviética.

Quem foi o primeiro homem a pisar na Lua?"

Saída esperada:
Neil Armstrong

Use caracteres separadores

Utilizar caracteres separadores, como quebras de linha ou símbolos específicos, é uma estratégia importante na construção de prompts eficazes, especialmente para garantir que o assistente de IA interprete o contexto corretamente e forneça respostas claras e organizadas. Esses caracteres ajudam a estruturar o prompt, orientando o modelo para focar em cada parte da instrução separadamente.

Use indicadores de saída

Incluir indicadores claros sobre o formato e as restrições da resposta esperada ajuda o assistente a fornecer uma saída mais precisa e alinhada com o que o usuário necessita. Ao pedir para o modelo realizar uma tarefa, como resumir um texto ou selecionar uma resposta entre alternativas, o usuário especifica exatamente como a saída deve ser apresentada. Por exemplo, se deseja que o assistente resuma um texto, você pode instruir "Resuma o texto em apenas uma frase", ou "Dê um resumo curto, com no máximo 20 palavras." Isso ajuda a garantir que o assistente produza uma resposta concisa, em vez de um texto longo.

Generalização de prompts

Para garantir respostas mais precisas e consistentes do modelo, é fundamental testar e aprimorar prompts. Essa estratégia assegura que o prompt seja generalizável e eficaz em cenários variados, evitando que ele se torne específico para um único grupo de solicitações. Essa abordagem envolve dividir os dados em duas partes:

  • Conjunto de Desenvolvimento: este grupo é composto por exemplos que servem para ajustar e refinar o prompt. O usuário testa diferentes formas de escrever o prompt, testando como pequenas variações influenciam as respostas do modelo. A ideia é iterar até encontrar a versão mais eficaz do prompt.
  • Conjunto de Teste: esse grupo é composto por exemplos que não são utilizados durante o processo de ajuste. Após otimizar o prompt no conjunto de desenvolvimento, você o aplica ao conjunto de teste. Esse conjunto final permite avaliar se o prompt ajustado funciona bem com novos dados e não foi adaptado para um conjunto específico, garantindo maior confiabilidade e aplicabilidade do prompt em diferentes casos.

Otimização das solicitações

Essa prática sugere que, quando os prompts básicos (solicitações simples) não geram respostas satisfatórias dos modelos, é necessário otimizar as solicitações. Isso envolve fazer ajustes específicos para melhorar a clareza, precisão ou nível de detalhe no prompt, visando uma resposta mais adequada ao que você quer obter.

Para otimizar uma solicitação, você pode:

  • Adicionar contexto adicional: fornecer mais informações para que o assistente entenda melhor a tarefa.
  • Especificar restrições de formato: definir claramente como a resposta deve ser apresentada. Ao definir restrições, o usuário ajuda a garantir que a resposta atenda às suas expectativas e necessidades. Por exemplo, você pode solicitar uma resposta concisa em uma única frase ou uma explicação mais elaborada em um parágrafo estruturado.
  • Incluir exemplos: mostrar ao assistente o tipo de resposta desejada por adicionar exemplos.
  • Testar variações: ajustar e testar diferentes versões do prompt até encontrar a que oferece a melhor resposta.

Em resumo, quando um prompt simples não traz o resultado esperado, a otimização ajuda a orientar o assistente de IA, garantindo que ele responda de acordo com o objetivo da tarefa.

Nesta página

  • Sem rótulos