No quotidiano da investigação académica, frequentemente confrontamo-nos com situações frustrantes:
- Descarregamos um artigo PDF de 50 páginas e pretendemos extrair rapidamente as ideias principais, mas os modelos disponíveis online "esquecem" o conteúdo anter quando o texto atinge metade do documento;
- Precisamos de analisar simultaneamente as referências bibliográficas de múltiplos artigos relacionados, sendo o processo manual de comparação moroso e suscetível a erros;
- Ao redigir uma revisão da literatura, temos de mapear a evolução de um campo de investigação ao longo de uma década, sem dispor de ferramentas capazes de processar logicamente dezenas de artigos em simultâneo.
Estes problemas derivam fundamentalmente de uma limitação no comprimento do contexto — os modelos padrão de 7B parâmetros suportam tipicamente apenas 4K a 8K tokens, enquanto a conversão de um artigo científico completo para texto excede frequentemente os 20K tokens, sem falar na análise de múltiplos documentos em conjunto.
O ChatGLM3-6B-128K foi especificamente concebido para estes cenários. Não se limita a expandir o contexto, mas utiliza mecanismos de codificação posicional redefinidos e , permitindo ao modelo "memorizar" e compreender efetivamente 128K tokens (aproximadamente 90 mil caracteres chineses) de informação contínua.
Isto significa que podemos:
- Introduzir um número inteiro de artigos de uma edição da revista Nature para resumir a evolução metodológica;
- Carregar simultaneamente dez artigos de conferências de topo completos, incluindo referências bibliográficas, para construir automaticamente redes de co-citação;
- Executar offline em ambiente local, sem.upload de dados, garantindo privacidade — especialmente valioso para processar documentação interna de grupos de investigação ainda não publicada.
Não se trata de capacidade teórica, mas sim de um acelerador de fluxo de trabalho já validado. De seguida, utilizando a ferramenta leve Ollama, completaremos a implantação em três passos e realizaremos uma análise real de rede deCitações.
- Implantação Local do Ollama em Três Passos
2.1 Instalação do Ollama: Ambiente de Inferência em 5 Minutos
A filosofia de design do Ollama é "pronto a usar". Ao contrário das implantações tradicionais de LLMs que requerem configuração de CUDA, compilação de dependências e gestão de ambientes virtuais Python, o Ollama encapsula toda a complexidade num único binário.
Utilizadores Mac (recomendado):
# Transferir e instalar diretamente (versão mais recente do site oficial)
curl -fsSL https://ollama.com/install.sh | sh
# Iniciar o serviço (execução em segundo plano)
ollama serve &
Utilizadores Windows:
- Aceder a ollama.com e transferir o programa de instalação, executar com duplo clique;
- Após a instalação, o ícone do Ollama aparecerá na bandeja do sistema; clicar com o botão direito e selecionar "Open Web UI" para aceder à interface.
Utilizadores Linux (Ubuntu/Debian):
# Instalação num único comando
curl -fsSL https://ollama.com/install.sh | sh
# Iniciar o serviço (sem necessidade de sudo)
ollama serve &
Nota importante: O Ollama utiliza por padrão inferência híbrida CPU+GPU (Metal no Mac, CUDA ou ROCm no Windows/Linux), sem necessidade de especificação manual do dispositivo. Na primeira execução, o hardware é automaticamente detetado e o backend otimizado é selecionado.
2.2 Obter o ChatGLM3-6B-128K: Um Comando para Carregar o Modelo Especializado
O repositório de modelos do Ollama utiliza gestão espelhada, sendo cada modelo identificado pelo formato autor/nome_modelo:tag. A imagem oficial do ChatGLM3-6B-128K é mantida por EntropyYue, tendo sido otimizada para o Ollama com quantização e otimização de contexto.
Execute no terminal:
ollama pull entropyyue/chatglm3:128k
Este comando irá:
- Transferir automaticamente do Ollama Hub o modelo quantizado em formato GGUF (aproximadamente 4.2GB);
- Armazenar o modelo em cache no diretório local
~/.ollama/models/; - Verificar a integridade do ficheiro para evitar corrupção por interrupções de rede.
Porque escolher esta imagem?
A versão original do ChatGLM3-6B-128K requer implantação com Transformers+FlashAttention, consumindo mais de 12GB de memória de vídeo; enquanto a versão Ollama quantizada por AWQ requer apenas 6GB de memória de vídeo (ou 8GB de memória em modo CPU puro), oferecendo ainda uma velocidade de inferência 40% superior.
2.3 Iniciar a Interface Web e Validar a Capacidade de Texto Extenso
O Ollama dispõe de uma interface Web simples, sem necessidade de serviços adicionais:
# Aceder ao navegador em http://localhost:3000
ollama run entropyyue/chatglm3:128k
Surgirá uma interface semelhante a um chat. Vamos realizar dois testes essenciais para confirmar que a funcionalidade de contexto longo está operacional:
Teste 1: Resumo de Texto Muito Longo
Copie um resumo com aproximadamente 15000 caracteres (por exemplo, abstract+intro de um artigo arXiv), cole na caixa de entrada e envie:
Por favor, resuma em menos de 300 palavras as contribuições principais, inovações metodológicas e conclusões experimentais deste texto.
Uma resposta normal indica que o modelo carregou corretamente a janela de contexto de 128K.
Teste 2: Compreensão de Referências entre Parágrafos
Introduza as seguintes duas passagens (com uma linha vazia no meio):
A Figura 3 apresenta a distribuição dos pesos de atenção na arquitetura Transformer. Este design introduz pela primeira vez a modelagem de dependências globais em tarefas de NLP.
O mapa de calor da Figura 3 suporta a hipótese dos autores sobre "dependências de longo alcance"?
Se o modelo conseguir associar corretamente "Figura 3" e responder à questão, demonstra possuir verdadeira coerência semântica de longo alcance, em vez de simples memorização.
- Aplicação Prática: Construção Automática de Rede de Citações com ChatGLM3-128K
3.1 Cenário Real: Necessidade de Análise de Citações
Suponha que está a redigir uma revisão sobre "Evolução das Técnicas de Otimização de Inferência em Modelos de Linguagem Extensos" e dispõe de três artigos fundamentais:
- A: 《FlashAttention: Fast and Memory-Efficient Exact Attention》(2022)
- B: 《PagedAttention: I/O-Aware GPU Memory Management》(2023)
- C: 《vLLM: Easy, Fast and Cheap LLM Serving》(2023)
Os objetivos são:
- Extrair de cada artigo as publicações metodológicas-chave citadas (como variantes de Attention, otimização de KV Cache, etc.);
- Identificar os trabalhos fundacionais citados em comum pelos três artigos (como Vaswani 2017, Radford 2018);
- Descobrir publicações potencialmente importantes citadas por B e C mas não por A (podem representar divergências na linha tecnológica).
Abordagem tradicional: Abrir cada PDF → copiar manualmente referências → deduplicação em Excel → desenhar diagrama. Tempo médio: mais de 2 horas.
Agora, com ChatGLM3-128K + Ollama, completes em 10 minutos.
3.2 Preparação de Dados: Solução Mínima para PDF para Texto
Sem necessidade de scripts Python ou OCR compelxa:
-
Utilizadores Mac: Utilizar o comando
textutilpré-instalado``` textutil -convert txt artigo_A.pdf -output artigo_A.txt -
Utilizadores Windows: Abrir o PDF no Edge → Ctrl+P → selecionar "Guardar como PDF" → marcar "Guardar como ficheiro de texto";
-
Solução universal: Utilizar PDFtoText Online (apenas para artigos públicos; dados sensíveis não devem ser enviados).
Recomendação prática: Manter apenas o capítulo de referências (geralmente no final), remover cabeçalhos de página e legendas de figuras. Obteremos 3 ficheiros de texto puro, totalizando aproximadamente 65000 caracteres, bem abaixo do limite de 128K.
3.3 Construção da Rede de Citações: Engenharia de Prompts Passo a Passo
O ChatGLM3-128K suporta nativamente output estruturado. Utilizaremos instruções claras para gerar dados diretamente importáveis para Gephi ou NetworkX:
Passo 1: Extrair Citações de Um Artigo
No interface Web do Ollama, introduza:
É um analista de literatura na área de ciências da computação. Analise rigorosamente a lista de referências do artigo abaixo no seguinte formato:
【Texto de entrada】
(cole o conteúdo completo do artigo_A.txt)【Requisitos de saída】
- 输出 apenas formato JSON, sem qualquer texto explicativo;
- O JSON deve conter dois campos: 'title' (título do artigo, correspondência exata com o original), 'cited_by' (número de identificação do artigo atual, fixo como 'A');
- Cada referência corresponde a um objeto JSON, separado por nova linha;
- Ignorar livros, websites, relatórios não assinados e outras referências não académicas.
O modelo retornará aproximadamente 80 registos JSON, por exemplo:
{"title": "Attention Is All You Need", "cited_by": "A"}
{"title": "Efficient Transformers: A Survey", "cited_by": "A"}
Passo 2: Fundir Três Artigos e Identificar Co-ocorrências
Combine os resultados JSON de A/B/C num ficheiro all_citations.json, depois introduza:
Analise os dados de citações abaixo e gere um relatório de análise de rede de citações:
【Entrada】conteúdo de all_citations.json
【Requisitos】
- Estatísticas de documentos citados por pelo menos 2 artigos (co-citações), ordenados por frequência decrescente;
- Liste as "citações únicas" citadas por apenas um artigo, indicando a qual pertence;
- 输出 como tabela Markdown com colunas: Título do documento, Frequência de co-citação, Artigos envolvidos, Breve descrição (ex: "Trabalho fundacional do Transformer").
O modelo gerará uma tabela estruturada, por exemplo:
| Título | Co-citações | Artigos | Descrição |
|---|---|---|---|
| Attention Is All You Need | 3 | A,B,C | Artigo original do Transformer |
| FlashAttention | 2 | A,B | Cálculo eficiente de atenção |
| KV Cache Optimization | 1 | C | Otimização核心 do vLLM |
3.4 Visualização e Perspetivas Profundas: De Dados a Isnights
Copie a tabela acima para o Excel e utilize "PivotTable" para gerar rapidamente:
- Gráfico de rede de co-citações: Use "Título do documento" como linha e "Artigos envolvidos" como coluna, marque com ☑, exporte matriz de adjacência;
- Mapa de rota tecnológica: Organize cronologicamente os documentos co-citados, identificando que A/B se focam em otimização algorítmica enquanto C enfatiza engenharia de sistemas.
Pode ainda solicitar diretamente ao modelo insights mais profundos:
Com base na análise de co-citações acima, identifique em 3 frases as três etapas de evolução tecnológica no domínio da otimização de inferência de LLMs, Exemplos de artigos representativos.
Modelo de resposta:
- Avanço algorítmico (2017–2022): Representado por Vaswani 2017 e Touvron 2023, resolvendo problemas de complexidade computacional da atenção;
- Otimização ao nível do sistema (2022–2023): FlashAttention e PagedAttention melhoram o throughput através de gestão de memória;
- Industrialização (2023–-presente): vLLM integra ambas as anterior para fornecer um framework de inferência pronto a usar.
Este já constitui uma subsecção de "Evolução Tecnológica" pronta a incluir na revisão.
- Técnicas Avançadas: Análise Precisa de Texto Extenso
4.1 Ajite do Prompt: Especialidades do Texto Académico
Embora o ChatGLM3-128K seja potente, a literatura académica apresenta características específicas:
- Títulos frequentemente contêm abreviaturas (ex: "BERT", "ViT"), requerendo expansão do nome completo;
- Formatos de citação variados (APA/IEEE/ACM), podendo o modelo confundir autores com títulos;
- Descrições metodológicas aninhadas ("Melhoramos o módulo XX de Zhang et al. (2021), adicionando o mecanismo YY").
Modelo de prompt recomendado:
Está a analisar artigos académicos na área de computação. Por favor, note especialmente:
- Todas as abreviaturas devem ser expandidas na primeira ocorrência (ex: 'BERT (Bidirectional Encoder Representations from Transformers)');
- Nas entradas de citação, o nome do autor e o ano devem ser separados por espaço, e o título deve ser envolvido em aspas;
- Para descrições do tipo "baseado em XX", considere XX como documento citado, mesmo não aparecendo explicitamente na lista de referências.
4.2 Augmentação com Base de Conhecimento Local: Aceder à Sua Própria Biblioteca
O Ollama suporta RAG (Retrieval-Augmented Generation), permitindo que o modelo "memorize" documentação privada:
-
Converta relatórios técnicos internos do grupo de investigação e artigos não publicados para TXT, guardando no diretório
~/minha_pesquisa/; -
Crie um modelo personalizado com
ollama create minha-pesquisa -f Modelfile, onde o conteúdo do Modelfile é:``` FROM entropyyue/chatglm3:128k ADD ./minha_pesquisa/ /app/pesquisa/ SYSTEM """ É o assistente de investigação exclusivo do nosso grupo. Todas as respostas devem basear-se nos documentos do diretório /app/pesquisa/. Quando o utilizador fizer perguntas, procure primeiro informações relevantes nesse diretório, depois combine com o seu próprio conhecimento para responder. """ -
Construir e executar:
ollama build -f Modelfile -t minha-pesquisa && ollama run minha-pesquisa
Neste ponto, o modelo compreende tanto literatura pública quanto acede ao seu conhecimento privado, funcionando como um verdadeiro "cérebro académico pessoal".
4.3 Otimização de Desempenho: Equilíbrio entre Velocidade e Precisão
Embora o contexto de 128K seja poderoso, nem sempre é necessário:
- Perguntas frequentes (como consulta de fórmulas, explicação de conceitos): Utilize o parâmetro
--num_ctx 4096para limitar o contexto, resposta 3x mais rápida; - Análise de documentos longos: Adicione
--num_ctx 131072(128K) para garantir carregamento completo; - Memória de vídeo insuficiente: Adicione
--num_gpu 0para forçar inferência por CPU (velocidade reduzida ~50%, mas 100% funcional).
Na interface Web do Ollama, estes parâmetros podem ser passados via URL:
http://localhost:3000/?model=entropyyue/chatglm3:128k&num_ctx=131072
- Conclusão: Como os Modelos Locais Transformam o Fluxo de Trabalho de Investigação
5.1 Problemas Resolvidos
Revisitando todo o processo, as mudanças trazidas pela combinação ChatGLM3-6B-128K + Ollama são substanciais:
- Custo temporal: Análise de rede de citações comprimida de 2 horas para 15 minutos, eficiência 8x superior;
- Profundidade de análise: Já não nos limitamos à leitura isolada de artigos individuais, mas estabelecemos perspetivas transversais entre documentos;
- Soberania dos dados: Todos os PDFs, notas e análises correm localmente, evitando riscos de privacidade dos serviços em nuvem;
- Reprodutibilidade: Todo o processo é conduzido por prompts de texto puro, permitindo que outros repliquem a lógica de análise com um único comando.
Já não se trata de aplicação superficial de "escrever sumários com IA", mas sim de utilizar LLMs como infraestrutura de investigação — tal como o LaTeX para composição tipográfica ou o Git para gestão de código, tornando-se numa ferramenta essencial para académicos modernos.
5.2 Quem Deve Experimentar Imediatamente
- Mestrados e Doutoramentos: Mapear rapidamente a base literária para propostas de investigação, evitando "li 100 artigos, não consigo delinear a linha principal";
- Docentes: Desenhar aulas práticas de "Análise de Literatura" para alunos de licenciatura, desenvolvendo pensamento crítico com dados reais;
- Laboratórios empresariais: Analisar white papers tecnológicos de concorrentes, dentro dos limites de conformidade, extraindo pistas de布局 de patentes.
Não é necessário compreender a teoria dos modelos; basta saber copiar e colar e ler tabelas para obter imediatamente ganhos de produtividade.
5.3 Próximos Passos: Da Análise de Citações ao Fluxo Completo de Investigação
Este artigo focou-se na rede de citações, mas é apenas o início. Com o mesmo ambiente local, pode ainda:
- Apoio à reprodução de experiências: Envie a secção Methods de um artigo, peça ao modelo para gerar pseudocódigo PyTorch;
- Revisão de artigos: Cole parágrafos do rascunho, especifique "revisar conforme o estilo do Nature Communications";
- Apoio a candidaturas de financiamento: Introduza o plano de investigação, gere uma comparação de "Estado atual da investigação nacional e internacional".
A tecnologia por si só não tem magia; o valor real reside em libertar os investigadores do trabalho repetitivo, permitindo mais tempo para refletir sobre o "porquê" e "o que fazer a seguir".
Quando pela primeira vez o modelo indica com precisão um documento fundamental ignorado pelos três artigos, esse momento de "então era isto" é exatamente a essência mais genuína da investigação. Desta vez, não precisa de esperar pela resposta do servidor, não precisa de preocupação com fuga de dados — basta no seu portátil, Digitar um comando.