ChatPaper.aiChatPaper

Preenchimento no Meio Consciente de Funções como Treinamento Intermediário para Modelos Fundamentais de Agentes de Codificação

Function-Aware Fill-in-the-Middle as Mid-Training for Coding Agent Foundation Models

July 14, 2026
Autores: Yubo Wang, Jiarong Liang, Yuxuan Zhang, Xuye Liu, Cong Wei, Yuyu Zhang, Ping Nie, Wenhu Chen
cs.AI

Resumo

Agentes de codificação devem integrar retornos de ferramentas externas em seu raciocínio contínuo — uma capacidade que o treinamento padrão da esquerda para a direita em código expõe apenas em sua direção direta. Observamos que o ciclo ação-observação-continuação de um agente de codificação é estruturalmente isomórfico a um local de chamada de função, onde um chamador vincula argumentos, um chamado retorna um valor computado em outro lugar, e o código subsequente consome esse valor. Essa estrutura de condicionamento existe em escala da internet em código comum. Nós a exploramos através do treinamento intermediário "fill-in-the-middle" (FIM) consciente de funções: um objetivo auto-supervisionado que mascara funções selecionadas por meio de análise de grafo de dependência de programa e um critério duplo de complexidade-inferabilidade. Realizamos treinamento intermediário no Qwen2.5-Coder-Instruct (7B/14B) e no Qwen3-8B em um corpus descontaminado de 2,6 bilhões de tokens extraído de 968 repositórios GitHub, em seguida aplicamos pipelines de pós-treinamento agentivo existentes. O treinamento intermediário melhora o SWE-Bench-Verified em +2,8/+3,0 para 7B/14B e em +3,2 no Qwen3-8B; os ganhos no SWE-Bench-Lite são de +3,7/+4,0/+5,4 nos mesmos modelos. A melhoria se mantém em dois pipelines de pós-treinamento (R2E-Gym, SWE-Smith) e em uma base não-Qwen2.5 (Qwen3-8B com SWE-Lego). Além dos ganhos no domínio, o treinamento intermediário também mitiga a erosão de capacidade que o pós-treinamento agentivo inflige em tarefas de codificação não agentivas (por exemplo, LiveCodeBench) e benchmarks de uso de ferramentas não codificadoras (tau-bench, BFCL): embora o corpus de treinamento intermediário contenha apenas código Python, o viés indutivo de chamada de função sobrevive ao pós-treinamento e produz ganhos consistentes.
English
Coding agents must integrate external tool returns into ongoing reasoning - a capability that standard left-to-right pretraining on code exposes only in its forward direction. We observe that the action-observation-continuation loop of a coding agent is structurally isomorphic to a function call site, where a caller binds arguments, a callee returns a value computed elsewhere, and downstream code consumes that value. This conditioning structure exists at internet scale in ordinary code. We exploit it through function-aware fill-in-the-middle (FIM) mid-training: a self-supervised objective that masks functions selected via program dependency graph analysis and a complexity-inferability double criterion. We mid-train Qwen2.5-Coder-Instruct (7B/14B) and Qwen3-8B on a 2.6B-token decontaminated corpus drawn from 968 GitHub repositories, then apply existing agentic post-training pipelines. Mid-training improves SWE-Bench-Verified by +2.8/+3.0 at 7B/14B and by +3.2 on Qwen3-8B; SWE-Bench-Lite gains are +3.7/+4.0/+5.4 on the same models. The improvement holds across two post-training pipelines (R2E-Gym, SWE-Smith) and on a non-Qwen2.5 base (Qwen3-8B with SWE-Lego). Beyond in-domain gains, mid-training also mitigates the capability erosion that agentic post-training otherwise inflicts on non-agent coding (e.g., LiveCodeBench) and non-coding tool-use benchmarks (tau-bench, BFCL): although the mid-training corpus contains Python code only, the function-call inductive bias survives post-training and yields consistent gains.