TranslateNexa is a Streamlit-based application that offers asynchronous and efficient translations using Google's translation service. The app is capable of handling large text inputs by breaking them down into manageable batches, providing real-time progress updates, and offering multiple language translations simultaneously.
- Asynchronous Translation: Efficiently handles large inputs with non-blocking requests.
- Batch Processing: Splits text into batches to avoid payload limits, ensuring successful translations even for lengthy inputs.
- Progress Tracking: Displays real-time translation progress, speed, and statistics for a better user experience.
- Clear Input: Reset the input text and language selections with a single click.
TranslateNexa is hosted on Streamlit Community Cloud and can be accessed directly in production at:
TranslateNexa on Streamlit
If you wish to run the app locally, follow these steps:
- Clone the repository:
git clone https://github.com/MunjPatel/google_translator.git
- Go to the current directory:
cd google_translator
- Install the required dependencies:
pip install -r requirements.txt
- Run the Streamlit app:
streamlit run async_translator.py
Although this method shows impressive capabilities in terms of accuracy, speed and handling complex and large text inputs effectively, by large the overall accuracy of translations can still vary depending on the complexity of the text and the language pair. It is important to note that machine translation is not flawless and may struggle with idiomatic expressions, cultural nuances, or context-specific meanings. I would recommend using this tool for general purposes and not for translations that require a high level of precision.
For a step-by-step code explanation of TranslateNexa, check out my Medium article: TranslateNexa — A Streamlined Solution for Fast, Large-Scale Multilingual Translations.
This project is licensed under the MIT License - see the LICENSE file for details.