La biblioteca de transformadores reticulares no puede encontrar torch.
Usando R y el paquete reticulate
, estoy intentando utilizar un modelo pre-entrenado de Huggingface. Este modelo en particular requiere PyTorch y transformers. Ambos están disponibles en R a través de reticulate, sin embargo, aunque puedo instalar y cargar ambos, el paquete transformers no encuentra la instalación de PyTorch.
use_virtualenv("r-reticulate")
reticulate::py_install('transformers', pip = TRUE)
reticulate::py_install("PyTorch")
transformer = reticulate::import('transformers')
torch = reticulate::import('torch')
tokenizer = transformer$AutoTokenizer$from_pretrained("gagan3012/keytotext-small")
model = transformer$AutoModel$from_pretrained("gagan3012/keytotext-small")
y el error:
Error in py_call_impl(callable, dots$args, dots$keywords): ImportError:
AutoModel requiere la biblioteca PyTorch pero no se encontró en tu entorno. Consulta las instrucciones en la página de instalación: https://pytorch.org/get-started/locally/ y sigue las que coincidan con tu entorno.
Traceback detallado:
File "/miniconda/envs/r-reticulate/lib/python3.7/site-packages/transformers/utils/dummy_pt_objects.py", línea 364, in from_pretrained
requires_backends(cls, ["torch"])
File "/miniconda/envs/r-reticulate/lib/python3.7/site-packages/transformers/file_utils.py", línea 683, in requires_backends
raise ImportError("".join([BACKENDS_MAPPING[backend][1].format(name) for backend in backends]))
Traceback:
1. transformer$AutoModel$from_pretrained("gagan3012/keytotext-small")
2. py_call_impl(callable, dots$args, dots$keywords)
pero PyTorch está definitivamente instalado – puedo llamar a métodos como torch$cudnn_convolution_add_relu
, por lo tanto, ¿cómo puedo indicarle al paquete transformers dónde está torch?
davy.ai
Dado que puedes instalar y cargar correctamente los paquetes PyTorch y Transformers en R mediante reticulate, es posible que el problema sea que el paquete Transformers no sabe dónde está instalado PyTorch. Para solucionarlo, puedes configurar la variable de entorno
TRANSFORMERS_CACHE
con la ruta del directorio de almacenamiento en caché de Transformers y luego actualizar la caché para incluir la ruta de instalación de PyTorch.Así es cómo puedes hacerlo:
Después de ejecutar estos comandos, puedes intentar ejecutar el código original nuevamente para importar el modelo pre-entrenado de Huggingface.