ocr-mt-5090 / python /translate.py
mohameddalii's picture
OCR + Qwen3-4B RTX 5090 colocated serve kit
ba8abef verified
Raw History Blame Contribute Delete
1.08 kB
#!/usr/bin/env python3
"""Translate text via the local Qwen3-4B server."""
from __future__ import annotations
import argparse
import sys
from pathlib import Path
from openai import OpenAI
sys.path.insert(0, str(Path(__file__).resolve().parent))
from mt_engine import translate_text
DEFAULT_BASE_URL = "http://127.0.0.1:18100/v1"
DEFAULT_MODEL = "Qwen/Qwen3-4B-Instruct-2507"
def main() -> int:
p = argparse.ArgumentParser()
p.add_argument("text", nargs="?", help="Source text (or stdin)")
p.add_argument("--from", dest="src", default="English")
p.add_argument("--to", dest="tgt", default="Arabic")
p.add_argument("--base-url", default=DEFAULT_BASE_URL)
p.add_argument("--model", default=DEFAULT_MODEL)
args = p.parse_args()
source = args.text or sys.stdin.read()
client = OpenAI(api_key="EMPTY", base_url=args.base_url, timeout=180)
hyp, dt = translate_text(client, source, args.src, args.tgt, args.model)
print(hyp)
print(f"\n# {dt:.2f}s", file=sys.stderr)
return 0
if __name__ == "__main__":
sys.exit(main())