Closed dmlls closed 3 years ago
La descarga y guardado de los modelos es muy sencilla, gracias a los métodos from_pretrained
de la clase PreTrainedModel
, de la cual heredan todos los modelos preentrenados de Hugging Face. Esa misma clase también ofrece el método save_pretrained
con el objetivo de guardar el modelo descargado.
El código para la descarga y guardado de un modelo, por ejemplo el modelo t5-small
sería el siguiente:
from transformers import T5Tokenizer, T5PreTrainedModel
from pathlib import Path
MODEL = 't5-base'
SAVED_TOKENIZER_PATH = Path(./tokenizer) # this directory must exist
SAVED_MODEL_PATH = Path(./model) # this directory must exist
t5_tokenizer = T5Tokenizer.from_pretrained(MODEL)
t5_model = T5ForConditionalGeneration.from_pretrained(MODEL)
t5_tokenizer.save_pretrained(SAVED_TOKENIZER_PATH)
t5_model.save_pretrained(SAVED_MODEL_PATH)
Cabe recordar que el tokenizer
se emplea para la codificación del texto, con la cual se "alimenta" al model
quien se encarga propiamente de la generación del resúmen.
Los ficheros generados en el paso anterior se almacenarían en nuestro volúmen de Kubernetes. Para cargarlos desde un pod simplemente tendríamos que usar el método from_pretrained
de nuevo, solo que ahora específicando el directorio dónde está guardado el modelo, en vez de su nombre. La diferencia reside en que si específicamos el nombre, Hugging Face se encarga de descargar el modelo automáticamente, y lo guarda en la caché local de nuestro dispositivo.
Para más información, se puede consultar la documentación oficial para los métodos from_pretrained
y save_pretrained
.
Investigar cómo llevar a cabo el guardado y la carga de los modelos preentrenados de Hugging Face.