Os prós e contras de usar LLMs na nuvem versus executar LLMs localmente
Nos últimos meses, testemunhamos avanços notáveis no campo dos modelos de linguagem ampla (LLMs), como ChatGPT, Bard e LLaMA, que revolucionaram todo o setor. Obtenha informações sobre a evolução dos LLMs lendo O que é o GPT-4 e por que ele é importante?
O surgimento do Open Assistant, Dolly 2.0, StableLM e outros projetos de código aberto introduziram LLMs licenciados comercialmente que rivalizam com os recursos do ChatGPT. Isso significa que os indivíduos com conhecimento técnico agora têm a oportunidade de ajustar e implementar LLMs em plataformas baseadas na nuvem ou em servidores locais. Essa acessibilidade democratizou o uso dos LLMs, permitindo que uma gama maior de usuários aproveitasse seu potencial.
À medida que o acesso a modelos de ponta se torna mais aberto, chegou a hora de elaborar uma estratégia de implantação ideal para os LLMs. Para isso, é fundamental avaliar as vantagens e desvantagens da execução de LLMs em servidores locais ou baseados em nuvem.
Prós de usar LLMs na nuvem
Vamos explorar alguns dos benefícios do uso de grandes modelos de linguagem na nuvem:
Escalabilidade
O treinamento e a implantação de LLMs exigem amplos recursos de computação e armazenamento de dados. Às vezes, os processos de treinamento exigem várias instâncias de GPUs de ponta, que só podem ser atendidas por meio de serviços baseados em nuvem que oferecem recursos dimensionáveis sob demanda.
Eficiência de custos
Se você não tiver hardware de ponta para executar modelos de linguagem grandes, optar pela nuvem pode ser uma solução mais econômica. Com os serviços em nuvem, você paga apenas pelos recursos que utiliza e, muitas vezes, as GPUs e CPUs estão disponíveis a preços mais acessíveis.
Facilidade de uso
A plataforma de nuvem oferece uma variedade de APIs, ferramentas e estruturas de linguagem que simplificam muito o processo de criação, treinamento e implantação de modelos de aprendizado de máquina.
Serviços gerenciados
Os provedores de nuvem são responsáveis por lidar com a configuração, a manutenção, a segurança e a otimização da infraestrutura, reduzindo significativamente a sobrecarga operacional para os usuários.
Modelos pré-treinados
As plataformas de nuvem agora oferecem acesso aos mais recentes modelos de idiomas grandes pré-treinados que podem ser ajustados em conjuntos de dados personalizados e implantados sem esforço na nuvem. Ele pode ser bastante útil para criar um pipeline de aprendizado de máquina de ponta a ponta.
Leia 12 alternativas de código aberto ao GPT-4 para saber mais sobre outros desenvolvimentos populares de código aberto em tecnologias de linguagem.
Confira a lista de plataformas de nuvem que fornecem ferramentas e modelos pré-treinados:
- NVIDIA: Serviço de nuvem do NeMo Large Language Models (LLM)
- Cara de abraço: Pontos finais de inferência
- AWS: Amazon Titan
- MosaicML: Inferência
- Paperspace: A nuvem de GPU criada para aprendizado de máquina
Contras de usar LLMs na nuvem
É claro que, como acontece com qualquer tecnologia, há algumas desvantagens no uso de grandes modelos de linguagem na nuvem:
Perda de controle
Ao usar o serviço de ML gerenciado na nuvem, você tem menos controle e visibilidade sobre a infraestrutura e a implementação.
Bloqueio do fornecedor
Se você tiver treinado LLMs em uma plataforma de nuvem, será difícil fazer a portabilidade para uma plataforma diferente. Além disso, depender exclusivamente de um único provedor de nuvem acarreta riscos inerentes, principalmente em relação às flutuações de políticas e preços.
Privacidade e segurança dos dados
Seus dados residem nos servidores do provedor de nuvem em várias regiões do mundo, portanto, você precisa confiar que eles manterão seus dados seguros.
Custos elevados
O treinamento e a execução de LLMs em escala ainda podem ser bastante caros. Os custos dos recursos de computação e armazenamento podem se acumular com o tempo.
Latência da rede
Há alguns atrasos na comunicação com modelos executados na nuvem, o que a torna menos ideal para aplicativos em tempo real.
Novo na computação em nuvem? Leia Computação em nuvem e arquitetura para cientistas de dados e saiba como implementar soluções de ciência de dados na produção.
Prós de administrar LLMs localmente
Agora que já exploramos as vantagens e desvantagens de executar modelos de linguagem grandes na nuvem, vamos analisar os mesmos pontos quando se trata de executá-los localmente. Os profissionais incluem:
Mais controle
Você tem mais controle sobre o hardware, o modelo treinado, os dados e o software que usa para executar o serviço. Você pode configurar para cumprir regulamentos específicos, otimizar o processo de treinamento e inferência e melhorar o desempenho dos LLMs.
Custos mais baixos
Se você já tiver o hardware necessário, executá-lo localmente pode ser mais barato do que pagar os custos da nuvem.
Latência reduzida
Executar um modelo de linguagem grande localmente pode oferecer vantagens notáveis em termos de latência, resultando em um tempo de resposta reduzido entre fazer uma solicitação e receber a resposta de um modelo. Esse aspecto é muito importante, principalmente em aplicativos como chatbots ou serviços de tradução ao vivo que dependem muito de respostas em tempo real.
Maior privacidade
Ao treinar e executar LLMs localmente, você obtém maior controle sobre seus dados e modelos, o que lhe permite estabelecer salvaguardas robustas para proteger informações confidenciais.
Contras de administrar LLMs localmente
Aqui estão algumas das desvantagens de executar grandes modelos de linguagem localmente:
Custos iniciais mais altos
A configuração de servidores locais para executar modelos de idiomas grandes pode ser cara se você não tiver hardware e software de ponta.
Complexidade
A execução de LLMs localmente pode ser desafiadora, demorada e implica em sobrecarga operacional. Há muitas partes móveis, e você deve configurar e manter o software e a infraestrutura.
Escalabilidade limitada
Não é possível aumentar ou diminuir a escala sob demanda. A execução de vários LLMs pode exigir mais poder computacional do que é possível em uma única máquina.
Disponibilidade
Os servidores locais são menos resilientes. Em caso de falhas no sistema, o acesso aos seus LLMs fica comprometido. Por outro lado, as plataformas de nuvem oferecem várias camadas de redundância e apresentam menor tempo de inatividade.
Acesso a modelos pré-treinados
O acesso aos modelos de linguagem de grande porte de última geração para ajuste fino e implementação pode não estar prontamente disponível para você.
Leia sobre o ChatGPT e o futuro das regulamentações de IA para saber mais sobre as novas regulamentações de IA e enfrentar os possíveis perigos da IA de próxima geração.
Fatores a serem considerados na escolha de uma estratégia de implantação para LLMs
Necessidades de escalabilidade
Quantos usuários você tem atualmente e quantos modelos precisa executar para atender aos requisitos? Além disso, você está planejando utilizar os dados para aprimorar o modelo? Essas informações determinarão se uma solução baseada em nuvem é necessária.
Requisitos de privacidade e segurança de dados
Você opera em um domínio em que a privacidade do usuário e a proteção de dados são fundamentais? Existem leis rígidas de privacidade de dados ou políticas corporativas em vigor? Se a resposta for sim, é necessário desenvolver uma solução no local.
Restrições de custo
Se você estiver trabalhando com um orçamento limitado e tiver acesso a um hardware capaz de realizar a tarefa, a execução dos modelos localmente pode ser mais econômica.
Facilidade de uso
Se você tiver poucas habilidades técnicas ou uma equipe limitada, a implementação e o gerenciamento de modelos podem ser um desafio. Nesses casos, as plataformas de nuvem geralmente oferecem ferramentas plug-and-play que simplificam o processo, tornando-o mais acessível e gerenciável.
Necessidade de modelos mais recentes
Você tem acesso a modelos de idiomas grandes? As plataformas de nuvem geralmente fornecem acesso aos modelos mais recentes e de última geração, garantindo que você possa aproveitar os recursos mais avançados disponíveis.
Previsibilidade
Você pode gerenciar o custo da infraestrutura no local. Isso permite que você preveja o orçamento, em oposição aos custos variáveis associados à utilização de serviços em nuvem.
Problemas de dependência do fornecedor
A infraestrutura local atenua esse risco de dependência do fornecedor, mas exige mais manutenção própria.
Tolerância à latência da rede
Se o seu aplicativo precisar de respostas em tempo real e menor latência, a escolha de uma configuração local é a melhor opção para obter o desempenho desejado.
Experiência da equipe
Se a sua equipe já estiver familiarizada com as ferramentas e os serviços de nuvem, a opção de nuvem é a escolha ideal. A implementação de uma nova solução e o aprendizado de novas ferramentas podem gerar custos em termos de tempo, dinheiro e recursos humanos.
Conclusão
Nesta postagem, discutimos os prós e os contras de executar LLMs na nuvem em vez de localmente. A estratégia de implantação ideal para LLMs depende do tamanho e da complexidade do LLM, das necessidades específicas do aplicativo, do orçamento e dos requisitos de segurança e privacidade.
Em resumo,
- As empresas com restrições orçamentárias ou preferência por maior controle podem optar por executar LLMs localmente.
- As empresas que buscam soluções simplificadas de implementação de LLM e facilidade de uso podem optar pela nuvem.
Em última análise, a decisão cabe a você. É fundamental avaliar cuidadosamente e pesar as vantagens e desvantagens de cada abordagem antes de chegar a uma decisão bem informada.
blog
Entendendo e atenuando o viés em modelos de idiomas grandes (LLMs)
Nisha Arya Ahmed
12 min
blog
8 principais LLMs de código aberto para 2024 e seus usos
blog
Introdução ao LLaMA da Meta AI
tutorial
Como treinar um LLM com o PyTorch
tutorial