[YES, 3.0.0a8 ] Have you updated to latest MFA version?
[YES] Have you tried rerunning the command with the --clean flag?
Describe the issue
First this error (see below) appeared only on running align (after a successful validation), but now (after trying on a corpus I'd previously aligned without issue), the same error and traceback displays on running validate.
Here's what I called... mfa validate --single_speaker --clean DIRECTORY_PATH spanish_mfa
INFO Setting up corpus information... INFO Loading corpus from source files... 0% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0/100 [ 0:00:01 < -:--:-- , ? it/s ] INFO Found 1 speaker across 1 file, average number of utterances per speaker: 103.0 INFO Initializing multiprocessing jobs... INFO Normalizing text... 1% ━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1/103 [ 0:00:03 < -:--:-- , ? it/s ] ERROR There was an error in the run, please see the log. Exception ignored in atexit callback: <bound method ExitHooks.history_save_handler of <montreal_forced_aligner.command_line.mfa.ExitHooks object at 0x15caa8390>> Traceback (most recent call last): File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/command_line/mfa.py", line 107, in history_save_handler raise self.exception File "/Users/dbatten/opt/miniconda3/envs/aligner/bin/mfa", line 10, in <module> sys.exit(mfa_cli()) ^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/core.py", line 1157, in __call__ return self.main(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/rich_click/rich_group.py", line 21, in main rv = super().main(*args, standalone_mode=False, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/core.py", line 1078, in main rv = self.invoke(ctx) ^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/core.py", line 1688, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/core.py", line 1434, in invoke return ctx.invoke(self.callback, **ctx.params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/core.py", line 783, in invoke return __callback(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/decorators.py", line 33, in new_func return f(get_current_context(), *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/command_line/validate.py", line 112, in validate_corpus_cli validator.validate() File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/validation/corpus_validator.py", line 505, in validate self.setup() File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/validation/corpus_validator.py", line 475, in setup self.write_lexicon_information() File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/dictionary/multispeaker.py", line 1595, in write_lexicon_information self.lexicon_compilers[d.id] = self.build_lexicon_compiler( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/dictionary/multispeaker.py", line 1664, in build_lexicon_compiler lexicon_compiler.create_fsts(rule_fst) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'LexiconCompiler' object has no attribute 'create_fsts'
For Reproducing your issue
Please fill out the following:
Corpus structure
Spanish
1 speaker, 1 file
textGrid
Dictionary
spanish_mfa
Acoustic model
spanish_mfa
Log file
Please attach the log file for the run that encountered an error (by default these will be stored in ~/Documents/MFA).
Desktop (please complete the following information):
MacOS Sonoma 14.0
I haven't run MFA since prior to this Mac update; I'm not sure if that is responsible for the issue. Prior to that I was using it regularly on similar directories without issue.
Debugging checklist
[YES, 3.0.0a8 ] Have you updated to latest MFA version? [YES] Have you tried rerunning the command with the
--clean
flag?Describe the issue First this error (see below) appeared only on running align (after a successful validation), but now (after trying on a corpus I'd previously aligned without issue), the same error and traceback displays on running validate.
Here's what I called...
mfa validate --single_speaker --clean DIRECTORY_PATH spanish_mfa
INFO Setting up corpus information... INFO Loading corpus from source files... 0% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0/100 [ 0:00:01 < -:--:-- , ? it/s ] INFO Found 1 speaker across 1 file, average number of utterances per speaker: 103.0 INFO Initializing multiprocessing jobs... INFO Normalizing text... 1% ━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1/103 [ 0:00:03 < -:--:-- , ? it/s ] ERROR There was an error in the run, please see the log. Exception ignored in atexit callback: <bound method ExitHooks.history_save_handler of <montreal_forced_aligner.command_line.mfa.ExitHooks object at 0x15caa8390>> Traceback (most recent call last): File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/command_line/mfa.py", line 107, in history_save_handler raise self.exception File "/Users/dbatten/opt/miniconda3/envs/aligner/bin/mfa", line 10, in <module> sys.exit(mfa_cli()) ^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/core.py", line 1157, in __call__ return self.main(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/rich_click/rich_group.py", line 21, in main rv = super().main(*args, standalone_mode=False, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/core.py", line 1078, in main rv = self.invoke(ctx) ^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/core.py", line 1688, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/core.py", line 1434, in invoke return ctx.invoke(self.callback, **ctx.params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/core.py", line 783, in invoke return __callback(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/click/decorators.py", line 33, in new_func return f(get_current_context(), *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/command_line/validate.py", line 112, in validate_corpus_cli validator.validate() File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/validation/corpus_validator.py", line 505, in validate self.setup() File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/validation/corpus_validator.py", line 475, in setup self.write_lexicon_information() File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/dictionary/multispeaker.py", line 1595, in write_lexicon_information self.lexicon_compilers[d.id] = self.build_lexicon_compiler( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/dbatten/opt/miniconda3/envs/aligner/lib/python3.11/site-packages/montreal_forced_aligner/dictionary/multispeaker.py", line 1664, in build_lexicon_compiler lexicon_compiler.create_fsts(rule_fst) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'LexiconCompiler' object has no attribute 'create_fsts'
For Reproducing your issue Please fill out the following:
Log file Please attach the log file for the run that encountered an error (by default these will be stored in
~/Documents/MFA
).Desktop (please complete the following information):