Share via


開始使用非同步文件翻譯

文件翻譯是 Azure AI 翻譯工具服務的雲端式功能,以非同步方式使用支援的語言和各種檔案格式來翻譯整份文件。 在本快速入門中,了解如何使用文件翻譯搭配您選擇的程式設計語言,將來源文件翻譯為目標語言,同時保留結構和文字格式。

必要條件

重要

  • JAVA 和 JavaScript 文件翻譯 SDK 目前可在公開預覽中取得。 根據使用者意見反應,功能、方法和流程在正式發行 (GA) 版本之前可能會有所變更。

  • C# 和 Python SDK 是正式發行 (GA) 版本,可供在生產應用程式中使用

  • 文件翻譯目前僅受翻譯工具 (單一服務) 資源支援,但包含在 Azure AI 服務 (多服務) 資源中。

  • 文件翻譯支援 S1 標準服務方案 (隨用隨付) 或 D3 大量折扣方案。 請參閱Azure AI 服務定價—翻譯工具

若要開始,您需要:

  • 作用中的 Azure 帳戶。 如果您沒有帳戶,您可以建立免費帳戶

  • Azure Blob 儲存體帳戶。 您也必須在 Azure Blob 儲存體帳戶中為來源和目標檔案建立容器

    • 來源容器。 可會在此容器中上傳要翻譯的檔案 (必要)。
    • 目標容器。 此容器是翻譯的檔案所將儲存之處 (必要)。
  • 單一服務翻譯工具資源 (不是多服務 Azure AI 服務資源):

    完成翻譯工具專案和執行個體詳細資料欄位,如下所示:

    1. 訂用帳戶。 選取您可用的一個 Azure 訂用帳戶。

    2. 資源群組。 您可以建立新的資源群組,或將資源新增至共用相同生命週期、權限和原則的預先存在資源群組。

    3. 資源區域。 除非您的業務或應用程式需要特定區域,否則請選擇 [全域]。 如果您打算使用系統指派的受控識別 進行驗證,請選擇地理區域,例如美國西部

    4. 名稱. 輸入您為資源選擇的名稱。 您所選擇的名稱在 Azure 中必須是唯一的。

      注意

      文件翻譯需要自訂網域端點。 您在名稱欄位中輸入的值將做為端點的自訂網域名稱參數。

    5. 定價層。 免費服務層級不支援文件翻譯。 選取 [標準 S1] 以試用服務

    6. 選取 [檢閱 + 建立] 。

    7. 檢閱服務條款,然後選取 [建立] 以部署資源。

    8. 成功部署資源之後,請選取 [移至資源]

擷取金鑰和文件翻譯端點

對翻譯工具服務的要求需要唯讀金鑰和自訂端點,才能驗證存取權。 自訂網域端點是以您的資源名稱、主機名稱和翻譯工具子目錄格式化的 URL,可在 Azure 入口網站取得。

  1. 如果您已建立新的資源,在部署之後,請選取 [前往資源]。 如果您有現有的文件翻譯資源,請直接瀏覽至您的資源頁面。

  2. 在左側滑軌中,於 [資源管理] 下選取 [金鑰和端點]

  3. 您可以複製 keydocument translation endpoint 並將其貼到程式碼範例中,以驗證您對文件翻譯服務的要求。 呼叫 API 只需一把金鑰。

    Screenshot showing the get your key field in Azure portal.

建立 Azure Blob 儲存體容器

您必須在 Azure Blob 儲存體帳戶中為來源和目標檔案建立容器

  • 來源容器。 可會在此容器中上傳要翻譯的檔案 (必要)。
  • 目標容器。 此容器是翻譯的檔案所將儲存之處 (必要)。

必要的驗證

sourceUrltargetUrl 和選擇性 glossaryUrl 必須包含共用存取簽章 (SAS) 權杖,並附加為查詢字串。 權杖可以指派給您的容器或特定 Blob。 請參閱建立文件翻譯程序的 SAS 權杖

  • 您的來源容器或 Blob 必須具有指定的讀取列出存取權。
  • 您的目標容器或 Blob 必須具有指定的寫入列出存取權。
  • 您的字彙 Blob 必須具有指定的讀取列出存取權。

提示

  • 如果您要在單一作業中翻譯多個檔案 (Blob),請在容器層級委派 SAS 存取權
  • 如果您要在一個作業中翻譯單一檔案 (Blob),請在 Blob 層級委派 SAS 存取權
  • 作為 SAS 權杖的替代方案,您可以使用系統指派的受控識別來進行驗證。

範例文件

針對此專案,您需要上傳至來源容器來源文件。 您可以針對此快速入門下載我們的文件翻譯範例文件。 來源語言為英文。

設定您的 C#/.NET 環境

針對本快速入門,我們會使用最新版本的 Visual Studio IDE 來建置和執行應用程式。

  1. 啟動 Visual Studio。

  2. [開始] 頁面中,選擇 [建立新專案]。

    Screenshot of Visual Studio 2022 get started window.

  3. 在 [建立新的專案] 頁面的搜尋方塊中,輸入主控台。 選擇 [主控台應用程式] 範本,然後選擇 [下一步]

    Screenshot of Visual Studio 2022 create new project page.

  4. 在 [設定新專案] 對話方塊視窗中,於 [專案名稱] 方塊中輸入 document-translation-qs。 接著,選擇 [下一步]。

    Screenshot of Visual Studio 2022 configure new project set-up window.

  5. 在 [其他資訊] 對話方塊視窗中,選取 [.NET 6.0 (長期支援)],然後選取 [建立]

    Screenshot of Visual Studio 2022 additional information set-up window.

安裝 Newtonsoft.Json

  1. 在您的 document-translation-qs 專案上按一下滑鼠右鍵,然後選取 [管理 NuGet 套件]

    Screenshot of select NuGet package window in Visual Studio.

  2. 選取 [瀏覽] 索引標籤並輸入 Newtonsoft

    Screenshot of select prerelease NuGet package in Visual Studio.

  3. 自下拉式功能表選取最新的穩定版本,並在專案中安裝套件。

    Screenshot of install selected NuGet package window.

翻譯儲存體容器中的所有文件

注意

  • 從 .NET 6 開始,使用 console 範本的新專案會產生與舊版不同的新程式樣式。
  • 新輸出會使用最新的 C# 功能,以簡化您需要撰寫的程式碼。
  • 當您使用較新版本時,只需要撰寫 Main 方法的本文。 您不需要包含最上層陳述式、全域 Using 指示詞或隱含 Using 指示詞。
  • 如需詳細資訊,請參閱新的 C# 範本產生最上層語句
  1. 開啟 Program.cs 檔案。

  2. 刪除預先存在的程式碼,包含此行 Console.WriteLine("Hello World!")

  3. 複製文件翻譯程式碼範例並貼入 Program.cs 檔案。

    • 使用 Azure 入口網站翻譯工具執行個體的值更新 {your-document-translation-endpoint}{your-key}

    • 使用 Azure 入口網站儲存體帳戶容器執行個體的值更新 {your-source-container-SAS-URL}{your-target-container-SAS-URL}

程式碼範例

重要

完成時,請記得從程式碼中移除金鑰,且不要公開張貼金鑰。 在生產環境中,請使用安全的方式來儲存和存取您的認證,例如 Azure Key Vault。 如需詳細資訊,請參閱 Azure AI 服務安全性

using System.Text;

class Program
{
    private static readonly string endpoint = "{your-document-translator-endpoint}/translator/text/batch/v1.1";

    private static readonly string key = "{your-key}";

    static readonly string route = "/batches";
    static readonly string sourceURL = "\" {your-source-container-SAS-URL}\"";
    static readonly string targetURL = " \"{your-target-container-SAS-URL}\"";


    static readonly string json = ("{\"inputs\": [{\"source\": {\"sourceUrl\":"+sourceURL+" ,\"storageSource\": \"AzureBlob\",\"language\": \"en\"}, \"targets\": [{\"targetUrl\":"+targetURL+",\"storageSource\": \"AzureBlob\",\"category\": \"general\",\"language\": \"es\"}]}]}");

    static async Task Main(string[] args)
    {
        using HttpClient client = new HttpClient();
        using HttpRequestMessage request = new HttpRequestMessage();
        {

            StringContent content = new StringContent(json, Encoding.UTF8, "application/json");

            request.Method = HttpMethod.Post;
            request.RequestUri = new Uri(endpoint + route);
            request.Headers.Add("Ocp-Apim-Subscription-Key", key);
            request.Content = content;

            HttpResponseMessage response = await client.SendAsync(request);
            string result = response.Content.ReadAsStringAsync().Result;
            if (response.IsSuccessStatusCode)
            {
                Console.WriteLine($"Status code: {response.StatusCode}");
                Console.WriteLine();
                Console.WriteLine($"Response Headers:");
                Console.WriteLine(response.Headers);
            }
            else
                Console.Write("Error");

        }

    }

}

執行您的應用程式

將程式碼範例新增至應用程式之後,請選擇 document-translation-qs 旁的綠色 [開始] 按鈕來建置和執行程式,或按 F5

Screenshot: run your Visual Studio program.

成功完成時:

  • 已翻譯的文件可在您的目標容器中找到。
  • 成功的 POST 方法會傳回 202 Accepted 回應碼,指出服務已建立批次要求。
  • POST 要求也會傳回回應標頭,包括提供後續 GET 要求中使用的值的 Operation-Location

設定您的 Go 環境

您可以使用任何文字編輯器來撰寫 Go 應用程式。 建議使用最新版本的 Visual Studio Code 和 Go 延伸模組

提示

如果您尚不熟悉 Go,可以參考開始使用 Go Learn 課程模組。

如果尚未完成,請下載並安裝 Go

  1. 為您的作業系統下載 Go 版本。

  2. 下載完成後執行安裝程式。

  3. 開啟命令提示字元,並輸入下列命令確認已安裝 Go:

    go version
    

翻譯儲存體容器中的所有文件

  1. 在主控台視窗 (例如 cmd、PowerShell 或 Bash) 中,為您的應用程式建立一個名為 document-translation-qs 的新目錄,並瀏覽至該目錄。

  2. document-translation-qs 目錄中建立名為 document-translation.go 的新 Go 檔案。

  3. 複製文件翻譯程式碼範例並貼入 document-translation.go 檔案。

    • 使用 Azure 入口網站翻譯工具執行個體的值更新 {your-document-translation-endpoint}{your-key}

    • 使用 Azure 入口網站儲存體帳戶容器執行個體的值更新 {your-source-container-SAS-URL}{your-target-container-SAS-URL}

程式碼範例

重要

完成時,請記得從程式碼中移除金鑰,且不要公開張貼金鑰。 在生產環境中,請使用安全的方式來儲存和存取您的認證,例如 Azure Key Vault。 如需詳細資訊,請參閱 Azure AI 服務安全性

package main

import (
  "bytes"
  "encoding/json"
  "fmt"
  "net/http"
)

func main() {

    httpposturl := "{your-document-translation-endpoint}/translator/text/batch/v1.1/batches"
    fmt.Println("Response", httpposturl)

    var jsonData = []byte(`{
        "inputs": [
            {
                "source": {
                    "sourceUrl": "{your-source-container-SAS-URL}"
                },
                "targets": [
                    {
                        "{your-target-container-SAS-URL}",
                        "language": "fr"
                    }
                ]
            }
        ]
    }`)

    request, error := http.NewRequest("POST", httpposturl, bytes.NewBuffer(jsonData))
    request.Header.Set("Content-Type", "application/json")
    request.Header.Set("Ocp-Apim-Subscription-Key", "{your-key}")

    client := &http.Client{}
    response, error := client.Do(request)
    if error != nil {
        panic(error)
    }
    defer response.Body.Close()

    fmt.Println("response Status:", response.Status)
    var printHeader = (response.Header)
    prettyJSON, _ := json.MarshalIndent(printHeader, "", "  ")
    fmt.Printf("%s\n", prettyJSON)
}

執行您的 Go 應用程式

將範例程式碼新增至應用程式後,即可在命令或終端機提示字元中執行 Go 程式。 請確定提示路徑已設定為 document-translation-qs 資料夾並使用下列命令:

go run document-translation.go

成功完成時:

  • 已翻譯的文件可在您的目標容器中找到。
  • 成功的 POST 方法會傳回 202 Accepted 回應碼,指出服務已建立批次要求。
  • POST 要求也會傳回回應標頭,包括提供後續 GET 要求中使用的值的 Operation-Location

設定您的 Java 環境

在本快速入門中,我們會使用 Gradle 組建自動化工具來建立及執行應用程式。

  • 應準備好最新的 Visual Studio Code 版本或您慣用的 IDE。 請參閱 Visual Studio Code 中的 Java

    提示

    • Visual Studio Code 為 Windows 和 macOS 提供 Java 編碼套件。編碼套件是 VS Code、JAVA 開發套件 (JDK) 以及 Microsoft 建議延伸模組的集合。 編碼套件也可以用於修正現有的開發環境。
    • 如果您使用適用於 JAVA 的 VS Code 和 JAVA 開發套件,請安裝適用於 JAVA 的 Gradle 延伸模組。
  • 如果您未使用 Visual Studio Code,請確保在開發環境中安裝下列項目:

建立新的 Gradle 專案

  1. 在主控台視窗 (例如 cmd、PowerShell 或 Bash) 中,為您的應用程式建立一個名為 document-translation 的新目錄,並瀏覽至該目錄。

    mkdir document-translation && document-translation
    
    mkdir document-translation; cd document-translation
    
  2. 從 document-translation 目錄執行 gradle init 命令。 此命令會建立 Gradle 的基本組建檔案,包括 build.gradle.kts,將在執行階段使用 build.gradle.kts,來建立及設定應用程式。

    gradle init --type basic
    
  3. 出現選擇 DSL 的提示時,請選取 [Kotlin]

  4. 請選取 [退回][輸入] 以接受 document-translation 的預設專案名稱。

    注意

    建立整個應用程式可能需要幾分鐘的時間,但您很快就能看到數個資料夾和檔案,包括 build-gradle.kts

  5. 以下列程式碼來更新 build.gradle.kts

plugins {
  java
  application
}
application {
  mainClass.set("DocumentTranslation")
}
repositories {
  mavenCentral()
}
dependencies {
  implementation("com.squareup.okhttp3:okhttp:4.10.0")
  implementation("com.google.code.gson:gson:2.9.0")
}

翻譯儲存體容器中的所有文件

  1. 從 document-translation 目錄執行下列命令:

    mkdir -p src/main/java
    

    此命令會建立下列目錄結構:

    Screenshot: Java directory structure.

  2. 瀏覽至 java 目錄並建立名為 DocumentTranslation.java 的檔案。

    提示

    • 您可以使用 PowerShell 建立新檔案。

    • 按住 Shift 鍵並在資料夾上以滑鼠右鍵按一下,以開啟專案目錄中的 PowerShell 視窗。

    • 輸入下列命令 New-Item DocumentTranslation.java

    • 您也可以在 IDE 中建立名為 DocumentTranslation.java 的新檔案,並將其儲存至 java 目錄。

  3. 複製文件翻譯程式碼範例並貼入 dDocumentTranslation.java 檔案。

    • 使用 Azure 入口網站翻譯工具執行個體的值更新 {your-document-translation-endpoint}{your-key}

    • 使用 Azure 入口網站儲存體帳戶容器執行個體的值更新 {your-source-container-SAS-URL}{your-target-container-SAS-URL}

程式碼範例

重要

完成時,請記得從程式碼中移除金鑰,且不要公開張貼金鑰。 在生產環境中,請使用安全的方式來儲存和存取您的認證,例如 Azure Key Vault。 如需詳細資訊,請參閱 Azure AI 服務安全性

import java.io.*;
import java.net.*;
import java.util.*;
import okhttp3.*;

public class DocumentTranslation {
    String key = "{your-key}";

    String endpoint = "{your-document-translation-endpoint}/translator/text/batch/v1.1";

    String path = endpoint + "/batches";

    String sourceSASUrl = "{your-source-container-SAS-URL}";

    String targetSASUrl = "{your-target-container-SAS-URL}";

    String jsonInputString = (String.format("{\"inputs\":[{\"source\":{\"sourceUrl\":\"%s\"},\"targets\":[{\"targetUrl\":\"%s\",\"language\":\"fr\"}]}]}", sourceSASUrl, targetSASUrl));

    OkHttpClient client = new OkHttpClient();

    public void post() throws IOException {
        MediaType mediaType = MediaType.parse("application/json");
        RequestBody body = RequestBody.create(mediaType,  jsonInputString);
        Request request = new Request.Builder()
                .url(path).post(body)
                .addHeader("Ocp-Apim-Subscription-Key", key)
                .addHeader("Content-type", "application/json")
                .build();
        Response response = client.newCall(request).execute();
        System.out.println(response.code());
        System.out.println(response.headers());
    }

  public static void main(String[] args) {
        try {
            DocumentTranslation sampleRequest = new DocumentTranslation();
            sampleRequest.post();
        } catch (Exception e) {
            System.out.println(e);
        }
    }
}

建置和執行您的 Java 應用程式

  • 將範例程式碼新增至應用程式後,請瀏覽回您的主要專案目錄:document-translation,開啟主控台視窗並輸入下列命令:

    1. 使用 build 命令組建您的應用程式:

      gradle build
      
    2. 使用 run 命令執行您的應用程式:

      gradle run
      

成功完成時:

  • 已翻譯的文件可在您的目標容器中找到。
  • 成功的 POST 方法會傳回 202 Accepted 回應碼,指出服務已建立批次要求。
  • POST 要求也會傳回回應標頭,包括提供後續 GET 要求中使用的值的 Operation-Location

設定您的 Node.js 環境

在本快速入門中,我們會使用 Node.js JavaScript 執行階段環境來建立及執行應用程式。

  1. 如果尚未安裝,請安裝最新版的 Node.js。 節點套件管理員 (npm) 包含在 Node.js 安裝程式中。

    提示

    若您不熟悉 Node.js,可以參考 Node.js 簡介 Learn 課程模組。

  2. 在主控台視窗 (例如 cmd、PowerShell 或 Bash) 中,為您的應用程式建立名為 document-translation 的新目錄,並瀏覽至該目錄。

    mkdir document-translation && cd document-translation
    
    mkdir document-translation; cd document-translation
    
  3. 執行 npm init 命令來初始化應用程式,並建構您的專案。

    npm init
    
  4. 透過接受終端機中顯示的提示來指定專案的屬性。

    • 名稱、版本號碼和進入點是最重要的屬性。
    • 建議為進入點名稱保留 index.js。 描述、測試命令、GitHub 存放庫、關鍵字、作者和授權資訊皆為選擇性屬性,在此專案中可以跳過。
    • 選取 [退回] 或 [輸入],接受括弧中的建議。
    • 完成提示後,將會在 document-translation 目錄中建立 package.json 檔案。
  5. 使用 npm 在 document-translation 應用程式目錄中安裝 axios HTTP 程式庫和 uuid 套件:

    npm install axios uuid
    

翻譯儲存體容器中的所有文件

  1. 建立應用程式目錄中的 index.js 檔案。

    提示

    • 您可以使用 PowerShell 建立新檔案。

    • 按住 Shift 鍵並在資料夾上以滑鼠右鍵按一下,以開啟專案目錄中的 PowerShell 視窗。

    • 輸入下列命令 New-Item index.js

    • 您也可以在 IDE 中建立名為 index.js 的新檔案,並將其儲存至 document-translation 目錄。

  2. 複製文件翻譯程式碼範例並貼入 index.js 檔案。

    • 使用 Azure 入口網站翻譯工具執行個體的值更新 {your-document-translation-endpoint}{your-key}

    • 使用 Azure 入口網站儲存體帳戶容器執行個體的值更新 {your-source-container-SAS-URL}{your-target-container-SAS-URL}

程式碼範例

重要

完成時,請記得從程式碼中移除金鑰,且不要公開張貼金鑰。 在生產環境中,請使用安全的方式來儲存和存取您的認證,例如 Azure Key Vault。 如需詳細資訊,請參閱 Azure AI 服務安全性

const axios = require('axios').default;

let endpoint = '{your-document-translation-endpoint}/translator/text/batch/v1.1';
let route = '/batches';
let key = '{your-key}';
let sourceSASUrl = "{your-source-container-SAS-URL}";
let targetSASUrl = "{your-target-container-SAS-URL}"

let data = JSON.stringify({"inputs": [
  {
      "source": {
          "sourceUrl": sourceSASUrl,
          "storageSource": "AzureBlob",
          "language": "en"
      },
      "targets": [
          {
              "targetUrl": targetSASUrl,
              "storageSource": "AzureBlob",
              "category": "general",
              "language": "es"}]}]});

let config = {
  method: 'post',
  baseURL: endpoint,
  url: route,
  headers: {
    'Ocp-Apim-Subscription-Key': key,
    'Content-Type': 'application/json'
  },
  data: data
};

axios(config)
.then(function (response) {
  let result = { statusText: response.statusText, statusCode: response.status, headers: response.headers };
  console.log()
  console.log(JSON.stringify(result, null, 2));
})
.catch(function (error) {
  console.log(error);
});

執行您的 JavaScript 應用程式

將範例程式碼新增至應用程式後,請執行應用程式:

  1. 請瀏覽至您的應用程式目錄 (document-translation)。

  2. 在終端機中輸入並執行下列命令:

    node index.js
    

成功完成時:

  • 已翻譯的文件可在您的目標容器中找到。
  • 成功的 POST 方法會傳回 202 Accepted 回應碼,指出服務已建立批次要求。
  • POST 要求也會傳回回應標頭,包括提供後續 GET 要求中使用的值的 Operation-Location

設定您的 Python 專案

  1. 如果尚未安裝,請安裝最新版的 Python 3.x。 Python 安裝程式套件 (pip) 包含在 Python 安裝程式中。

    提示

    如果您尚不熟悉 Python,可以參考 Python 簡介 Learn 課程模組。

  2. 請開啟終端機視窗並使用 pip 安裝要求程式庫和 uuid0 套件:

    pip install requests uuid
    

翻譯儲存體容器中的所有文件

  1. 使用您慣用的編輯器或 IDE,為名為 document-translation 的應用程式建立新目錄。

  2. document-translation 目錄中建立名為 document-translation.py 的新 Python 檔案。

  3. 複製文件翻譯程式碼範例並貼入 document-translation.py 檔案。

    • 使用 Azure 入口網站翻譯工具執行個體的值更新 {your-document-translation-endpoint}{your-key}

    • 使用 Azure 入口網站儲存體帳戶容器執行個體的值更新 {your-source-container-SAS-URL}{your-target-container-SAS-URL}

程式碼範例

重要

完成時,請記得從程式碼中移除金鑰,且不要公開張貼金鑰。 在生產環境中,請使用安全的方式來儲存和存取您的認證,例如 Azure Key Vault。 如需詳細資訊,請參閱 Azure AI 服務安全性

import requests

endpoint = '{your-document-translation-endpoint}'
key =  '{your-key}'
path = 'translator/text/batch/v1.1/batches'
constructed_url = endpoint + path

sourceSASUrl = '{your-source-container-SAS-URL}'

targetSASUrl = '{your-target-container-SAS-URL}'

body= {
    "inputs": [
        {
            "source": {
                "sourceUrl": sourceSASUrl,
                "storageSource": "AzureBlob",
                "language": "en"
            },
            "targets": [
                {
                    "targetUrl": targetSASUrl,
                    "storageSource": "AzureBlob",
                    "category": "general",
                    "language": "es"
                }
            ]
        }
    ]
}
headers = {
  'Ocp-Apim-Subscription-Key': key,
  'Content-Type': 'application/json',
}

response = requests.post(constructed_url, headers=headers, json=body)
response_headers = response.headers

print(f'response status code: {response.status_code}\nresponse status: {response.reason}\n\nresponse headers:\n')

for key, value in response_headers.items():
    print(key, ":", value)

執行 Python 應用程式

將程式碼範例新增至應用程式之後,請建置並執行應用程式:

  1. 瀏覽至 document-translation 目錄。

  2. 在主控台中輸入並執行下列命令:

    python document-translation.py
    

成功完成時:

  • 已翻譯的文件可在您的目標容器中找到。
  • 成功的 POST 方法會傳回 202 Accepted 回應碼,指出服務已建立批次要求。
  • POST 要求也會傳回回應標頭,包括提供後續 GET 要求中使用的值的 Operation-Location

設定程式設計環境

在本快速入門中,我們使用 cURL 命令列工具來進行文件翻譯 REST API 呼叫。

注意

cURL 套件已預先安裝在大部分 Windows 10 和 Windows 11 和大部分 macOS 和 Linux 發行版本上。 您可以使用下列命令來檢查套件版本:Windows:curl.exe -V。 macOS curl -V Linux:curl --version

如果未安裝 cURL,則以下是適用於您的平台的連結:

翻譯文件 (POST 要求)

  1. 使用您慣用的編輯器或 IDE,為名為 document-translation 的應用程式建立新目錄。

  2. document-translation 目錄中建立名為 document-translation.json 的新 json 檔案。

  3. 複製文件翻譯要求範例並貼入 document-translation.json 檔案。 使用 Azure 入口網站儲存體帳戶容器執行個體的值取代 {your-source-container-SAS-URL}{your-target-container-SAS-URL}

    要求範例:

    {
      "inputs":[
        {
          "source":{
            "sourceUrl":"{your-source-container-SAS-URL}"
          },
          "targets":[
            {
              "targetUrl":"{your-target-container-SAS-URL}",
              "language":"fr"
            }
          ]
        }
      ]
    }
    

建置並執行 POST 要求

執行 POST 要求之前,請使用 Azure 入口網站翻譯工具執行個體中的值取代 {your-document-translator-endpoint}{your-key}

重要

完成時,請記得從程式碼中移除金鑰,且不要公開張貼金鑰。 在生產環境中,請使用安全的方式來儲存和存取您的認證,例如 Azure Key Vault。 如需詳細資訊,請參閱 Azure AI 服務安全性

PowerShell

cmd /c curl "{your-document-translator-endpoint}/translator/text/batch/v1.1/batches" -i -X POST --header "Content-Type: application/json" --header "Ocp-Apim-Subscription-Key: {your-key}" --data "@document-translation.json"

命令提示字元/終端機

curl "{your-document-translator-endpoint}/translator/text/batch/v1.1/batches" -i -X POST --header "Content-Type: application/json" --header "Ocp-Apim-Subscription-Key: {your-key}" --data "@document-translation.json"

成功完成時:

  • 已翻譯的文件可在您的目標容器中找到。
  • 成功的 POST 方法會傳回 202 Accepted 回應碼,指出服務已建立批次要求。
  • POST 要求也會傳回回應標頭,包括提供後續 GET 要求中使用的值的 Operation-Location

沒錯,恭喜! 在本快速入門中,您已使用文件翻譯來翻譯文件,同時保留其原始結構和資料格式。

下一步