15 pontos por xguru 2024-06-17 | 4 comentários | Compartilhar no WhatsApp
  • Quanto custa hospedar diretamente um grande modelo de linguagem (LLM)?
  • Ao hospedar o modelo Llama-3 8B-Instruct no EKS, o custo é de cerca de $17 por 1 milhão de tokens
  • Usando o ChatGPT para a mesma tarefa, o custo é de $1 por 1 milhão de tokens
  • Ao fazer self-hosting em hardware próprio, o custo por 1 milhão de tokens cai para menos de $0,01, e leva cerca de 5,5 anos para atingir o ponto de equilíbrio
    • Calculado com base em 4x GPUs NVidia Tesla T4 e outros custos de hardware ($3800) + custo mensal (eletricidade e outros) de $100

Processo para determinar o hardware ideal

  • Ambiente de teste: todos os testes foram executados em um cluster EKS

  • Primeira tentativa: instância AWS g4dn.2xlarge usando GPU Nvidia Tesla T4.

    • Especificações: 1 NVidia Tesla T4, 32GB de memória, 8 vCPUs.
    • Resultado: não foi possível executar as versões de 8B ou 70B parâmetros do Llama 3.
    • Problema: ocorreu OOM (Out of Memory) e o tempo de resposta levou cerca de 10 minutos.
  • Segunda tentativa: instância AWS g4dn.16xlarge usando 4 GPUs Nvidia Tesla T4.

    • Especificações: 4 NVidia Tesla T4, 192GB de memória, 48 vCPUs.
    • Resultado: o tempo de resposta caiu para menos de 10 segundos.

Implementação inicial

  • Método de implementação: uso de uma cópia do código do Llama-3 da Hugging Face.
  • Cálculo de custo:
    • Custo de uso da instância g5dn.12xlarge: $3.912 por hora.
    • No cálculo de custo mensal, o custo ficou em cerca de $167,17 por 1 milhão de tokens.
    • Custo do ChatGPT 3.5 Turbo: $1 por 1 milhão de tokens.

Resolução do problema

  • Percepção do problema: percebeu-se que o método anterior estava errado, então passou-se a usar vLLM.
  • Resultado da melhoria:
    • Instalação de ray e vllm para hospedar o servidor de API.
    • Uso das 4 GPUs com a opção —tensor-parallel-size 4.
    • Resultado: o tempo de resposta melhorou muito, para 2044ms.
    • No cálculo de custo, o custo ficou em cerca de $17 por 1 milhão de tokens.

Abordagem alternativa

  • Hospedagem em hardware próprio:
    • Hardware necessário: 4x GPUs NVidia Tesla T4, cerca de $700 no eBay.
    • Incluindo outros custos, o custo total de instalação é de cerca de $3.800.
    • Custo mensal de energia de cerca de $50.
    • O custo mensal total foi calculado em cerca de $100.
    • Leva cerca de 66 meses (5,5 anos) para atingir o ponto de equilíbrio.

Conclusão

  • Vantagem: ao hospedar em hardware próprio, é possível reduzir custos.
  • Desvantagem: é necessário gerenciar o hardware e fazer scaling
    • Como assumir 100% de utilização é irrealista, é necessário avaliar de acordo com a situação real.

4 comentários

 
iolothebard 2024-06-17

Não é nem para treinar o modelo,
é só fazer inferência com o Llama 8B, então o equipamento está exagerado.
Com uma GPU de 24 GB (3090 ou 4090) já é suficiente (2 a 3 milhões de won), e uns 30 mil won por mês de eletricidade também bastam.
Agora que escrevi, vi que isso já está mencionado abaixo haha

 
wedding 2024-06-17

5,5 anos é bastante tempo..

 
ragingwind 2024-06-17

É viável com 8B para algo além do nível de brinquedo?

 
xguru 2024-06-17

Opiniões do Hacker News

  • Em vez de usar AWS, hospedar o hardware por conta própria reduz bastante os custos.
    • Usar 4 GPUs NVidia Tesla T4 custa cerca de $3,800.
    • Para o modelo Llama 3 8b, uma única GPU 3090 ou 4090 já é suficiente.
    • Comprar GPUs no eBay pode ajudar a economizar.
  • O modelo Llama 8B custa $0.40 por 1M de tokens de entrada e $0.60 por tokens de saída no AWS Bedrock, sendo mais barato que os modelos da OpenAI.
    • Também é preciso considerar o tempo e o custo de montar e manter o servidor.
  • Preços do Jetstream + Maxtext
    • O preço com compromisso de 3 anos usando TPU v5e é de $0.25 por 1M de tokens.
    • O preço on-demand é de cerca de $0.45 por 1M de tokens.
    • Mais detalhes podem ser vistos na sessão do Google Next 2024.
  • Previsão de queda no valor de mercado da NVIDIA
    • Como o desempenho dos LLMs está estagnando e eles estão se tornando comercializados, o valor de mercado da NVIDIA pode cair.
    • A demanda por computação para treinamento também deve diminuir mais rápido do que o esperado.
  • Problemas na análise de custos
    • Executar com batch size 1 causa um grande erro na análise de custos.
    • Fica de 100 a 1000 vezes mais caro do que o valor cobrado por provedores de API.
  • Custo para rodar modelos 8B
    • Uma 3090 e um sistema básico já bastam para rodar um modelo 8B com folga.
    • A diferença de custo entre OpenAI e AWS é grande ($1 vs $17).
    • Na prática, a AWS pode sair mais barata.
  • Problemas no entendimento de custos
    • Entender custos com base em uma única requisição síncrona é inadequado.
    • O ChatGPT processa muitas requisições em paralelo.
    • Requisições maiores, simultâneas e enfileiramento de requisições podem reduzir bastante os custos.
  • Custo de acesso a LLMs
    • O custo de acesso a LLMs é muito baixo.
    • Engenheiros deveriam ficar felizes com os preços baixos em comparação com o avanço tecnológico.
  • A T4 é uma placa de 6 anos atrás; seria mais apropriado compará-la com 3090, 4090, A10, A100 etc.