Classificar os resumos¶
A etapa mapa classificar lê o título e o resumo de cada documento e preenche as variáveis do codebook do projeto (codebook.yaml) com um modelo local. Para cada resposta, o modelo copia do resumo um trecho curto que a justifica, a evidência, e a etapa confere se esse trecho está mesmo no texto. Esta página mostra como rodar. Para entender o método, veja o ADR 0011; para escrever as variáveis, Escrever um codebook.
Antes de começar¶
- O projeto precisa de um corpus coletado (
mapa coletar) e de um codebook.mapa novojá traz o codebook de exemplo, com 6 variáveis sobre método e recorte. - O Ollama precisa estar rodando, com o modelo de
modelos.classificacao.modelodomapa.yamlinstalado (qwen3.5:9bno perfil padrão).mapa diagnosticoconfere as duas coisas. - A classificação é a etapa mais longa do pipeline: no Mac de desenvolvimento (M4 Pro, 24 GB), cada resumo leva uns segundos, e o piloto inteiro, horas. Feche o que puder antes de rodar, porque o modelo ocupa uns 7 GB de memória.
Estimar o tempo antes¶
uv run mapa classificar --estimar
Classifica 5 documentos, mostra os resultados e projeta quanto falta neste computador. Os 5 ficam guardados: a rodada completa não os refaz.
Rodar¶
uv run mapa classificar
Cada resposta é guardada no estado.sqlite assim que chega, e o resultado em dados/classificacao/ é regravado a cada 50 documentos, então o painel e as consultas já mostram o que foi classificado enquanto a etapa corre. Se a etapa for interrompida (Ctrl+C, falta de memória, o computador que dormiu), rode o mesmo comando de novo: ela continua de onde parou, sem refazer nada.
No fim, a saída mostra, por variável, os valores mais frequentes e a taxa de evidência literal (o trecho aparece no resumo tal como o modelo o copiou). Também mostra quantas respostas vieram em JSON válido na primeira tentativa e o tempo mediano por documento. Documentos sem resumo ficam de fora e aparecem na contagem.
Outras formas de rodar:
| Opção | O que faz |
|---|---|
--limite N |
Classifica só os primeiros N da fila (a amostra de validação primeiro, depois por id). |
--somente-amostra |
Classifica só os documentos da amostra de validação (mapa validar amostra). Útil para começar a validação antes da rodada completa. |
--modelo X |
Usa outro modelo do Ollama, para comparar com o principal na amostra de validação. O resultado fica ao lado do principal, e o painel continua mostrando o do modelo do mapa.yaml. |
Quando refazer¶
A chave de cada resposta guardada inclui o texto, o codebook, o modelo (com a versão exata) e os parâmetros. Por isso:
- mudar o codebook (uma definição, uma categoria, um exemplo) faz a próxima rodada classificar tudo de novo. O
mapa statusavisa: "a classificação é de outro codebook"; - trocar o modelo ou atualizá-lo no Ollama também refaz tudo;
- uma coleta nova só classifica os documentos novos.
Teste o codebook numa amostra (--limite 20) antes de rodar o corpus inteiro.
Consultar o resultado¶
O resultado fica em dados/classificacao/, um arquivo por modelo e codebook, e vai para o painel quando a etapa termina. Em Python:
import mapa_da_ciencia.api as mapa
mapa.consultar(
"cp-scielo",
"""
SELECT valor, count(*) AS n
FROM classificacoes
WHERE variavel = 'abordagem'
GROUP BY valor ORDER BY n DESC
""",
)
A view classificacoes tem uma linha por documento × variável, com o valor, a evidência, o status da conferência (literal, aproximada, ausente ou dispensada) e a posição do trecho no resumo. Veja a API Python.
Antes de usar os números¶
Um modelo pequeno erra. Antes de tirar conclusões das proporções, meça a concordância do modelo com uma leitura de referência na amostra de validação: veja Codificar a amostra.