получить ошибку объект 'NoneType' не имеет атрибута 'dumps' при загрузке модели в HAYSTACK

Я пытаюсь загрузить bert-base-многоязычный-без корпуса в HAYSTACK FARMReader и получаю сообщение об ошибке:

(huyenv) PS D:\study\DUANCNTT2\HAYSTACK\haystack_demo> & d: /study/DUANCNTT2/HAYSTACK/haystack_demo/huyenv/Scripts/python.exe d: /study/DUANCNTTmo/HainSTack_DUANCNTTmo/HainSTack_DUANCNTTmo/HainSTack. 21/2021 00:12:58

  • ИНФОРМАЦИЯ - faiss.loader - Ошибка загрузки. 21.05.2021 00:12:58 - ИНФОРМАЦИЯ - faiss.loader - Ошибка загрузки. 21.05.2021 00:12:59 - ИНФОРМАЦИЯ - farm.modeling.prediction_head - Более высокая скорость может быть достигнута с помощью apex, установленного с https://www.github.com/nvidia/apex . 21.05.2021 00:13:00 - ИНФОРМАЦИЯ - faiss.loader - Ошибка загрузки. 21.05.2021 00:13:00
  • ИНФОРМАЦИЯ - faiss.loader - Ошибка загрузки. 21.05.2021 00:13:01 - ИНФОРМАЦИЯ - elasticsearch - HEAD http: // localhost: 9200 / [статус: запрос 200: 0.018s] 21.05.2021 00:13:01 - INFO - elasticsearch - HEAD http : // localhost: 9200 / cv [статус: 200 запрос: 0,005 с] 21.05.2021 00:13:01 - ИНФОРМАЦИЯ - elasticsearch - ПОЛУЧИТЬ http: // localhost: 9200 / cv [статус: 200 запрос: 0,009 с ] 21.05.2021 00:13:01 - ИНФОРМАЦИЯ - elasticsearch
  • PUT http: // localhost: 9200 / cv / _mapping [статус: 200 запрос: 0,041 с] 21.05.2021 00:13:01 - ИНФОРМАЦИЯ - elasticsearch - HEAD http: // localhost: 9200 / label [status: 200 запрос: 0.008с] 21.05.2021 00:13:01 - ИНФОРМАЦИЯ - farm.utils - Использование устройства: CPU 21.05.2021 00:13:01
  • ИНФОРМАЦИЯ - farm.utils - Количество графических процессоров: 0 21.05.2021 00:13:01 - ИНФОРМАЦИЯ - farm.utils - Распределенное обучение: Ложь 21.05.2021 00:13:01 - ИНФОРМАЦИЯ
  • farm.utils - Automatic Mixed Precision: None Некоторые веса контрольной точки модели на bert-base-многоязычный-uncased не использовались при инициализации BertForQuestionAnswering: ['cls.predictions.bias', 'cls.predictions.transform.dense.weight' , 'cls.predictions.transform.dense.bias', 'cls.predictions.decoder.weight', 'cls.seq_relationship.weight', 'cls.seq_relationship.bias', 'cls.predictions.transform.LayerNorm.weight' , 'cls.predictions.transform.LayerNorm.bias']
  • Это ожидается, если вы инициализируете BertForQuestionAnswering из контрольной точки модели, обученной для другой задачи или с другой архитектурой (например, инициализируя модель BertForSequenceClassification из модели BertForPreTraining).
  • Этого НЕ ожидается, если вы инициализируете BertForQuestionAnswering из контрольной точки модели, которая, как вы ожидаете, будет точно идентичной (инициализация модели BertForSequenceClassification из модели BertForSequenceClassification). Некоторые веса BertForQuestionAnswering не были инициализированы из контрольной точки модели в bert-base-многоязычный-uncased и инициализированы заново: ['qa_outputs.weight', 'qa_outputs.bias']. Вероятно, вам следует ОБУЧИТЬ эту модель в нисходящей задаче, чтобы уметь использовать его для прогнозов и умозаключений. 21.05.2021 00:13:21 - ВНИМАНИЕ - farm.utils - ML Logging отключен. Никакие параметры, метрики или артефакты не будут регистрироваться в MLFlow. 21.05.2021 00:13:21 - ИНФОРМАЦИЯ - farm.utils - Использование устройства: CPU 21.05.2021 00:13:21 - INFO - farm.utils - Количество графических процессоров: 0 21.05.2021 00: 13:21 - ИНФОРМАЦИЯ - фарм.utils - Распределенное обучение: неверно 21.05.2021 00:13:21 - ИНФОРМАЦИЯ
  • farm.utils - Автоматическая смешанная точность: Нет 21.05.2021 00:13:21 - ИНФОРМАЦИЯ - farm.infer - Я заставил 3 параллельных рабочих сделать вывод ... 21.05.2021 00:13:21 - ИНФОРМАЦИЯ - farm.infer - 0 0 0 21.05.2021 00:13:21 - ИНФОРМАЦИЯ - farm.infer - / w \ / w \ / w \ 21.05.2021 00:13:21 - ИНФОРМАЦИЯ - farm.infer - / '\ / \ /'\ 21.05.2021 00:13:21 - ИНФОРМАЦИЯ - farm.infer - Исключение игнорируется в: <function Pool.del at0x000001BBA1DC9C10> Traceback (последний вызов последним): файл «C: \ Users \ Admin \ AppData \ Local \ Programs \ Python \ Python38 \ lib \ multiprocessing \ pool.py», строка 268, в del File «C:\Users\Admin\AppData\Local\Programs\Python\Python38\lib\multiprocessing\queues.py", строка 362, вставьте AttributeError: объект 'NoneType' не имеет атрибута 'dumps'

Это мой файл main.py:

из haystack.preprocessor.cleaning импортировать clean_wiki_text из haystack.preprocessor.utils импортировать convert_files_to_dicts,fetch_archive_from_http из haystack.reader.farm импортировать FARMReader из haystack.reader.transformers импортировать Transformers_Reader из haystack

из haystack.document_store.elasticsearch import ElasticsearchDocumentStore

document_store = ElasticsearchDocumentStore(host="localhost", username="", password="",index="cv", embedding_dim=768,embedding_field="embedding")

из haystack.retriever.sparse import ElasticsearchRetriever retriever = ElasticsearchRetriever(document_store=document_store)

reader =FARMReader(model_name_or_path='bert-base-многоязычный-без корпуса')

ВНИМАНИЕ : мой сервер elasticsearch успешно запущен!

1 ответ

Похоже на проблему с многопроцессорностью в Windows. Вы можете отключить многопроцессорность для FARMReader нравится:

      ...
reader = FARMReader(model_name_or_path='bert-base-multilingual-uncased', num_processes=0)

См. Также документацию для получения более подробной информации.

Другие вопросы по тегам