Otimizar o desempenho do modelo
Depois de implantar seu modelo em um endpoint, você pode começar a interagir com ele para entender como ele opera. Vamos explorar como você pode usar técnicas de engenharia de solicitações para otimizar o desempenho do seu modelo.
Aplicar padrões de prompt para otimizar a saída do modelo
A qualidade das perguntas enviadas para o modelo de linguagem influencia diretamente a qualidade das respostas que você recebe de volta. Você pode construir cuidadosamente sua pergunta ou prompt, para receber respostas melhores e mais interessantes. O processo de criação e otimização de prompts para melhorar o desempenho do modelo também é conhecido como engenharia de prompts.
A engenharia de prompt exige que os usuários façam perguntas relevantes, específicas, não ambíguas e bem estruturadas, instruindo o modelo a gerar respostas mais precisas. Para entender como criar prompts bem definidos, vamos explorar alguns padrões que ajudam você a melhorar a saída de um modelo:
- Instrua o modelo a agir como um personagem.
- Guie o modelo para sugerir perguntas melhores.
- Forneça um modelo para gerar a saída em um formato específico.
- Entenda como um modelo raciocina pedindo para que ele reflita.
- Adicione contexto para melhorar a precisão da saída do modelo.
Observação
Os padrões listados aqui são baseados no trabalho de White et al., (2023) que construiu um catálogo de padrões de prompt.
Como desenvolvedor, uma abordagem eficaz é adicionar instruções ao seu modelo implantado na forma de uma solicitação do sistema. A solicitação do sistema define o comportamento do modelo e permite que você guie o modelo sem expor o usuário final às instruções. Os melhores resultados são frequentemente alcançados por meio da atribuição de uma solicitação explícita do sistema e de orientações (ou modelos) que ajudam os usuários a enviar solicitações que reflitam os padrões descritos aqui.
Instruir o modelo a atuar como uma persona
Quando você quiser que o modelo tenha um ponto de vista ou perspectiva específico ao responder a uma pergunta, você pode fazer com que ele atue como uma persona.
Por exemplo, você pode pedir à modelo para responder como se fosse um profissional de marketing experiente se você estiver trabalhando em vendas e precisar de insights sobre um novo software de CRM.
| Nenhuma persona especificada | Com a persona especificada | |
|---|---|---|
| Solicitação do sistema | Nenhum | Você é um profissional de marketing experiente que escreve textos publicitários para um público de clientes técnicos. |
| Prompt de Usuário | Escreva uma descrição de uma frase de um produto de CRM. | Escreva uma descrição de uma frase de um produto de CRM. |
| Resposta do modelo | Um produto de CRM é uma ferramenta de software projetada para gerenciar as interações de uma empresa com clientes atuais e potenciais, abrangendo vendas, marketing, atendimento ao cliente e suporte técnico. | Experimente um gerenciamento de relacionamento com o cliente sem complicações com nosso produto de CRM, projetado para agilizar as operações do seu negócio, melhorar as interações com os clientes e impulsionar o crescimento das vendas com sua interface intuitiva e ferramentas de análise robustas. |
Você pode criar personas diferentes para várias funções de negócios. Pense em funções como gerente de produto, analista de dados, especialista em atendimento ao cliente ou professor. Defina a persona e adicione mais detalhes ao que você espera que essa persona saiba ou faça para obter respostas personalizadas e controladas por contexto.
Fazer sugestões de perguntas melhores
Quando você quiser que o modelo ajude a refinar sua pergunta, você pode pedir ao modelo que sugira melhores maneiras de formular sua pergunta. Você também pode pedir que ele forneça contexto extra.
Por exemplo, se você estiver buscando conselhos sobre como preparar uma refeição, você pode solicitar à modelo que sugira perguntas de esclarecimento para ajudá-lo a obter uma resposta mais direcionada.
| Nenhuma sugestão fornecida | Com sugestões fornecidas | |
|---|---|---|
| Solicitação do sistema | Você é um chef de IA que pode dar conselhos sobre cardápios. | Você é um chef de IA que pode dar conselhos sobre cardápios. Você é acessível e sempre deseja fornecer o melhor aconselhamento possível. |
| Prompt de Usuário | Tenho que organizar um jantar para quatro pessoas. O que devo cozinhar? | Tenho que organizar um jantar para quatro pessoas. O que devo cozinhar? Que outras informações você precisa para me ajudar a planejar uma ótima refeição para meus convidados? |
| Resposta do modelo | Receber um jantar para quatro pessoas é uma oportunidade maravilhosa de mostrar suas habilidades culinárias. Aqui está um menu sugerido de três pratos que equilibra os sabores e proporciona uma experiência gastronômica agradável: Aperitivo Espetinhos de Salada Caprese - Ingredientes: Tomate-cereja, bolinhas de mussarela fresca, folhas de manjericão fresco, redução de balsâmico, azeite de oliva, sal e pimenta. - Instruções: Enfie um tomate-cereja, uma folha de manjericão e uma bolinha de mussarela em pequenos espetos. Regue com azeite de oliva e redução de balsâmico, depois tempere com sal e pimenta. Este prato é leve, refrescante e fácil de preparar com antecedência. Prato principal Salmão com crosta de ervas com aspargos de limão - Ingredientes: Filés de salmão, ervas frescas (como salsinha, dill e tomilho), farinha de rosca, limão, aspargos, azeite de oliva, sal e pimenta. - Instruções: Pré-aqueça o forno a 400°F (200°C). Misture a farinha de rosca com as ervas frescas picadas e um pouco de azeite de oliva para formar uma pasta. Pressione essa mistura sobre os filés de salmão e tempere com sal e pimenta. Coloque o salmão em uma assadeira e asse por cerca de 15 a 20 minutos, ou até que esteja totalmente cozido. Nos últimos 10 minutos de cozimento, misture os aspargos com azeite de oliva, raspas de limão, sal e pimenta, e asse junto com o salmão. Sirva com um fio de suco de limão fresco sobre o salmão e os aspargos. Sobremesa Mousse de Chocolate com Frutas Frescas - Ingredientes: Chocolate amargo, ovos, açúcar, creme de leite, extrato de baunilha e frutas vermelhas mistas (como morangos, mirtilos e framboesas). - Instruções: Derreta o chocolate em banho-maria e depois deixe-o esfriar um pouco. Separar gemas e claras. Bata as claras em neve até picos suaves, depois adicione o açúcar gradualmente para fazer um merengue. Bata o creme de leite até formar picos suaves e misture o extrato de baunilha. Incorpore o chocolate derretido às gemas, depois misture delicadamente o creme batido e o merengue até ficar homogêneo. Coloque a mousse em recipientes de servir e leve à geladeira por pelo menos 2 horas. Sirva coberto com frutas vermelhas frescas para um toque de cor e frescor. Dicas adicionais - Harmonizações: Considere servir um vinho branco leve com a entrada e o prato principal, e talvez um vinho de sobremesa com a mousse de chocolate. - Tempo: Prepare a entrada e a sobremesa com antecedência para minimizar o estresse de última hora. O prato principal levará mais tempo no forno, então planeje-se de acordo. Este menu foi projetado para ser elegante e acessível, garantindo que seus convidados apreciem tanto a comida quanto a experiência. Aproveite seu jantar! |
Receber um jantar é uma oportunidade maravilhosa de mostrar suas habilidades culinárias e criar experiências memoráveis para seus convidados. Para ajudá-lo a planejar uma ótima refeição, aqui estão algumas perguntas que podem guiá-lo na escolha do menu perfeito:
Com essas informações, posso sugerir um menu personalizado. Aqui está uma ideia geral que pode ser adaptada com base em suas respostas: Inicial
Prato principal
Acompanhamentos
Sobremesa
Bebidas
Sinta-se à vontade para compartilhar mais detalhes, e posso ajudar a refinar ainda mais o menu! |
Quando você incentiva o modelo a sugerir esclarecimentos ou detalhes extras, você pode ajudá-lo a fazer as perguntas certas e obter respostas melhores e mais precisas em menos interações.
Especifique o formato desejado para as respostas
Quando você quiser que o modelo gere a saída em um formato específico, você pode fornecer um modelo ou estrutura em seu prompt.
Por exemplo, se você for um repórter esportivo redigindo um artigo histórico, poderá solicitar que o modelo siga um modelo específico, que inclui títulos, pontos de marcador e detalhamentos de dados.
| Nenhum modelo especificado | Com o modelo especificado | |
|---|---|---|
| Solicitação do sistema | Você é um assistente de IA útil. | Você é um assistente de IA prestativo para repórteres esportivos. |
| Prompt de Usuário | O que aconteceu na final da Copa do Mundo de Futebol de 2018? | O que aconteceu na final da Copa do Mundo de Futebol de 2018? Formate o resultado para mostrar a data da partida, o local e as duas equipes que competiram. Em seguida, o placar final e, por fim, quaisquer eventos notáveis que ocorreram durante a partida. |
| Resposta do modelo | A final da Copa do Mundo FIFA de 2018 aconteceu em 15 de julho de 2018, no Estádio Luzhniki, em Moscou, Rússia. A França enfrentou a Croácia na partida. A França saiu vitoriosa com uma vitória de 4 a 2. Os gols da França foram marcados por Mario Mandžukić (gol contra), Antoine Griezmann (pênalti), Paul Pogba e Kylian Mbappé. Os gols da Croácia foram marcados por Ivan Perišić e Mario Mandžukić. Kylian Mbappé, com apenas 19 anos, tornou-se o segundo jogador mais jovem a marcar em uma final de Copa do Mundo, depois de Pelé. Essa vitória marcou o segundo título da França na Copa do Mundo, sendo o primeiro em 1998. |
Data da partida: 15 de julho de 2018 Local: Estádio Luzhniki, Moscou, Rússia Equipes competindo: França x Croácia Placarfinal: França 4, Croácia 2 Eventos Notáveis:
|
Você pode aplicar essa abordagem a outros cenários em que um formato específico é necessário, como gerar emails, resumos, propostas ou até mesmo códigos e scripts. Defina o modelo de formato claramente e forneça detalhes sobre como você deseja que a saída seja estruturada para obter respostas consistentes e organizadas.
Você também pode usar uma abordagem de um exemplo único ou de poucos exemplos, fornecendo um ou mais exemplos para ajudar o modelo a identificar um padrão desejado.
Peça uma explicação do raciocínio
Quando você quiser que o modelo explique o raciocínio por trás de suas respostas, você pode pedir ao modelo para refletir automaticamente sobre sua lógica e suposições depois de fornecer uma resposta.
Por exemplo, se você estiver trabalhando em um problema matemático, pode pedir ao modelo para explicar o raciocínio por trás de cálculos específicos.
| Nenhuma reflexão especificada | Com reflexão especificada | |
|---|---|---|
| Solicitação do sistema | Você é um assistente de IA para matemática. | Você é um assistente de IA para matemática. Você sempre explica suas respostas. |
| Prompt de Usuário | Um triângulo retângulo tem uma hipotenusa com comprimento de 3 cm e um cateto adjacente com comprimento de 2 cm. Qual é o comprimento do lado restante? | Um triângulo retângulo tem uma hipotenusa com comprimento de 3 cm e um cateto adjacente com comprimento de 2 cm. Qual é o comprimento do lado restante? |
| Resposta do modelo | Aproximadamente 2,24 cm. | Podemos usar o teorema de Pitágoras para resolver este problema. O teorema de Pitágoras afirma que, em um triângulo retângulo, o quadrado do comprimento da hipotenusa (o lado oposto ao ângulo reto) é igual à soma dos quadrados dos comprimentos dos outros dois lados. Matematicamente, isso pode ser escrito como: c² = a² + b² onde c é o comprimento da hipotenusa, e a e b são os comprimentos dos outros dois lados. Neste problema, nos é dado o comprimento da hipotenusa (c = 3 cm) e o comprimento de um dos outros lados (a = 2 cm). Precisamos encontrar o comprimento do lado restante (b). Substituindo os valores fornecidos no teorema de Pitágoras, obtemos: 3² = 2² + b² 9 = 4 + b² Agora, podemos resolver para b²: b² = 9 - 4 b² = 5 Finalmente, tomamos a raiz quadrada de ambos os lados para encontrar o comprimento do lado restante: b = √5 ≈ 2,24 cm Portanto, o comprimento do lado restante é aproximadamente 2,24 cm. |
Você pode aplicar essa abordagem quando quiser explicações sobre análise de dados, estratégia de marketing ou solução de problemas técnicos. Quando você pede ao modelo para definir seu raciocínio, você usa uma técnica chamada cadeia de raciocínio para fazê-lo pensar passo a passo.
Adicionar contexto
Quando quiser que o modelo se concentre em tópicos específicos, você pode especificar o contexto a ser considerado. Você também pode instruir o modelo a ignorar informações irrelevantes.
Por exemplo, se você estiver planejando uma viagem, pode fornecer ao modelo mais contexto para ajudar a melhorar a relevância de sua resposta.
| Nenhum contexto especificado | Com o contexto especificado | |
|---|---|---|
| Solicitação do sistema | Você é um assistente de viagem de IA. | Você é um assistente de viagem de IA. |
| Pergunta do usuário | Quando devo visitar Edimburgo? | Quando devo visitar Edimburgo? Tenho interesse especial em assistir aos jogos da Escócia em casa no torneio de rugby Seis Nações. |
| Resposta do modelo | Edimburgo, a capital da Escócia, é um destino maravilhoso com uma rica história e cultura vibrante. A melhor época para visitar Edimburgo depende em grande parte das suas preferências por clima, eventos e multidões de turistas.
Em resumo, a melhor época para visitar Edimburgo depende das suas preferências. A primavera e o outono oferecem clima agradável e menos multidões, enquanto o verão é ideal para atividades ao ar livre e festivais. O inverno pode proporcionar uma experiência mais tranquila e mágica, com eventos festivos para aproveitar. |
O torneio de rugby Seis Nações normalmente ocorre do final de Janeiro ao início de Março. Edimburgo, como cidade-sede, frequentemente recebe partidas no Estádio Murrayfield, que é o estádio nacional da Escócia. Para garantir que você não perca os jogos em casa da Escócia no Seis Nações, recomendo planejar sua visita para esse período. No entanto, tenha em mente que as datas e horários das partidas podem variar, então é uma boa ideia verificar o site oficial do Seis Nações ou o site da Scottish Rugby Union para o cronograma exato dos jogos. Além disso, Edimburgo tem muito a oferecer além do rugby, com sua rica história, arquitetura deslumbrante e cena cultural vibrante, então você pode considerar estender sua estadia para explorar a cidade antes ou depois do torneio. Além disso, lembre-se de que visitar durante o torneio pode significar maiores multidões e acomodações mais cheias, então reserve seus voos, hotel e transporte com bastante antecedência para garantir uma experiência tranquila. Aproveite sua viagem a Edimburgo e a atmosfera emocionante das partidas de rugby do Six Nations! |
Ao definir no que o modelo deve se concentrar ou desconsiderar, você pode garantir que a conversa permaneça no caminho certo e gerar respostas mais relevantes e personalizadas.
Você pode especificar o contexto descrevendo o que ele deve ou não incluir e conectando o modelo a fontes de dados das quais ele deve recuperar o contexto antes de gerar uma resposta.
Aplicar estratégias de otimização de modelo
Observação
Esta seção discute opções e considerações para a otimização do modelo que você pode considerar além da engenharia de solicitações. Uma exploração completa de como aplicar essas estratégias de otimização está além do escopo deste módulo.
A engenharia de solicitações pode ser uma forma eficaz de otimizar as respostas do modelo, mas em alguns casos pode não fornecer contexto ou orientação suficientes para atender sempre às suas necessidades exatas. Como desenvolvedor, você pode considerar as seguintes estratégias adicionais de otimização para melhorar a relevância das respostas da sua aplicação de IA generativa:
- Geração Aumentada por Recuperação (RAG): Uma técnica que envolve o uso de uma fonte de dados para fornecer contexto fundamentado as solicitações. O RAG pode ser uma abordagem útil quando você precisa que o modelo responda a perguntas com base em um domínio de conhecimento específico ou quando precisa que o modelo considere informações relacionadas a eventos que ocorreram após os dados de treinamento nos quais o modelo foi baseado.
- Ajuste fino: Uma técnica que envolve estender o treinamento de um modelo base fornecendo exemplos de solicitações e respostas que reflitam o formato e o estilo de saída desejados.
Ambas as abordagens envolvem custos, complexidade e desafios de manutenção adicionais, portanto, como regra geral, é melhor iniciar seus esforços de otimização por meio da engenharia de solicitações e, em seguida, considerar estratégias adicionais, se necessário.
A estratégia que você deve escolher como desenvolvedor depende dos seus requisitos:
- Otimizar para contexto: Quando o modelo não tem conhecimento contextual e você deseja maximizar a precisão das respostas.
- Otimizar o modelo: Quando você quiser melhorar o formato de resposta, o estilo ou a fala maximizando a consistência do comportamento.
Para otimizar o contexto, você pode aplicar um padrão de Geração Aumentada de Recuperação (RAG). Com o RAG, você fundamentar seus dados recuperando primeiro o contexto de uma fonte de dados, antes de gerar uma resposta. Por exemplo, você quer que os funcionários façam perguntas sobre processos de reembolso de despesas e limites com base na documentação da política de despesas da sua própria empresa.
Quando quiser que o modelo responda em um formato ou estilo específico, você pode instruir o modelo a fazer isso adicionando diretrizes na mensagem do sistema. Quando você observar que o comportamento do modelo não é consistente, você pode impor ainda mais a consistência no comportamento ajustandoum modelo. Com o ajuste fino, você treina um modelo de linguagem base em um conjunto de dados de exemplos de solicitações e respostas antes de integrá-lo à sua aplicação, com o resultado de que o modelo ajustado produzirá respostas consistentes com os exemplos no conjunto de dados de treinamento do ajuste fino.
Você pode usar qualquer combinação de estratégias de otimização, por exemplo engenharia de solicitações, RAG e um modelo ajustado, para aprimorar sua aplicação de processamento de linguagem.