Bert_Arch не имеет ошибки прогнозирования атрибутов при загрузке предварительно обученной модели в Gradio. ⇐ Python
Bert_Arch не имеет ошибки прогнозирования атрибутов при загрузке предварительно обученной модели в Gradio.
Я делаю голосового помощника для ресторанов быстрого питания. Я обучил свою модель многоклассовой классификации намерений на Distil-BERT и сохранил файл в формате рассола в Jupyter. Теперь, когда я загружаю его в свое приложение Gradio, чтобы получить намерение от обученной модели, он выдает ошибку атрибута.
Я попробовал использовать метод Trainer.predict, но он сказал, что нет такого атрибута, как Trainer. Вот код Gradio,
импортировать градиент как gr импортный маринованный огурец импортировать torch.nn как nn класс BERT_Arch(nn.Module): def __init__(self, bert): супер(BERT_Arch, self).__init__() self.bert = Берт # выпадающий слой self.dropout = nn.Dropout(0.2) # функция активации relu self.relu = nn.ReLU() # плотный слой self.fc1 = nn.Linear(768,512) self.fc2 = nn.Linear(512,256) self.fc3 = nn.Linear(256,5) #softmax функция активации self.softmax = nn.LogSoftmax(dim=1) защита make_prediction(текст): с open("model.pickle", "rb") как f: clf = Pickle.load(f) preds = clf.predict([text]) # Предполагается, что ваша модель принимает один ввод текста если предс == 1: return "Конечно, я добавлю ваш заказ, он будет стоить 30 долларов, что-нибудь еще?" Элиф Предс == 2: return «Я также добавил в список новые товары, которые будут стоить 55 долларов». Элиф Предс == 3: return «Это отличный выбор, вам нужен раздел овощей или нет?» Элиф Предс == 4: return «Ваш заказ будет готов через 20 минут» элиф предс == 5: ответ «Хорошо, я сделаю количество согласно указанному количеству человек» вывод = гр.Textbox() приложение = gr.Interface(fn=make_prediction, inputs="text", outputs=output) приложение.запуск() Вот ошибка
Traceback (самый последний вызов — последний): Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\gradio\routes.py», строка 516, в прогнозе вывод = ожидание маршрута_utils.call_process_api( Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\gradio\route_utils.py», строка 219, в call_process_api вывод = ожидание app.get_blocks().process_api( Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\gradio\blocks.py», строка 1437, вprocess_api результат = ожидайте self.call_function( Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\gradio\blocks.py», строка 1109, в call_function предсказание = ожидайте Anyio.to_thread.run_sync( Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\to_thread.py», строка 33, в run_sync return await get_asynclib().run_sync_in_worker_thread( Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\_backends\_asyncio.py», строка 877, в run_sync_in_worker_thread вернуться, дождаться будущего Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\_backends\_asyncio.py», строка 807, в запуске результат = context.run(func, *args) Файл "c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\gradio\utils.py", строка 650, в оболочке ответ = f(*args, **kwargs) Файл «C:\Users\hp\AppData\Local\Temp\ipykernel_14968\3045401095.py», строка 24, в make_prediction. preds = clf.predict([text]) # Предполагается, что ваша модель принимает один ввод текста Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\torch\nn\modules\module.py», строка 1614, в __getattr__ поднять AttributeError("Объект '{}' не имеет атрибута '{}'".format( AttributeError: объект «BERT_Arch» не имеет атрибута «предсказать». Кроме того, я добавил класс BERT_Arch в свой код Gradio, потому что его не удалось найти в сохраненной модели рассола.
Я делаю голосового помощника для ресторанов быстрого питания. Я обучил свою модель многоклассовой классификации намерений на Distil-BERT и сохранил файл в формате рассола в Jupyter. Теперь, когда я загружаю его в свое приложение Gradio, чтобы получить намерение от обученной модели, он выдает ошибку атрибута.
Я попробовал использовать метод Trainer.predict, но он сказал, что нет такого атрибута, как Trainer. Вот код Gradio,
импортировать градиент как gr импортный маринованный огурец импортировать torch.nn как nn класс BERT_Arch(nn.Module): def __init__(self, bert): супер(BERT_Arch, self).__init__() self.bert = Берт # выпадающий слой self.dropout = nn.Dropout(0.2) # функция активации relu self.relu = nn.ReLU() # плотный слой self.fc1 = nn.Linear(768,512) self.fc2 = nn.Linear(512,256) self.fc3 = nn.Linear(256,5) #softmax функция активации self.softmax = nn.LogSoftmax(dim=1) защита make_prediction(текст): с open("model.pickle", "rb") как f: clf = Pickle.load(f) preds = clf.predict([text]) # Предполагается, что ваша модель принимает один ввод текста если предс == 1: return "Конечно, я добавлю ваш заказ, он будет стоить 30 долларов, что-нибудь еще?" Элиф Предс == 2: return «Я также добавил в список новые товары, которые будут стоить 55 долларов». Элиф Предс == 3: return «Это отличный выбор, вам нужен раздел овощей или нет?» Элиф Предс == 4: return «Ваш заказ будет готов через 20 минут» элиф предс == 5: ответ «Хорошо, я сделаю количество согласно указанному количеству человек» вывод = гр.Textbox() приложение = gr.Interface(fn=make_prediction, inputs="text", outputs=output) приложение.запуск() Вот ошибка
Traceback (самый последний вызов — последний): Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\gradio\routes.py», строка 516, в прогнозе вывод = ожидание маршрута_utils.call_process_api( Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\gradio\route_utils.py», строка 219, в call_process_api вывод = ожидание app.get_blocks().process_api( Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\gradio\blocks.py», строка 1437, вprocess_api результат = ожидайте self.call_function( Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\gradio\blocks.py», строка 1109, в call_function предсказание = ожидайте Anyio.to_thread.run_sync( Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\to_thread.py», строка 33, в run_sync return await get_asynclib().run_sync_in_worker_thread( Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\_backends\_asyncio.py», строка 877, в run_sync_in_worker_thread вернуться, дождаться будущего Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\_backends\_asyncio.py», строка 807, в запуске результат = context.run(func, *args) Файл "c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\gradio\utils.py", строка 650, в оболочке ответ = f(*args, **kwargs) Файл «C:\Users\hp\AppData\Local\Temp\ipykernel_14968\3045401095.py», строка 24, в make_prediction. preds = clf.predict([text]) # Предполагается, что ваша модель принимает один ввод текста Файл «c:\Users\hp\AppData\Local\Programs\Python\Python39\lib\site-packages\torch\nn\modules\module.py», строка 1614, в __getattr__ поднять AttributeError("Объект '{}' не имеет атрибута '{}'".format( AttributeError: объект «BERT_Arch» не имеет атрибута «предсказать». Кроме того, я добавил класс BERT_Arch в свой код Gradio, потому что его не удалось найти в сохраненной модели рассола.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Ошибка распаковки при загрузке предварительно обученной модели owrd2vec
Anonymous » » в форуме Python - 0 Ответы
- 12 Просмотры
-
Последнее сообщение Anonymous
-