Este tutorial mostra como publicar um modelo de linguagem (conteúdo extenso) (MDL/CE) Gemma usando unidades de processamento tensor (TPUs) no Google Kubernetes Engine (GKE). Implementa um contentor pré-criado com o JetStream e o MaxText no GKE. Também configura o GKE para carregar os pesos do Gemma 7B a partir do Cloud Storage em tempo de execução.
Este tutorial destina-se a engenheiros de aprendizagem automática (AA), administradores e operadores de plataformas, bem como a especialistas em dados e IA interessados em usar capacidades de orquestração de contentores do Kubernetes para publicar MDIs/CEs. Para saber mais sobre as funções comuns e as tarefas de exemplo que referimos no Google Cloud conteúdo, consulte Funções e tarefas comuns de utilizador do GKE.
Antes de ler esta página, certifique-se de que conhece o seguinte:
- Modo automático e modo padrão
- Disponibilidade da versão atual da TPU com a arquitetura do sistema Cloud TPU
- TPUs no GKE
Contexto
Esta secção descreve as principais tecnologias usadas neste tutorial.
Gemma
O Gemma é um conjunto de modelos de inteligência artificial (IA) generativa, leves e disponíveis abertamente, lançados ao abrigo de uma licença aberta. Estes modelos de IA estão disponíveis para execução nas suas aplicações, hardware, dispositivos móveis ou serviços alojados. Pode usar os modelos Gemma para a geração de texto. No entanto, também pode ajustar estes modelos para tarefas especializadas.
Para saber mais, consulte a documentação do Gemma.
TPUs
As TPUs são circuitos integrados específicos da aplicação (ASICs) desenvolvidos pela Google e usados para acelerar a aprendizagem automática e os modelos de IA criados com frameworks como o TensorFlow, o PyTorch e o JAX.
Este tutorial aborda a publicação do modelo Gemma 7B. O GKE implementa o modelo em nós TPUv5e de anfitrião único com topologias de TPU configuradas com base nos requisitos do modelo para publicar comandos com baixa latência.
JetStream
O JetStream é uma framework de serviço de inferência de código aberto desenvolvida pela Google. O JetStream permite uma inferência de alto desempenho, com elevado débito e otimizada em função da memória em TPUs e GPUs. Oferece otimizações de desempenho avançadas, incluindo técnicas de quantização e processamento em lote contínuo, para facilitar a implementação de MDIs. O JetStream permite a publicação de TPUs do PyTorch/XLA e JAX para alcançar um desempenho ideal.
Para saber mais acerca destas otimizações, consulte os repositórios dos projetos JetStream PyTorch e JetStream MaxText.
MaxText
O MaxText é uma implementação de LLM JAX de alto desempenho, escalável e adaptável, criada com base em bibliotecas JAX de código aberto, como o Flax, o Orbax e o Optax. A implementação do LLM apenas com descodificador do MaxText está escrita em Python. Tira partido do compilador XLA para alcançar um elevado desempenho sem precisar de criar kernels personalizados.
Para saber mais sobre os modelos e os tamanhos de parâmetros mais recentes suportados pelo MaxText, consulte o repositório do projeto MaxText.