File size: 1,075 Bytes
ba8abef
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/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())