Skip to content

EMTTS Pronunciation Control - #15965

Open
paarthneekhara wants to merge 21 commits into
NVIDIA-NeMo:mainfrom
paarthneekhara:emtts_pc
Open

EMTTS Pronunciation Control#15965
paarthneekhara wants to merge 21 commits into
NVIDIA-NeMo:mainfrom
paarthneekhara:emtts_pc

Conversation

@paarthneekhara

@paarthneekhara paarthneekhara commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

Pronunciation Control for EMTTS using partially phonemized text input.

Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
@copy-pr-bot

copy-pr-bot Bot commented Jul 24, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@github-actions github-actions Bot added the TTS label Jul 24, 2026
import pytest
import torch

import nemo.collections.tts.parts.utils.tts_dataset_utils as tts_dataset_utils
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
@paarthneekhara
paarthneekhara marked this pull request as ready for review July 27, 2026 16:04
@paarthneekhara
paarthneekhara requested review from blisc and shehzeen July 27, 2026 16:04
@paarthneekhara paarthneekhara changed the title Emtts pc Emtts Pronunciation Control Jul 27, 2026
@paarthneekhara paarthneekhara changed the title Emtts Pronunciation Control EMTTS Pronunciation Control Jul 27, 2026
Comment thread nemo/collections/tts/data/text_to_speech_dataset.py Outdated
Comment thread nemo/collections/tts/data/text_to_speech_dataset_lhotse.py
Comment thread scripts/tts_comparison_report/reporting/constants.py Outdated
Comment thread easymagpie_single_infer.py Outdated
Comment thread nemo/collections/tts/parts/utils/tts_dataset_utils.py
Resolve MagpieTTS phoneme-token and multiturn integration conflicts while preserving branch-specific phonemization behavior.

Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
@paarthneekhara

Copy link
Copy Markdown
Collaborator Author

/ok to test b7c7efc

Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
@paarthneekhara

Copy link
Copy Markdown
Collaborator Author

/ok to test ceca177

@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

[🤖]: Hi @paarthneekhara 👋,

We wanted to let you know that a CICD pipeline for this PR just finished successfully.

So it might be time to merge this PR or get some approvals.

Signed-off-by: Paarth Neekhara <paarth.n@gmail.com>
@paarthneekhara

Copy link
Copy Markdown
Collaborator Author

/ok to test 5c4c683

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

[🤖]: Hi @paarthneekhara 👋,

We wanted to let you know that a CICD pipeline for this PR just finished successfully.

So it might be time to merge this PR or get some approvals.

@paarthneekhara

Copy link
Copy Markdown
Collaborator Author

/ok to test c4b9be7

Comment on lines +1 to 8
numpy>=1.26
PyYAML>=6.0
safetensors>=0.8.0
soundfile>=0.13.1
tokenizers

# Runtime dependencies used by EasyMagpie or the speech-serving endpoint.
transformers>=5.5.3

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
numpy>=1.26
PyYAML>=6.0
safetensors>=0.8.0
soundfile>=0.13.1
tokenizers
# Runtime dependencies used by EasyMagpie or the speech-serving endpoint.
transformers>=5.5.3
# Runtime dependencies used by EasyMagpie or the speech-serving endpoint.
numpy>=1.26
PyYAML>=6.0
safetensors>=0.8.0
soundfile>=0.13.1
tokenizers
transformers>=5.5.3

Comment on lines +9 to +11
# vLLM and vLLM-Omni must use the same major/minor version.
vllm==0.24.0
vllm-omni==0.24.0

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# vLLM and vLLM-Omni must use the same major/minor version.
vllm==0.24.0
vllm-omni==0.24.0
vllm==0.24.0 # vLLM and vLLM-Omni must use the same major/minor version.
vllm-omni==0.24.0 # vLLM and vLLM-Omni must use the same major/minor version.

if segment_type == "text":
token_ids.extend(text_tokenizer.encode(text=segment, tokenizer_name=tokenizer_name))
else:
token_ids.extend(text_phoneme_token_offset + token_id for token_id in phoneme_tokenizer.encode(segment))

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What happens if someone passes in "Hello my name is"? What happens if graphemes are passed inside of the phoneme tags?

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.

3 participants