Avanço na Geração de Texto com Decodificação Especulativa Ordenada
Uma nova abordagem pra melhorar a eficiência e a velocidade nos modelos de linguagem.
― 5 min ler
Índice
Modelos de linguagem grandes (LLMs) viraram super populares para várias tarefas, tanto na pesquisa quanto na indústria. Mas, conforme esses modelos ficam maiores, os custos para usá-los também aumentam. Encontrar maneiras de deixá-los mais baratos e rápidos é bem importante. Um método que mostra potencial é o que chamamos de Decodificação Especulativa. Essa abordagem ajuda a acelerar como esses modelos geram texto, permitindo que eles adivinhem várias palavras possíveis ao mesmo tempo.
O Que É Decodificação Especulativa?
Decodificação especulativa é um processo em duas etapas. Primeiro, um Modelo de Rascunho menor cria palavras potenciais para a próxima. Depois, essas suposições são checadas pelo Modelo Principal, que é maior, para ver quais fazem sentido. Gerando múltiplas opções de uma vez, conseguimos acelerar o processo todo. Métodos tradicionais dependem de um único modelo de rascunho para ajudar um modelo principal, mas isso cria desafios quando se usa vários modelos principais que podem precisar de diferentes tipos de assistência.
O Problema com os Métodos Atuais
Com os LLMs ficando mais diversos e complexos, usar um modelo de rascunho para vários modelos principais pode ser ineficiente. Ele pode não dar as melhores suposições para cada situação. Além disso, mudar o modelo de rascunho baseado em diferentes tarefas pode aumentar ainda mais os custos e a complexidade. Este artigo apresenta uma nova abordagem para resolver esses problemas, permitindo que um modelo de rascunho atenda vários modelos principais ao mesmo tempo.
Apresentando a Decodificação Especulativa Classificada (S2D)
Nossa solução se chama Decodificação Especulativa Classificada (S2D). A ideia por trás do S2D é treinar um modelo de rascunho capaz de apoiar vários modelos principais sem precisar criar rascunhos separados para cada um. Através de um método de treinamento único, conseguimos desenvolver Sub-modelos dentro do modelo de rascunho. Isso permite que o modelo de rascunho atue em múltiplas tarefas ao mesmo tempo, tornando-o mais eficiente e com custo-benefício.
Como Funciona o S2D
O conceito principal do S2D é treinar diferentes camadas de um modelo juntas. Em vez de treinar modelos separadamente, criamos sub-modelos a partir de um único modelo maior. Isso nos permite usar esses sub-modelos de forma eficiente com os modelos principais.
Para implementar o S2D, seguimos esses passos:
Treinando o Modelo de Rascunho: Pegamos um modelo de linguagem pré-treinado e criamos vários modelos menores a partir dele. Isso nos dá diferentes capacidades de rascunho conforme o tamanho e a necessidade de cada tarefa.
Gerando Tokens de Rascunho: Ao produzir texto, usamos um sistema baseado em confiança que decide qual sub-modelo usar na geração da próxima palavra. Esse processo ajuda a garantir que produzimos as melhores suposições de acordo com as necessidades da tarefa.
Feedback do Modelo Principal: Após gerar as palavras possíveis, enviamos essas opções para o modelo principal, que verifica a adequação delas. Os melhores candidatos são escolhidos com base no feedback.
Vantagens do S2D
Usando o S2D, conseguimos várias vantagens:
Eficiência de Custo: Com um único modelo de rascunho capaz de atender vários modelos principais, reduzimos a complexidade e os custos associados à gestão de múltiplos modelos.
Desempenho Aprimorado: Como o modelo de rascunho pode gerar suposições adaptadas a várias tarefas-alvo, a qualidade dos resultados melhora. Essa adaptabilidade permite um uso melhor dos recursos.
Processamento Mais Rápido: A geração paralela de suposições ajuda a acelerar o processo de inferência, tornando mais rápido obter resultados dos LLMs.
Comparando S2D com Outras Técnicas
Na comunidade de pesquisa, várias métodos foram propostos para tornar os LLMs mais rápidos, como reduzir camadas do modelo, mudar como os modelos são estruturados, e a própria decodificação especulativa. Embora muitos desses métodos sejam eficazes, eles costumam focar em tarefas específicas ou envolvem ajustes consideráveis nos modelos existentes.
Avaliação de Desempenho
Testamos nosso método S2D em vários tamanhos de modelos usando um benchmark chamado Spec-Bench. Os resultados mostraram que o S2D muitas vezes superava métodos tradicionais. Para modelos menores, o aumento de velocidade foi especialmente notável, mantendo uma boa precisão. Modelos maiores se beneficiaram do tamanho aumentado do rascunho, que permitiu uma melhor geração de palavras.
Conclusões
O uso de modelos de linguagem grandes é essencial em muitos campos, mas também apresenta desafios devido ao aumento dos custos e complexidades. Nossa abordagem S2D oferece uma solução promissora ao permitir que um único modelo de rascunho ajude efetivamente vários modelos principais. Com um design e treinamento melhores, conseguimos melhorias significativas tanto em velocidade quanto em desempenho.
No fim das contas, o S2D representa um avanço em tornar o uso de modelos de linguagem grandes mais prático para várias aplicações, permitindo uma geração de texto mais inteligente em diversas tarefas sem incorrer em custos extras.
Título: S2D: Sorted Speculative Decoding For More Efficient Deployment of Nested Large Language Models
Resumo: Deployment of autoregressive large language models (LLMs) is costly, and as these models increase in size, the associated costs will become even more considerable. Consequently, different methods have been proposed to accelerate the token generation process and reduce costs. Speculative decoding (SD) is among the most promising approaches to speed up the LLM decoding process by verifying multiple tokens in parallel and using an auxiliary smaller draft model to generate the possible tokens. In SD, usually, one draft model is used to serve a specific target model; however, in practice, LLMs are diverse, and we might need to deal with many target models or more than one target model simultaneously. In this scenario, it is not clear which draft model should be used for which target model, and searching among different draft models or training customized draft models can further increase deployment costs. In this paper, we first introduce a novel multi-target scenario for the deployment of draft models for faster inference. Then, we present a novel, more efficient sorted speculative decoding mechanism that outperforms regular baselines in multi-target settings. We evaluated our method on Spec-Bench in different settings, including base models such as Vicuna 7B, 13B, and LLama Chat 70B. Our results suggest that our draft models perform better than baselines for multiple target models at the same time.
Autores: Parsa Kavehzadeh, Mohammadreza Pourreza, Mojtaba Valipour, Tinashu Zhu, Haoli Bai, Ali Ghodsi, Boxing Chen, Mehdi Rezagholizadeh
Última atualização: 2024-07-02 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2407.01955
Fonte PDF: https://arxiv.org/pdf/2407.01955
Licença: https://creativecommons.org/licenses/by-nc-sa/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.