Com o aumento da popularidade dos Modelos de Linguagem de Grande Porte (LLMs), a demanda por servir esses modelos de maneira eficiente e escalável cresceu significativamente. Este artigo detalha como servir LLMs de código aberto no Google Kubernetes Engine (GKE) usando o framework vLLM junto com a Inferência de Texto (TGI). O framework TGI, combinado com o vLLM, oferece alta performance e baixa latência para inferências de LLMs.

Pré-requisitos

Antes de começarmos, assegure-se de ter o seguinte:

Passo 1: Configurando o Ambiente

1.1 Criar um Cluster GKE

Para criar um cluster no GKE, execute o seguinte comando:

gcloud container clusters create llm-cluster --zone us-central1-c --num-nodes 3
gcloud container clusters get-credentials llm-cluster --zone us-central1-c

1.2 Instalar o vLLM e TGI

Clone os repositórios do vLLM e TGI e instale suas dependências:

git clone <https://github.com/vllm-project/vllm.git>
cd vllm
pip install -r requirements.txt

git clone <https://github.com/deepmind/text-generation-inference.git>
cd text-generation-inference
pip install -r requirements.txt

Passo 2: Preparando a Imagem Docker

Crie um Dockerfile para construir a imagem Docker necessária para rodar o vLLM e TGI:

FROM python:3.9

WORKDIR /app
COPY . /app

RUN pip install -r requirements.txt
RUN pip install -r /path/to/text-generation-inference/requirements.txt

ENTRYPOINT ["python", "main.py"]

2.1 Construir e Publicar a Imagem

Construa a imagem Docker e publique no Google Container Registry (GCR):