O que é encadeamento de prompts?

23 de abril de 2024

Autores

Vrunda Gadesha

AI Advocate | Technical Content Author

Eda Kavlakoglu

Program Manager

O encadeamento de prompts é uma técnica de processamento de linguagem natural (PLN), que utiliza grandes modelos de linguagem (LLMs) que envolvem a geração de uma saída desejada seguindo uma série de prompts. Nesse processo, uma sequência de prompts é fornecida a um modelo PLN, orientando-o para produzir a resposta desejada. O modelo aprende a compreender o contexto e as relações entre os prompts, permitindo-lhe gerar texto coerente, consistente e rico em contexto.[1]

O conceito é uma implementação avançada da engenharia de prompts. Ele tem ganhado grande destaque no campo do PLN, devido à sua capacidade de melhorar a qualidade e a controlabilidade da geração de texto. Uma cadeia de prompt eficaz pode ser implementada como técnica de engenharia em vez de outras abordagens, como modelos personalizados zero-shot, few-shot ou ajustados [2]. Ao fornecer uma direção e estrutura claras, o encadeamento de prompts ajuda o modelo a compreender melhor as intenções do usuário e gerar respostas mais precisas e relevantes.

O encadeamento de prompts pode aumentar a eficácia da assistência por IA em diversos domínios. Ao dividir tarefas complexas em prompts menores e encadeá-los, os desenvolvedores podem criar respostas mais personalizadas e precisas, adaptadas às necessidades individuais dos usuários. Essa abordagem melhora a experiência geral do usuário e permite maior personalização e adaptabilidade para responder às mudanças nas necessidades dos usuários ou nos cenários de aplicação.[3]

Tipos de prompts

Há dois tipos principais de prompts gerados no trabalho com LLMs. São eles:

Prompts simples

São prompts básicos contendo uma única instrução ou pergunta para o modelo responder. Normalmente são utilizados para iniciar uma conversa ou para solicitar informações. Um exemplo de um prompt simples seria: "Como está o tempo hoje?"

Prompts complexos

Esses prompts contêm várias instruções ou perguntas que exigem que o modelo execute uma série de ações ou apresente uma resposta detalhada. São frequentemente utilizados para facilitar tarefas mais avançadas ou para envolver em conversas mais profundas. Um exemplo de prompt complexo seria: "Estou procurando um restaurante que sirva comida vegana e esteja aberto até as 22h. Você pode recomendar um?"

Projeto 3D de bolas rolando em uma pista

As últimas notícias e insights sobre IA 


Descubra insights selecionadas por especialistas sobre IA, nuvem e outros assuntos no boletim informativo semanal Think. 

Como simplificar prompts complexos

A conversão de um prompt complexo em uma série de prompts simples pode ajudar a dividir uma tarefa complexa em subtarefas menores. Essa abordagem pode facilitar para os usuários a compreensão das etapas necessárias para concluir uma solicitação e reduzir o risco de erros ou mal-entendidos.

Um exemplo: tradução de idiomas

Considere o cenário em que temos informações no idioma espanhol. Precisamos extrair as informações do idioma, mas não entendemos espanhol. Primeiro, precisamos traduzir o texto do espanhol para o inglês. Em seguida, precisamos fazer uma pergunta para extrair as informações e depois traduzir as informações extraídas do inglês para o espanhol novamente. Essa é uma tarefa complexa e, se tentarmos combinar essas etapas em uma única instrução, ela ficará muito complexa, aumentando posteriormente a probabilidade de mais erros na resposta. Consequentemente, é melhor converter um prompt complexo em uma sequência de prompts simples. Algumas etapas para fazer isso:

  1. Identifique a meta ou objetivo principal do prompt. 
  2. Divida o objetivo principal em subtarefas, ou seja, ações ou tarefas mais específicas.
  3. Crie um prompt para cada ação ou tarefa específica.
  4. É importante que cada prompt seja claro, conciso e inequívoco.
  5. Teste os prompts para garantir que são fáceis de entender e que são abrangentes.

Aqui, nosso prompt complexo é: "Considere o texto entregue em espanhol. Traduza para o inglês. Encontre todas as estatísticas e fatos utilizados neste texto e liste-os como marcadores. Traduza-os novamente para o espanhol".

Para converter esse prompt complexo em prompts simples, podemos dividir o objetivo principal em ações ou tarefas menores e podemos criar uma cadeia de prompts conforme abaixo:

  1. "Leia o texto entregue em espanhol".
  2. "Traduza o texto para o idioma inglês".
  3. "Extraia as estatísticas e os fatos do texto".
  4. "Crie uma lista de tópicos com todos esses fatos".
  5. “Traduza-os para o espanhol”.

Como criar uma cadeia de prompts

Um encadeamento estruturado de prompts é um conjunto pré-definido de prompts ou perguntas, projetado para guiar um usuário em uma conversa ou sequência de ações específicas, garantindo um fluxo de informações consistente e controlado.[4] Esse método é frequentemente utilizado em suporte ao cliente, tutoria e outros sistemas interativos, mantendo clareza, precisão e eficiência na interação. Os prompts dentro de uma cadeia são tipicamente interligados, permitindo que o sistema se baseie em respostas anteriores e mantenha o contexto. Isso pode reduzir ambiguidades, melhorar a satisfação do usuário e possibilitar uma comunicação mais eficaz entre humanos e máquinas.

Crie uma biblioteca de referência com modelos de prompts de diversos tipos

Comece reunindo um grupo de prompts escritos previamente que possam ser personalizados para vários cenários. Esses modelos devem abranger tarefas, solicitações e perguntas comuns que os usuários podem encontrar.

Defina os prompts principais

Identifique as principais perguntas ou instruções que precisam ser transmitidas na cadeia de prompts. Esses prompts devem ser simples, claros e diretos, e devem ser capazes de se manter sozinhos como prompts individuais.

Identifique as entradas e saídas para a sequência de prompts

Determine as informações ou ações específicas que o usuário precisa apresentar em resposta a cada prompt. Essas entradas devem ser claramente definidas e fáceis de entender e devem estar vinculadas às instruções correspondentes na cadeia de instruções.

Implemente toda a cadeia de prompts

Use a biblioteca de referência e os prompts primários para criar a cadeia completa de prompts. É importante que cada prompt esteja logicamente vinculado ao próximo e que o usuário receba as entradas necessárias nos pontos apropriados da sequência.

Teste a cadeia de prompts

Depois que a cadeia de prompts tiver sido criada, teste-a minuciosamente para garantir que seja fácil de entender e concluir. Peça a uma amostra de usuários para concluir a cadeia de prompts e coletar feedback sobre quaisquer áreas de melhoria.

Itere e refine a cadeia de prompts

Com base no feedback recebido durante o teste, faça os ajustes ou melhorias necessários na cadeia de prompts. Isso pode incluir reescrever determinados prompts, adicionar ou remover prompts ou alterar a ordem em que os prompts são apresentados.

Seguindo essas etapas, os representantes de atendimento ao cliente e programadores podem criar cadeias de prompt eficazes e eficientes que ajudam a orientar os usuários por meio de uma série de ações ou tarefas.

Vantagens do encadeamento de prompts

O encadeamento de prompts oferece várias vantagens em relação aos métodos tradicionais utilizados na engenharia de prompts. Ao orientar o modelo por meio de uma série de prompts, o encadeamento de prompts aumenta a coerência e a consistência na geração de texto, levando a resultados mais precisos e envolventes.

Consistência

Ao exigir que o modelo siga uma sequência de prompts, o encadeamento de prompts ajuda a manter a consistência na geração de texto. Isso é particularmente importante em aplicações que exigem manutenção de um tom, estilo ou formato consistente, como suporte ao cliente ou funções editoriais.[5]

No suporte ao cliente, o encadeamento de prompts pode ser utilizado para garantir uma comunicação uniforme com os usuários. Por exemplo, o bot pode ser instruído a se dirigir ao usuário usando seu nome preferido ou seguir um tom de voz específico durante a conversa.

Crie assistentes de IA para atendimento ao cliente com o watsonx Assistant
Controle aprimorado

O encadeamento de prompts proporciona maior controle sobre a geração de texto, permitindo que os usuários especifiquem o resultado desejado com precisão. Isso é especialmente útil em situações em que os dados de input são ruidosos ou ambíguos, pois o modelo pode ser orientado a esclarecer ou refinar o input antes de gerar uma resposta.[6]

Em um sistema de resumo de texto, o encadeamento de prompts permite que os usuários controlem o nível de detalhe e especificidade no resumo gerado. Por exemplo, o usuário pode primeiro ser instruído a apresentar o conteúdo que está interessado em resumir, como um artigo de pesquisa. Um prompt subsequente pode seguir para formatar esse resumo em um formato ou modelo específico.

Veja como você pode realizar tarefas de resumo de texto com watsonx.ai (2:19)
Taxa de erro reduzida

O encadeamento de prompts ajuda a reduzir taxas de erro ao fornecer ao modelo melhor contexto e inputs mais focados. Um encadeamento estruturado de prompts reduz o esforço humano e valida códigos e saídas mais rapidamente. Ao dividir a entrada em prompts menores e mais gerenciáveis, o modelo pode compreender melhor a intenção do usuário e gerar respostas mais precisas e relevantes.[7]

Em um sistema de tradução automática, antes de traduzir uma frase, o sistema pode primeiro instruir que o usuário especifique o idioma de origem, o idioma de destino e qualquer contexto ou terminologia relevante. Isso ajuda o modelo a entender melhor o texto de origem e gerar uma tradução precisa.

Ao aproveitar essas vantagens, o encadeamento de prompts tem a possibilidade de melhorar consideravelmente o desempenho e a eficácia dos modelos de PNL em várias aplicações, desde o suporte ao cliente até a tradução simplificada de editoriais e idiomas.

Casos de uso de encadeamento de prompts

O encadeamento de prompts é uma técnica versátil que pode ser aplicada a uma ampla gama de casos de uso, principalmente em duas categorias: resposta a perguntas e tarefas de várias etapas.

Respostas a perguntas

Como o próprio nome sugere, as tarefas de resposta a perguntas apresentam respostas a perguntas frequentes feitas por humanos. O modelo automatiza a resposta com base no contexto de documentos normalmente encontrados em uma base de conhecimento. Os aplicativos comuns são:

  • Atendimento ao cliente: o encadeamento de prompts pode ajudar os usuários a consultar a base de conhecimento de uma empresa para encontrar a resposta mais relevante, melhorando a experiência do usuário e a eficiência operacional.[8]
  • Plataformas educacionais: instrutores podem criar experiências de aprendizado interativas, estimulando os alunos com perguntas baseadas em seu progresso, permitindo aprendizado personalizado e adaptativo.[9]
  • Assistência à pesquisa: pesquisadores podem utilizar o encadeamento de prompts para automatizar a busca e análise de literatura relevante, economizando tempo e recursos.[3][10]

Tarefas de várias etapas

Como seria de se esperar, as tarefas de várias etapas são compostas por uma sequência de etapas para atingir um determinado objetivo. Alguns exemplos disso são:

  • Criação de conteúdo: o encadeamento de prompts pode agilizar várias etapas do processo de criação de conteúdo, como pesquisa de tópicos, estruturação de esboços, redação de artigos, validação de conteúdo, edição e muito mais.[11][12]
  • Desenvolvimento de programação: o encadeamento de prompts pode guiar os desenvolvedores através de uma série de etapas, começando pela lógica básica, progredindo para pseudocódigo e, finalmente, implementando código específico em uma determinada linguagem, garantindo também a validação do código.[3][13]
  • Recomendações personalizadas: esse caso de uso é aplicável em diversos setores, onde o encadeamento de prompts pode ajudar a personalizar recomendações com base em preferências do usuário, comportamento e dados históricos.[14]

O encadeamento de prompts é uma técnica poderosa que pode ser utilizada em uma variedade de aplicações em tempo real para ajudar a orientar usuários e profissionais por meio de uma série de ações ou tarefas. Dividindo tarefas complexas em uma série de prompts mais simples, o encadeamento de prompts pode ajudar a garantir que usuários e profissionais entendam as etapas necessárias para concluir uma solicitação e proporcionar uma melhor experiência geral. Seja utilizado em atendimento ao cliente, programação ou educação, o encadeamento de prompts pode ajudar a simplificar processos complexos e melhorar a eficiência e a precisão.

Mistura de Especialistas | Podcast

Decodificando a IA: resumo semanal das notícias

Junte-se a nosso renomado painel de engenheiros, pesquisadores, líderes de produtos e outros enquanto filtram as informações sobre IA para trazerem a você as mais recentes notícias e insights sobre IA.

Soluções relacionadas
IBM watsonx.ai

Treine, valide, ajuste e implemente recursos de IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de última geração para construtores de IA. Crie aplicações de IA em uma fração do tempo com uma fração dos dados.

Conheça o watsonx.ai
Soluções de inteligência artificial

Use a IA a serviço de sua empresa com a experiência e o portfólio de soluções líder do setor da IBM à sua disposição.

Explore as soluções de IA
Serviços de IA

Reinvente os fluxos de trabalho e operações críticos adicionando IA para maximizar experiências, tomadas de decisão em tempo real e valor de negócios.

Explore os serviços de IA
Dê o próximo passo

Obtenha acesso completo aos recursos que abrangem o ciclo de vida do desenvolvimento da IA. Produza soluções poderosas de IA com interfaces fáceis de usar, fluxos de trabalhos e acesso a APIs e SDKs padrão do setor.

Explore o watsonx.ai Agende uma demonstração em tempo real
Notas de rodapé

[1]

Pengfei Liu, W. Y. (2021). Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing. ACM Computing Surveys.

[2]

Gunwoo Yong, K. J. (2022). Engenharia de prompts para detecção e classificação de defeitos zero e poucos disparos usando um modelo treinado previamente em linguagem visual.

[3]

O. Marchenko, O. R. (2020). Improving Text Generation Through Introducing Coherence Metrics. Cybernetics and Systems Analysis.

[4]

Zhifang Guo, Y. L. (2022). Prompttts: Controllable Text-To-Speech With Text Descriptions. Zhifang Guo, Yichong Leng, Yihan Wu, Sheng Zhao, Xuejiao Tan.

[5]

Jason Wei, X. W. (2022). Os prompts que seguem uma sequência de ideias leva ao raciocínio em grandes modelos de linguagem.

[6]

Mero, J. (2018). The effects of two-way communication and chat service usage on consumer attitudes in the e-commerce retailing sector. Electronic Markets.

[7]

Yu Cheng, J. C. (2023). Prompt Sapper: A LLM-Empowered Production Tool for Building AI Chains. ACM Transactions on Software Engineering and Methodology.

[8]

Tongshuang Sherry Wu, E. J. (2022). PromptChainer: Chaining Large Language Model Prompts through Visual Programming. CHI Conference on Human Factors in Computing Systems Extended Abstracts.

[9]

Shwetha Sridharan, D. S. (2021). Adaptive learning management expert system with evolving knowledge base and enhanced learnability. Education and Information Technologies.

[10]

Boshi Wang, X. D. (2022). Iteratively Prompt Pre-trained Language Models for Chain of Thought. Proceedings of the 2022 Conference on Empirical Methods in Natural Language Processing.

[11]

M. Rice, K. M. (2018). Evaluating an augmented remote assistance platform to support industrial applications. IEEE 4th World Forum on Internet of Things (WF-IoT).

[12]

Cynthia A. Thompson, M. G. (2011). A Personalized System for Conversational Recommendations. J. Artif. Intell. Res.

[13]

Qing Huang, J. Z. (2023). PCR-Chain: Partial Code Reuse Assisted by Hierarchical Chaining of Prompts on Frozen Copilot. IEEE/ACM 45th International Conference on Software Engineering: Companion Proceedings (ICSE-Companion).

[14]

Yafeng Gu, Y. S. (2023). APICom: Automatic API Completion via Prompt Learning and Adversarial Training-based Data Augmentatio. Proceedings of the 14th Asia-Pacific Symposium on Internetware.