機械翻訳のデモ¶
ここでは、推論に非自己回帰のトランスフォーマー・モデルを使用する機械翻訳のデモ・アプリケーションについて説明します。
どのように動作するか¶
起動時に、デモ・アプリケーションはコマンドライン・パラメーターを受け取り、モデルを OpenVINO™ ランタイムプラグインにロードします。
このプログラムは、ソース言語の文を入力として取得し、その翻訳をターゲット言語に返す対話型 CLI インターフェイスを提供します。
実行の準備¶
デモでサポートされるモデルリストは、<omz_dir>/demos/machine_translation_demo/python/models.lst
ファイルにあります。このファイルは、モデル・ダウンローダーおよびコンバーターのパラメーターとして使用され、モデルをダウンロードし、必要に応じて OpenVINO IR 形式 (*.xml + *.bin) に変換できます。
モデル・ダウンローダーの使用例:
omz_downloader --list models.lst
モデル・コンバーターの使用例:
omz_converter --list models.lst
サポートされるモデル¶
machine-translation-nar-de-en-0002
machine-translation-nar-en-de-0002
machine-translation-nar-en-ru-0002
machine-translation-nar-ru-en-0002
注: 各種デバイス向けのモデル推論サポートの詳細については、インテルの事前トレーニング・モデルのデバイスサポートとパブリックの事前トレーニング・モデルのデバイスサポートの表を参照してください。
デモの実行¶
-h
オプションを指定してアプリケーションを実行すると、使用方法が表示されます。
usage: machine_translation_demo.py [-h] -m MODEL --tokenizer-src TOKENIZER_SRC
--tokenizer-tgt TOKENIZER_TGT
[-i [INPUT [INPUT ...]]] [-d DEVICE]
[-o OUTPUT] [--output-name OUTPUT_NAME]
optional arguments:
-h, --help show this help message and exit
-m MODEL, --model MODEL
Required. Path to an .xml file with a trained model
--tokenizer-src TOKENIZER_SRC
Required. Path to the folder with src tokenizer that
contains vocab.json and merges.txt.
--tokenizer-tgt TOKENIZER_TGT
Required. Path to the folder with tgt tokenizer that
contains vocab.json and merges.txt.
-i [INPUT [INPUT ...]], --input [INPUT [INPUT ...]]
Optional. Text for translation or path to the input
.txt file. Replaces console input.
-d DEVICE, --device DEVICE
Optional. Specify the target device to infer on; CPU or
GPU is acceptable. The demo
will look for a suitable plugin for device specified.
Default value is CPU.
-o OUTPUT, --output OUTPUT
Optional. Path to the output .txt file.
--output-name OUTPUT_NAME
Optional. Name of the models output node.
必要なソースおよびターゲット・トークナイザー・ファイルは、対応するモデル記述フォルダーの tokenizer_src
および tokenizer_tgt
サブフォルダーの下にあります。例えば、OpenVINO™ ツールキットの事前トレーニング済みモデルを使用して CPU で推論を実行するには、次のコマンドを実行します。
python3 ./machine_translation_demo \
-d CPU \
-i "a sample english text" \
-m <path_to_model>/machine-translation-nar-en-de-0002.xml \
--tokenizer-src <omz_root>/models/intel/machine-translation-nar-en-de-0002/tokenizer_src \
--tokenizer-tgt <omz_root>/models/intel/machine-translation-nar-en-de-0002/tokenizer_tgt
デモの出力¶
このアプリケーションは、ソース言語からターゲット言語に翻訳された文章を出力します。デモレポート
レイテンシー: 入力データの処理に必要な合計処理時間 (データの読み取りから結果の表示まで)。