Voltar aos resultados

Aprendizado em contexto

In-context Learning (ICL)

Comportamento
Intermediário
Categoria: Aprendizado e tarefas de MLSubcategoria: Paradigmas de aprendizado

O que significa

É a capacidade de um modelo de linguagem executar uma tarefa nova apenas a partir das instruções e dos exemplos incluídos no prompt, sem que seus parâmetros sejam alterados. O modelo “aprende” a tarefa durante a própria conversa, e esse aprendizado dura apenas aquela solicitação. Existem graus dessa capacidade. Zero-shot é quando o modelo recebe só a instrução. One-shot, quando recebe um exemplo. Few-shot, quando recebe alguns exemplos que mostram o padrão esperado de entrada e saída. Foi a observação dessa capacidade no GPT-3, em 2020, que mostrou que modelos grandes o suficiente podem ser adaptados a novas tarefas sem treinamento adicional, o que abriu caminho para a engenharia de prompt como prática.

Como usar na prática de produto

Em Produto, aprendizado em contexto é o que torna possível criar uma funcionalidade de IA em horas em vez de semanas. Em vez de coletar dados e treinar um modelo, o time descreve a tarefa e mostra alguns exemplos no prompt. Por exemplo, para classificar o tom de mensagens de clientes, é possível incluir no prompt cinco mensagens já classificadas e pedir que o modelo classifique a próxima. Para padronizar o formato de uma resposta, basta mostrar duas ou três respostas-modelo. O cuidado é com a qualidade dos exemplos: eles definem o comportamento do modelo. Exemplos ruins, inconsistentes ou pouco representativos contaminam a saída. E, como cada chamada precisa carregar os exemplos, prompts muito longos aumentam custo e latência.

Quando usar este termo ou outro

Use aprendizado em contexto (ou few-shot) quando quiser adaptar o modelo a uma tarefa rapidamente, com poucos exemplos e sem treinar nada. Use fine-tuning quando o prompt com exemplos ficou longo demais, caro demais ou instável, e o comportamento precisa ser incorporado ao modelo de forma permanente. Use RAG quando o que falta ao modelo é conhecimento, e não a forma de executar a tarefa. Uma forma simples de diferenciar: aprendizado em contexto ensina pelo prompt, e o efeito dura uma chamada; fine-tuning ensina pelo treinamento, e o efeito fica no modelo.

Exemplos de aplicação

  • Classificação de tom: incluir cinco e-mails já classificados no prompt e pedir a classificação de um novo.
  • Padronização de formato: mostrar três exemplos de resposta no formato desejado.
  • Extração de dados: apresentar um exemplo de texto e do JSON esperado como saída.
  • Tradução de estilo: mostrar como transformar um texto técnico em linguagem simples.
  • Roteamento: dar exemplos de solicitações e das áreas para onde cada uma deve ir.
  • Protótipos: validar rapidamente se uma tarefa é viável antes de investir em treinamento.

Origem do termo

Observado e nomeado em Brown et al., Language Models are Few-Shot Learners (GPT-3, 2020).

Fonte técnica

Brown et al., Language Models are Few-Shot Learners (2020)

Termos relacionados