Cuando se usa el módulo Torch para cargar el modelo local de Roberta, OSERROR siempre se informa de la siguiente manera:
OSError: El nombre del modelo './chinese_roberta_wwm_ext_pytorch' no se encontró en la lista de nombres de modelo de tokenizadores (roberta-base, roberta-large, roberta-large-mnli, distilroberta-base, roberta-base-openai-detector, roberta-large-openai- detector). Supusimos que './chinese_roberta_wwm_ext_pytorch' era una ruta, un identificador de modelo o una URL a un directorio que contenía archivos de vocabulario llamados ['vocab.json', 'merges.txt'], pero no pudimos encontrar dichos archivos de vocabulario en esta ruta o URL. .
Solución: use BertTokenizer y BertModel para cargar, no use RobertaTokenizer / RobertaModel,
Si usa RobertaForQuestionAnswering, el siguiente método también es posible, pero habrá una advertencia.
import torch
from transformers import BertTokenizer, BertModel,RobertaTokenizer,RobertaForQuestionAnswering
from transformers import logging
# logging.set_verbosity_warning()
# logging.set_verbosity_error()
tokenizer = BertTokenizer.from_pretrained("./chinese_roberta_wwm_ext_pytorch")
roberta = RobertaForQuestionAnswering.from_pretrained("./chinese_roberta_wwm_ext_pytorch",return_dict=True)