Generated Knowledge Prompting (PT)

From Systems analysis wiki
Jump to navigation Jump to search

Generated Knowledge Prompting (GKP, ou prompting com geração de conhecimento) — é um método de engenharia de prompt desenvolvido para aprimorar a capacidade dos grandes modelos de linguagem (LLMs) em resolver tarefas que exigem raciocínio e o uso de conhecimento factual[1]. A ideia principal do GKP é fazer com que o modelo execute a tarefa em duas etapas: primeiro, gerar um conjunto de fatos relevantes sobre o tema da consulta e, em seguida, com base nesse conhecimento, formular a resposta final[2].

Essa abordagem permite que os LLMs ativem e utilizem seu conhecimento interno, parametrizado, que está implicitamente codificado em bilhões de parâmetros, mas que muitas vezes não é acessível por meio de consultas padrão. O GKP resolve o problema em que os modelos "não sabem o que sabem" e os ajuda a conectar fatos dispersos para construir uma conclusão correta[2].

História e origem

O método Generated Knowledge Prompting foi apresentado pela primeira vez no artigo científico "Generated Knowledge Prompting for Commonsense Reasoning", preparado por um grupo de pesquisadores liderado por Jiacheng Liu. A versão inicial do trabalho foi publicada no arquivo de preprints arXiv em 15 de outubro de 2021, e a versão final foi apresentada na prestigiada conferência Association for Computational Linguistics (ACL) em 2022[1].

O GKP tornou-se um dos primeiros e mais significativos métodos a propor uma mudança no paradigma de interação com os LLMs, deslocando o foco da geração de uma resposta em uma única etapa para um processo cognitivo de duas etapas.

Mecanismo de funcionamento em duas etapas

O mecanismo do GKP divide uma tarefa complexa em dois subprocessos mais simples: a extração de informações relevantes e seu uso subsequente para inferência.

Etapa 1: Geração de conhecimento (Knowledge Generation)

Na primeira etapa, um modelo de linguagem ("gerador de conhecimento") é utilizado para criar vários (M) fragmentos de conhecimento relevantes para a pergunta original. Esse processo é iniciado com o auxílio da técnica de few-shot prompting, na qual são fornecidos ao modelo alguns exemplos para aprendizado "em contexto".

O prompt para a geração de conhecimento possui uma estrutura estritamente definida:

  1. Instrução: Uma orientação geral, por exemplo: "Gere alguns fatos sobre o tema".
  2. Exemplos de demonstração: Vários pares "pergunta-conhecimento" escritos por um humano. Esses exemplos desempenham um papel crucial, pois ensinam ao modelo que tipo de informação é considerada útil. O conhecimento gerado não deve conter a resposta diretamente.
  3. Nova pergunta: A consulta original do usuário, para a qual o conhecimento precisa ser gerado.

Para uma única pergunta, são geradas M variantes de conhecimento (no trabalho original, M=20) para obter um conjunto diversificado de fatos para a segunda etapa[1].

Etapa 2: Integração do conhecimento e formulação da resposta (Knowledge Integration)

Na segunda etapa, utiliza-se outro modelo de linguagem ("modelo de inferência"), que pode operar tanto no modo zero-shot quanto ser ajustado (fine-tuned) para uma tarefa específica.

O processo de integração ocorre da seguinte forma:

  1. Aumentação da consulta: A pergunta original (q) é combinada sequencialmente com cada um dos M fragmentos de conhecimento gerados (km). Como resultado, são criadas M+1 consultas aumentadas (incluindo a pergunta original sem conhecimento).
  2. Avaliação e seleção da resposta: O modelo de inferência avalia a probabilidade condicional de cada opção de resposta possível (a) para cada consulta aumentada. A resposta final é a opção que obtém a maior pontuação de probabilidade em pelo menos uma das consultas.

Esse mecanismo de duas etapas introduz uma espécie de processo metacognitivo: "Antes de responder, pense e formule o que você sabe sobre este tópico".

Eficácia e resultados dos testes

A eficácia do GKP foi testada em uma série de benchmarks acadêmicos para avaliar o raciocínio baseado em senso comum. O método demonstrou uma melhoria significativa no desempenho em comparação com abordagens básicas.

Resumo dos resultados do GKP nos principais benchmarks (dados de Liu et al., 2022)[1]
Nome do benchmark Tarefa Acurácia do modelo base (%) Acurácia com GKP (%) Aumento (%)
NumerSense Senso comum numérico 64.05 72.47 +8.42
CommonsenseQA Senso comum geral 39.89 47.26 +7.37
CommonsenseQA 2.0 Senso comum geral 70.20 73.03 +2.83
QASC Senso comum científico 76.74 80.33 +3.59

O maior aumento é observado no modo zero-shot, o que comprova a capacidade do GKP de ativar eficientemente o conhecimento interno do modelo sem treinamento adicional.

Análise comparativa com outras técnicas

GKP vs. Chain-of-Thought (CoT)

A principal diferença entre o GKP e o Chain-of-Thought (CoT) está no tipo de informação gerada:

  • GKP gera conhecimento declarativo — fatos, definições, afirmações sobre o mundo ("o quê"). Ele fornece ao modelo um contexto adicional.
  • CoT gera conhecimento procedural — passos lógicos, cálculos, uma sequência de raciocínios ("como"). Ele fornece ao modelo um caminho de raciocínio.

Dessa forma, o GKP fornece a base factual, enquanto o CoT fornece a estrutura lógica da inferência[3].

GKP vs. Retrieval-Augmented Generation (RAG)

Ao contrário do GKP, o método Retrieval-Augmented Generation (RAG) utiliza fontes de conhecimento externas e não paramétricas.

  • GKP utiliza conhecimento interno, que o modelo assimilou durante o treinamento. Ele força o modelo a "lembrar" o que já sabe.
  • RAG utiliza conhecimento externo de bancos de dados, documentos ou da internet. Ele força o modelo a "buscar" informações no mundo externo.

A escolha entre GKP e RAG depende da tarefa: o GKP é eficaz se o conhecimento necessário for de domínio público e bem representado nos dados de treinamento, enquanto o RAG é indispensável para dados altamente especializados, recentes ou proprietários.

Limitações e riscos

  • Problema de "alucinações": O principal risco do GKP é a possibilidade de gerar fatos incorretos. Se, na primeira etapa, o modelo gerar uma afirmação falsa, na segunda etapa ela será tratada como verdadeira, levando a uma resposta confiante, mas completamente errada.
  • Custos computacionais: O método exige múltiplas chamadas à LLM (M+1 chamadas para uma única consulta), o que aumenta significativamente o tempo de resposta (latency) e o custo de uso em comparação com o prompting padrão.
  • Complexidade no desenvolvimento de prompts: A eficácia do GKP depende fortemente da qualidade dos exemplos few-shot, cuja criação é uma tarefa não trivial e trabalhosa.

Evolução e abordagens híbridas

As ideias subjacentes ao GKP serviram como catalisador para o desenvolvimento de técnicas de prompting mais complexas e robustas, tais como:

  • Hint-before-Solving (HSP): Um sucessor ideológico direto do GKP, que aplica o princípio de duas etapas ("primeiro o conhecimento, depois a ação") não a uma resposta simples, mas a um processo de raciocínio mais complexo no CoT[4].
  • Verify-and-Edit (VE): Um framework híbrido que responde ao problema de "alucinações" no GKP e no CoT. O VE primeiro gera uma cadeia de raciocínio (como o CoT), depois verifica automaticamente os fatos-chave usando uma busca externa (como o RAG) e edita o raciocínio antes de gerar a resposta final[5].

Literatura

  • Liu, J. et al. (2021). Generated Knowledge Prompting for Commonsense Reasoning. arXiv:2110.08387
  • Liu, J. et al. (2022). Generated Knowledge Prompting for Commonsense Reasoning. In *Proc. ACL 2022*. ACL:2022
  • Wei, J. et al. (2022). Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903
  • Wang, X. et al. (2022). Self-Consistency Improves Chain-of-Thought Reasoning in Language Models. arXiv:2203.11171
  • Fu, J. et al. (2024). Hint-before-Solving Prompting: Guiding LLMs to Effectively Utilize Encoded Knowledge. arXiv:2402.14310
  • Zhao, R. et al. (2023). Verify-and-Edit: A Knowledge-Enhanced Chain-of-Thought Framework. arXiv:2305.03268
  • Lin, B. et al. (2020). NumerSense: Probing Numerical Commonsense Knowledge of Pre-trained Language Models. Dataset page
  • Talmor, A. et al. (2019). CommonsenseQA: A Question-Answering Challenge Targeting Commonsense Knowledge. ACL paper
  • Khot, T. et al. (2019). QASC: A Dataset for Question Answering via Sentence Composition. arXiv:1910.11473
  • Mu, J. et al. (2023). Learning to Compress Prompts with Gist Tokens. arXiv:2304.08467

Referências

  1. 1.0 1.1 1.2 1.3 Liu, J., Liu, A., Lu, X., et al. (2022). «Generated Knowledge Prompting for Commonsense Reasoning». Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics. [1]
  2. 2.0 2.1 Liu, J., Liu, A., Lu, X., et al. (2021). «Generated Knowledge Prompting for Commonsense Reasoning». arXiv preprint arXiv:2110.08387. [2]
  3. Wei, J., Wang, X., Schuurmans, D., et al. (2022). «Chain-of-Thought Prompting Elicits Reasoning in Large Language Models». arXiv preprint arXiv:2201.11903. [3]
  4. Katz, O., Maman, Y., et al. (2024). «Hint-before-Solving Prompting: Guiding LLMs to Effectively Utilize Scaffolding». arXiv preprint arXiv:2402.14310. [4]
  5. Zhao, R., Zhang, J., et al. (2023). «Verify-and-Edit: A Knowledge-Enhanced Chain-of-Thought Framework». arXiv preprint arXiv:2305.03268. [5]