Training Pipeline Issue - ML Package - Purchase Orders

Hi Team,

I have facing an issue while running Training Pipeline “Purchase Orders” ML Package “zero division error”.

2023-05-26 16:44:10,432 - uipath_core.trainer_run:main:74 - INFO: Starting training job…
2023-05-26 16:44:12,849 - matplotlib:_get_config_or_cache_dir:526 - WARNING: Matplotlib created a temporary config/cache directory at /tmp/matplotlib-9ckh4hcy because the default path (/.config/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing.
2023-05-26 16:44:13,032 - matplotlib.font_manager:_load_fontmanager:1544 - INFO: generated new fontManager
2023-05-26 16:44:14,660 - uipath_core.storage.azure_storage_client:download:118 - INFO: Dataset from bucket folder training-c02abae0-79f0-4a8d-80e2-0eb81db53991/c82e16a1-565e-49f1-8f87-0e6b1787547c/365a938c-db18-4b1a-badb-5332ea6fb953/export/purchase_orders_export_23-05-26T153641 with size 32 downloaded successfully
2023-05-26 16:44:14,661 - uipath_core.training_plugin:train_model:129 - INFO: Start model training…
2023-05-26 16:44:14,661 - uipath_core.training_plugin:initialize_model:123 - INFO: Start model initialization…
2023-05-26 16:44:14,661 - root:initialize_package:195 - INFO: Using package type provided by runtime argument with value: purchase_orders
2023-05-26 16:44:14,661 - root:initialize_package:204 - INFO: Initializing purchase_orders package options …
2023-05-26 16:44:14,662 - root:configure_options:177 - INFO: Document type purchase_orders language: en
2023-05-26 16:44:14,662 - root:configure_options:211 - INFO: Training with random slices: True
2023-05-26 16:44:14,662 - root:configure_options:212 - INFO: Sample by size: True
2023-05-26 16:44:14,662 - root:initialize_package:209 - INFO: System-Level Configuration:
2023-05-26 16:44:14,663 - root:initialize_package:210 - INFO: ATen/Parallel:
at::get_num_threads() : 7
at::get_num_interop_threads() : 7
OpenMP 201511 (a.k.a. OpenMP 4.5)
omp_get_max_threads() : 7
Intel(R) Math Kernel Library Version 2020.0.0 Product Build 20191122 for Intel(R) 64 architecture applications
mkl_get_max_threads() : 7
Intel(R) MKL-DNN v2.2.3 (Git Hash 7336ca9f055cf1bfa13efb658fe15dc9b41f0740)
std::thread::hardware_concurrency() : 8
Environment variables:
OMP_NUM_THREADS : 7
MKL_NUM_THREADS : [not set]
ATen parallel backend: OpenMP

2023-05-26 16:44:14,663 - root:init:27 - INFO: Pipeline Type: TRAIN_ONLY
2023-05-26 16:44:14,663 - uipath_core.training_plugin:initialize_model:126 - INFO: Model initialized successfully
2023-05-26 16:44:14,663 - root:log_data_version_info:13 - INFO: =========Data version information=========
2023-05-26 16:44:14,677 - root:log_data_version_info:17 - WARNING: Unknown data version:
2023-05-26 16:44:14,677 - root:log_data_version_info:17 - INFO: ==========================================
2023-05-26 16:44:14,677 - root:preprocess_data:686 - INFO: Creating dataset for document type purchase_orders…
2023-05-26 16:44:14,690 - root:preprocess_data:690 - INFO: Doctype purchase_orders Statistics:
2023-05-26 16:44:14,690 - root:preprocess_data:694 - INFO:
Extraction fields:
tag = 1889
tag[description] = 283
tag[shipping-address] = 68
tag[unit-measure] = 44
tag[product-code] = 36
tag[quantity] = 36
tag[delivery-by-date] = 36
tag[unit-price] = 36
tag[line-amount] = 36
tag[vendor-name] = 30
tag[shipping-name] = 28
tag[po-number] = 20

Subsets:
subset[TEST] = 10

2023-05-26 16:44:14,691 - root:create_processor:50 - INFO: Loading LayoutLMV2 processor from HuggingFace …
2023-05-26 16:44:14,981 - root:create_multiprocessing_pool:180 - INFO: Creating pool with 4 processes …
2023-05-26 16:44:15,247 - root:preprocess_data:767 - INFO: train: (0, 12) pages of (0, 7) documents
2023-05-26 16:44:15,247 - root:preprocess_data:768 - INFO: test: (0, 12) pages of (0, 7) documents
2023-05-26 16:44:15,251 - uipath_core.training_plugin:model_run:189 - ERROR: Training failed for pipeline type: TRAIN_ONLY, error: division by zero
2023-05-26 16:44:15,252 - uipath_core.trainer_run:main:91 - ERROR: Training Job failed, error: division by zero
Traceback (most recent call last):
File “/model/bin/uipath_core/trainer_run.py”, line 86, in main
wrapper.run()
File “/workspace/model/microservice/training_wrapper.py”, line 64, in run
return self.training_plugin.model_run()
File “/model/bin/uipath_core/training_plugin.py”, line 205, in model_run
raise ex
File “/model/bin/uipath_core/training_plugin.py”, line 181, in model_run
self.run_train_only()
File “/model/bin/uipath_core/training_plugin.py”, line 268, in run_train_only
score = self.train_model(self.local_dataset_directory)
File “/model/bin/uipath_core/training_plugin.py”, line 131, in train_model
response = self.model.train(directory)
File “/workspace/model/microservice/train.py”, line 35, in train
self.process_data()
File “/workspace/model/microservice/train.py”, line 95, in process_data
self.dataset = dataset.Dataset(self.opt)
File “”, line 163, in init
File “”, line 61, in init
File “”, line 770, in preprocess_data
ZeroDivisionError: division by zero
2023-05-26 16:44:15,253 - uipath_core.trainer_run:main:98 - INFO: Job run stopped.
2023-05-26 16:45:06,522 - uipath_core.trainer_run:main:74 - INFO: Starting training job…
2023-05-26 16:45:08,984 - matplotlib:_get_config_or_cache_dir:526 - WARNING: Matplotlib created a temporary config/cache directory at /tmp/matplotlib-7uc1glw9 because the default path (/.config/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing.
2023-05-26 16:45:09,169 - matplotlib.font_manager:_load_fontmanager:1544 - INFO: generated new fontManager
2023-05-26 16:45:10,245 - uipath_core.logs.upload_log_service:upload_logs_file:92 - INFO: Retry Training Triggered:
2023-05-26 16:45:10,720 - uipath_core.storage.azure_storage_client:download:118 - INFO: Dataset from bucket folder training-c02abae0-79f0-4a8d-80e2-0eb81db53991/c82e16a1-565e-49f1-8f87-0e6b1787547c/365a938c-db18-4b1a-badb-5332ea6fb953/export/purchase_orders_export_23-05-26T153641 with size 32 downloaded successfully
2023-05-26 16:45:10,721 - uipath_core.training_plugin:train_model:129 - INFO: Start model training…
2023-05-26 16:45:10,721 - uipath_core.training_plugin:initialize_model:123 - INFO: Start model initialization…
2023-05-26 16:45:10,721 - root:initialize_package:195 - INFO: Using package type provided by runtime argument with value: purchase_orders
2023-05-26 16:45:10,721 - root:initialize_package:204 - INFO: Initializing purchase_orders package options …
2023-05-26 16:45:10,722 - root:configure_options:177 - INFO: Document type purchase_orders language: en
2023-05-26 16:45:10,722 - root:configure_options:211 - INFO: Training with random slices: True
2023-05-26 16:45:10,722 - root:configure_options:212 - INFO: Sample by size: True
2023-05-26 16:45:10,722 - root:initialize_package:209 - INFO: System-Level Configuration:
2023-05-26 16:45:10,723 - root:initialize_package:210 - INFO: ATen/Parallel:
at::get_num_threads() : 7
at::get_num_interop_threads() : 7
OpenMP 201511 (a.k.a. OpenMP 4.5)
omp_get_max_threads() : 7
Intel(R) Math Kernel Library Version 2020.0.0 Product Build 20191122 for Intel(R) 64 architecture applications
mkl_get_max_threads() : 7
Intel(R) MKL-DNN v2.2.3 (Git Hash 7336ca9f055cf1bfa13efb658fe15dc9b41f0740)
std::thread::hardware_concurrency() : 8
Environment variables:
OMP_NUM_THREADS : 7
MKL_NUM_THREADS : [not set]
ATen parallel backend: OpenMP

2023-05-26 16:45:10,723 - root:init:27 - INFO: Pipeline Type: TRAIN_ONLY
2023-05-26 16:45:10,723 - uipath_core.training_plugin:initialize_model:126 - INFO: Model initialized successfully
2023-05-26 16:45:10,723 - root:log_data_version_info:13 - INFO: =========Data version information=========
2023-05-26 16:45:10,735 - root:log_data_version_info:17 - WARNING: Unknown data version:
2023-05-26 16:45:10,735 - root:log_data_version_info:17 - INFO: ==========================================
2023-05-26 16:45:10,735 - root:preprocess_data:686 - INFO: Creating dataset for document type purchase_orders…
2023-05-26 16:45:10,748 - root:preprocess_data:690 - INFO: Doctype purchase_orders Statistics:
2023-05-26 16:45:10,748 - root:preprocess_data:694 - INFO:
Extraction fields:
tag = 1889
tag[description] = 283
tag[shipping-address] = 68
tag[unit-measure] = 44
tag[product-code] = 36
tag[quantity] = 36
tag[delivery-by-date] = 36
tag[unit-price] = 36
tag[line-amount] = 36
tag[vendor-name] = 30
tag[shipping-name] = 28
tag[po-number] = 20

Subsets:
subset[TEST] = 10

2023-05-26 16:45:10,748 - root:create_processor:50 - INFO: Loading LayoutLMV2 processor from HuggingFace …
2023-05-26 16:45:11,045 - root:create_multiprocessing_pool:180 - INFO: Creating pool with 4 processes …
2023-05-26 16:45:11,312 - root:preprocess_data:767 - INFO: train: (0, 12) pages of (0, 7) documents
2023-05-26 16:45:11,312 - root:preprocess_data:768 - INFO: test: (0, 12) pages of (0, 7) documents
2023-05-26 16:45:11,315 - uipath_core.training_plugin:model_run:189 - ERROR: Training failed for pipeline type: TRAIN_ONLY, error: division by zero
2023-05-26 16:45:11,317 - uipath_core.trainer_run:main:91 - ERROR: Training Job failed, error: division by zero
Traceback (most recent call last):
File “/model/bin/uipath_core/trainer_run.py”, line 86, in main
wrapper.run()
File “/workspace/model/microservice/training_wrapper.py”, line 64, in run
return self.training_plugin.model_run()
File “/model/bin/uipath_core/training_plugin.py”, line 205, in model_run
raise ex
File “/model/bin/uipath_core/training_plugin.py”, line 181, in model_run
self.run_train_only()
File “/model/bin/uipath_core/training_plugin.py”, line 268, in run_train_only
score = self.train_model(self.local_dataset_directory)
File “/model/bin/uipath_core/training_plugin.py”, line 131, in train_model
response = self.model.train(directory)
File “/workspace/model/microservice/train.py”, line 35, in train
self.process_data()
File “/workspace/model/microservice/train.py”, line 95, in process_data
self.dataset = dataset.Dataset(self.opt)
File “”, line 163, in init
File “”, line 61, in init
File “”, line 770, in preprocess_data
ZeroDivisionError: division by zero
2023-05-26 16:45:11,317 - uipath_core.trainer_run:main:98 - INFO: Job run stopped.

Hi @suresh.kumarkaliki ,

Could you please mention which version of the package are you using, if it is the latest version please try downgrading the version and publish again.

Best Regards.