🌐 Quantized Translator

SLM Translation Hub

Quantized multilingual translation library designed for offline local document conversion across 20+ language profiles.

🚀 Overview & Capabilities

Quantized multilingual translation library designed for offline local document conversion across 20+ language profiles.

Key Features

  • Quantized translation weights optimized for CPU RAM footprint
  • Preserves original formatting (HTML, Markdown, DOCX markup)
  • Sentence-alignment validation for precise paragraph mappings
  • Completely offline operation — ideal for restricted documents

💻 Installation

Install the local CPU-optimized package using pip:

Terminal
# Install local CPU-optimized package
pip install slm-translation

🐙 Checkout from GitHub

Clone only this agent's folder from the monorepo using Git sparse-checkout — no need to download the full repository:

Option 1 — Sparse Checkout (Recommended)

Terminal — Git Sparse Checkout
# 1. Create and enter a new directory
$ mkdir slm_translation && cd slm_translation

# 2. Initialise empty git repo and add remote
$ git init
$ git remote add origin https://github.com/t00114218-stack/SLMAgents.git

# 3. Enable sparse-checkout and set target folder
$ git sparse-checkout init --cone
$ git sparse-checkout set slm_translation

# 4. Pull only that agent's source
$ git pull origin main

Option 2 — Full Repository Clone

Terminal — Full Clone
$ git clone https://github.com/t00114218-stack/SLMAgents.git
$ cd SLMAgents/slm_translation

💡 Tip: After checkout, install the package locally with pip install -e ./slm_translation to run in editable mode without publishing to PyPI.

⚙️ Configuration API

Constructor Parameters

Instantiate SLMTranslationHub with performance options:

ParameterType / DefaultDescription
model_pathstr | NoneExplicit path to ONNX model weights. If omitted, downloads standard checkpoints.
cache_dirstr | NoneDirectory to store model weights offline. Defaults to ~/.cache/slm-translation/. Also settable via SLM_TRANSLATION_HUB_CACHE_DIR.
n_threadsint | 4CPU thread count for ONNX inference. Optimize for CPU core count. Also settable via SLM_TRANSLATION_HUB_N_THREADS.

Methods

Method SignatureReturn TypeDescription
translate(text, source_lang='en', target_lang='hi', system_prompt=None, user_input=None)strTranslates characters locally to target languages, ensuring syntax integrity is preserved.

Method Parameters (Execution Customization)

All main execution methods accept optional system routing parameters:

ParameterType / DefaultDescription
system_promptstr | NoneOptional custom system prompt instruction to override the default system template response parameters.
user_inputstr | NoneOptional additional user-supplied target text variables or contextual keys.

Quick Start

from slm_translation import SLMTranslationHub

hub = SLMTranslationHub()
translated = hub.translate(
    "hello world",
    source_lang="en",
    target_lang="hi",
    system_prompt="Strict dialect formatting",
    user_input="Formal script conversion"
)
print(translated)

Environment Variables

Configure agent parameters globally using environment values:

Environment VariableDefaultPurpose
SLM_TRANSLATION_HUB_N_THREADS4Sets CPU inference execution threads.
SLM_TRANSLATION_HUB_CACHE_DIR~/.cache/slm-translation/Default directory to store downloaded ONNX weights.

CPU Performance Tuning

To run the SLMTranslationHub engine efficiently on CPU under 1.5 GB memory footprint:

  • Match Threads to Core Count: Set n_threads or SLM_TRANSLATION_HUB_N_THREADS to match the physical CPU core count.
  • Sequential Processing: Avoid concurrent processing when batch files are large.
  • Garbage Collection: Clear variables and run gc.collect() to release model RAM blocks after execution.

Verified Input & Output Logs

Diagnostic execution console response running locally on CPU:

→ INPUT (En -> Hi):
"hello world"

← OUTPUT:
"नमस्ते दुनिया"