機械翻訳のデモ#

ここでは、推論に非自己回帰のトランスフォーマー・モデルを使用する機械翻訳のデモ・アプリケーションについて説明します。

どのように動作するか#

起動時に、デモ・アプリケーションはコマンドライン・パラメーターを受け取り、モデルを 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

デモの出力#

このアプリケーションは、ソース言語からターゲット言語に翻訳された文章を出力します。デモレポート

  • レイテンシー: 入力データの処理に必要な合計処理時間 (データの読み取りから結果の表示まで)。

関連情報#