BanglaTranslationKit is an open-source translation package for offline conversion between both Bengali and English languages (English to Bangla and Bangla to English)
pip install bntrans
You can use this package to translate any Bangla to English or English to Bangla.
from bntrans import Translator
translator = Translator(src="en", dest="bn")
translation = translator.translate("Hello world!") # ্যালো বিশ্ব!
print(translation)
from bntrans import Translator
# You can tell the model to use cpu
translator = Translator(src="en", dest="bn", use_gpu=False)
# Specify a custom model (from huggingface.co/models or local path)
translator = Translator(model="mymodel")
# If the custom model doesn't have a maximum length, you can specify it. It is better to specify it as some models have wrong maximum length in their config.
translator = Translator(model="mymodel", max_length=512)
# You can also use the `generate` method to get raw output from the model
translator.generate("Hello world!")
If you want to test the model without installing it, you can use the cloud translation API. Get a free Token from here (Read Token is enough) and use it like this:
from bntrans import Translator
translator = Translator(src="en", dest="bn", use_cloud=True, huggingface_token="YOUR_TOKEN")
translation = translator.translate("Hello world!") # ্যালো বিশ্ব!
print(translation)
You can also use this package in the command line. Just install it and run the following command:
bntrans "Hello world!"
usage: cli.py [-h] [-s SRC] [-d DEST] [-m MODEL] [-g GPU] [-l MAX_LENGTH] [-c USE_CLOUD] [-t HUGGINGFACE_TOKEN] text
Translate text from one language to another.
positional arguments:
text Text to translate
options:
-h, --help show this help message and exit
-s SRC, --src SRC Source language (default: en)
-d DEST, --dest DEST Destination language (default: bn)
-m MODEL, --model MODEL
Model to use for translation
-g GPU, --gpu GPU Whether to use GPU for translation (default: True)
-l MAX_LENGTH, --max-length MAX_LENGTH
The maximum length of the model (default: None)
-c USE_CLOUD, --use-cloud USE_CLOUD
Whether to use huggingface inference API (default: False)
-t HUGGINGFACE_TOKEN, --huggingface-token HUGGINGFACE_TOKEN
Huggingface inference API token (default: None)