Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix: 'IterableDatasetWrapper' has no len() when using Lhotse datasets #12189

Conversation

AudranBert
Copy link

What does this PR do ?

This PR fixes the error #12093. As said in the doc, lhotse datasets don't have a length associated, so it is impossible to set _trainer.limit_train_batches. Instead of throwing an error it will just show a warning saying that _trainer.limit_train_batches is not compatible with lhotse datasets

This PR is a draft because I need to make sure it doesn't break something else. I also need to check if the same errors can happen on other model classes (rnnt...).

Collection: ASR

Changelog

  • Fix bug with Lhotse datasets and ctc models

Usage

init_from_nemo_model: ".cache/huggingface/hub/models--nvidia--parakeet-ctc-0.6b/snapshots/16ca39445465932bfbaeb5126933d5ce8bd43a77/parakeet-ctc-0.6b.nemo" # path to nemo model
model:
  sample_rate: 16000
  compute_eval_loss: true
  log_prediction: false     # enables logging sample predictions in the output during training
  ctc_reduction: 'mean_volume'
  skip_nan_grad: false
  seed: 42
  train_ds:
    sample_rate: ${model.sample_rate}
    batch_size: 1 # must be 1 if using bucketing_batch_size
    shuffle: true
    pin_memory: true
    max_duration: 30.1
    min_duration: 0.1
    shuffle_n: 2048
    num_workers: 8
    manifest_filepath:
    manifest_filepath: tarred_datasets/sharded_manifests/manifest__OP_0..95_CL_.json
    tarred_audio_filepaths: tarred_datasets/audio__OP_0..95_CL_.tar
    use_lhotse: true
    batch_duration: 1100
    quadratic_duration: 30
    num_buckets: 30
    num_cuts_for_bins_estimate: 10000
    bucket_buffer_size: 10000
    shuffle_buffer_size: 10000
    use_bucketing: true

GitHub Actions CI

The Jenkins CI system has been replaced by GitHub Actions self-hosted runners.

The GitHub Actions CI will run automatically when the "Run CICD" label is added to the PR.
To re-run CI remove and add the label again.
To run CI on an untrusted fork, a NeMo user with write access must first click "Approve and run".

Before your PR is "Ready for review"

Pre checks:

  • Make sure you read and followed Contributor guidelines
  • Did you write any new necessary tests?
  • Did you add or update any necessary documentation?
  • Does the PR affect components that are optional to install? (Ex: Numba, Pynini, Apex etc)
    • Reviewer: Does the PR have correct import guards for all optional libraries?

PR Type:

  • New Feature
  • Bugfix
  • Documentation

If you haven't finished some of the above items you can still open "Draft" PR.

Who can review?

Anyone in the community is free to review the PR once the checks have passed.
Contributor guidelines contains specific people who can review PRs to various areas.

Additional Information

Signed-off-by: AudranBert <[email protected]>
@github-actions github-actions bot added the ASR label Feb 14, 2025
Signed-off-by: Audran Bert <[email protected]>
@AudranBert AudranBert closed this Feb 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant