Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Dokumentöversättning är en molnbaserad maskinöversättningsfunktion i tjänsten Azure AI Translator. Du kan översätta flera och komplexa dokument över alla stödda språk och dialekter samtidigt som du bevarar ursprunglig dokumentstruktur och dataformat. API:et för dokumentöversättning stöder två översättningsprocesser:
Asynkron batchöversättning stöder bearbetning av flera dokument och stora filer. Batchöversättningsprocessen kräver ett Azure Blob Storage-konto med lagringscontainrar för källan och översatta dokument.
Synkron enkelfilöversättning stödjer bearbetning av enkelfilsöversättningar. Filöversättningsprocessen kräver inget Azure Blob Storage-konto. Det slutliga svaret innehåller det översatta dokumentet och returneras direkt till den anropande klienten.
Följande operationer stöds av funktionen Dokumentöversättning:
- Synkron dokumentöversättning: Används för att synkront översätta ett enskilt dokument. Metoden kräver inget Azure Blob Storage-konto.
- Start batchtranslation: Används för att köra en asynkron batchöversättningsförfrågan. Metoden kräver ett Azure Blob Storage-konto med lagringscontainrar för källan och översatta dokument.
- Få status för alla översättningsjobb: Används för att begära en lista och status för alla översättningsjobb som användaren har skickat in (kopplade till resursen).
- Få status för ett specifikt översättningsjobb: Används för att begära status för ett specifikt översättningsjobb. Svaret innehåller den övergripande jobbstatusen och statusen för dokument som översätts som en del av jobbet.
- Få status för alla dokument: Används för att begära status för alla dokument i ett översättningsjobb.
- Få status för ett specifikt dokument: Returnerar status för ett specifikt dokument i ett jobb enligt begäran av id- och documentID-frågeparametrarna.
- Avbryt översättning: Avbryter ett översättningsjobb som för närvarande bearbetas eller står i kö (väntar). En åtgärd avbryts inte om den redan har slutförts, misslyckats eller fortfarande avbryts.
- Få stödda format: Returnerar en lista över dokument- eller ordlistaformat som stöds av funktionen Dokumentöversättning.
Nyckellänkar:
Komma igång
Miljöer som stöds för närvarande
- LTS-versioner av Node.js
- De senaste versionerna av Safari, Chrome, Edge och Firefox.
Mer information finns i vår supportprincip.
Förutsättningar
- En prenumeration för Azure.
- En befintlig översättartjänst eller resurs för Azure AI services. Se Skapa en översättarresurs.
Installera @azure/ai-translation-document-paketet
Installera Azure Document Translation-klientbiblioteket för JavaScript mednpm:
npm install @azure/ai-translation-document
Set up Azure Blob Storage account
Batchöversättning kräver ett Azure Blob Storage-konto. För mer information om hur du skapar ett Azure Blob Storage-konto, se här. För att skapa containrar för dina käll- och målfiler, se här. Se till att godkänna åtkomst till din översättningsresurslagring, mer information här.
När "Tillåt åtkomst till lagringskontonyckel" är inaktiverat på lagringskontot, aktiveras Managed Identity på översättarresursen, och den tilldelas rollen "Storage Blob Data Contributor" på lagringskontot, då kan du använda container-URL:erna direkt och inga SAS-URI:er behöver genereras.
Autentisera klienten
Detta bibliotek exponerar två klienter:
-
DocumentTranslationClientför batchöversättning och översättningsstatusoperationer. -
SingleDocumentTranslationClientför synkron enkeldokumentöversättning.
Båda klienterna kan autentisera sig med en Microsoft Entra-inloggning eller en API-nyckel.
Att använda en Microsoft Entra-legitimation
Du kan autentisera dig med Microsoft Entra ID med en inloggningsinformation från @azure/identity-biblioteket. Installera -paketet om du vill använda @azure/identity som visas nedan eller andra leverantörer av autentiseringsuppgifter som tillhandahålls med Azure SDKs:
npm install @azure/identity
Du måste också registrera en ny Microsoft Entra-applikation och ge tillgång till Translator-resursen genom att tilldela en lämplig roll till din tjänsteansvarig.
Med Node.js och nodliknande miljöer kan du använda DefaultAzureCredential klassen för att autentisera klienten:
import { DocumentTranslationClient } from "@azure/ai-translation-document";
import { DefaultAzureCredential } from "@azure/identity";
const endpoint = "https://<translator-instance>.cognitiveservices.azure.com";
const client = new DocumentTranslationClient(endpoint, new DefaultAzureCredential());
För webbläsarmiljöer, använd från InteractiveBrowserCredential paketet @azure/identity för att autentisera sig:
import { InteractiveBrowserCredential } from "@azure/identity";
import { DocumentTranslationClient } from "@azure/ai-translation-document";
const credential = new InteractiveBrowserCredential({
tenantId: "<YOUR_TENANT_ID>",
clientId: "<YOUR_CLIENT_ID>",
});
const client = new DocumentTranslationClient("<endpoint>", credential);
Att använda en API-nyckel
Du kan också autentisera dig med resursens API-nyckel med en KeyCredential:
import { KeyCredential } from "@azure/core-auth";
import { DocumentTranslationClient } from "@azure/ai-translation-document";
const endpoint = "https://<translator-instance>.cognitiveservices.azure.com";
const credential: KeyCredential = { key: "YOUR_SUBSCRIPTION_KEY" };
const client = new DocumentTranslationClient(endpoint, credential);
JavaScript-paket
Om du vill använda det här klientbiblioteket i webbläsaren måste du först använda en bundler. Mer information om hur du gör detta finns i vår paketeringsdokumentation.
Viktiga begrepp
DocumentTranslationClient
DocumentTranslationClient är gränssnittet för asynkron batchöversättning och för att söka översättning och dokumentstatus. Batchöversättning kräver ett Azure Blob Storage-konto med containrar för din källkod och översatta dokument.
SingleDocumentTranslationClient
SingleDocumentTranslationClient är gränssnittet för synkron översättning av enskilda dokument. Det kräver inget Azure Blob Storage-konto; det översatta dokumentet returneras direkt i svaret.
Examples
Följande avsnitt innehåller flera kodutdrag som täcker huvudfunktionerna i detta klientbibliotek.
Synkron dokumentöversättning
Används för att synkront översätta ett enskilt dokument. Metoden kräver inget Azure Blob Storage-konto.
import { SingleDocumentTranslationClient } from "@azure/ai-translation-document";
import { DefaultAzureCredential } from "@azure/identity";
import { writeFile } from "node:fs/promises";
const endpoint = "https://<translator-instance>.cognitiveservices.azure.com";
const client = new SingleDocumentTranslationClient(endpoint, new DefaultAzureCredential());
const response = await client.translate("hi", {
document: {
contents: "This is a test.",
contentType: "text/html",
filename: "test-input.txt",
},
});
if (response.readableStreamBody) {
await writeFile("test-output.txt", response.readableStreamBody);
}
Batch-dokumentöversättning
Används för att köra en asynkron batchöversättningsförfrågan. Metoden kräver ett Azure Blob Storage-konto med lagringscontainrar för källan och översatta dokument. Ange käll- och målcontainer-URL:er (med SAS-tokens om det behövs) och polla tills operationen slutförs.
import { DocumentTranslationClient } from "@azure/ai-translation-document";
import { DefaultAzureCredential } from "@azure/identity";
const endpoint = "https://<translator-instance>.cognitiveservices.azure.com";
const client = new DocumentTranslationClient(endpoint, new DefaultAzureCredential());
const poller = client.startTranslation({
inputs: [
{
source: { sourceUrl: "<source container SAS URL>" },
targets: [{ targetUrl: "<target container SAS URL>", language: "fr" }],
},
],
});
const result = await poller.pollUntilDone();
console.log(`Translation status: ${result.status}`);
Få stödda format
Returnerar en lista över dokumentformat som stöds av funktionen Dokumentöversättning.
import { DocumentTranslationClient } from "@azure/ai-translation-document";
import { DefaultAzureCredential } from "@azure/identity";
const endpoint = "https://<translator-instance>.cognitiveservices.azure.com";
const client = new DocumentTranslationClient(endpoint, new DefaultAzureCredential());
const formats = await client.getSupportedFormats("Document");
for (const format of formats.value) {
console.log(format.format);
}
Felsökning
Loggar
Aktivering av loggning kan hjälpa dig att hitta användbar information om fel. Om du vill se en logg med HTTP-begäranden och svar anger du AZURE_LOG_LEVEL miljövariabeln till info. Du kan också aktivera loggning vid körning genom att anropa setLogLevel i @azure/logger:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Mer detaljerade anvisningar om hur du aktiverar loggar finns i dokument för @azure/logger-paket.
Contributing
Om du vill bidra till det här biblioteket kan du läsa bidragsguide för att lära dig mer om hur du skapar och testar koden.
Relaterade projekt
Azure SDK for JavaScript