Visite nosso tutorial de engenharia de prompt para aprender a criar prompts através de um curso interativo.

O Claude oferece um alto nível de desempenho básico pronto para uso. No entanto, a engenharia de prompt pode ajudá-lo a aprimorar ainda mais seu desempenho e ajustar suas respostas para melhor se adequar ao seu caso de uso específico. Essas técnicas não são necessárias para obter bons resultados com o Claude, mas você pode achá-las úteis para aprimorar suas entradas e saídas.

Para começar rapidamente com um prompt ou ser introduzido ao conceito de prompting, consulte introdução ao prompting.


O que é engenharia de prompt?

A engenharia de prompt é uma ciência empírica que envolve iterar e testar prompts para otimizar o desempenho. A maior parte do esforço gasto no ciclo de engenharia de prompt não está realmente na escrita de prompts. Em vez disso, a maior parte do tempo de engenharia de prompt é gasta no desenvolvimento de um forte conjunto de avaliações, seguido por testes e iterações contra essas avaliações.

O ciclo de vida do desenvolvimento de prompt

Recomendamos uma abordagem principiada e orientada a testes para garantir o desempenho ideal do prompt. Vamos percorrer o processo de alto nível que usamos ao desenvolver prompts para uma tarefa, conforme ilustrado no diagrama abaixo.

  1. Defina a tarefa e os critérios de sucesso: O primeiro e mais crucial passo é definir claramente a tarefa específica que você deseja que o Claude realize. Isso pode ser qualquer coisa, desde extração de entidades, resposta a perguntas ou sumarização de texto até tarefas mais complexas, como geração de código ou escrita criativa. Uma vez que você tenha uma tarefa bem definida, estabeleça os critérios de sucesso que orientarão seu processo de avaliação e otimização.
    Os principais critérios de sucesso a serem considerados incluem:
    • Desempenho e precisão: Quão bem o modelo precisa executar a tarefa?
    • Latência: Qual é o tempo de resposta aceitável para o modelo? Isso dependerá dos requisitos em tempo real do seu aplicativo e das expectativas do usuário.
    • Preço: Qual é o seu orçamento para executar o modelo? Considere fatores como o custo por chamada de API, o tamanho do modelo e a frequência de uso.
      Ter critérios de sucesso claros e mensuráveis desde o início ajudará você a tomar decisões informadas ao longo do processo de adoção e garantir que você esteja otimizando para os objetivos certos.
  2. Desenvolva casos de teste: Com sua tarefa e critérios de sucesso definidos, o próximo passo é criar um conjunto diversificado de casos de teste que cubram os casos de uso pretendidos para seu aplicativo. Eles devem incluir exemplos típicos e casos extremos para garantir que seus prompts sejam robustos. Ter casos de teste bem definidos antecipadamente permitirá que você meça objetivamente o desempenho de seus prompts em relação aos seus critérios de sucesso.
  3. Crie o prompt preliminar: Em seguida, crie um prompt inicial que descreva a definição da tarefa, as características de uma boa resposta e qualquer contexto necessário para o Claude. Idealmente, você deve adicionar alguns exemplos de entradas e saídas canônicas para o Claude seguir. Esse prompt preliminar servirá como ponto de partida para o refinamento.
  4. Teste o prompt contra os casos de teste: Alimente seus casos de teste no Claude usando o prompt preliminar. Avalie cuidadosamente as respostas do modelo em relação às suas saídas esperadas e critérios de sucesso. Use uma rubrica de avaliação consistente, seja uma avaliação humana, comparação com uma chave de resposta ou até mesmo outra instância do julgamento do Claude com base em uma rubrica. A chave é ter uma maneira sistemática de avaliar o desempenho.
  5. Refine o prompt: Com base nos resultados da etapa 4, refine iterativamente seu prompt para melhorar o desempenho nos casos de teste e atender melhor aos seus critérios de sucesso. Isso pode envolver adicionar esclarecimentos, exemplos ou restrições para orientar o comportamento do Claude. Tenha cuidado para não otimizar excessivamente para um conjunto restrito de entradas, pois isso pode levar a overfitting e baixa generalização.
  6. Envie o prompt polido: Depois de chegar a um prompt que tenha um bom desempenho em seus casos de teste e atenda aos seus critérios de sucesso, é hora de implantá-lo em seu aplicativo. Monitore o desempenho do modelo em produção e esteja preparado para fazer mais refinamentos, conforme necessário. Casos extremos podem surgir que não foram previstos em seu conjunto de testes inicial.

Ao longo desse processo, vale a pena começar com o modelo mais capaz e o comprimento de prompt irrestrito para estabelecer um teto de desempenho. Depois de alcançar a qualidade de saída desejada, você pode então experimentar otimizações como prompts mais curtos ou modelos menores para reduzir a latência e os custos, conforme necessário.

Ao seguir essa metodologia orientada a testes e definir cuidadosamente sua tarefa e critérios de sucesso antecipadamente, você estará no caminho certo para aproveitar o poder do Claude para seu caso de uso específico. Se você investir tempo na criação de casos de teste e prompts robustos, colherá os benefícios em termos de desempenho e manutenibilidade do modelo.


Técnicas de engenharia de prompt

Ao longo do seu ciclo de desenvolvimento de prompt, existem algumas técnicas que você pode usar para aprimorar o desempenho do Claude, tais como:

Também fornecemos um metaprompt auxiliar experimental que solicita ao Claude criar um prompt para você com base nas diretrizes fornecidas. O metaprompt é experimental, mas pode ser útil para rascunhar um prompt inicial ou criar rapidamente muitas variações de prompt para teste.

Nota: Modelos mais antigos que a família Claude 3 podem exigir mais engenharia de prompt. Para obter mais informações, consulte nosso guia de modelos legados.


Recursos adicionais

Para saber mais sobre engenharia de prompt, confira estes recursos:

Feliz prompting!