2025年6月10日、PLaMo翻訳CLIが出て、簡単にPLaMo翻訳が使えるようになった。デフォルトでは4ビット量子化だが、--precision 8bit
オプションで8ビットモデル、--precision bf16
オプションでbf16モデルが使える。PLaMo翻訳モデルのベースはPLaMo2-8Bなので、4ビットなら4Gバイト+α、8ビットなら8Gバイト+α、bf16なら16Gバイト+αのGPUメモリが必要である。
起動は重いので、何度も使うなら、サーバとして起動したままにしておくのが便利である:
plamo-translate --precision bf16 server &
サーバが立ち上がっていれば、plamo-translate
コマンドは(--precision bf16
などを付けなくても)起動しているサーバに聞きに行ってくれるようだ。
git --help | plamo-translate
みたいにすれば英語のヘルプでも日本語で表示できる。あるいは、Macで
pbpaste | plamo-translate
とすれば、クリップボード(pasteboard)に入っているものを翻訳できる。
ただ、数kB程度を超えると一部しか訳されないようである。
以下は古い内容。
2025年5月27日、日本語の翻訳に特化した大規模言語モデルPLaMo翻訳を発売というアナウンスが出た。PLaMo翻訳のページで使うなら無料である。
年商10億円未満の企業や個人はHugging Faceの pfnet/plamo-2-translate からモデルをダウンロードしてローカルで使うことができる。このページの例の vllm はMacではうまく動作しない。Mac用には mlx-community/plamo-2-translate のほうを使うのがよい。あらかじめ pip install mlx-lm numba
しておいて、ターミナルに例えば
python3 -m mlx_lm generate \ --model mlx-community/plamo-2-translate \ --extra-eos-token '<|plamo:op|>' \ --prompt 'あのイーハトーヴォのすきとおった風、夏でも底に冷たさをもつ青いそら、うつくしい森で飾られたモリーオ市、郊外のぎらぎらひかる草の波。'
と打ち込むと、初回はモデルがダウンロードされ、翻訳結果が出力される。
Pythonでプログラムを書いて使うには、例えば次のようにする。
from mlx_lm import load, generate model, tokenizer = load("mlx-community/plamo-2-translate", tokenizer_config={"trust_remote_code": True}) tokenizer.add_eos_token("<|plamo:op|>") prompt = r'''<|plamo:op|>dataset translation <|plamo:op|>input lang=Japanese あのイーハトーヴォのすきとおった風、夏でも底に冷たさをもつ青いそら、うつくしい森で飾られたモリーオ市、郊外のぎらぎらひかる草の波。 <|plamo:op|>output lang=English ''' response = generate( model, tokenizer, prompt=prompt, max_tokens=1024, # 生成する最大トークン数 verbose=True, # 生成過程を表示 ) # print(response) # 翻訳結果を表示(verbose=Trueならすでに出力済み)