Punctuation and Capitalization Model not working
State: closed | Pull request: no
Labels: name: bug

Dear Team,

I am trying to test  "Punctuation and Capitalization Model" Quick Start Guide  
from
https://docs.nvidia.com/nemo-framework/user-guide/latest/nemotoolkit/nlp/punctuation_and_capitalization.html

```
from nemo.collections.nlp.models import PunctuationCapitalizationModel

# to get the list of pre-trained models
PunctuationCapitalizationModel.list_available_models()

# Download and load the pre-trained BERT-based model
model = PunctuationCapitalizationModel.from_pretrained("punctuation_en_bert")

# try the model on a few examples
model.add_punctuation_capitalization(['how are you', 'great how about you'])

```
Each time I am receiving error 

```
ImportError: cannot import name 'MMapIndexedDataset' from 'megatron.core.datasets.indexed_dataset' (/home/deep/.local/lib/python3.10/site-packages/megatron/core/datasets/indexed_dataset.py)

```

My attempts to change megatron-core version ended resultness.
 
The environment configuration shows blow:

NVIDIA-SMI 550.54.14
Driver Version: 550.54.14
CUDA Version: 12.4

nvcc -V :
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2024 NVIDIA Corporation
Built on Tue_Feb_27_16:19:38_PST_2024
Cuda compilation tools, release 12.4, V12.4.99
Build cuda_12.4.r12.4/compiler.33961263_0

cuDNN: 8.9.6
torch 2.4.1
torchvision 0.19.1

 

I am wasting time on reinstallation ans re-configuration of all software components.
Unfortunately yet there is no result.
Only the error was changed:
```

Traceback (most recent call last):
  File "/maroc/nemoasr/pc.py", line 1, in <module>
    from nemo.collections.nlp.models import PunctuationCapitalizationModel
  File "/maroc/NeMo/nemo/collections/nlp/__init__.py", line 15, in <module>
    from nemo.collections.nlp import data, losses, models, modules
  File "/maroc/NeMo/nemo/collections/nlp/data/__init__.py", line 16, in <module>
    from nemo.collections.nlp.data.entity_linking.entity_linking_dataset import EntityLinkingDataset
  File "/maroc/NeMo/nemo/collections/nlp/data/entity_linking/__init__.py", line 15, in <module>
    from nemo.collections.nlp.data.entity_linking.entity_linking_dataset import EntityLinkingDataset
  File "/maroc/NeMo/nemo/collections/nlp/data/entity_linking/entity_linking_dataset.py", line 22, in <module>
    from nemo.core.classes import Dataset
  File "/maroc/NeMo/nemo/core/__init__.py", line 16, in <module>
    from nemo.core.classes import *
  File "/maroc/NeMo/nemo/core/classes/__init__.py", line 33, in <module>
    from nemo.core.classes.modelPT import ModelPT
  File "/maroc/NeMo/nemo/core/classes/modelPT.py", line 29, in <module>
    from megatron.core.optimizer import OptimizerConfig, get_megatron_optimizer
  File "/home/deep/.local/lib/python3.10/site-packages/megatron/core/optimizer/__init__.py", line 8, in <module>
    from transformer_engine.pytorch.optimizers import FusedAdam as Adam
  File "/home/deep/.local/lib/python3.10/site-packages/transformer_engine/__init__.py", line 10, in <module>
    import transformer_engine.common
  File "/home/deep/.local/lib/python3.10/site-packages/transformer_engine/common/__init__.py", line 118, in <module>
    _TE_LIB_CTYPES = _load_library()
  File "/home/deep/.local/lib/python3.10/site-packages/transformer_engine/common/__init__.py", line 89, in _load_library
    return ctypes.CDLL(so_path, mode=ctypes.RTLD_GLOBAL)
  File "/usr/local/lib/python3.10/ctypes/__init__.py", line 374, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: /home/deep/.local/lib/python3.10/site-packages/transformer_engine/libtransformer_engine.so: undefined symbol: cudnnBackendExecute

``` 

I had re-installed all CUDx and pip packages.
It is hard to tell all details.
I can say that It is a horrible difficult and long history.
However, it is working now.