Improve CLI error handling#179
Open
atomer-nvidia wants to merge 2 commits into
Open
Conversation
…ation
Address the VDR 26.02 finding that python-clients CLIs exit 0 on most
error paths across all three modalities. Each script now:
- Wraps main() with @cli_main so gRPC and OS errors propagate to a
real exit code instead of being printed and swallowed.
- Calls sys.exit(main()) so the chosen exit code reaches the shell.
Script-specific fixes:
scripts/nmt/nmt.py
- Drop the inner request() try/except that swallowed every gRPC
status; let cli_main translate it. Empty/whitespace --text and
missing --text-file now return EXIT_BAD_INPUT (was: silent
exit 0). Document --max-len-variation as decoder-token units
with valid range [0, 256], default 20, and Arabic chunking note.
scripts/tts/talk.py
- Reject whitespace-only --text up front (defense-in-depth pair to
the server-side fix in riva-speech that closed the hang on
`--text " "`). Drop the broad `except Exception` that
stringified gRPC errors and exited 0.
scripts/asr/transcribe_file*.py
- Replace `print(...); return` on missing input files with
EXIT_BAD_INPUT. Remove the silent grpc.RpcError swallow in
transcribe_file_offline.py.
scripts/asr/transcribe_mic.py + realtime_asr_client.py + tts/talk.py
- Pyaudio install hint now mentions `apt-get install -y
portaudio19-dev` (Debian/Ubuntu) and `brew install portaudio`
(macOS), pairing with the prereqs doc landed in documentation_2.
scripts/tts/realtime_tts_client.py
- Drop the module-level `from riva.client.audio_io import
SoundCallBack` import (it was unused and pulled pyaudio in
eagerly, defeating the lazy import). Drop the broad
`except Exception` that mapped every failure to exit 1.
scripts/nmt/nmt_speech_to_{text,speech}.py
- Drop unused `import grpc`; remove the catch-all that printed
"Error during translation" and exited 0.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
When no --voice is passed, the server was receiving voice_name='' from
the fresh session payload but missing the explicit empty string, causing
it to retain its initialization default ('English-US.Male-1') which isn't
a valid voice on magpie-tts-multilingual.
Fixes NVBug 6261715.
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.