SharePoint の機械翻訳サービス

Machine Translation Service について説明します。これは、SharePoint に含まれる新しいサービス アプリケーションであり、ファイルおよびサイトを自動で機械翻訳する機能を提供します。

Machine Translation Service の概要

注:

  • 2018 年 9 月、機械翻訳サービスは SharePoint for Microsoft 365 で非推奨になるが、引き続きサポートされることが発表されました。 このサービスは、2022 年 7 月末までに利用できなくなり、完全にサポートされなくなります。
  • 機械翻訳サービス API は非推奨としてマークされており、SharePoint CSOM からは利用できません。
  • 機械翻訳サーバー API の既存のすべてのインスタンスは、2022 年 7 月末までに、Microsoft 365 環境で多言語機能を表示しなくなります。
  • この記事は 2022 年 12 月に廃止されます。
  • SharePoint で最新のコミュニケーション サイトを使用している場合は、バリエーションの Machine Translation Services 機能ではなく、最新の多言語サイトとページ機能 を使用することをお勧めします。

Machine Translation Service は SharePoint に含まれる新しいサービス アプリケーションであり、ファイルおよびサイトを自動で機械翻訳する機能を提供します。 Machine Translation Service アプリケーションは、翻訳要求を処理すると、実際の翻訳作業が実行される Microsoft Translator クラウドホスト型機械翻訳サービスに要求を転送します。 このクラウド サービスは Microsoft Office、Lync、Yammer、Bing の翻訳機能にも活用されています。

Machine Translation Service アプリケーションは、翻訳要求を非同期的かつ同期的に処理します。 非同期変換要求は、変換タイマー ジョブの実行時に処理されます。 変換タイマー ジョブの既定の間隔は 15 分です。この設定は、サーバーの全体管理またはWindows PowerShellを使用して管理できます。 次のコマンドを使用して、タイマーをすぐに実行するように設定することもできます。


$tj = get-sptimerjob "SharePoint Translation Services"
$tj.Runnow()

同期的な翻訳要求は、要求が送信されるとすぐに処理されます。

Word Automation Services との共有コンポーネント

Machine Translation Service アーキテクチャは、いくつかのコンポーネントを Microsoft Word Automation Services アーキテクチャと共有しています。 Word Automation Services アーキテクチャの詳細については、「 Word Automation Services アーキテクチャ」を参照してください。

Machine Translation Service オブジェクト モデルは、Word Automation Services オブジェクト モデルに従ってモデル化されています。このため、Word Automation Services でのプログラミングに慣れている場合は、Machine Translation Service オブジェクト モデルでのプログラミングがそれに似ていることに気付くでしょう。

Machine Translation Service のサーバー オブジェクト モデルの使用

サーバー オブジェクト モデルを使用しているアプリケーションは、SharePoint を実行しているサーバー上で直接実行する必要があります。 リモートでホストできるアプリケーションの作成については、このトピックの後半の 「Machine Translation Services クライアント オブジェクト モデルの使用 」を参照してください。 Machine Translation Service サーバーのオブジェクト モデルは、Microsoft.Office.TranslationServices 名前空間にあり、これは Microsoft.Office.TranslationServices.dll にあります。

サーバー オブジェクト モデルを使用する場合、翻訳の要求は、Machine Translation Service アプリケーションに対して非同期的にも同期的 (即時の翻訳) にも発行できます。 Machine Translation Service アプリケーションは翻訳要求を保存する作業キューとして、非同期キューと同期キューの 2 つを備えています。 同期キュー内の要求は、より優先度が高いものとして扱われ、非同期キュー内の要求よりも先に翻訳されます。 要求は、使用したクラスに基づいてこれらのキューのいずれかに送られます。

関連するコード スニペットおよびサンプル アプリ

コンソール アプリケーションからサーバー オブジェクト モデルを使用する方法を示すサンプル コードについては、「 SharePoint: サーバー オブジェクト モデルを使用したマシン翻訳サービスへのアクセス」を参照してください。

サーバー オブジェクト モデルを使用した非同期的翻訳

TranslationJob クラスは、翻訳されるアイテムの集合を定義します。 これは、単一のファイルにすることも、フォルダーやドキュメント ライブラリ内のすべてのファイルにすることもできます。 この方法で発行された翻訳ジョブは、翻訳データベースに保管されます。 翻訳タイマー ジョブが実行されるたびに、翻訳データベースからいくつかのジョブが取り出され、翻訳対象として非同期キューに追加されます。 翻訳タイマー ジョブの既定の間隔は 15 分です。

以下のコードは、1 つのファイルを非同期で翻訳する方法を示しています。


SPServiceContext sc = SPServiceContext.GetContext(new SPSite(site));
TranslationJob job = new TranslationJob(sc, CultureInfo.GetCultureInfo(culture)); 
job.AddFile(input, output);
job.Start(); 

以下のコードは、1 つのフォルダー内のすべてのファイルを非同期で翻訳する方法を示しています。


SPServiceContext sc = SPServiceContext.GetContext(new SPSite(site));
TranslationJob job = new TranslationJob(sc, CultureInfo.GetCultureInfo(culture));
using (SPSite siteIn = new SPSite(inputFolder))
{
    using (SPWeb webIn = siteIn.OpenWeb())
    {
        using (SPWeb webOut = siteOut.OpenWeb())
        {
            SPFolder folderIn = webIn.GetFolder(inputFolder);
            SPFolder folderOut = webOut.GetFolder(outputFolder);                    
            job.AddFolder(folderIn, folderOut, true);
            job.Start();
        }
    }
}

以下のコードは、1 つのドキュメント ライブラリ内のすべてのファイルを非同期で翻訳する方法を示しています。


SPServiceContext sc = SPServiceContext.GetContext(new SPSite(site));
TranslationJob job = new TranslationJob(sc, CultureInfo.GetCultureInfo(culture));
using (SPSite siteIn = new SPSite(inputList))
{
    using (SPWeb webIn = siteIn.OpenWeb())
    {
        using (SPSite siteOut = new SPSite(outputList))
        {
            using (SPWeb webOut = siteOut.OpenWeb())
            {
                SPDocumentLibrary listIn = (SPDocumentLibrary)webIn.GetList(inputList);
                SPDocumentLibrary listOut = (SPDocumentLibrary)webOut.GetList(outputList);
                job.AddLibrary(listIn, listOut);
                job.Start();
            }
        }
    }
}

サーバー オブジェクト モデルを使用した同期的翻訳

SyncTranslator クラスを使用してファイルまたはストリームについて即時の翻訳を要求できます。 このクラスを使用して行われた翻訳要求は、 TranslationJob クラスを使用して行われた要求とは別の方法で処理が進みます。 これは、処理対象として即時に同期キューに追加されます。 TranslationItemInfo クラスは、Machine Translation Service によって翻訳された 1 つのアイテムについての詳細を格納します。 SyncTranslator.Translate メソッドは、同期的翻訳ジョブにおいてこのクラスのインスタンスを戻します。

以下のコードは、1 つのファイルを同期的に翻訳する方法を示しています。


SPServiceContext sc = SPServiceContext.GetContext(new SPSite(site));
SyncTranslator job = new SyncTranslator(sc, CultureInfo.GetCultureInfo(jobCulture));
TranslationItemInfo itemInfo = job.Translate(input, output);

以下のコードは、ストリームを同期的に翻訳する方法を示しています。


SPServiceContext sc = SPServiceContext.GetContext(new SPSite(site));
SyncTranslator job = new SyncTranslator(sc, CultureInfo.GetCultureInfo(jobCulture));
FileStream inputStream = new FileStream(input, FileMode.Open);
FileStream outputStream = new FileStream(output, FileMode.Create);     
TranslationItemInfo itemInfo = job.Translate(inputStream, outputStream, fileFormat);
inputStream.Close();
outputStream.Flush();
outputStream.Close();

以下のコードは、バイト シーケンスを同期的に翻訳する方法を示しています。


SPServiceContext sc = SPServiceContext.GetContext(new SPSite(site));
SyncTranslator job = new SyncTranslator(sc, CultureInfo.GetCultureInfo(jobCulture));
Byte[] inputByte;
Byte[] outputByte;
inputByte = File.ReadAllBytes(input);
outputByte = null;
TranslationItemInfo itemInfo = job.Translate(inputByte, out outputByte, fileFormat);
FileStream outputStream = File.Open(output, FileMode.Create);
MemoryStream memoryStream = new MemoryStream(outputByte);
memoryStream.WriteTo(outputStream);
outputStream.Flush();
outputStream.Close();

アクセス許可

翻訳要求を実行しているユーザーが、翻訳対象のファイルにアクセスできる場合、かつファイルの出力場所にアクセスできる場合、そのユーザーはセキュリティ チェックに合格し、ファイルが翻訳されます。

Machine Translation Service のクライアント オブジェクト モデルの使用

Machine Translation Service には、オンライン、オンプレミス、およびモバイル開発用の Machine Translation Service API へのアクセスを可能にするクライアント オブジェクト モデル (CSOM) が含まれています。 クライアント アプリケーションは CSOM を使用してサーバーのコンテンツおよび機能にアクセスします。 CSOM は、サーバーの翻訳機能のほとんどを実装していますが、CSOM とサーバー側オブジェクト モデルは完全に同一ではありません。 非同期的翻訳は、個別のファイル、またはドキュメント ライブラリやフォルダー内の複数のファイルについてサポートされます。 同期的翻訳は、ファイルについてはサポートされますが、ファイル ストリームについてはサポートされません。

Machine Translation Service の CSOM には、.NET マネージ クライアント側オブジェクト モデルおよび Microsoft Silverlight と JavaScript のオブジェクト モデルが含まれています。 これは、SharePoint CSOM 上に構築されています。 そのため、クライアント コードでは、SharePoint CSOM を最初にアクセスして、次に Machine Translation Service CSOM にアクセスします。

SharePoint CSOM についての詳細は、SharePoint 2010 クライアント オブジェクト モデルを参照してください。 CSOM へのエントリ ポイントである ClientContext オブジェクトについての詳細は、 中心的オブジェクトであるクライアント コンテキストを参照してください。

表 1 は、Machine Translation Service サーバー オブジェクトと、それに対応する CSOM API が提供するオブジェクトを示しています。

表 1. サーバー オブジェクト モデル API と対応する CSOM API

サーバー .NET マネージおよび Silverlight JavaScript
Microsoft.Office.TranslationServices.TranslationJob
Microsoft.Office.TranslationServices.Client.TranslationJob
SP.Translation.TranslationJob
Microsoft.Office.TranslationServices.TranslationJobInfo
Microsoft.Office.TranslationServices.Client.TranslationJobInfo
SP.Translation.TranslationJobInfo
Microsoft.Office.TranslationServices.TranslationItemInfo
Microsoft.Office.TranslationServices.Client.TranslationItemInfo
SP.Translation.TranslationItemInfo
Microsoft.Office.TranslationServices.TranslationJobStatus
Microsoft.Office.TranslationServices.Client.TranslationJobStatus
SP.Translation.TranslationJobStatus
Microsoft.Office.TranslationServices.SyncTranslator
Microsoft.Office.TranslationServices.Client.SyncTranslator
SP.Translation.SyncTranslator

Machine Translation Service .NET マネージ CSOM と Silverlight CSOM

.NET 管理の CSOM では、ClientContext インスタンスを取得します (これは Microsoft.SharePoint.Client.dll の Microsoft.SharePoint.Client 名前空間にあります)。 そして、Microsoft.Office.TranslationServices.Client.dll の Microsoft.Office.TranslationServices.Client 名前空間の中のオブジェクト モデルを使用します。

関連するコード スニペットおよびサンプル アプリ

.NET マネージド CSOM の使用方法を示すサンプル コードについては、「 SharePoint: クライアント オブジェクト モデルを使用して機械翻訳サービスにアクセスする」を参照してください。

Silverlight CSOM の場合は、 ClientContext インスタンス (Microsoft.SharePoint.Client.Silverlight.dll の Microsoft.SharePoint.Client 名前空間にある) を取得します。 そして、Microsoft.Office.TranslationServices.Silverlight.dll の Microsoft.Office.TranslationServices.Client 名前空間の中のオブジェクト モデルを使用します。

関連するコード スニペットおよびサンプル アプリ

Silverlight CSOM の使用方法を示すサンプル コードについては、「 SharePoint: Silverlight アプリケーションから Machine Translation Service にアクセスする」を参照してください。

1 つのファイルを非同期的に翻訳するには次のようにします。


ClientContext clientContext = new ClientContext("http://serverName/sites/siteCollectionPath");
string culture  = "cultureID";
string name = "translationJobName";
string  inputFile =  "http://serverName/path/inputFileName";
string outputFile = "http://serverName/path/outputFileName";
TranslationJob job = new TranslationJob(clientContext , culture);
job.AddFile(inputFile , outputFile);
job.Name = name;
job.Start();
clientContext.Load(job);
clientContext.ExecuteQuery();
//To retrieve the translation job ID.
string jobID = job.JobId;

1 つのフォルダーを非同期的に翻訳するには次のようにします。


ClientContext clientContext = new ClientContext("http://serverName/sites/siteCollectionPath");
string culture = "cultureID";
string name = "translationJobName";
string inputFolder = clientContext.Web.GetFolderByServerRelativeUrl("inFolderPath");
string outputFolder = clientContext.Web.GetFolderByServerRelativeUrl("outFolderPath");  
TranslationJob job = new TranslationJob(clientContext , culture);
job.AddFolder(inputFolder, outputFolder, true);
job.Name = name;
job.Start();            
clientContext.Load(job);
clientContext.ExecuteQuery();
//To retrieve the translation job ID.
string jobID = job.JobId;

1 つのライブラリを非同期的に翻訳するには次のようにします。


ClientContext clientContext = new ClientContext("http://serverName/sites/siteCollectionPath");
string culture = "cultureID";
string name = "translationJobName";
string inputLibrary = clientContext.Web.Lists.GetByTitle("inputLibraryName");
string outputLibrary = clientContext.Web.Lists.GetByTitle("outputLibraryName");
TranslationJob job = new TranslationJob(clientContext , culture);
job.AddFolder(inputLibrary , outputLibrary , true);
job.Name = name;
job.Start();            
clientContext.Load(job);
clientContext.ExecuteQuery();
//To retrieve the translation job ID.
string jobID = job.JobId;

1 つのファイルを同期的に翻訳するには次のようにします。


ClientContext clientContext = new ClientContext("http://serverName/sites/siteCollectionPath");
string culture = "cultureID"
string inputFile = "http://serverName/path/inputFileName";
string outputFile = "http://serverName/path/outputFileName";
SyncTranslator job = new SyncTranslator(clientContext , culture);
job.OutputSaveBehavior = SaveBehavior.AlwaysOverwrite;
ClientResult<TranslationItemInfo> cr = job.Translate(inputFile, outputFile );
clientContext.ExecuteQuery(); 
//To retrieve additional information about the translation job.
string errorCode = clientContext.Value.ErrorCode;
string errorMessage = clientContext.Value.ErrorMessage;
string translateID = clientContext.Value.TranslationId;
string succeedResult  = clientContext.Value.Succeeded;
string failResult  = clientContext.Value.Failed;
string cancelStatus = clientContext.Value.Canceled;
string inProgressStatus = clientContext.Value.InProgress;
string notStartedStatus = clientContext.Value.NotStarted;

Machine Translation Service によってサポートされているすべての言語を取得するには次のようにします。


ClientContext clientContext = new ClientContext("http://serverName/sites/siteCollectionPath");
IEnumerable<string> supportedLanguages = TranslationJob.EnumerateSupportedLanguages(clientContext);
clientContext.ExecuteQuery();
foreach (string item in supportedLanguages)
{
    Console.Write(item + ", ");
}

特定の言語がサポートされているかどうかを確認するには次のようにします。


ClientContext clientContext = new ClientContext("http://serverName/sites/siteCollectionPath");
clientResult<bool> isSupported;
isSupported = TranslationJob.IsLanguageSupported(clientContext, "language");
clientContext.ExecuteQuery();

Machine Translation Service によってサポートされているすべてのファイル名拡張子を取得するには次のようにします。


ClientContext clientContext = new ClientContext("http://serverName/sites/siteCollectionPath");
IEnumerable<string> fileExt = TranslationJob.EnumerateSupportedFileExtensions(clientContext);
clientContext.ExecuteQuery();
foreach (string item in fileExt)
{
    Console.Write(item + ", ");
}

特定のファイル名拡張子がサポートされているかどうかを確認するには次のようにします。


ClientContext clientContext = new ClientContext("http://serverName/sites/siteCollectionPath");
clientResult<bool> isSupported;
isSupported = TranslationJob.IsFileExtensionSupported(clientContext, "fileExtension");
clientContext.ExecuteQuery();

特定のファイル名拡張子についてファイル サイズの制限を確認するには次のようにします。


ClientContext clientContext = new ClientContext("http://serverName/sites/siteCollectionPath");
clientResult<int> maxSize;
maxSize = TranslationJob.GetMaximumFileSize(clientContext, "fileExtension");
clientContext.ExecuteQuery();

Machine Translation Service の JavaScript CSOM

JavaScript CSOM の場合は、 SP.ClientContext インスタンスを取得し、SP.Translation.js ファイル内のオブジェクト モデルを使用します。

関連するコード スニペットおよびサンプル アプリ

JavaScript CSOM の使用方法を示すサンプル コードについては、「 SharePoint: JavaScript を使用した機械翻訳サービスへのアクセス」を参照してください。

1 つのファイルを非同期的に翻訳するには次のようにします。


var asyncJob;
var clientContext = new SP.ClientContext("serverRelativeUrl");
var contextSite = clientContext.get_site();
asyncJob = SP.Translation.TranslationJob.newObject(clientContext, "cultureID");
asyncJob.set_outputSaveBehavior(SP.Translation.SaveBehavior.alwaysOverwrite);
asyncJob.addFile("inputFilePath", "outputFilePath");
asyncJob.set_name("translationJobName");
asyncJob.start();
clientContext.load(asyncJob);
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceededASync),Function.createDelegate(this, this.onQueryFailed));

1 つのフォルダーを非同期的に翻訳するには次のようにします。


var asyncJob;
var clientContext = new SP.ClientContext("serverRelativeUrl");
var contextSite = clientContext.get_site();
asyncJob = SP.Translation.TranslationJob.newObject(clientContext, "cultureID");
asyncJob.set_outputSaveBehavior(SP.Translation.SaveBehavior.alwaysOverwrite);
var inputFolder = clientContext.get_web().getFolderByServerRelativeUrl("inputFilePath");
var outputFolder = clientContext.get_web().getFolderByServerRelativeUrl("outputFilePath");
asyncJob.addFolder(inputFolder, outputFolder, true);
asyncJob.set_name("translationJobName");
asyncJob.start();
clientContext.load(asyncJob);
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceededASync),Function.createDelegate(this, this.onQueryFailed));

1 つのライブラリを非同期的に翻訳するには次のようにします。


var asyncJob;
var clientContext = new SP.ClientContext("serverRelativeUrl");
var contextSite = clientContext.get_site();
asyncJob = SP.Translation.TranslationJob.newObject(clientContext, "cultureID");
asyncJob.set_outputSaveBehavior(SP.Translation.SaveBehavior.alwaysOverwrite);
var inputLibrary= clientContext.get_web().get_lists().getByTitle("inputFilePath");
var outputLibrary= clientContext.get_web().get_lists().getByTitle("outputFilePath");
asyncJob.addLibrary(inputLibrary, outputLibrary);
asyncJob.set_name("translationJobName");
asyncJob.start();
clientContext.load(asyncJob);
clientContext.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceededASync),Function.createDelegate(this, this.onQueryFailed));

1 つのファイルを同期的に翻訳するには次のようにします。


var result;
var clientContext = new SP.ClientContext("serverRelativeUrl");
var contextSite = clientContext.get_site();
var job = SP.Translation.SyncTranslator.newObject(clientContext, "cultureID");
job.set_outputSaveBehavior(SP.Translation.SaveBehavior.alwaysOverwrite);
result = job.translate("inputFilePath", "outputFilePath");
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceededSync),
Function.createDelegate(this, this.onQueryFailed));

Machine Translation Service によってサポートされているすべての言語を取得するには次のようにします。


var clientContext = new SP.ClientContext("serverRelativeUrl");
var contextSite = clientContext.get_site();
var result= SP.Translation.TranslationJob.enumerateSupportedLanguages(clientContext);
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceededListAllLang),Function.createDelegate(this, this.onQueryFailed));

特定の言語がサポートされているかどうかを確認するには次のようにします。


var clientContext = new SP.ClientContext("serverRelativeUrl");
var contextSite = clientContext.get_site();
var result= SP.Translation.TranslationJob.isLanguageSupported(clientContext," language");
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceededTestLang),Function.createDelegate(this, this.onQueryFailed));

Machine Translation Service によってサポートされているすべてのファイル名拡張子を取得するには次のようにします。


var clientContext = new SP.ClientContext("serverRelativeUrl");
var contextSite = clientContext.get_site();
var result= SP.Translation.TranslationJob.enumerateSupportedFileExtensions(clientContext);
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceededListAllFileExt),Function.createDelegate(this, this.onQueryFailed));

特定のファイル名拡張子がサポートされているかどうかを確認するには次のようにします。


var clientContext = new SP.ClientContext("serverRelativeUrl");
var contextSite = clientContext.get_site();
var result= SP.Translation.TranslationJob.isFileExtensionSupported(clientContext," fileExtension");
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceededTestFileExt),Function.createDelegate(this, this.onQueryFailed));

Machine Translation Service の REST サービス

SharePoint には REST (Representational State Transfer) サービスが含まれています。これにより、REST Web 要求をサポートする任意のテクノロジを使用してリモートで Machine Translation Service アプリケーションを操作することができます。 SharePoint の REST の一般的な情報については、「SharePoint REST 要求で OData クエリ操作を使用する」を参照してください。

非同期的な翻訳用の REST API

翻訳を非同期的に実行する REST API は次のとおりです。

http://serverName/_api/TranslationJob('language')

1 つのファイルを非同期的に翻訳するには次のようにします。

http://serverName/_api/TranslationJob('language')/TranslateFile(inputFile='/path/intput file', outputFile='/path/output file')

1 つのフォルダーを非同期的に翻訳するには次のようにします。

http://serverName/_api/TranslationJob('language')/TranslateFolder(inputFolder='/path/in', outputFolder='/path/out')

1 つのライブラリを非同期的に翻訳するには次のようにします。

http://serverName/_api/TranslationJob('language')/TranslateLibrary(inputLibrary='/LibraryName', outputLibrary='/LibraryName'')

同期的な翻訳用の REST API

Machine Translation Service REST サービスはファイルについてのみ同期的な翻訳をサポートします。 このための API は次のとおりです。

http://serverName/_api/SyncTranslator('language')/Translate(outputFile='/path/output file', inputFile='/path/input file')

その他の Machine Translation Service REST API

Machine Translation Service REST サービスには、この他に、Machine Translation Service アプリケーションの機能および翻訳ジョブのステータスに関する情報を取得するために使用できる API も含まれています。

Machine Translation Service によってサポートされるすべての言語を取得するには次のようにします。

http://serverName/_api/TranslationJob.EnumerateSupportedLanguages

特定の言語がサポートされているかどうかを確認するには次のようにします。

http://serverName/_api/TranslationJob.IsLanguageSupported('language')

Machine Translation Service によってサポートされているすべてのファイル名拡張子を取得するには次のようにします。

http://serverName/_api/TranslationJob.EnumerateSupportedFileEXtensions

特定のファイル名拡張子がサポートされているかどうかを確認するには次のようにします。

http://serverName/_api/TranslationJob.IsFileExtensionSupported('extension')

特定のファイル名拡張子についてファイル サイズの制限を確認するには次のようにします。

http://serverName/_api/TranslationJob.GetMaximumFileSize('extension')

非同期翻訳ジョブすべてを含むリストを取得するには次のようにします。

http://serverName/_api/TranslationJobStatus.GetAllJobs

アクティブな非同期翻訳ジョブすべてを含むリストを取得するには次のようにします。

http://serverName/_api/TranslationJobStatus.GetAllActiveJobs

特定の非同期翻訳ジョブのドキュメント情報を取得するには次のようにします。

http://serverName/_api/TranslationJobStatus('jobid')/GetAllItems

非同期翻訳ジョブを取り消すには

http://serverName/_api/TranslationJob.CancelJob('jobid')

Microsoft Word 文書の要件

SharePoint 機械翻訳サービスでは、Microsoft Word 文書を翻訳するときに、ソース言語として段落の言語を使用します。 たとえば、段落がスペイン語で記述されていても、段落の言語が英語に設定されている場合、翻訳サービスはその文書を英語に翻訳しません。 段落の言語が英語に設定済みだからです。

段落の言語を設定するには、次の手順を行います。

  1. 段落を選択します。

  2. [校閲] リボン タブをクリックします。

  3. ドロップダウン メニューから [言語] をクリックし、[校正言語の設定] を選択します。

関連項目