ChatPaper.aiChatPaper

LongCodeZip: Compactação de Contexto Longo para Modelos de Linguagem de Código

LongCodeZip: Compress Long Context for Code Language Models

October 1, 2025
Autores: Yuling Shi, Yichun Qian, Hongyu Zhang, Beijun Shen, Xiaodong Gu
cs.AI

Resumo

A geração de código em contextos longos está se tornando cada vez mais crítica, à medida que os Modelos de Linguagem de Grande Escala (LLMs) precisam raciocinar sobre informações extensas em bases de código. Embora avanços recentes permitam que LLMs de código processem entradas longas, os altos custos de API e a latência de geração continuam sendo gargalos significativos. Técnicas existentes de poda de contexto, como o LLMLingua, alcançam resultados promissores para textos gerais, mas ignoram estruturas e dependências específicas de código, resultando em desempenho subótimo em tarefas de programação. Neste artigo, propomos o LongCodeZip, uma nova estrutura de compressão de código plug-and-play projetada especificamente para LLMs de código. O LongCodeZip emprega uma estratégia de duplo estágio: (1) compressão de granularidade grossa, que identifica e classifica blocos em nível de função usando perplexidade condicional em relação à instrução, mantendo apenas as funções mais relevantes; e (2) compressão de granularidade fina, que segmenta as funções retidas em blocos com base na perplexidade e seleciona um subconjunto ótimo sob um orçamento adaptativo de tokens para maximizar a relevância. Avaliações em múltiplas tarefas, incluindo conclusão de código, sumarização e resposta a perguntas, mostram que o LongCodeZip supera consistentemente os métodos de base, alcançando uma taxa de compressão de até 5,6x sem degradar o desempenho da tarefa. Ao reduzir efetivamente o tamanho do contexto enquanto preserva informações essenciais, o LongCodeZip permite que LLMs escalem melhor para cenários reais de código em larga escala, avançando a eficiência e a capacidade de aplicações de inteligência de código.
English
Code generation under long contexts is becoming increasingly critical as Large Language Models (LLMs) are required to reason over extensive information in the codebase. While recent advances enable code LLMs to process long inputs, high API costs and generation latency remain substantial bottlenecks. Existing context pruning techniques, such as LLMLingua, achieve promising results for general text but overlook code-specific structures and dependencies, leading to suboptimal performance in programming tasks. In this paper, we propose LongCodeZip, a novel plug-and-play code compression framework designed specifically for code LLMs. LongCodeZip employs a dual-stage strategy: (1) coarse-grained compression, which identifies and ranks function-level chunks using conditional perplexity with respect to the instruction, retaining only the most relevant functions; and (2) fine-grained compression, which segments retained functions into blocks based on perplexity and selects an optimal subset under an adaptive token budget to maximize relevance. Evaluations across multiple tasks, including code completion, summarization, and question answering, show that LongCodeZip consistently outperforms baseline methods, achieving up to a 5.6x compression ratio without degrading task performance. By effectively reducing context size while preserving essential information, LongCodeZip enables LLMs to better scale to real-world, large-scale code scenarios, advancing the efficiency and capability of code intelligence applications.
PDF1067October 3, 2025