A residência de modelos consiste em manter os pesos do modelo na memória do anfitrião ou do acelerador entre pedidos, para que a inferência seguinte evite parte ou todo o trabalho de carregamento.
Um assistente doméstico utilizado a cada poucos minutos funciona de forma muito diferente quando um modelo de oito gigabytes permanece na memória da GPU, em vez de ser lido do armazenamento sempre que é necessário. A residência pode existir em vários níveis: cache do sistema de ficheiros, páginas do anfitrião mapeadas, RAM fixada ou VRAM pronta para os kernels. Manter os pesos aquecidos reduz o atraso de arranque, mas reserva memória escassa e pode impedir a execução de outros modelos ou cargas de trabalho.
A residência descreve onde permanece o estado reutilizável do modelo
Um modelo frio existe apenas no armazenamento e tem de ser lido, alocado, transformado e copiado antes da inferência. Os pesos residentes no anfitrião evitam as leituras do armazenamento, enquanto os pesos residentes no acelerador também evitam a transferência do anfitrião para o dispositivo e o caminho de inicialização do runtime. Esta distinção continua visível durante os testes domésticos posteriores.
A análise de streaming de modelos da NVIDIA separa o caminho de carregamento do modelo do trabalho de transferência e inicialização, mostrando por que razão a localização dos pesos domina muitos arranques a frio. Um processo aquecido pode ainda precisar de inicialização do tokenizador, do grafo, do adaptador ou da cache. O resultado intermédio tem de permanecer inspecionável antes de prosseguir com a automatização.
A residência não é o mesmo que um pedido ativo. Um modelo pode permanecer carregado sem cache KV nem dados do utilizador, pronto para servir, enquanto consome memória e alguns recursos em segundo plano. Esse limite deve ser medido separadamente em condições de funcionamento realistas.
O aquecimento existe em toda a hierarquia de memória
O sistema operativo pode manter páginas do modelo na cache de páginas mesmo depois de um processo terminar, o mapeamento de memória pode causar falhas de página de forma preguiçosa e um processo de serviço pode manter tensores na RAM ou na VRAM. Cada nível mais aquecido costuma reduzir a latência, consumindo simultaneamente um recurso mais limitado.
O ServerlessLLM analisa o carregamento de modelos por níveis entre o armazenamento, a memória do anfitrião e a memória da GPU, e agenda o carregamento para reduzir o custo do arranque a frio. A hierarquia explica por que razão um modelo aparentemente descarregado pode reiniciar rapidamente até que a pressão sobre a cache expulse as suas páginas.
A quantização reduz os bytes necessários para a residência e pode permitir que vários modelos especializados coexistam. Também pode alterar os kernels de execução e a qualidade, pelo que as poupanças de memória não devem ser contabilizadas como um aumento gratuito da capacidade. A consequência prática surge quando várias fontes competem por um contexto limitado.
A política de expulsão converte a pressão sobre a memória em atraso de arranque
Um serviço pode manter residentes os modelos utilizados com frequência e expulsar os mais frios com base na recência, na procura prevista, na prioridade ou no custo de carregamento. O encaminhamento de vários modelos precisa de regras de admissão para que o trabalho em segundo plano não substitua o modelo de voz que tem de responder imediatamente.
O FlexGen demonstra o descarregamento de pesos entre a GPU, a CPU e o armazenamento para inferência com recursos limitados. Embora se destine ao débito, torna explícito o compromisso fundamental: mover os pesos entre níveis poupa memória escassa, mas acrescenta custos de transferência e agendamento.
O limite de falha é a pressão sobre a memória que desencadeia troca, reinícios por falta de memória ou thrashing de expulsão. Manter demasiados pesos carregados pode tornar todos os modelos mais lentos e menos fiáveis do que aquecer deliberadamente um conjunto de trabalho mais pequeno. Esta dependência deve permanecer explícita na interface final.
Defina a residência com base na distância de reutilização e na margem de memória
Meça o tempo de arranque a frio, com o anfitrião aquecido e com o acelerador aquecido para cada modelo e, em seguida, registe o intervalo entre pedidos, os bytes carregados, a utilização de VRAM e RAM, o consumo em repouso, o número de expulsões e a procura das cargas de trabalho concorrentes. O resultado tem, portanto, de ser verificado face aos dados originais.
Compare o mecanismo de arranque com o arranque com mapeamento de memória. Reproduza uma semana de chegadas com janelas de manutenção ativa e prioridades candidatas, incluindo picos, longos períodos de inatividade e pedidos simultâneos de modelos. Esta distinção continua visível durante os testes domésticos posteriores.
Mantenha um modelo residente quando a latência de carregamento evitada e a frequência de reutilização justificarem a memória protegida. Expulse-o quando a capacidade reservada causar filas ou thrashing e preserve uma margem de emergência para a cache KV e as alocações temporárias.
Centro de Tecnologia e IA
Mais para Ler

O que é a deriva das incorporações e quando é necessário reconstruir um índice de pesquisa privado?
Decifrar o desvio do modelo, do pré-processamento, do corpus e das consultas; distinguir monitorização de incompatibilidade; e decidir quando é necessário reconstruir um índice...

O que é a compatibilidade dos tokenizadores e porque pode interromper a mudança de modelo?
Descobre a identidade do vocabulário, a semântica dos tokens especiais, os modelos de chat, os tokens em cache, os adaptadores e as verificações de...

O que é a taxa de aceitação da descodificação especulativa e porque é importante?
Defina a métrica de aceitação, elabore a verificação, o comportamento de rejeição, os limites de aceleração, a variação da carga de trabalho e a...

