A inferência da GPU é acelerada em 4 vezes, e o contexto de 256K é o mais longo do mundo: o Wuwen Core Dome estabeleceu um novo recorde de otimização de grandes modelos

Quer ganhar dinheiro com modelos grandes? Este novo rosto poderoso decidiu reduzir o custo do raciocínio primeiro.

Fonte original: Heart of the Machine

Fonte da imagem: Gerado por Unbounded AI

Quanto dinheiro queima o modelo de negócio em grande escala? Há algum tempo, uma reportagem do Wall Street Journal deu uma resposta de referência.

De acordo com o relatório, o negócio GitHub Copilot da Microsoft (apoiado pelo modelo GPT da OpenAI) cobra US $ 10 por mês, mas ainda custa uma média de US $ 20 por usuário. Os prestadores de serviços de IA estão a enfrentar desafios económicos significativos – estes serviços não são apenas dispendiosos de construir, mas também muito dispendiosos de operar.

Alguém comparou isso a “usar IA para resumir um e-mail é como pedir a um Lamborghini para entregar uma pizza”.

A OpenAI calculou uma conta mais detalhada disso: quando o comprimento do contexto é 8K, o custo de cada token de entrada 1K é de 3 centavos e o custo de saída é de 6 centavos. Atualmente, a OpenAI tem 180 milhões de usuários e recebe mais de 10 milhões de consultas por dia. Desta forma, para operar um modelo como o ChatGPT, a OpenAI precisa investir cerca de US $ 7 milhões por dia no hardware de computação necessário, o que pode ser considerado assustadoramente caro.

Reduzir o custo de inferência para LLMs é imperativo, e aumentar a velocidade de inferência é um caminho crítico comprovado. **

Na verdade, a comunidade de pesquisa propôs uma série de tecnologias para acelerar as tarefas de inferência LLM, incluindo DeepSpeed, FlexGen, vLLM, OpenPPL, FlashDecering e TensorRT-LLM. Naturalmente, estas tecnologias também têm as suas próprias vantagens e desvantagens. Entre eles, o FlashDecoding é um método de última geração proposto pelos autores do FlashAttention e Tri Dao et al., da equipe da Universidade de Stanford, no mês passado, que melhora muito a velocidade de inferência de LLMs carregando dados em paralelo, e é considerado de grande potencial. Mas, ao mesmo tempo, introduz alguma sobrecarga computacional desnecessária, então ainda há muito espaço para otimização.

Para resolver ainda mais o problema, uma equipe conjunta da Infinigence-AI, Tsinghua University e Shanghai Jiao Tong University propôs recentemente um novo método, FlashDecoding++, que não só traz mais aceleração do que o método anterior (pode acelerar a inferência da GPU em 2-4x), mas mais importante, suporta GPUs NVIDIA e AMD! Sua ideia central é alcançar um verdadeiro paralelismo na computação da atenção através de uma abordagem assíncrona, e acelerar a computação no estágio de decodificação para otimização de produtos de matriz “volumosa”. **

Endereço:

Acelera a inferência da GPU em 2-4x,

Como é que o FlashDecoding++ o faz? **

A tarefa de inferência LLM é geralmente inserir um pedaço de texto (token) e continuar a gerar texto ou outras formas de conteúdo através do cálculo do modelo LLM.

O cálculo de inferência do LLM pode ser dividido em duas etapas: Prefill e Decode, onde o estágio Prefill gera o primeiro token pela compreensão do texto de entrada; Na fase Decodificação, os tokens subsequentes são enviados sequencialmente. Nas duas etapas, o cálculo da inferência LLM pode ser dividido em duas partes principais: computação da atenção e computação da multiplicação matricial.

Para computação de atenção, o trabalho existente, como o FlashDecoding, implementa o carregamento paralelo de dados com o operador softmax na computação de atenção de fragmentação. Este método introduz 20% de sobrecarga computacional nos cálculos de atenção devido à necessidade de sincronizar os valores máximos em diferentes partes do softmax. Para cálculos de multiplicação de matrizes, no estágio Decodificação, as matrizes de multiplicação à esquerda aparecem principalmente como matrizes “volumosas”, ou seja, o número de linhas geralmente não é grande (por exemplo, <=8), e o mecanismo de inferência LLM existente expande o número de linhas para 64 complementando 0 para acelerá-lo por arquiteturas como Tensor Cores, resultando em um grande número de cálculos inválidos (multiplicados por 0).

A fim de resolver os problemas acima, a ideia central de “FlashDecoding++” é realizar o verdadeiro paralelismo da computação da atenção através de métodos assíncronos, e acelerar a computação no estágio de decodificação para a otimização da multiplicação da matriz “Humpty Dumpty”. **

Cálculos Softmax Parciais Paralelos Assíncronos

*Figura 1 Computação Softmax de seção paralela assíncrona

O trabalho anterior inseriu o valor máximo para cada parte do cálculo softmax como o fator de escala para evitar o estouro do expoente e no cálculo softmax, o que resultou na sobrecarga de sincronização das diferentes partes do cálculo softmax (Figura 1(a)(b)).

Figura 2 Distribuição estatística dos valores de entrada da Softmax

“FlashDecoding++” aponta que para a maioria dos LLMs, a distribuição de entrada softmax é mais concentrada. Como mostrado na Figura 2, mais de 99,99% da entrada softmax para Llama2-7B está concentrada na faixa [-16,8, 6,5]. Portanto, “FlashDecoding++” propõe usar um valor máximo fixo para alguns cálculos softmax (Fig. 1 ©), evitando assim a sincronização frequente entre diferentes cálculos softmax. Quando a entrada com uma pequena probabilidade está fora do intervalo dado, o cálculo softmax desta parte de “FlashDecoding++” degenera para o método de cálculo original.

Otimização do produto Humpty Dumpty Matrix

Fig.3 Humpty Dumpty Matrix Multiplication Sharding and Dual Caching Mechanism

Como a entrada para o estágio Decodificar é um ou vários vetores de token, o produto da matriz para esse estágio se comporta em uma forma “grossa”. Tomemos a matriz A×B=C como exemplo, onde a forma das matrizes A e B é M×K e K×N, e a matriz “Humpty Dumpty” multiplica M quando M é menor. “FlashDecoding++” aponta que a matriz “Humpty Dumpty” é limitada pelo cache geral, e propõe métodos de otimização como o mecanismo de cache duplo para acelerá-lo (Fig. 3).

Figura 4 Implementação da multiplicação da matriz adaptativa

Além disso, “FlashDecoding++” aponta ainda que, no estágio de inferência LLM, os valores de N e K são fixados para um modelo específico. Portanto, “FlashDecoding++” seleciona adaptativamente a implementação ideal do produto matricial de acordo com a magnitude de M.

Acelera a inferência da GPU em 2-4x

Fig. 5 “FlashDecoding++” NVIDIA vs. inferência LLM da plataforma AMD (modelo Llama2-7B, batchsize=1)

Atualmente, o FlashDecoding++ pode acelerar a inferência LLM no back-end de várias GPUs, como NVIDIA e AMD (Figura 5). Ao acelerar a geração do primeiro token na fase de pré-preenchimento e a velocidade de geração de cada token na fase de decodificação, “FlashDecoding++” pode acelerar a geração de textos longos e curtos. **O FlashDecoding++ acelera a inferência em uma média de 37% na NVIDIA A100 em comparação com a FlashDecoding, e até 2-4x mais rápido do que o Hugging Face nos backends multi-GPU da NVIDIA e da AMD. **

AI Large Model Entrepreneurship Rookie: Wuwen Core Dome

Os três coautores do estudo são o Dr. Dai Guohao, cientista-chefe do Wuwen Core Dome e professor associado da Shanghai Jiao Tong University, Hong Ke, estagiário de pesquisa do Wuwen Core Dome e estudante de mestrado da Universidade Tsinghua, e Xu Jiaming, estagiário de pesquisa do Wuwen Core Dome e estudante de doutorado da Shanghai Jiao Tong University. Os autores correspondentes são o Professor Dai Guohao da Shanghai Jiao Tong University e o Professor Wang Yu, Decano do Departamento de Engenharia Electrónica da Universidade de Tsinghua.

Fundada em maio de 2023, o objetivo é criar a melhor solução para a integração de software e hardware para modelos grandes, e o FlashDecoding++ foi integrado no motor de computação de grandes modelos “Infini-ACC”. Com o apoio da “Infini-ACC”, a Wuwen Core Dome está a desenvolver uma série de soluções de integração de software e hardware em grande escala, incluindo modelo de grande escala "Infini-Megrez", máquina tudo-em-um de software e hardware, etc.

Entende-se que “Infini-Megrez” teve um desempenho muito bom no tratamento de textos longos, aumentando o comprimento do texto que pode ser processado para um recorde de 256k token**, e o processamento real de cerca de 400.000 palavras de todo o “Three-Body Problem 3: Death Eternal” não é um problema. Este é o maior comprimento de texto que pode ser processado por um modelo grande atualmente.

Além disso, o modelo grande “Infini-Megrez” alcançou desempenho de algoritmo de primeira camada em conjuntos de dados como C (MÉDIO), MMLU (INGLÊS), CMMLU (médio) e AGI, e está em constante evolução com base no mecanismo de computação “Infini-ACC”.

Ver original
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
  • Recompensa
  • Comentar
  • Republicar
  • Partilhar
Comentar
0/400
Nenhum comentário
Negocie cripto em qualquer lugar e a qualquer hora
qrCode
Digitalizar para transferir a aplicação Gate
Novidades
Português (Portugal)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)