/home/ubuntu/10-speakers-latest-v1/data
/home/ubuntu/844424930361864-72-m_telugu.wav
/home/ubuntu/844424933537177-514-m_telugu.wav
/home/ubuntu/audio_jepa_paper.txt
/home/ubuntu/bench-codecs/codecbench/audio
/home/ubuntu/benchmark_luxtts.py
/home/ubuntu/benchmark_luxtts_v2.py
/home/ubuntu/bob5_BOB5HRg8tSE.wav
/home/ubuntu/bob5_clean/SPEAKER_00.wav
/home/ubuntu/bob5_clean/SPEAKER_01.wav
/home/ubuntu/bob5_clean/SPEAKER_02.wav
/home/ubuntu/bob5_clean/SPEAKER_03.wav
/home/ubuntu/bob5_clean/SPEAKER_04.wav
/home/ubuntu/bob5_clean/SPEAKER_05.wav
/home/ubuntu/bob5_clean/SPEAKER_06.wav
/home/ubuntu/bob5_clean/SPEAKER_07.wav
/home/ubuntu/bob5_clean/SPEAKER_08.wav
/home/ubuntu/bob5_diarized/speaker_0.wav
/home/ubuntu/bob5_diarized/speaker_1.wav
/home/ubuntu/bob5_diarized/speaker_2.wav
/home/ubuntu/bob5_diarized/speaker_3.wav
/home/ubuntu/bob5_diarized/speaker_4.wav
/home/ubuntu/bob5_diarized/speaker_5.wav
/home/ubuntu/bob5_final_sp03_rediarize/SPEAKER_00.wav
/home/ubuntu/bob5_final/SPEAKER_00.wav
/home/ubuntu/bob5_final/SPEAKER_01.wav
/home/ubuntu/bob5_final/SPEAKER_02.wav
/home/ubuntu/bob5_final/SPEAKER_03.wav
/home/ubuntu/bob5_final/SPEAKER_04.wav
/home/ubuntu/bob5_final/SPEAKER_05.wav
/home/ubuntu/bob5_final/SPEAKER_06.wav
/home/ubuntu/bob5_final/SPEAKER_07.wav
/home/ubuntu/bob5_final/SPEAKER_08.wav
/home/ubuntu/bob5_lalal_16k.wav
/home/ubuntu/bob5_lalal_diarized/SPEAKER_00.wav
/home/ubuntu/bob5_lalal_diarized/SPEAKER_01.wav
/home/ubuntu/bob5_lalal_diarized/SPEAKER_02.wav
/home/ubuntu/bob5_lalal_diarized/SPEAKER_03.wav
/home/ubuntu/bob5_lalal_diarized/SPEAKER_04.wav
/home/ubuntu/bob5_lalal_diarized/SPEAKER_05.wav
/home/ubuntu/bob5_lalal_diarized/SPEAKER_06.wav
/home/ubuntu/bob5_lalal_diarized/SPEAKER_07.wav
/home/ubuntu/bob5_lalal_diarized/SPEAKER_08.wav
/home/ubuntu/bob5_lalal_diarized/SPEAKER_09.wav
/home/ubuntu/bob5_pyannote_exclusive/SPEAKER_00.wav
/home/ubuntu/bob5_pyannote_exclusive/SPEAKER_01.wav
/home/ubuntu/bob5_pyannote_exclusive/SPEAKER_02.wav
/home/ubuntu/bob5_pyannote_exclusive/SPEAKER_03.wav
/home/ubuntu/bob5_pyannote_exclusive/SPEAKER_04.wav
/home/ubuntu/bob5_pyannote_exclusive/SPEAKER_05.wav
/home/ubuntu/bob5_pyannote_exclusive/SPEAKER_06.wav
/home/ubuntu/bob5_pyannote_exclusive/SPEAKER_07.wav
/home/ubuntu/bob5_pyannote_exclusive/SPEAKER_08.wav
/home/ubuntu/bob5_pyannote/SPEAKER_00.wav
/home/ubuntu/bob5_pyannote/SPEAKER_01.wav
/home/ubuntu/bob5_pyannote/SPEAKER_02.wav
/home/ubuntu/bob5_pyannote/SPEAKER_03.wav
/home/ubuntu/bob5_pyannote/SPEAKER_04.wav
/home/ubuntu/bob5_pyannote/SPEAKER_05.wav
/home/ubuntu/bob5_pyannote/SPEAKER_06.wav
/home/ubuntu/bob5_pyannote/SPEAKER_07.wav
/home/ubuntu/bob5_pyannote/SPEAKER_08.wav
/home/ubuntu/bob5_pyannote_timeline/SPEAKER_00.wav
/home/ubuntu/bob5_pyannote_timeline/SPEAKER_01.wav
/home/ubuntu/bob5_pyannote_timeline/SPEAKER_02.wav
/home/ubuntu/bob5_pyannote_timeline/SPEAKER_03.wav
/home/ubuntu/bob5_pyannote_timeline/SPEAKER_04.wav
/home/ubuntu/bob5_pyannote_timeline/SPEAKER_05.wav
/home/ubuntu/bob5_pyannote_timeline/SPEAKER_06.wav
/home/ubuntu/bob5_pyannote_timeline/SPEAKER_07.wav
/home/ubuntu/bob5_pyannote_timeline/SPEAKER_08.wav
/home/ubuntu/bob5_vocals_16k.wav
/home/ubuntu/checkpoints/stable-audio-open-1.0
/home/ubuntu/checkpoints/stable-audio-open-1.0/fma_dataset_attribution2.csv
/home/ubuntu/checkpoints/stable-audio-open-1.0/freesound_dataset_attribution2.csv
/home/ubuntu/checkpoints/stable-audio-open-1.0/stable_audio_light.png
/home/ubuntu/cls_dataset_log.txt
/home/ubuntu/compare_tts.py
/home/ubuntu/cooking_input_16k.wav
/home/ubuntu/cooking_input_48k.wav
/home/ubuntu/.cursor/plans/r2_upload_+_hf_dataset_6c580b10.plan.md
/home/ubuntu/.cursor/plans/tts_pipeline_optimization_148cce45.plan.md
/home/ubuntu/.cursor/plans/tts_pipeline_optimization_374e52e8.plan.md
/home/ubuntu/.cursor/plans/tts_pipeline_optimization_ce431730.plan.md
/home/ubuntu/.cursor/plans/tts_readiness_plan_c9974f06.plan.md
/home/ubuntu/.cursor/projects/home-ubuntu-maya3-data-validation
/home/ubuntu/.cursor/projects/home-ubuntu-tts
/home/ubuntu/.cursor-server/data
/home/ubuntu/.cursor/worktrees/maya3data__SSH__216.81.248.184_
/home/ubuntu/diarization_output/nemo_speaker_0_clean.wav
/home/ubuntu/diarization_output/nemo_speaker_0_ultraclean.wav
/home/ubuntu/diarization_output/nemo_speaker_0_verified.wav
/home/ubuntu/diarization_output/nemo_speaker_0.wav
/home/ubuntu/diarization_output/nemo_speaker_1_clean.wav
/home/ubuntu/diarization_output/nemo_speaker_1_ultraclean.wav
/home/ubuntu/diarization_output/nemo_speaker_1_verified.wav
/home/ubuntu/diarization_output/nemo_speaker_1.wav
/home/ubuntu/diarization_output/nemo_work/input_16k.wav
/home/ubuntu/diarization_output/pyannote_SPEAKER_00.wav
/home/ubuntu/diarization_output/pyannote_SPEAKER_01.wav
/home/ubuntu/double_dairized.wav
/home/ubuntu/finetuned_samples/modi_medium.wav
/home/ubuntu/finetuned_samples/modi_speech.wav
/home/ubuntu/finetuned_samples_v2/no_ref_medium.wav
/home/ubuntu/finetuned_samples_v2/no_ref_speech.wav
/home/ubuntu/finetuned_samples_v2/ref_medium.wav
/home/ubuntu/finetuned_samples_v2/ref_speech.wav
/home/ubuntu/global_backend/app/database.py
/home/ubuntu/hf_staging/dataset_combined.jsonl
/home/ubuntu/hf_staging/modi_processed/dataset.jsonl
/home/ubuntu/hf_staging/soprano_data
/home/ubuntu/hpml_nyu/data
/home/ubuntu/indic_tts_outputs
/home/ubuntu/indic_tts_outputs/bengali_4.wav
/home/ubuntu/indic_tts_outputs/hindi_1.wav
/home/ubuntu/indic_tts_outputs/hindi_2.wav
/home/ubuntu/indic_tts_outputs/malayalam_8.wav
/home/ubuntu/indic_tts_outputs/marathi_6.wav
/home/ubuntu/indic_tts_outputs/tamil_3.wav
/home/ubuntu/indic_tts_outputs/telugu_5.wav
/home/ubuntu/indic_tts_outputs/urdu_7.wav
/home/ubuntu/Irodori-TTS/irodori_tts
/home/ubuntu/Irodori-TTS/irodori_tts/dataset.py
/home/ubuntu/Irodori-TTS/test_outputs/t1_basic_long.wav
/home/ubuntu/Irodori-TTS/test_outputs/t1_basic_medium.wav
/home/ubuntu/Irodori-TTS/test_outputs/t1_basic_short.wav
/home/ubuntu/Irodori-TTS/test_outputs/t2_emoji_crying.wav
/home/ubuntu/Irodori-TTS/test_outputs/t2_emoji_neutral.wav
/home/ubuntu/Irodori-TTS/test_outputs/t2_emoji_sneezing.wav
/home/ubuntu/Irodori-TTS/test_outputs/t2_emoji_whisper.wav
/home/ubuntu/Irodori-TTS/test_outputs/t3_clone_a.wav
/home/ubuntu/Irodori-TTS/test_outputs/t3_clone_b.wav
/home/ubuntu/Irodori-TTS/test_outputs/t4_cfg_alternating.wav
/home/ubuntu/Irodori-TTS/test_outputs/t4_cfg_independent.wav
/home/ubuntu/Irodori-TTS/test_outputs/t4_cfg_joint.wav
/home/ubuntu/Irodori-TTS/test_outputs/t5_cfgtxt_1.0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t5_cfgtxt_3.0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t5_cfgtxt_7.0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t5_seed_0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t5_seed_123.wav
/home/ubuntu/Irodori-TTS/test_outputs/t5_seed_999.wav
/home/ubuntu/Irodori-TTS/test_outputs/t5_steps_10.wav
/home/ubuntu/Irodori-TTS/test_outputs/t5_steps_20.wav
/home/ubuntu/Irodori-TTS/test_outputs/t5_steps_40.wav
/home/ubuntu/Irodori-TTS/test_outputs/t6_cand1_0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t6_cand2_0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t6_cand2_1.wav
/home/ubuntu/Irodori-TTS/test_outputs/t6_cand4_0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t6_cand4_1.wav
/home/ubuntu/Irodori-TTS/test_outputs/t6_cand4_2.wav
/home/ubuntu/Irodori-TTS/test_outputs/t6_cand4_3.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc1_0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc2_0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc2_1.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc4_0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc4_1.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc4_2.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc4_3.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc8_0.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc8_1.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc8_2.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc8_3.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc8_4.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc8_5.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc8_6.wav
/home/ubuntu/Irodori-TTS/test_outputs/t7_conc8_7.wav
/home/ubuntu/jalsa_68wSTlrw_RQ.wav
/home/ubuntu/jalsa_diarized/speaker_1.wav
/home/ubuntu/jalsa_mono.wav
/home/ubuntu/jalsa_nemo_original/speaker_1.wav
/home/ubuntu/jalsa_original_16k.wav
/home/ubuntu/jalsa_trimmed.wav
/home/ubuntu/kanitts-2-dataset-pipeline
/home/ubuntu/kanitts-2-dataset-pipeline/prepare_hindi_dataset.py
/home/ubuntu/.keras/inaSpeechSegmenter/keras_speech_music_cnn.hdf5
/home/ubuntu/.keras/inaSpeechSegmenter/keras_speech_music_noise_cnn.hdf5
/home/ubuntu/lewm-tts
/home/ubuntu/lewm-tts/dataset.py
/home/ubuntu/lewm-tts/dataset_v5.py
/home/ubuntu/lewm-tts/ep151_recon.wav
/home/ubuntu/lewm-tts/ep151_synth_200.wav
/home/ubuntu/lewm-tts/ep151_synth_short.wav
/home/ubuntu/lewm-tts/ep151_synth_temp03.wav
/home/ubuntu/lewm-tts/ep151_synth_temp06.wav
/home/ubuntu/lewm-tts/ep75_recon.wav
/home/ubuntu/lewm-tts/ep75_synth1.wav
/home/ubuntu/lewm-tts/ep75_synth2.wav
/home/ubuntu/lewm-tts/ep75_synth3.wav
/home/ubuntu/lewm-tts/ep75_synth_t0.wav
/home/ubuntu/lewm-tts/fix2_recon.wav
/home/ubuntu/lewm-tts/fix2_synth1.wav
/home/ubuntu/lewm-tts/fix2_synth2.wav
/home/ubuntu/lewm-tts/fix2_synth3.wav
/home/ubuntu/lewm-tts/fix2_synth4_temp.wav
/home/ubuntu/lewm-tts/fix2_t08_synth1.wav
/home/ubuntu/lewm-tts/fix2_t08_synth2.wav
/home/ubuntu/lewm-tts/fix2_t08_synth3.wav
/home/ubuntu/lewm-tts/fix_ep40_recon.wav
/home/ubuntu/lewm-tts/fix_ep40_synth1.wav
/home/ubuntu/lewm-tts/fix_ep40_synth2.wav
/home/ubuntu/lewm-tts/fix_ep40_synth3_temp.wav
/home/ubuntu/lewm-tts/output/100mel_e102_recon.wav
/home/ubuntu/lewm-tts/output/100mel_e103_predict_tf.wav
/home/ubuntu/lewm-tts/output/100mel_e35_predict_tf.wav
/home/ubuntu/lewm-tts/output/100mel_e69_predict_tf.wav
/home/ubuntu/lewm-tts/output/100mel_gt.wav
/home/ubuntu/lewm-tts/output/best_no_prompt.wav
/home/ubuntu/lewm-tts/output/best_predict_tf_final_norm.wav
/home/ubuntu/lewm-tts/output/best_predict_tf_final.wav
/home/ubuntu/lewm-tts/output/best_prompted.wav
/home/ubuntu/lewm-tts/output/test_100mel_vocos_direct.wav
/home/ubuntu/lewm-tts/output/test_gt_vocos.wav
/home/ubuntu/lewm-tts/output/test_pred_vocos.wav
/home/ubuntu/lewm-tts/output/test_recon_vocos.wav
/home/ubuntu/lewm-tts/output/vocos_groundtruth.wav
/home/ubuntu/lewm-tts/output/vocos_noise_0.0.wav
/home/ubuntu/lewm-tts/output/vocos_noise_0.1.wav
/home/ubuntu/lewm-tts/output/vocos_noise_0.3.wav
/home/ubuntu/lewm-tts/output/vocos_noise_0.5.wav
/home/ubuntu/lewm-tts/output/vocos_noise_0.7.wav
/home/ubuntu/lewm-tts/output/vocos_noise_1.0.wav
/home/ubuntu/lewm-tts/output/vocos_predict_tf.wav
/home/ubuntu/lewm-tts/output/vocos_reconstruct.wav
/home/ubuntu/lewm-tts/processed_data
/home/ubuntu/lewm-tts/processed_data_100mel
/home/ubuntu/lewm-tts/processed_data_100mel/audio
/home/ubuntu/lewm-tts/processed_data/audio
/home/ubuntu/lewm-tts/processed_data_codec
/home/ubuntu/lewm-tts/sample_ar_prompted_v3b.wav
/home/ubuntu/lewm-tts/sample_ar_prompted.wav
/home/ubuntu/lewm-tts/sample_ar_v3c.wav
/home/ubuntu/lewm-tts/sample_ep66_recon.wav
/home/ubuntu/lewm-tts/sample_ep66_synth_1.wav
/home/ubuntu/lewm-tts/sample_ep66_synth_2.wav
/home/ubuntu/lewm-tts/sample_ep66_synth_3.wav
/home/ubuntu/lewm-tts/sample_gt_0.wav
/home/ubuntu/lewm-tts/sample_gt_100.wav
/home/ubuntu/lewm-tts/sample_gt_500.wav
/home/ubuntu/lewm-tts/sample_gt_v3b.wav
/home/ubuntu/lewm-tts/sample_gt_v4_0.wav
/home/ubuntu/lewm-tts/sample_gt_v4_100.wav
/home/ubuntu/lewm-tts/sample_gt_v4_500.wav
/home/ubuntu/lewm-tts/sample_recon_ep43_0.wav
/home/ubuntu/lewm-tts/sample_recon_ep43_100.wav
/home/ubuntu/lewm-tts/sample_recon_ep43_500.wav
/home/ubuntu/lewm-tts/sample_reconstruct_v3.wav
/home/ubuntu/lewm-tts/sample_recon_v3b_0.wav
/home/ubuntu/lewm-tts/sample_recon_v3b_100.wav
/home/ubuntu/lewm-tts/sample_recon_v3b_500.wav
/home/ubuntu/lewm-tts/sample_recon_v3b.wav
/home/ubuntu/lewm-tts/sample_recon_v3c_0.wav
/home/ubuntu/lewm-tts/sample_recon_v3c_100.wav
/home/ubuntu/lewm-tts/sample_recon_v3c_500.wav
/home/ubuntu/lewm-tts/sample_recon_v4_0.wav
/home/ubuntu/lewm-tts/sample_recon_v4_100.wav
/home/ubuntu/lewm-tts/sample_recon_v4_500.wav
/home/ubuntu/lewm-tts/samples_v3c/predict_best.wav
/home/ubuntu/lewm-tts/samples_v3c/recon_best.wav
/home/ubuntu/lewm-tts/samples_v3c/recon_ep200.wav
/home/ubuntu/lewm-tts/samples_v3c/synth_best_t05.wav
/home/ubuntu/lewm-tts/samples_v3c/synth_best.wav
/home/ubuntu/lewm-tts/samples_v4c/gt_0.wav
/home/ubuntu/lewm-tts/samples_v4c/gt_100.wav
/home/ubuntu/lewm-tts/samples_v4c/recon_0.wav
/home/ubuntu/lewm-tts/samples_v4c/recon_100.wav
/home/ubuntu/lewm-tts/samples_v4c/synth_prompted.wav
/home/ubuntu/lewm-tts/samples_v4c/synth_t00.wav
/home/ubuntu/lewm-tts/samples_v4c/synth_t03.wav
/home/ubuntu/lewm-tts/samples_v4c/tf_0.wav
/home/ubuntu/lewm-tts/samples_v4_ep120/gt_0.wav
/home/ubuntu/lewm-tts/samples_v4_ep120/recon_0.wav
/home/ubuntu/lewm-tts/samples_v4_ep120/synth_t00.wav
/home/ubuntu/lewm-tts/samples_v4_ep120/synth_t03.wav
/home/ubuntu/lewm-tts/samples_v4_ep120/tf_0.wav
/home/ubuntu/lewm-tts/samples_v5b/codec_only.wav
/home/ubuntu/lewm-tts/samples_v5b/gt_0.wav
/home/ubuntu/lewm-tts/samples_v5b/roundtrip.wav
/home/ubuntu/lewm-tts/samples_v5b/synth_t00.wav
/home/ubuntu/lewm-tts/samples_v5b/tf_0.wav
/home/ubuntu/lewm-tts/samples_v5_cfg/gt.wav
/home/ubuntu/lewm-tts/samples_v5_cfg/new1.wav
/home/ubuntu/lewm-tts/samples_v5_cfg/new2.wav
/home/ubuntu/lewm-tts/samples_v5_cfg/original.wav
/home/ubuntu/lewm-tts/samples_v5_cfg/synth_pure.wav
/home/ubuntu/lewm-tts/samples_v5/codec_only_0.wav
/home/ubuntu/lewm-tts/samples_v5_ep120/codec_only.wav
/home/ubuntu/lewm-tts/samples_v5_ep120/gt_0.wav
/home/ubuntu/lewm-tts/samples_v5_ep120/roundtrip_vq.wav
/home/ubuntu/lewm-tts/samples_v5_ep120/roundtrip.wav
/home/ubuntu/lewm-tts/samples_v5_ep120/synth_t00_vq.wav
/home/ubuntu/lewm-tts/samples_v5_ep120/synth_t00.wav
/home/ubuntu/lewm-tts/samples_v5_ep120/tf_vq.wav
/home/ubuntu/lewm-tts/samples_v5_ep120/tf.wav
/home/ubuntu/lewm-tts/samples_v5_ep50/codec_only.wav
/home/ubuntu/lewm-tts/samples_v5_ep50/gt_0.wav
/home/ubuntu/lewm-tts/samples_v5_ep50/gt_via_vq.wav
/home/ubuntu/lewm-tts/samples_v5_ep50/roundtrip_vq.wav
/home/ubuntu/lewm-tts/samples_v5_ep50/roundtrip.wav
/home/ubuntu/lewm-tts/samples_v5_ep50/synth_t00.wav
/home/ubuntu/lewm-tts/samples_v5_ep50/synth_t03.wav
/home/ubuntu/lewm-tts/samples_v5_ep50/tf_0.wav
/home/ubuntu/lewm-tts/samples_v5_ep50/tf_vq.wav
/home/ubuntu/lewm-tts/samples_v5/gt_0.wav
/home/ubuntu/lewm-tts/samples_v5_mask/p0_t1.wav
/home/ubuntu/lewm-tts/samples_v5_mask/p0_t2.wav
/home/ubuntu/lewm-tts/samples_v5_mask/p0_t3.wav
/home/ubuntu/lewm-tts/samples_v5_mask/p1_t1.wav
/home/ubuntu/lewm-tts/samples_v5_mask/p1_t2.wav
/home/ubuntu/lewm-tts/samples_v5_mask/p2_t1.wav
/home/ubuntu/lewm-tts/samples_v5_mask/predict_tf_0.wav
/home/ubuntu/lewm-tts/samples_v5_mask/prompted_0.wav
/home/ubuntu/lewm-tts/samples_v5_mask/prompted_1.wav
/home/ubuntu/lewm-tts/samples_v5_mask/prompted_2.wav
/home/ubuntu/lewm-tts/samples_v5_mask/roundtrip_0.wav
/home/ubuntu/lewm-tts/samples_v5_newtext/new_0.wav
/home/ubuntu/lewm-tts/samples_v5_newtext/new_1.wav
/home/ubuntu/lewm-tts/samples_v5_newtext/new_2.wav
/home/ubuntu/lewm-tts/samples_v5_pred/codec_only.wav
/home/ubuntu/lewm-tts/samples_v5_pred_ep44/roundtrip.wav
/home/ubuntu/lewm-tts/samples_v5_pred_ep44/synth_t00.wav
/home/ubuntu/lewm-tts/samples_v5_pred_ep44/synth_t03.wav
/home/ubuntu/lewm-tts/samples_v5_pred_ep44/tf.wav
/home/ubuntu/lewm-tts/samples_v5_pred/gt.wav
/home/ubuntu/lewm-tts/samples_v5_pred/predict_tf_0.wav
/home/ubuntu/lewm-tts/samples_v5_pred/prompted_0.wav
/home/ubuntu/lewm-tts/samples_v5_pred/prompted_1.wav
/home/ubuntu/lewm-tts/samples_v5_pred/prompted_2.wav
/home/ubuntu/lewm-tts/samples_v5_pred/prompted_temp_0.wav
/home/ubuntu/lewm-tts/samples_v5_pred/roundtrip_0.wav
/home/ubuntu/lewm-tts/samples_v5_pred/roundtrip.wav
/home/ubuntu/lewm-tts/samples_v5_pred/synth_0.wav
/home/ubuntu/lewm-tts/samples_v5_pred/synth_1.wav
/home/ubuntu/lewm-tts/samples_v5_pred/synth_2.wav
/home/ubuntu/lewm-tts/samples_v5_pred/synth_t00.wav
/home/ubuntu/lewm-tts/samples_v5_pred/synth_t03.wav
/home/ubuntu/lewm-tts/samples_v5_pred/tf.wav
/home/ubuntu/lewm-tts/samples_v5_prompted/gt.wav
/home/ubuntu/lewm-tts/samples_v5_prompted/prompt_3s.wav
/home/ubuntu/lewm-tts/samples_v5_prompted/prompted_2s.wav
/home/ubuntu/lewm-tts/samples_v5_prompted/prompted_3s.wav
/home/ubuntu/lewm-tts/samples_v5_prompted/prompted_5s.wav
/home/ubuntu/lewm-tts/samples_v5/roundtrip_0.wav
/home/ubuntu/lewm-tts/samples_v5/synth_t00.wav
/home/ubuntu/lewm-tts/samples_v5/synth_t03.wav
/home/ubuntu/lewm-tts/samples_v5/tf_0.wav
/home/ubuntu/lewm-tts/sample_synth_ep43.wav
/home/ubuntu/lewm-tts/sample_synth_v3b.wav
/home/ubuntu/lewm-tts/sample_synth_v3.wav
/home/ubuntu/lewm-tts/sample_synth_v4_0.wav
/home/ubuntu/lewm-tts/sample_synth_v4_1.wav
/home/ubuntu/lewm-tts/sample_tf_0.wav
/home/ubuntu/lewm-tts/sample_tf_100.wav
/home/ubuntu/lewm-tts/sample_tf_500.wav
/home/ubuntu/lewm-tts/sample_tf_v3b_0.wav
/home/ubuntu/lewm-tts/sample_tf_v3b_100.wav
/home/ubuntu/lewm-tts/sample_tf_v3c_0.wav
/home/ubuntu/lewm-tts/sample_tf_v4_0.wav
/home/ubuntu/lewm-tts/test_gt.wav
/home/ubuntu/lewm-tts/test_noisy_same_l1.wav
/home/ubuntu/lewm-tts/test_our_mel_vocos.wav
/home/ubuntu/lewm-tts/test_recon_v3c.wav
/home/ubuntu/lewm-tts/test_recon.wav
/home/ubuntu/lewm-tts/test_synth.wav
/home/ubuntu/lewm-tts/test_vocos_roundtrip.wav
/home/ubuntu/lewm-tts/v2/dataset.py
/home/ubuntu/lewm-tts/v2_ep25_recon.wav
/home/ubuntu/lewm-tts/v2_ep25_synth1.wav
/home/ubuntu/lewm-tts/v2_ep25_synth2.wav
/home/ubuntu/lewm-tts/v2_ep25_synth3.wav
/home/ubuntu/lewm-tts/v2_ep50_recon.wav
/home/ubuntu/lewm-tts/v2_ep50_synth1.wav
/home/ubuntu/lewm-tts/v2_ep50_synth2.wav
/home/ubuntu/lewm-tts/v2_ep50_synth3.wav
/home/ubuntu/lewm-tts/v2_ep50_synth_t0.wav
/home/ubuntu/lewm-tts/v2_ep75_recon.wav
/home/ubuntu/lewm-tts/v2_ep75_synth1.wav
/home/ubuntu/lewm-tts/v2_ep75_synth2.wav
/home/ubuntu/lewm-tts/v2_ep75_synth3.wav
/home/ubuntu/lewm-tts/v2_ep75_synth_t0.wav
/home/ubuntu/lewm-tts/v2/processed_data
/home/ubuntu/LuxTTS/benchmark_sample.wav
/home/ubuntu/LuxTTS/ref_audio.wav
/home/ubuntu/LuxTTS/ref_gtts.mp3
/home/ubuntu/luxtts_test_output.wav
/home/ubuntu/modi_dataset
/home/ubuntu/modi_dataset/dataset_info.json
/home/ubuntu/modi_processed/build_combined_dataset.py
/home/ubuntu/modi_processed/build_hf_dataset.py
/home/ubuntu/modi_processed/upload_r2_and_build_dataset.py
/home/ubuntu/modi_vibevoice_dataset
/home/ubuntu/modi_vibevoice_dataset/data-00000-of-00001.arrow
/home/ubuntu/modi_vibevoice_dataset/dataset_info.json
/home/ubuntu/nltk_data
/home/ubuntu/pipecat/.cursorrules/database-schema.mdc
/home/ubuntu/pipecat/deployments/datadog
/home/ubuntu/prepare_cls_dataset.py
/home/ubuntu/prepare_dataset.py
/home/ubuntu/prepare_vibevoice_dataset.py
/home/ubuntu/qwen3_conc_samples/batch1.wav
/home/ubuntu/qwen3_conc_samples/batch2.wav
/home/ubuntu/qwen3_conc_samples/batch4.wav
/home/ubuntu/qwen3_conc_samples/batch8.wav
/home/ubuntu/qwen3_hindi_results/06_hindi_clone.wav
/home/ubuntu/qwen3_hindi_results/07_english_clone_modi.wav
/home/ubuntu/qwen3_hindi_results/t01_baseline_en.wav
/home/ubuntu/qwen3_hindi_results/t02_hindi_devnag.wav
/home/ubuntu/qwen3_hindi_results/t03_hindi_en_lang.wav
/home/ubuntu/qwen3_hindi_results/t04_hinglish.wav
/home/ubuntu/qwen3_hindi_results/t05_hindi_long.wav
/home/ubuntu/qwen3_hindi_results/t06_english_modi.wav
/home/ubuntu/qwen3_hindi_results/t07_xvec_hindi.wav
/home/ubuntu/qwen3_hindi_results/test2_clone_english_lang_ch.wav
/home/ubuntu/qwen3_hindi_results/test2_clone_english_lang_en.wav
/home/ubuntu/qwen3_hindi_results/test2_clone_medium_lang_ch.wav
/home/ubuntu/qwen3_hindi_results/test2_clone_medium_lang_en.wav
/home/ubuntu/qwen3_hindi_results/test2_clone_simple_lang_ch.wav
/home/ubuntu/qwen3_hindi_results/test2_clone_simple_lang_en.wav
/home/ubuntu/qwen3_hindi_samples/modi_medium.wav
/home/ubuntu/qwen3_hindi_samples/modi_speech.wav
/home/ubuntu/qwen3_single_test.wav
/home/ubuntu/qwen3_tts_optimized.yaml
/home/ubuntu/qwen3_tts_test.py
/home/ubuntu/sam_audio_pure.py
/home/ubuntu/sam_audio_speaker_sep.py
/home/ubuntu/sarvam_60s.wav
/home/ubuntu/soprano_data
/home/ubuntu/soprano_data/generate_polly_data.py
/home/ubuntu/soprano_data/generate_tts_data.py
/home/ubuntu/soprano_data/prepare_all_data.py
/home/ubuntu/soprano_data/prepare_new_data.py
/home/ubuntu/soprano_data/sarvam_data
/home/ubuntu/SpeechTokenizer/images/speechtokenizer_framework.jpg
/home/ubuntu/SpeechTokenizer/samples/example_input.wav
/home/ubuntu/SpeechTokenizer/speechtokenizer
/home/ubuntu/SpeechTokenizer/speechtokenizer.egg-info
/home/ubuntu/Telugu_ Movie Roast.wav
/home/ubuntu/telugu_recon_nanocodec.wav
/home/ubuntu/telugu_recon_xcodec_22k.wav
/home/ubuntu/telugu_recon_xcodec.wav
/home/ubuntu/test_indic_tts.py
/home/ubuntu/test_mIp/lalal_voice_16k.wav
/home/ubuntu/test_mIp/lalal_voice.wav
/home/ubuntu/test_mIp/result_msdd/speaker_0_clean.wav
/home/ubuntu/test_mIp/result_msdd/speaker_1_clean.wav
/home/ubuntu/test_mIp/result_msdd/speaker_2_clean.wav
/home/ubuntu/test_mIp/result_msdd/speaker_3_clean.wav
/home/ubuntu/test_mIp/result_msdd/speaker_4_clean.wav
/home/ubuntu/test_mIp/result_msdd/speaker_5_clean.wav
/home/ubuntu/test_mIp/result_msdd/speaker_6_clean.wav
/home/ubuntu/test_mIp/result_msdd/speaker_7_clean.wav
/home/ubuntu/test_mIp/result/speaker_0_clean.wav
/home/ubuntu/test_mIp/result/speaker_1_clean.wav
/home/ubuntu/test_mIp/result/speaker_2_clean.wav
/home/ubuntu/test_mIp/result/speaker_3_clean.wav
/home/ubuntu/test_mIp/result/speaker_4_clean.wav
/home/ubuntu/test_mIp/result/speaker_5_clean.wav
/home/ubuntu/test_mIp/result/speaker_6_clean.wav
/home/ubuntu/test_mIp/result/speaker_7_clean.wav
/home/ubuntu/test_mIp/result_v2/speaker_0_clean.wav
/home/ubuntu/test_mIp/result_v2/speaker_1_clean.wav
/home/ubuntu/test_mIp/result_v2/speaker_2_clean.wav
/home/ubuntu/test_mIp/result_v2/speaker_3_clean.wav
/home/ubuntu/test_mIp/result_v2/speaker_4_clean.wav
/home/ubuntu/test_mIp/result_v2/speaker_5_clean.wav
/home/ubuntu/test_mIp/result_v2/speaker_6_clean.wav
/home/ubuntu/test_mIp/result_v2/speaker_7_clean.wav
/home/ubuntu/test_reference.wav
/home/ubuntu/test_speechtok_full.wav
/home/ubuntu/test_speechtok_rvq1to4.wav
/home/ubuntu/test_speechtok_rvq1.wav
/home/ubuntu/test_vllm_tts.py
/home/ubuntu/training/checkpoints/llama3.2-1b-tts
/home/ubuntu/training/datasets
/home/ubuntu/training/indic-asr-benchmark-6k/data
/home/ubuntu/training/indic-asr-benchmark-6k/dataset_summary.json
/home/ubuntu/training/maya-asr-hybrid-fastconformer-rnnt-stage1/finalsftdata.json
/home/ubuntu/training/maya-tts-llama32-1b-pretraining
/home/ubuntu/training/maya-tts-llama32-1b-pretraining/data
/home/ubuntu/training/maya-tts-llama32-1b-pretraining/tts
/home/ubuntu/training/test_audio
/home/ubuntu/training/test_audio/output_english.wav
/home/ubuntu/training/test_audio/output_telugu.wav
/home/ubuntu/training/test_audio/output.wav
/home/ubuntu/training/test_audio/prompt.wav
/home/ubuntu/training/test_audio/te_prompt.wav
/home/ubuntu/training/test_audio/test1_audio_continuation_200k.wav
/home/ubuntu/training/test_audio/test1_audio_continuation_550k.wav
/home/ubuntu/training/test_audio/test1_audio_continuation.wav
/home/ubuntu/training/test_audio/test3_paired_sft_200k.wav
/home/ubuntu/training/test_audio/test3_paired_sft_550k_english.wav
/home/ubuntu/training/test_audio/test3_paired_sft_550k_telugu.wav
/home/ubuntu/training/test_audio/test3_paired_sft.wav
/home/ubuntu/transcripts/data
/home/ubuntu/transcripts/data/video_tts_dropped_by_channel.csv
/home/ubuntu/transcripts/data/youtube_metadata_sample_10.csv
/home/ubuntu/transcripts/final_data
/home/ubuntu/transcripts/preflight/canary_data
/home/ubuntu/transcripts/scripts/build_final_cleaned_dataset.py
/home/ubuntu/transcripts/scripts/build_final_data_summary.py
/home/ubuntu/transcripts/scripts/build_gemini_refined_dataset.py
/home/ubuntu/transcripts/scripts/build_phase1_dataset.py
/home/ubuntu/transcripts/scripts/classify_video_tts_metadata.py
/home/ubuntu/transcripts/scripts/export_final_export_reference_data.py
/home/ubuntu/transcripts/scripts/export_recover_reference_data.py
/home/ubuntu/transcripts/scripts/fetch_youtube_video_metadata.py
/home/ubuntu/transcripts/scripts/patch_shard_metadata.py
/home/ubuntu/transcripts/src/audio_polish.py
/home/ubuntu/transcripts/src/video_tts_classifier.py
/home/ubuntu/transcripts/tests/test_audio_polish.py
/home/ubuntu/transcripts/tests/test_video_tts_classifier.py
/home/ubuntu/transcripts/validations/audio_loader.py
/home/ubuntu/tts
/home/ubuntu/tts/tools/data
/home/ubuntu/tts/tts
/home/ubuntu/tts/tts/data
/home/ubuntu/veena3_hindi_lipakshi.wav
/home/ubuntu/veena3_hinglish_devanagari.wav
/home/ubuntu/veena3_hinglish_seed42.wav
/home/ubuntu/veena3_hinglish_test.wav
/home/ubuntu/veena3_seed0.wav
/home/ubuntu/veena3_seed123.wav
/home/ubuntu/veena3_seed1.wav
/home/ubuntu/veena3_seed999.wav
/home/ubuntu/veena3_test_output.wav
/home/ubuntu/veenaModal/external/sparktts
/home/ubuntu/veenaModal/veena3modal/audio
/home/ubuntu/VibeVoice-finetuning/src/data_vibevoice.py
/home/ubuntu/vibevoice/output_20steps/modi_long.wav
/home/ubuntu/vibevoice/output_20steps/modi_medium.wav
/home/ubuntu/vibevoice/output_20steps/modi_short.wav
/home/ubuntu/vibevoice_output/modi_hindi_generated.wav
/home/ubuntu/vibevoice/samples_cuda_graph_v2/modi_best.wav
/home/ubuntu/vibevoice/samples_final/compiled_10step.wav
/home/ubuntu/vibevoice/samples_final/compiled_20step.wav
/home/ubuntu/vibevoice/samples_final/compiled_5step.wav
/home/ubuntu/vibevoice/samples_final/original_10step.wav
/home/ubuntu/vibevoice/samples_final/original_20step.wav
/home/ubuntu/vibevoice/samples_final/original_5step.wav
/home/ubuntu/vibevoice/samples_optimized/modi_long.wav
/home/ubuntu/vibevoice/samples_optimized/modi_medium.wav
/home/ubuntu/vibevoice/samples_optimized/modi_short.wav
/home/ubuntu/vibevoice/samples_optimized/modi_speech.wav
/home/ubuntu/vibevoice/samples_v3/modi_medium.wav
/home/ubuntu/vibevoice/samples_v3/modi_short.wav
/home/ubuntu/vibevoice/samples_v3/modi_speech.wav
/home/ubuntu/vibevoice/samples_v3/modi_ttfb_medium_optimized.wav
/home/ubuntu/vibevoice/ttfb_output/modi_20steps_long.wav
/home/ubuntu/vibevoice/ttfb_output/modi_20steps_medium.wav
/home/ubuntu/vibevoice/ttfb_output/modi_20steps_short.wav
/home/ubuntu/vibevoice/ttfb_output/modi_ttfb_long.wav
/home/ubuntu/vibevoice/ttfb_output/modi_ttfb_medium.wav
/home/ubuntu/vibevoice/ttfb_output/modi_ttfb_short.wav
/home/ubuntu/vllm_env/bin/faster-qwen3-tts
/home/ubuntu/vllm_env/bin/gguf-new-metadata
/home/ubuntu/vllm_env/bin/gguf-set-metadata
/home/ubuntu/vllm_env/bin/qwen-tts-demo
/home/ubuntu/vllm_tts_hindi_modi_medium.wav
/home/ubuntu/vllm_tts_hindi_modi_speech.wav
/home/ubuntu/vllm_tts_results.txt
/home/ubuntu/.wav
/home/ubuntu/xtts_log.txt
/home/ubuntu/xtts_samples
/home/ubuntu/xtts_samples/modi_medium.wav
/home/ubuntu/xtts_samples/modi_speech.wav


Bash

# Check the big data directories
du -sh /home/ubuntu/lewm-tts/processed_data* /home/ubuntu/training/datasets /home/ubuntu/modi_dataset /home/ubuntu/modi_vibevoice_dataset /home/ubuntu/transcripts/final_data /home/ubuntu/hf_staging /home/ubuntu/maya3-data-validation 2>/dev/null | sort -rh | head -20

echo "==="
# Check training datasets
ls -lha /home/ubuntu/training/datasets/ 2>/dev/null | head -20

echo "==="
# Check maya3 data
du -sh /home/ubuntu/maya3-data-validation 2>/dev/null
ls /home/ubuntu/maya3-data-validation/ 2>/dev/null | head -10

echo "==="
# Look for large directories
du -sh /home/ubuntu/*/ 2>/dev/null | sort -rh | head -20

Find large data directories


5.2G	/home/ubuntu/lewm-tts/processed_data_100mel
1.3G	/home/ubuntu/training/datasets
278M	/home/ubuntu/transcripts/final_data
77M	/home/ubuntu/lewm-tts/processed_data
44M	/home/ubuntu/modi_vibevoice_dataset
2.9M	/home/ubuntu/lewm-tts/processed_data_codec
12K	/home/ubuntu/modi_dataset
8.0K	/home/ubuntu/hf_staging
===
total 12K
drwxrwxr-x  3 ubuntu ubuntu 4.0K Mar 25 23:02 .
drwxrwxr-x 18 ubuntu ubuntu 4.0K Mar 29 07:34 ..
drwxrwxr-x  3 ubuntu ubuntu 4.0K Mar 30 03:07 indic-asr-benchmark-6k
===
===
229G	/home/ubuntu/checkpoints/
198G	/home/ubuntu/training/
12G	/home/ubuntu/vllm_env/
9.9G	/home/ubuntu/veenaModal/
9.9G	/home/ubuntu/lewm-tts/
9.9G	/home/ubuntu/10-speakers-latest-v1/
8.5G	/home/ubuntu/maya3_transcribe/
8.1G	/home/ubuntu/transcripts/
7.9G	/home/ubuntu/Irodori-TTS/
1.7G	/home/ubuntu/test_mIp/
397M	/home/ubuntu/hpml_nyu/
363M	/home/ubuntu/diarization_output/
189M	/home/ubuntu/bob5_pyannote_timeline/
189M	/home/ubuntu/bob5_clean/
133M	/home/ubuntu/vibevoice/
132M	/home/ubuntu/Documents/
121M	/home/ubuntu/jalsa_diarized/
116M	/home/ubuntu/vibevoice-community/
108M	/home/ubuntu/qwen3_hindi_results/
63M	/home/ubuntu/jalsa_diarized_v2/


# 198G training dir and 8.5G maya3_transcribe - let's dig in
du -sh /home/ubuntu/training/*/ 2>/dev/null | sort -rh | head -10
echo "==="
ls /home/ubuntu/maya3_transcribe/ 2>/dev/null | head -10
du -sh /home/ubuntu/maya3_transcribe/ 2>/dev/null
echo "==="
# Check maya3-data-validation
ls /home/ubuntu/maya3-data-validation/ 2>/dev/null | head -10
du -sh /home/ubuntu/maya3-data-validation/ 2>/dev/null
echo "==="
# Check transcripts/final_data
ls /home/ubuntu/transcripts/final_data/ 2>/dev/null | head -20
echo "==="
du -sh /home/ubuntu/transcripts/ 2>/dev/null

Dig into large dirs


195G	/home/ubuntu/training/checkpoints/
1.3G	/home/ubuntu/training/indic-asr-benchmark-6k/
1.3G	/home/ubuntu/training/datasets/
687M	/home/ubuntu/training/asr-benchmark-dashboard/
276M	/home/ubuntu/training/benchmark_outputs/
37M	/home/ubuntu/training/benchmark_results/
32M	/home/ubuntu/training/api_results/
13M	/home/ubuntu/training/test_audio/
11M	/home/ubuntu/training/benchmark_results_gemma3n/
6.2M	/home/ubuntu/training/gemma3n-E2B-asr-ft/
===
analysis_results
bin
consistency_test
docs
gcp.json
golden_set
one_per_character.csv
pipeline.py
__pycache__
README.md
8.5G	/home/ubuntu/maya3_transcribe/
===
===
english_mixed_reroute
final_cleaned_excluded_videos.csv
final_cleaned_keep_videos.csv
final_cleaned_remaining_target_mismatch_pairs.csv
final_cleaned_summary.json
final_cleaned_video_rollup.parquet
repetition_flags.parquet
repetition_scan_batches
repetition_summary.json
transcript_variant_prompt_100x5.json
transcript_variant_prompt_multikey_smoke.json
transcript_variant_prompt_postfix_smoke.json
transcript_variant_prompt_reduced_20x2.json
transcript_variant_prompt_reduced_smoke.json
transcript_variant_prompt_schema_trim_smoke.json
transcript_variant_prompt_smoke.json
transcript_variants_final_blocked.parquet
transcript_variants_final_stuck.parquet
transcript_variants_retry_alt_model.parquet
transcript_variants_retry_r2_recovered.parquet
===
8.1G	/home/ubuntu/transcripts/


# maya3_transcribe seems big - check for audio data
du -sh /home/ubuntu/maya3_transcribe/*/ 2>/dev/null | sort -rh | head -10
echo "==="
# Check for HF datasets, R2 references, or large audio collections
find /home/ubuntu -maxdepth 4 -name "*.jsonl" -size +100M 2>/dev/null
echo "==="
find /home/ubuntu -maxdepth 4 -name "*.arrow" -size +100M 2>/dev/null
echo "==="
# Look for references to 300hrs in any config or readme
grep -r "300.*hour\|300.*hr\|300h" /home/ubuntu/soprano_data/ /home/ubuntu/lewm-tts/*.py /home/ubuntu/lewm-tts/*.md /home/ubuntu/kanitts-2-dataset-pipeline/ 2>/dev/null | head -10
echo "==="
# Check the kanitts pipeline
ls /home/ubuntu/kanitts-2-dataset-pipeline/ 2>/dev/null

Search for 300hr data references


8.4G	/home/ubuntu/maya3_transcribe/venv/
17M	/home/ubuntu/maya3_transcribe/bin/
1.1M	/home/ubuntu/maya3_transcribe/consistency_test/
364K	/home/ubuntu/maya3_transcribe/src/
328K	/home/ubuntu/maya3_transcribe/analysis_results/
180K	/home/ubuntu/maya3_transcribe/docs/
76K	/home/ubuntu/maya3_transcribe/transcriptions/
24K	/home/ubuntu/maya3_transcribe/__pycache__/
16K	/home/ubuntu/maya3_transcribe/validation_results/
16K	/home/ubuntu/maya3_transcribe/golden_set/
===
===
===
===
config_hindi_v2.yaml
config_hindi.yaml
config_new_clips.yaml
config.yaml
LICENSE
main.py
Makefile
prepare_hindi_dataset.py
README.md
regroup_embeddings.py
utils


# Check kanitts pipeline configs for data paths
cat /home/ubuntu/kanitts-2-dataset-pipeline/config_hindi.yaml 2>/dev/null
echo "==="
cat /home/ubuntu/kanitts-2-dataset-pipeline/config_hindi_v2.yaml 2>/dev/null

Check kanitts config for data paths


base_settings:
  audio_codec: nvidia/nemo-nano-codec-22khz-0.6kbps-12.5fps
  num_readers: 4
  qsize: 50000
  OUT_DIR: shards_hindi
  gzip_level: 1
  buffer_size: 16777216
  lines_per_file: 50000
  load_dataset_num_proc: 10

speaker_embedding_settings:
  add_speaker_emb: true
  model:
    name: "nineninesix/speaker-emb-tbr"
    embedding_column: "wavlm_embedding"

  audio:
    target_sample_rate: 16000
    max_duration_sec: 30.0

  processing:
    batch_size: 32
    use_multiprocessing: false

  clustering:
    do_clusters: false
    speaker_column: speaker
    UMAP:
      n_neighbors: 15
      min_dist: 0.1
      metric: cosine
      random_state: 42
      n_components: 5
    HDBSCAN:
      min_cluster_size: 15
      min_samples: 3
      metric: euclidean
      cluster_selection_method: eom

  group_sp_emb:
    do_this: true
    group_by_column_name: speaker
    grouped_embedding_column: grouped_sp_emb

hf_datasets:

  - name: /home/ubuntu/kanitts-2-dataset-pipeline/hindi_hf_dataset
    sub_name: null
    split: train
    text_column_name: text
    audio_column_name: audio
    speaker_column_name: speaker
    add_constant:
      - key: lang_tag
        value: hi

save_settings:
  local: train_dataset_hindi
  hf_upload: null
===
base_settings:
  audio_codec: nvidia/nemo-nano-codec-22khz-0.6kbps-12.5fps
  num_readers: 4
  qsize: 50000
  OUT_DIR: shards_hindi_v2
  gzip_level: 1
  buffer_size: 16777216
  lines_per_file: 50000
  load_dataset_num_proc: 10

speaker_embedding_settings:
  add_speaker_emb: false
  model:
    name: "nineninesix/speaker-emb-tbr"
    embedding_column: "wavlm_embedding"
  audio:
    target_sample_rate: 16000
    max_duration_sec: 30.0
  processing:
    batch_size: 2
    use_multiprocessing: false
  clustering:
    do_clusters: false
    speaker_column: speaker
    UMAP:
      n_neighbors: 15
      min_dist: 0.1
      metric: cosine
      random_state: 42
      n_components: 5
    HDBSCAN:
      min_cluster_size: 15
      min_samples: 3
      metric: euclidean
      cluster_selection_method: eom
  group_sp_emb:
    do_this: false
    group_by_column_name: speaker
    grouped_embedding_column: grouped_sp_emb

hf_datasets:
  - name: /home/ubuntu/soprano_data/combined_hindi_dataset
    sub_name: null
    split: train
    text_column_name: text
    audio_column_name: audio
    speaker_column_name: speaker
    add_constant:
      - key: lang_tag
        value: hi

save_settings:
  local: train_dataset_hindi_v2
  hf_upload: null


# The configs reference local datasets. Check what's there
ls -lha /home/ubuntu/kanitts-2-dataset-pipeline/hindi_hf_dataset 2>/dev/null
ls -lha /home/ubuntu/soprano_data/combined_hindi_dataset 2>/dev/null
ls -lha /home/ubuntu/kanitts-2-dataset-pipeline/train_dataset_hindi* 2>/dev/null
ls -lha /home/ubuntu/kanitts-2-dataset-pipeline/shards_hindi* 2>/dev/null

echo "==="
# Check for data on attached volumes or other mount points
df -h | grep -v tmpfs | grep -v snap
echo "==="
# Check for R2/S3 references
grep -r "r2\.\|s3://\|cloudflare\|bucket" /home/ubuntu/soprano_data/*.py /home/ubuntu/kanitts-2-dataset-pipeline/*.py /home/ubuntu/hf_staging/*.py 2>/dev/null | head -10
echo "==="
# Check the prepare scripts for data sources
head -50 /home/ubuntu/soprano_data/prepare_all_data.py 2>/dev/null

Find data locations and references


===
Filesystem      Size  Used Avail Use% Mounted on
efivarfs         56K   17K   34K  34% /sys/firmware/efi/efivars
/dev/sda2       984G  792G  152G  84% /
/dev/sda1       1.1G  6.1M  1.1G   1% /boot/efi
===
===
#!/usr/bin/env python3
"""
Combine all Hindi datasets into one HF dataset with generic speaker names.
No audio loading — just paths + text + speaker labels.
"""

import csv
import json
import os
from datasets import Dataset

OUTPUT_DIR = "/home/ubuntu/soprano_data/combined_hindi_dataset"
SOPRANO = "/home/ubuntu/soprano_data"

SPEAKER_MAP = {
    "polly_kajal": "ananya",
    "google_despina": "meera",
    "iisc_male": "arjun",
    "iisc_female": "diya",
    "rasa_male": "vikram",
}

def load_polly_kajal():
    meta = os.path.join(SOPRANO, "polly_kajal", "metadata.csv")
    wav_dir = os.path.join(SOPRANO, "polly_kajal", "wavs")
    entries = []
    with open(meta, encoding="utf-8") as f:
        next(f)
        for line in f:
            parts = line.strip().split("|")
            if len(parts) >= 4:
                wav = os.path.join(wav_dir, parts[0])
                if os.path.isfile(wav):
                    entries.append({"audio": wav, "text": parts[1], "speaker": SPEAKER_MAP["polly_kajal"]})
    print(f"Polly Kajal → {SPEAKER_MAP['polly_kajal']}: {len(entries)} samples")
    return entries

def load_google_despina():
    meta = os.path.join(SOPRANO, "google_tts_despina", "metadata.csv")
    wav_dir = os.path.join(SOPRANO, "google_tts_despina", "wavs")
    entries = []
    with open(meta, encoding="utf-8") as f:
        next(f)
        for line in f:
            parts = line.strip().split("|")
            if len(parts) >= 4:
                wav = os.path.join(wav_dir, parts[0])
                if os.path.isfile(wav):


# Check what data dirs exist under soprano_data
find /home/ubuntu/soprano_data -maxdepth 2 -type d 2>/dev/null
echo "==="
# Check for polly, google, rasa, iisc data
ls -d /home/ubuntu/soprano_data/polly* /home/ubuntu/soprano_data/google* /home/ubuntu/soprano_data/rasa* /home/ubuntu/soprano_data/iisc* /home/ubuntu/soprano_data/combined* 2>/dev/null
echo "==="
# Maybe data was on HuggingFace? Check HF cache
ls /home/ubuntu/.cache/huggingface/hub/ 2>/dev/null | grep -i "hindi\|tts\|soprano\|bharath\|speaker" | head -10
echo "==="
# Check R2 or any cloud storage references
grep -r "combined_hindi\|300\|polly_kajal\|google_despina\|iisc_male\|iisc_female\|rasa_male" /home/ubuntu/soprano_data/prepare_all_data.py 2>/dev/null

Find all data sources


/home/ubuntu/soprano_data
/home/ubuntu/soprano_data/IISc_SYSPIN_Data
/home/ubuntu/soprano_data/IISc_SYSPIN_Data/IISc_SYSPINProject_Hindi_Male_Spk001_HC
/home/ubuntu/soprano_data/IISc_SYSPIN_Data/IISc_SYSPINProject_Hindi_Female_Spk001_HC
/home/ubuntu/soprano_data/sarvam_data
===
===
datasets--bharathkumarK--10-speakers-latest-v1
models--Scicom-intl--Multilingual-Expressive-TTS-0.6B
models--YatharthS--LuxTTS
===
OUTPUT_DIR = "/home/ubuntu/soprano_data/combined_hindi_dataset"
    "polly_kajal": "ananya",
    "google_despina": "meera",
    "iisc_male": "arjun",
    "iisc_female": "diya",
    "rasa_male": "vikram",
def load_polly_kajal():
    meta = os.path.join(SOPRANO, "polly_kajal", "metadata.csv")
    wav_dir = os.path.join(SOPRANO, "polly_kajal", "wavs")
                    entries.append({"audio": wav, "text": parts[1], "speaker": SPEAKER_MAP["polly_kajal"]})
    print(f"Polly Kajal → {SPEAKER_MAP['polly_kajal']}: {len(entries)} samples")
def load_google_despina():
                    entries.append({"audio": wav, "text": parts[1], "speaker": SPEAKER_MAP["google_despina"]})
    print(f"Google Despina → {SPEAKER_MAP['google_despina']}: {len(entries)} samples")
        ("IISc_SYSPINProject_Hindi_Male_Spk001_HC", "iisc_male"),
        ("IISc_SYSPINProject_Hindi_Female_Spk001_HC", "iisc_female"),
            entries.append({"audio": wav_path, "text": text, "speaker": SPEAKER_MAP["rasa_male"]})
    print(f"Rasa Hindi → {SPEAKER_MAP['rasa_male']}: {len(entries)} samples")
    all_entries += load_polly_kajal()
    all_entries += load_google_despina()


# Read full prepare_all_data.py to understand all data sources
cat /home/ubuntu/soprano_data/prepare_all_data.py 2>/dev/null

Read full data preparation script


#!/usr/bin/env python3
"""
Combine all Hindi datasets into one HF dataset with generic speaker names.
No audio loading — just paths + text + speaker labels.
"""

import csv
import json
import os
from datasets import Dataset

OUTPUT_DIR = "/home/ubuntu/soprano_data/combined_hindi_dataset"
SOPRANO = "/home/ubuntu/soprano_data"

SPEAKER_MAP = {
    "polly_kajal": "ananya",
    "google_despina": "meera",
    "iisc_male": "arjun",
    "iisc_female": "diya",
    "rasa_male": "vikram",
}

def load_polly_kajal():
    meta = os.path.join(SOPRANO, "polly_kajal", "metadata.csv")
    wav_dir = os.path.join(SOPRANO, "polly_kajal", "wavs")
    entries = []
    with open(meta, encoding="utf-8") as f:
        next(f)
        for line in f:
            parts = line.strip().split("|")
            if len(parts) >= 4:
                wav = os.path.join(wav_dir, parts[0])
                if os.path.isfile(wav):
                    entries.append({"audio": wav, "text": parts[1], "speaker": SPEAKER_MAP["polly_kajal"]})
    print(f"Polly Kajal → {SPEAKER_MAP['polly_kajal']}: {len(entries)} samples")
    return entries

def load_google_despina():
    meta = os.path.join(SOPRANO, "google_tts_despina", "metadata.csv")
    wav_dir = os.path.join(SOPRANO, "google_tts_despina", "wavs")
    entries = []
    with open(meta, encoding="utf-8") as f:
        next(f)
        for line in f:
            parts = line.strip().split("|")
            if len(parts) >= 4:
                wav = os.path.join(wav_dir, parts[0])
                if os.path.isfile(wav):
                    entries.append({"audio": wav, "text": parts[1], "speaker": SPEAKER_MAP["google_despina"]})
    print(f"Google Despina → {SPEAKER_MAP['google_despina']}: {len(entries)} samples")
    return entries

def load_iisc_syspin():
    base = os.path.join(SOPRANO, "IISc_SYSPIN_Data")
    entries = []
    speakers = [
        ("IISc_SYSPINProject_Hindi_Male_Spk001_HC", "iisc_male"),
        ("IISc_SYSPINProject_Hindi_Female_Spk001_HC", "iisc_female"),
    ]
    for spk_dir, spk_key in speakers:
        spk_path = os.path.join(base, spk_dir)
        json_file = [f for f in os.listdir(spk_path) if f.endswith("_Transcripts.json")][0]
        wav_dir = os.path.join(spk_path, "wav")
        with open(os.path.join(spk_path, json_file), encoding="utf-8") as f:
            data = json.load(f)
        count = 0
        for wav_id, info in data["Transcripts"].items():
            text = info["Transcript"].strip()
            if not text:
                continue
            wav_path = os.path.join(wav_dir, wav_id + ".wav")
            if not os.path.isfile(wav_path):
                continue
            entries.append({"audio": wav_path, "text": text, "speaker": SPEAKER_MAP[spk_key]})
            count += 1
        print(f"IISc {spk_key} → {SPEAKER_MAP[spk_key]}: {count} samples")
    return entries

def load_rasa_hindi():
    csv_path = os.path.join(SOPRANO, "rasa_hindi", "metadata.csv")
    wav_dir = os.path.join(SOPRANO, "rasa_hindi", "wavs")
    entries = []
    with open(csv_path, newline="", encoding="utf-8") as f:
        reader = csv.DictReader(f)
        for row in reader:
            text = row["text"].strip()
            if not text:
                continue
            filename = row["filename"]
            if not filename.endswith(".wav"):
                filename += ".wav"
            wav_path = os.path.join(wav_dir, filename)
            if not os.path.isfile(wav_path):
                continue
            entries.append({"audio": wav_path, "text": text, "speaker": SPEAKER_MAP["rasa_male"]})
    print(f"Rasa Hindi → {SPEAKER_MAP['rasa_male']}: {len(entries)} samples")
    return entries

def main():
    print("Loading all datasets...\n")

    all_entries = []
    all_entries += load_polly_kajal()
    all_entries += load_google_despina()
    all_entries += load_iisc_syspin()
    all_entries += load_rasa_hindi()

    print(f"\nTotal: {len(all_entries)} samples")
    print(f"\nSpeaker distribution:")
    from collections import Counter
    counts = Counter(e["speaker"] for e in all_entries)
    for spk, cnt in counts.most_common():
        print(f"  {spk}: {cnt}")

    print(f"\nCreating HF Dataset...")
    ds = Dataset.from_dict({
        "audio": [e["audio"] for e in all_entries],
        "text": [e["text"] for e in all_entries],
        "speaker": [e["speaker"] for e in all_entries],
    })

    print(f"Saving to {OUTPUT_DIR}...")
    ds.save_to_disk(OUTPUT_DIR)
    print(f"Done! {len(ds)} samples saved.")

if __name__ == "__main__":
    main()


Now I see the full picture. The data sources exist but the actual audio directories were likely cleaned up or never fully downloaded. Let me check what's still present:


# Check which data source directories actually exist with audio
for dir in polly_kajal google_tts_despina rasa_hindi; do
    echo "=== $dir ==="
    if [ -d "/home/ubuntu/soprano_data/$dir" ]; then
        echo "EXISTS"
        ls /home/ubuntu/soprano_data/$dir/ 2>/dev/null | head -5
        if [ -d "/home/ubuntu/soprano_data/$dir/wavs" ]; then
            count=$(ls /home/ubuntu/soprano_data/$dir/wavs/*.wav 2>/dev/null | wc -l)
            echo "WAV files: $count"
        fi
    else
        echo "NOT FOUND"
    fi
done

echo "=== IISc SYSPIN wavs ==="
ls /home/ubuntu/soprano_data/IISc_SYSPIN_Data/IISc_SYSPINProject_Hindi_Female_Spk001_HC/wav/ 2>/dev/null | wc -l
ls /home/ubuntu/soprano_data/IISc_SYSPIN_Data/IISc_SYSPINProject_Hindi_Male_Spk001_HC/wav/ 2>/dev/null | wc -l

echo "=== Sarvam data ==="
ls /home/ubuntu/soprano_data/sarvam_data/ 2>/dev/null

echo "=== HF staging ==="
ls /home/ubuntu/hf_staging/soprano_data/ 2>/dev/null | head -10

Check which audio data exists


=== polly_kajal ===
NOT FOUND
=== google_tts_despina ===
NOT FOUND
=== rasa_hindi ===
NOT FOUND
=== IISc SYSPIN wavs ===
0
0
=== Sarvam data ===
generate_multi.py
generate.py
=== HF staging ===
generate_google_fast.py
generate_google_multi.py
generate_polly_data.py
generate_polly_fast.py
generate_sarvam_multi.py
generate_tts_data.py
gen_ritu_fast.py
IISc_SYSPIN_Data
prepare_all_data.py
prepare_new_data.py


# Check if there's data on HuggingFace uploaded
grep -r "hf_upload\|huggingface.co\|bharathkumar\|soprano\|hindi_dataset" /home/ubuntu/soprano_data/*.py /home/ubuntu/kanitts-2-dataset-pipeline/*.yaml /home/ubuntu/hf_staging/*.py 2>/dev/null | head -15
echo "==="
# Check prepare_new_data for newer data sources
cat /home/ubuntu/soprano_data/prepare_new_data.py 2>/dev/null

Check for HF uploads and new data refs


/home/ubuntu/soprano_data/generate_google_fast.py:OUTPUT_DIR = "/home/ubuntu/soprano_data/google_tts_despina"
/home/ubuntu/soprano_data/generate_google_multi.py:    voice_dir = os.path.join("/home/ubuntu/soprano_data", f"google_tts_{short_name}")
/home/ubuntu/soprano_data/generate_polly_data.py:OUTPUT_DIR = "/home/ubuntu/soprano_data/polly_kajal"
/home/ubuntu/soprano_data/generate_polly_fast.py:OUTPUT_DIR = "/home/ubuntu/soprano_data/polly_kajal"
/home/ubuntu/soprano_data/generate_sarvam_multi.py:OUTPUT_DIR = "/home/ubuntu/soprano_data/sarvam_data"
/home/ubuntu/soprano_data/generate_tts_data.py:OUTPUT_DIR = "/home/ubuntu/soprano_data/google_tts_despina"
/home/ubuntu/soprano_data/gen_ritu_fast.py:OUTPUT_DIR = "/home/ubuntu/soprano_data/sarvam_data"
/home/ubuntu/soprano_data/prepare_all_data.py:OUTPUT_DIR = "/home/ubuntu/soprano_data/combined_hindi_dataset"
/home/ubuntu/soprano_data/prepare_all_data.py:SOPRANO = "/home/ubuntu/soprano_data"
/home/ubuntu/soprano_data/prepare_new_data.py:SOPRANO = "/home/ubuntu/soprano_data"
/home/ubuntu/soprano_data/prepare_new_data.py:OUTPUT_DIR = "/home/ubuntu/soprano_data/new_clips_dataset"
/home/ubuntu/kanitts-2-dataset-pipeline/config_hindi_v2.yaml:  - name: /home/ubuntu/soprano_data/combined_hindi_dataset
/home/ubuntu/kanitts-2-dataset-pipeline/config_hindi_v2.yaml:  hf_upload: null
/home/ubuntu/kanitts-2-dataset-pipeline/config_hindi.yaml:  hf_upload: null
/home/ubuntu/kanitts-2-dataset-pipeline/config_new_clips.yaml:  - name: /home/ubuntu/soprano_data/new_clips_dataset
===
#!/usr/bin/env python3
"""
Prepare ONLY new Polly+Google clips (skip already-processed ones).
Creates an HF dataset with audio paths + text + speaker for NanoCodec encoding.
"""

import os
from datasets import Dataset

SOPRANO = "/home/ubuntu/soprano_data"
OUTPUT_DIR = "/home/ubuntu/soprano_data/new_clips_dataset"

# Existing counts (already in train_dataset_hindi_v2)
EXISTING = {"ananya": 1230, "meera": 908}

def load_new_polly():
    meta = os.path.join(SOPRANO, "polly_kajal", "metadata.csv")
    wav_dir = os.path.join(SOPRANO, "polly_kajal", "wavs")
    entries = []
    skipped = 0
    with open(meta, encoding="utf-8") as f:
        next(f)  # header
        for i, line in enumerate(f):
            if i < 16447:  # skip old entries (was 16447 clips = 30h)
                skipped += 1
                continue
            parts = line.strip().split("|")
            if len(parts) >= 4:
                wav = os.path.join(wav_dir, parts[0])
                if os.path.isfile(wav):
                    entries.append({"audio": wav, "text": parts[1], "speaker": "ananya"})
    print(f"Polly new: {len(entries)} clips (skipped {skipped} old)")
    return entries

def load_new_google():
    meta = os.path.join(SOPRANO, "google_tts_despina", "metadata.csv")
    wav_dir = os.path.join(SOPRANO, "google_tts_despina", "wavs")
    entries = []
    skipped = 0
    with open(meta, encoding="utf-8") as f:
        next(f)  # header
        for i, line in enumerate(f):
            if i < 4838:  # skip old entries (was 4838 clips = 9.3h)
                skipped += 1
                continue
            parts = line.strip().split("|")
            if len(parts) >= 4:
                wav = os.path.join(wav_dir, parts[0])
                if os.path.isfile(wav):
                    entries.append({"audio": wav, "text": parts[1], "speaker": "meera"})
    print(f"Google new: {len(entries)} clips (skipped {skipped} old)")
    return entries

def main():
    all_entries = load_new_polly() + load_new_google()
    print(f"\nTotal new clips: {len(all_entries)}")

    from collections import Counter
    for spk, cnt in Counter(e["speaker"] for e in all_entries).most_common():
        print(f"  {spk}: {cnt}")

    ds = Dataset.from_dict({
        "audio": [e["audio"] for e in all_entries],
        "text": [e["text"] for e in all_entries],
        "speaker": [e["speaker"] for e in all_entries],
    })

    ds.save_to_disk(OUTPUT_DIR)
    print(f"\nSaved to {OUTPUT_DIR}: {len(ds)} samples")

if __name__ == "__main__":
    main()


Now I have the full picture. The **actual audio data has been deleted/cleaned up** — only the scripts and readme files remain. Here's what the ~300hr dataset was composed of:

## Data Sources (from `prepare_all_data.py`)

| Source | Speaker Alias | Est. Hours | Status |
|--------|--------------|------------|--------|
| **AWS Polly Kajal** (synthetic Hindi) | ananya | ~30h+ (16,447+ clips) | **Deleted** — `polly_kajal/` gone |
| **Google TTS Despina** (synthetic Hindi) | meera | ~9.3h+ (4,838+ clips) | **Deleted** — `google_tts_despina/` gone |
| **IISc SYSPIN Female** (studio Hindi) | diya | **55h** (22,058 sentences) | **Readme only** — wav files not downloaded |
| **IISc SYSPIN Male** (studio Hindi) | arjun | **55h** (24,699 sentences) | **Readme only** — wav files not downloaded |
| **Rasa Hindi Male** | vikram | Unknown hours | **Deleted** — `rasa_hindi/` gone |
| **Sarvam TTS** | various | Unknown hours | **Scripts only** — no generated audio |
| **10-speakers HF dataset** | 10 speakers | **~98h** | **Downloaded** — `/home/ubuntu/10-speakers-latest-v1/` |

## Summary

The ~300hr was likely: **55h IISc female + 55h IISc male + 30h Polly + 9h Google + Rasa + Sarvam + extras**. But the actual audio files have been cleaned up. What you currently have on disk:

- **10-speakers dataset**: 98.5h (just downloaded)
- **IISc SYSPIN**: Needs to be re-downloaded from [spiredatasets.iisc.ac.in](https://spiredatasets.iisc.ac.in/syspinCorpus) (~110h)
- **Polly/Google/Sarvam**: Need to be re-generated using the scripts in `soprano_data/`

Want me to download the IISc SYSPIN data or re-generate the synthetic data?


A100 80GB — vLLM — 0.6B Model

  ┌─────────────┬──────────┬──────────┬──────────┬─────────┬─────────┬────────────┐
  │ Concurrency │ TTFB avg │ TTFB p50 │ TTFB p90 │ RTF avg │ RTF p50 │ Throughput │
  ├─────────────┼──────────┼──────────┼──────────┼─────────┼─────────┼────────────┤
  │ 50          │ 81ms     │ 84ms     │ 86ms     │ 0.23    │ 0.23    │ 170x       │
  ├─────────────┼──────────┼──────────┼──────────┼─────────┼─────────┼────────────┤
  │ 100         │ 165ms    │ 166ms    │ 195ms    │ 0.33    │ 0.33    │ 268x       │
  ├─────────────┼──────────┼──────────┼──────────┼─────────┼─────────┼────────────┤
  │ 150         │ 568ms    │ 170ms    │ 1467ms   │ 0.42    │ 0.35    │ 250x       │
  ├─────────────┼──────────┼──────────┼──────────┼─────────┼─────────┼────────────┤
  │ 200         │ 847ms    │ 703ms    │ 1663ms   │ 0.50    │ 0.44    │ 268x       │
  ├─────────────┼──────────┼──────────┼──────────┼─────────┼─────────┼────────────┤
  │ 300         │ 1583ms   │ 1545ms   │ 3279ms   │ 0.69    │ 0.69    │ 267x       │
  ├─────────────┼──────────┼──────────┼──────────┼─────────┼─────────┼────────────┤
  │ 500         │ 3071ms   │ 3097ms   │ 5997ms   │ 1.04    │ 1.05    │ 275x       │ for this what code u used


Here are all the scripts used for the vLLM benchmarks:

**1. vLLM Server Launch Command:**

```bash
python3 -m vllm.entrypoints.openai.api_server \
  --model Scicom-intl/Multilingual-Expressive-TTS-0.6B \
  --host 0.0.0.0 --port 9093 \
  --max-model-len 2048 \
  --gpu-memory-utilization 0.90 \
  --dtype bfloat16 \
  --enable-prefix-caching \
  --max-num-seqs 512
```

**2. Benchmark Script:**


1	import asyncio
2	import aiohttp
3	import time
4	import json
5	import numpy as np
6	import re
7
8	VLLM_URL = "http://localhost:9093/v1/completions"
9	MODEL = "Scicom-intl/Multilingual-Expressive-TTS-0.6B"
10	SPEAKER = "multilingual-tts_audio_Grace"
11
12	TEXTS = [
13	    "Hello, my name is Grace and I am here to help you with anything you need today.",
14	    "The weather is beautiful outside, perfect for a walk in the park with friends.",
15	    "India is a diverse country with many languages, cultures, and traditions.",
16	    "Machine learning has transformed the way we build software applications.",
17	    "Please feel free to reach out if you have any questions about our services.",
18	    "The sunrise over the mountains was absolutely breathtaking this morning.",
19	    "We need to finish this project before the deadline next Friday afternoon.",
20	    "Technology continues to evolve at an unprecedented pace every single year.",
21	    "नमस्ते, मेरा नाम ग्रेस है और मैं आपकी मदद करने के लिए यहाँ हूँ।",
22	    "भारत एक विविधताओं से भरा देश है जहाँ अनेक भाषाएँ बोली जाती हैं।",
23	    "Welcome to our platform where you can learn new skills and grow professionally.",
24	    "The restaurant serves delicious food from various cuisines around the world.",
25	    "I would like to schedule a meeting for tomorrow morning at ten o'clock sharp.",
26	    "The library has an extensive collection of books on science and technology.",
27	    "Please make sure to submit your report before the end of the business day.",
28	    "வணக்கம், என் பெயர் கிரேஸ், நான் உங்களுக்கு உதவ இங்கே இருக்கிறேன்.",
29	    "Education is the most powerful weapon which you can use to change the world.",
30	    "The concert last night was amazing with incredible performances by all artists.",
31	    "We are committed to providing the best customer service experience possible.",
32	    "The train departs from platform number three at exactly half past seven.",
33	    "నమస్కారం, నా పేరు గ్రేస్ మరియు మీకు సహాయం చేయడానికి నేను ఇక్కడ ఉన్నాను.",
34	    "Good morning everyone, let us begin today's presentation on quarterly results.",
35	    "The garden is full of colorful flowers blooming in the warm spring sunshine.",
36	    "Please remember to bring your identification documents to the appointment.",
37	    "The ocean waves crashed gently against the sandy shore as the sun began to set.",
38	    "নমস্কার, আমার নাম গ্রেস এবং আমি আপনাকে সাহায্য করতে এখানে আছি।",
39	    "Innovation drives progress and helps us solve complex problems more efficiently.",
40	    "The museum exhibition features artwork from renowned artists across centuries.",
41	    "Could you please send me the updated version of the document by this evening.",
42	    "The children played happily in the playground while their parents watched nearby.",
43	    "नमस्कार, माझं नाव ग्रेस आहे आणि मी तुम्हाला मदत करण्यासाठी इथे आहे.",
44	    "The flight has been delayed by two hours due to unexpected weather conditions.",
45	    "Our team has been working hard to deliver this product on time and within budget.",
46	    "The city skyline looked stunning against the backdrop of the golden sunset.",
47	    "Thank you for your patience while we process your request as quickly as possible.",
48	    "The new software update includes several important security patches and features.",
49	    "السلام علیکم، میرا نام گریس ہے اور میں آپ کی مدد کے لیے یہاں ہوں۔",
50	    "Fresh fruits and vegetables are essential for maintaining a healthy balanced diet.",
51	    "The conference room is booked for the strategy meeting at two thirty this afternoon.",
52	    "നമസ്കാരം, എന്റെ പേര് ഗ്രേസ് ആണ്, നിങ്ങളെ സഹായിക്കാൻ ഞാൻ ഇവിടെയുണ്ട്.",
53	    "Digital transformation is reshaping industries and creating new opportunities.",
54	    "The hiking trail offers spectacular views of the valley and surrounding peaks.",
55	    "Please ensure all safety protocols are followed during the laboratory experiment.",
56	    "The annual company retreat will be held at the lakeside resort next month.",
57	    "Artificial intelligence is revolutionizing healthcare diagnosis and treatment.",
58	    "The local farmers market opens every Saturday morning with fresh organic produce.",
59	    "We appreciate your continued support and look forward to serving you again soon.",
60	    "The documentary explores the fascinating history of ancient civilizations worldwide.",
61	    "Please review the attached proposal and share your feedback at your convenience.",
62	    "The symphony orchestra performed a magnificent rendition of the classic composition.",
63	]
64
65
66	async def single_request(session, text, request_id):
67	    prompt = f"<|im_start|>{SPEAKER}: {text}<|speech_start|>"
68	    payload = {
69	        "model": MODEL,
70	        "prompt": prompt,
71	        "max_tokens": 1024,
72	        "temperature": 0.7,
73	        "repetition_penalty": 1.15,
74	        "stream": True,
75	    }
76
77	    t_start = time.perf_counter()
78	    ttfb = None
79	    full_text = ""
80
81	    async with session.post(VLLM_URL, json=payload) as resp:
82	        async for line in resp.content:
83	            line = line.decode().strip()
84	            if line.startswith("data: ") and line != "data: [DONE]":
85	                if ttfb is None:
86	                    ttfb = (time.perf_counter() - t_start) * 1000
87	                try:
88	                    chunk = json.loads(line[6:])
89	                    full_text += chunk["choices"][0].get("text", "")
90	                except:
91	                    pass
92
93	    t_end = time.perf_counter()
94	    total_ms = (t_end - t_start) * 1000
95	    audio_tokens = re.findall(r'<\|s_(\d+)\|>', full_text)
96	    n_tokens = len(audio_tokens)
97	    audio_dur = n_tokens / 50.0
98	    rtf = (total_ms / 1000) / audio_dur if audio_dur > 0 else 999
99
100	    return {
101	        "ttfb_ms": ttfb or total_ms,
102	        "total_ms": total_ms,
103	        "audio_dur": audio_dur,
104	        "n_tokens": n_tokens,
105	        "rtf": rtf,
106	    }
107
108
109	async def run_benchmark(concurrency, n_requests):
110	    timeout = aiohttp.ClientTimeout(total=300)
111	    async with aiohttp.ClientSession(timeout=timeout) as session:
112	        # warmup
113	        prompt = f"<|im_start|>{SPEAKER}: Hello<|speech_start|>"
114	        payload = {"model": MODEL, "prompt": prompt, "max_tokens": 50, "temperature": 0.7, "stream": False}
115	        async with session.post(VLLM_URL, json=payload) as resp:
116	            await resp.json()
117
118	        texts = [TEXTS[i % len(TEXTS)] for i in range(n_requests)]
119	        semaphore = asyncio.Semaphore(concurrency)
120
121	        async def bounded(text, rid):
122	            async with semaphore:
123	                return await single_request(session, text, rid)
124
125	        t_wall_start = time.perf_counter()
126	        tasks = [bounded(t, i) for i, t in enumerate(texts)]
127	        results = await asyncio.gather(*tasks)
128	        t_wall = time.perf_counter() - t_wall_start
129
130	        ttfbs = [r["ttfb_ms"] for r in results]
131	        rtfs = [r["rtf"] for r in results]
132	        totals = [r["total_ms"] for r in results]
133	        audio_durs = [r["audio_dur"] for r in results]
134	        total_audio = sum(audio_durs)
135	        throughput = total_audio / t_wall
136
137	        print(f"  Concurrency: {concurrency:4d}  |  Requests: {n_requests:4d}")
138	        print(f"  TTFB:   min={np.min(ttfbs):6.0f}ms  avg={np.mean(ttfbs):6.0f}ms  p50={np.percentile(ttfbs,50):6.0f}ms  p90={np.percentile(ttfbs,90):6.0f}ms  p95={np.percentile(ttfbs,95):6.0f}ms")
139	        print(f"  Total:  avg={np.mean(totals):6.0f}ms  p50={np.percentile(totals,50):6.0f}ms  p90={np.percentile(totals,90):6.0f}ms")
140	        print(f"  RTF:    avg={np.mean(rtfs):.3f}  p50={np.percentile(rtfs,50):.3f}  p90={np.percentile(rtfs,90):.3f}")
141	        print(f"  Audio:  avg={np.mean(audio_durs):.2f}s")
142	        print(f"  Throughput: {throughput:.1f}x realtime  |  Wall: {t_wall:.1f}s")
143	        print()
144
145
146	async def main():
147	    print("=" * 85)
148	    print("vLLM HIGH CONCURRENCY BENCHMARK — A100 80GB — 0.6B model")
149	    print("=" * 85)
150
151	    for conc in [50, 100, 150, 200, 300, 500]:
152	        n = conc
153	        print(f"\n--- Concurrency={conc} ---")
154	        try:
155	            await run_benchmark(conc, n)
156	        except Exception as e:
157	            print(f"  FAILED: {e}\n")
158
159	asyncio.run(main())
160

import asyncio
import aiohttp
import time
import json
import numpy as np
import re

VLLM_URL = "http://localhost:9093/v1/completions"
MODEL = "Scicom-intl/Multilingual-Expressive-TTS-0.6B"
SPEAKER = "multilingual-tts_audio_Grace"

TEXTS = [
    "Hello, my name is Grace and I am here to help you with anything you need today.",
    "The weather is beautiful outside, perfect for a walk in the park with friends.",
    "India is a diverse country with many languages, cultures, and traditions.",
    "Machine learning has transformed the way we build software applications.",
    "Please feel free to reach out if you have any questions about our services.",
    "The sunrise over the mountains was absolutely breathtaking this morning.",
    "We need to finish this project before the deadline next Friday afternoon.",
    "Technology continues to evolve at an unprecedented pace every single year.",
    "नमस्ते, मेरा नाम ग्रेस है और मैं आपकी मदद करने के लिए यहाँ हूँ।",
    "भारत एक विविधताओं से भरा देश है जहाँ अनेक भाषाएँ बोली जाती हैं।",
    "Welcome to our platform where you can learn new skills and grow professionally.",
    "The restaurant serves delicious food from various cuisines around the world.",
    "I would like to schedule a meeting for tomorrow morning at ten o'clock sharp.",
    "The library has an extensive collection of books on science and technology.",
    "Please make sure to submit your report before the end of the business day.",
    "வணக்கம், என் பெயர் கிரேஸ், நான் உங்களுக்கு உதவ இங்கே இருக்கிறேன்.",
    "Education is the most powerful weapon which you can use to change the world.",
    "The concert last night was amazing with incredible performances by all artists.",
    "We are committed to providing the best customer service experience possible.",
    "The train departs from platform number three at exactly half past seven.",
    "నమస్కారం, నా పేరు గ్రేస్ మరియు మీకు సహాయం చేయడానికి నేను ఇక్కడ ఉన్నాను.",
    "Good morning everyone, let us begin today's presentation on quarterly results.",
    "The garden is full of colorful flowers blooming in the warm spring sunshine.",
    "Please remember to bring your identification documents to the appointment.",
    "The ocean waves crashed gently against the sandy shore as the sun began to set.",
    "নমস্কার, আমার নাম গ্রেস এবং আমি আপনাকে সাহায্য করতে এখানে আছি।",
    "Innovation drives progress and helps us solve complex problems more efficiently.",
    "The museum exhibition features artwork from renowned artists across centuries.",
    "Could you please send me the updated version of the document by this evening.",
    "The children played happily in the playground while their parents watched nearby.",
    "नमस्कार, माझं नाव ग्रेस आहे आणि मी तुम्हाला मदत करण्यासाठी इथे आहे.",
    "The flight has been delayed by two hours due to unexpected weather conditions.",
    "Our team has been working hard to deliver this product on time and within budget.",
    "The city skyline looked stunning against the backdrop of the golden sunset.",
    "Thank you for your patience while we process your request as quickly as possible.",
    "The new software update includes several important security patches and features.",
    "السلام علیکم، میرا نام گریس ہے اور میں آپ کی مدد کے لیے یہاں ہوں۔",
    "Fresh fruits and vegetables are essential for maintaining a healthy balanced diet.",
    "The conference room is booked for the strategy meeting at two thirty this afternoon.",
    "നമസ്കാരം, എന്റെ പേര് ഗ്രേസ് ആണ്, നിങ്ങളെ സഹായിക്കാൻ ഞാൻ ഇവിടെയുണ്ട്.",
    "Digital transformation is reshaping industries and creating new opportunities.",
    "The hiking trail offers spectacular views of the valley and surrounding peaks.",
    "Please ensure all safety protocols are followed during the laboratory experiment.",
    "The annual company retreat will be held at the lakeside resort next month.",
    "Artificial intelligence is revolutionizing healthcare diagnosis and treatment.",
    "The local farmers market opens every Saturday morning with fresh organic produce.",
    "We appreciate your continued support and look forward to serving you again soon.",
    "The documentary explores the fascinating history of ancient civilizations worldwide.",
    "Please review the attached proposal and share your feedback at your convenience.",
    "The symphony orchestra performed a magnificent rendition of the classic composition.",
]

async def single_request(session, text, request_id):
    prompt = f"<|im_start|>{SPEAKER}: {text}<|speech_start|>"
    payload = {
        "model": MODEL,
        "prompt": prompt,
        "max_tokens": 1024,
        "temperature": 0.7,
        "repetition_penalty": 1.15,
        "stream": True,
    }

    t_start = time.perf_counter()
    ttfb = None
    full_text = ""

    async with session.post(VLLM_URL, json=payload) as resp:
        async for line in resp.content:
            line = line.decode().strip()
            if line.startswith("data: ") and line != "data: [DONE]":
                if ttfb is None:
                    ttfb = (time.perf_counter() - t_start) * 1000
                try:
                    chunk = json.loads(line[6:])
                    full_text += chunk["choices"][0].get("text", "")
                except:
                    pass

    t_end = time.perf_counter()
    total_ms = (t_end - t_start) * 1000
    audio_tokens = re.findall(r'<\|s_(\d+)\|>', full_text)
    n_tokens = len(audio_tokens)
    audio_dur = n_tokens / 50.0
    rtf = (total_ms / 1000) / audio_dur if audio_dur > 0 else 999

    return {
        "ttfb_ms": ttfb or total_ms,
        "total_ms": total_ms,
        "audio_dur": audio_dur,
        "n_tokens": n_tokens,
        "rtf": rtf,
    }

async def run_benchmark(concurrency, n_requests):
    timeout = aiohttp.ClientTimeout(total=300)
    async with aiohttp.ClientSession(timeout=timeout) as session:
        # warmup
        prompt = f"<|im_start|>{SPEAKER}: Hello<|speech_start|>"
        payload = {"model": MODEL, "prompt": prompt, "max_tokens": 50, "temperature": 0.7, "stream": False}
        async with session.post(VLLM_URL, json=payload) as resp:
            await resp.json()

        texts = [TEXTS[i % len(TEXTS)] for i in range(n_requests)]
        semaphore = asyncio.Semaphore(concurrency)

        async def bounded(text, rid):
            async with semaphore:
                return await single_request(session, text, rid)

        t_wall_start = time.perf_counter()
        tasks = [bounded(t, i) for i, t in enumerate(texts)]
        results = await asyncio.gather(*tasks)
        t_wall = time.perf_counter() - t_wall_start

        ttfbs = [r["ttfb_ms"] for r in results]
        rtfs = [r["rtf"] for r in results]
        totals = [r["total_ms"] for r in results]
        audio_durs = [r["audio_dur"] for r in results]
        total_audio = sum(audio_durs)
        throughput = total_audio / t_wall

        print(f"  Concurrency: {concurrency:4d}  |  Requests: {n_requests:4d}")
        print(f"  TTFB:   min={np.min(ttfbs):6.0f}ms  avg={np.mean(ttfbs):6.0f}ms  p50={np.percentile(ttfbs,50):6.0f}ms  p90={np.percentile(ttfbs,90):6.0f}ms  p95={np.percentile(ttfbs,95):6.0f}ms")
        print(f"  Total:  avg={np.mean(totals):6.0f}ms  p50={np.percentile(totals,50):6.0f}ms  p90={np.percentile(totals,90):6.0f}ms")
        print(f"  RTF:    avg={np.mean(rtfs):.3f}  p50={np.percentile(rtfs,50):.3f}  p90={np.percentile(rtfs,90):.3f}")
        print(f"  Audio:  avg={np.mean(audio_durs):.2f}s")
        print(f"  Throughput: {throughput:.1f}x realtime  |  Wall: {t_wall:.1f}s")
        print()

async def main():
    print("=" * 85)
    print("vLLM HIGH CONCURRENCY BENCHMARK — A100 80GB — 0.6B model")
    print("=" * 85)

    for conc in [50, 100, 150, 200, 300, 500]:
        n = conc
        print(f"\n--- Concurrency={conc} ---")
        try:
            await run_benchmark(conc, n)
        except Exception as e:
            print(f"  FAILED: {e}\n")

asyncio.run(main())


That's the exact script. The key pieces:

- **TTFB** is measured as time from request start to first SSE `data:` chunk arriving (line 86)
- **RTF** = total_wall_time / audio_duration, where audio_duration = num_speech_tokens / 50 (line 98)
- **Throughput** = total_audio_seconds_all_requests / wall_clock_time (line 135)
- Uses `asyncio.Semaphore` to cap concurrency (line 119)
- Each request sends `n_requests = concurrency` total requests (line 152)
- Streaming is enabled so TTFB reflects first token, not full generation (line 74)


where is benchmark scriot


All the benchmark scripts are in `/home/ubuntu/`:

| Script | Purpose |
|--------|---------|
| `benchmark_vllm.py` | vLLM benchmark with concurrency 1, 5, 10, 20, 50, 100 |
| `benchmark_vllm_high.py` | vLLM benchmark with concurrency 50, 100, 150, 200, 300, 500 |
| `benchmark_max.py` | FP8 KV cache max squeeze benchmark (didn't complete) |
| `test_ttfb.py` | TTFB measurement with HF generate() |
| `test_concurrent_rtf.py` | Batched RTF test with HF generate() |
| `test_indic_tts.py` | Indic language sample generation |

The one that produced the table you shared was `benchmark_vllm_high.py`.