Translation
Transformers
Safetensors
Kannada
English
controlmt
text2text-generation
machine-translation
kannada
english
indic
low-resource
code-mix
encoder-decoder
custom_code
Eval Results (legacy)
Instructions to use anandkaman/controlmt-v2.3 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use anandkaman/controlmt-v2.3 with Transformers:
# Use a pipeline as a high-level helper # Warning: Pipeline type "translation" is no longer supported in transformers v5. # You must load the model directly (see below) or downgrade to v4.x with: # 'pip install "transformers<5.0.0' from transformers import pipeline pipe = pipeline("translation", model="anandkaman/controlmt-v2.3", trust_remote_code=True)# Load model directly from transformers import AutoModelForSeq2SeqLM model = AutoModelForSeq2SeqLM.from_pretrained("anandkaman/controlmt-v2.3", trust_remote_code=True, dtype="auto") - Notebooks
- Google Colab
- Kaggle
v2.3 release — single-register retrain, FLORES BLEU 27.20/18.50, COMET 0.8459/0.8443; style endpoints hidden from API
9df27d5 verified | { | |
| "model_type": "controlmt", | |
| "architectures": [ | |
| "ControlMTForSeq2SeqLM" | |
| ], | |
| "model_name": "ControlMT-v2.3", | |
| "trained_by": "Anand Kaman", | |
| "release_date": "2026-06-23", | |
| "vocab_size": 128000, | |
| "d_model": 512, | |
| "n_heads": 8, | |
| "d_ff": 2048, | |
| "dropout": 0.1, | |
| "encoder_layers_per_lang": 2, | |
| "decoder_layers_per_lang": 2, | |
| "shared_core_enc_layers": 6, | |
| "shared_core_dec_layers": 6, | |
| "max_position_embeddings": 320, | |
| "max_input_length": 256, | |
| "pad_token_id": 0, | |
| "bos_token_id": 1, | |
| "eos_token_id": 2, | |
| "unk_token_id": 3, | |
| "direction_tokens": { | |
| "kn2en": 4, | |
| "en2kn": 5, | |
| "rkn2kn": 12, | |
| "rkn2en": 13, | |
| "hi2en": 14, | |
| "en2hi": 15 | |
| }, | |
| "default_control_token_id": 7, | |
| "decoding_presets": { | |
| "default": { | |
| "method": "beam_search", | |
| "num_beams": 6, | |
| "length_penalty": 1.2, | |
| "no_repeat_ngram_size": 3, | |
| "anti_lm_alpha": 0.5, | |
| "max_length": 256, | |
| "description": "Production setting — matches reported FLORES benchmark numbers" | |
| }, | |
| "fast": { | |
| "method": "beam_search", | |
| "num_beams": 4, | |
| "length_penalty": 1.2, | |
| "no_repeat_ngram_size": 3, | |
| "anti_lm_alpha": 0.0, | |
| "max_length": 256, | |
| "description": "~2x faster than default, ~0.5 BLEU lower" | |
| }, | |
| "greedy": { | |
| "method": "greedy", | |
| "num_beams": 1, | |
| "max_length": 256, | |
| "description": "Fastest. ~1.5 BLEU lower than default. Use for high-throughput batch." | |
| }, | |
| "high_quality": { | |
| "method": "beam_search", | |
| "num_beams": 8, | |
| "length_penalty": 1.2, | |
| "no_repeat_ngram_size": 3, | |
| "anti_lm_alpha": 0.7, | |
| "max_length": 256, | |
| "description": "~30% slower than default, marginal quality gain (~0.2 BLEU)" | |
| } | |
| }, | |
| "training_config": { | |
| "framework": "PyTorch 2.x", | |
| "precision": "bf16 mixed", | |
| "optimizer": "AdamW", | |
| "weight_decay": 0.01, | |
| "lr_schedule": "warm-start fine-tune from v2.2 with low LR (1.5e-5 → 1e-5)", | |
| "warmup_steps": 500, | |
| "label_smoothing": 0.1, | |
| "grad_clip_norm": 1.0, | |
| "effective_batch_size": 96, | |
| "ema_decay": 0.999, | |
| "ema_start_step": 1000, | |
| "final_checkpoint": "final_v2.3.pt" | |
| }, | |
| "tokenizer_class": "ControlMTTokenizer", | |
| "auto_map": { | |
| "AutoConfig": "configuration_controlmt.ControlMTConfig", | |
| "AutoModelForSeq2SeqLM": "modeling_controlmt.ControlMTForSeq2SeqLM", | |
| "AutoTokenizer": "tokenization_controlmt.ControlMTTokenizer" | |
| }, | |
| "transformers_version": "4.40+" | |
| } | |