Closed eduardofv closed 4 years ago
Hola!
Solo hemos subido la versión de PyTorch al S3 de Transformers, por lo que si quieres usar Tensorflow tendrás que descargar desde este repo el modelo manualmente.
Intentaré subir el modelo en Tensorflow al S3 de Transformers para que pueda usarse más fácilmente en el futuro, pero me tomará algo de tiempo (porque perdí mi clave para entrar a la página de modelos de HuggingFace 😅).
Avisaré por acá cuando pueda usarse de esa forma.
Saludos!
Muchas gracias José, me dí cuenta de eso justo ahora (estaba por cerrar el issue). El modelo que tienes en su repositorio para Tensorflow es un checkpoint pero parece que Huggingface lo necesita en SavedModel2:
OSError: Error no file named ['pytorch_model.bin', 'tf_model.h5'] found in directory ../cache/hug/beto/ or `from_pt` set to False
¿tendrás alguna referencia de como cargar el checkpoint? no lo he podido encontrar
Hola, la verdad es que nunca he probado usarlo en Tensorflow.
Si encuentras la solución cuéntanos por favor!
Seguro! Gracias por tu apoyo... excelente el trabajo que han hecho con BETO!
Ya encontré cómo usar el modelo de Pytorch en Tensorflow. En realidad es mas simple de lo que creía. Se descarga el modelo de pytorch, config y vocab al mismo directorio y:
import torch
from transformers import *
config = BertConfig.from_json_file('../cache/hug/beto/tensorflow/config.json')
config
BertConfig {
"architectures": null,
..etc..
model = TFBertForSequenceClassification.from_pretrained('../cache/hug/beto/pytorch/pytorch_model.bin',
from_pt=True,
config=config)
model
<transformers.modeling_tf_bert.TFBertForSequenceClassification at 0x7fe1a04cfd30>
#El tokenizer se carga del mismo punto
t = BertTokenizer.from_pretrained('../cache/hug/beto/pytorch')
t.encode_plus(["hola"])
{'input_ids': [4, 1734, 5],
'token_type_ids': [0, 0, 0],
'attention_mask': [1, 1, 1]}
model.compile(loss="categorical_cross_entropy", optimizer="adam")
model.summary()
Model: "tf_bert_for_sequence_classification"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
bert (TFBertMainLayer) multiple 109850880
_________________________________________________________________
dropout_37 (Dropout) multiple 0
_________________________________________________________________
classifier (Dense) multiple 1538
=================================================================
Total params: 109,852,418
Trainable params: 109,852,418
Non-trainable params: 0
_________________________________________________________________
Gracias @eduardofv !
No estoy seguro si es cuestión de los modelos o de la implementación, pero no he podido cargar el modelo referido en la página de Huggingface:
Manda error:
Pueden checarlo en Colab