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].

Ligações externas

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

Notas

  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]