RASA Chatbot Framework выдает ошибку во время обучения:fit() получил несколько значений для аргумента ключевого слова 'batch_size'
Я пытался тренировать чат-бота, созданного с помощью rasa, используя фрагмент
agent.train(data,augmentation_factor=50,
epochs=500,
batch_size=10)
и получил следующую ошибку. Я знаю, что это не ошибка rasa_core, а что-то, связанное с keras, вероятно.
rasa_core/policies/keras_policy.py", line 177, in train
**params)
TypeError: fit() got multiple values for keyword argument 'batch_size'
Я новичок в построении ботов и никогда не занимался глубоким обучением Project до этого. Используя следующие зависимости rasa_core==0.12.x keras==2.1.6
2 ответа
У меня была такая же ошибка, и после нескольких поисков я нашел решение. Это не лучшее решение, но оно может помочь!
Перейдите в rasa_core\rasa_core\policy \keras_policy.py в строках 172-177 и удалите эпохи и аргументы batch_size из model.fit. Изменить это:
params = self._get_valid_params(self.model.fit, **kwargs)
self.model.fit(shuffled_X, shuffled_y,
epochs=self.epochs, batch_size=self.batch_size,
**params)
к этому:
params = self._get_valid_params(self.model.fit, **kwargs)
self.model.fit(shuffled_X, shuffled_y,**params)
Затем вы можете передать аргументы epochos и batch_size в agent.train()
Надеюсь, это поможет!
У моего друга была такая же проблема. У него установлена последняя версия rasa_core. Однако keras_policy.py получил похожую проблему. Я дал ему свою версию keras_policy.py, и он заменил ее моей версией, и она сработала. Я знаю, что это не правильное решение, но вы можете использовать это как обходной путь