言語の検出、翻訳、および表記変換について理解する

完了

Azure AI Translator の機能を調べてみましょう。 たとえば、次のような機能があります。

言語検出

Rest API の Detect 関数を使用して、テキストが記述されている言語を検出できます。

たとえば、curl を使用して次のテキストを https://api.cognitive.microsofttranslator.com/detect?api-version=3.0 エンドポイントに送信できます。

翻訳するテキストを次に示します。

{ 'Text' : 'こんにちは' }

以下は、テキストの言語を検出するために、curl を使ってエンドポイントに呼び出したものです。

curl -X POST "https://api.cognitive.microsofttranslator.com/detect?api-version=3.0" -H "Ocp-Apim-Subscription-Region: <your-service-region>" -H "Ocp-Apim-Subscription-Key: <your-key>" -H "Content-Type: application/json" -d "[{ 'Text' : 'こんにちは' }]

この要求に対する応答は次のようになります。これは、テキストが日本語で記述されていることを示しています。

[
  {
    "language": "ja",
    "score": 1.0,
    "isTranslationSupported": true,
    "isTransliterationSupported": true
    
    
   }
]

翻訳

テキストをある言語から別の言語に変換するには、Translate 関数を使用します。1 つの from パラメーターを指定してソース言語を指定し、1 つ以上の to パラメーターを指定して、テキストの翻訳先の言語を指定します。

たとえば、from パラメーターに ja (日本語) を指定し、2 つの to パラメーターに値 en (英語) と値 fr (フランス語) を指定して、前に言語の検出に使用したのと同じ JSON を送信することができます。 これを行うには、次のように呼び出します。

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=ja&to=fr&to=en" -H "Ocp-Apim-Subscription-Key: <your-key>" -H "Ocp-Apim-Subscription-Region: <your-service-region>" -H "Content-Type: application/json; charset=UTF-8" -d "[{ 'Text' : 'こんにちは' }]"

結果は次のようになります。

[
  {"translations": 
    [
      {"text": "Hello", "to": "en"},   
      {"text": "Bonjour", "to": "fr"}
    ]
  }
]

音訳

日本語テキストは平仮名スクリプトを使用して記述されるため、別の言語に翻訳するというよりも、別のスクリプトに表記変換することをお勧めします。たとえば、ラテン語スクリプト (英語テキストで使用される) でテキストをレンダリングするようにします。

これを実現するには、fromScript パラメーターとして JpantoScript パラメーターとして Latn を指定して、日本語テキストを Transliterate 関数に送信します。

curl -X POST "https://api.cognitive.microsofttranslator.com/transliterate?api-version=3.0&fromScript=Jpan&toScript=Latn" -H "Ocp-Apim-Subscription-Key: <your-key>" -H "Ocp-Apim-Subscription-Region: <your-service-region>" -H "Content-Type: application/json" -d "[{ 'Text' : 'こんにちは' }]"

応答により、次のような結果が得られます。

[
    {
        "script": "Latn",
        "text": "Kon'nichiwa"
    }
]