Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Documentvertaling is een cloudgebaseerde machinevertalingsfunctie van de Azure AI Vertaler-dienst. Je kunt meerdere en complexe documenten vertalen in alle ondersteunde talen en dialecten, terwijl je de oorspronkelijke documentstructuur en dataformaat behoudt. De documentomzettings-API ondersteunt twee vertaalprocessen:
Asynchrone batchvertaling ondersteunt de verwerking van meerdere documenten en grote bestanden. Voor het batchvertalingsproces is een Azure Blob Storage-account met opslagcontainers vereist voor uw bron- en vertaalde documenten.
Synchrone enkelvoudige bestandsvertaling ondersteunt de verwerking van enkelvoudige bestandvertalingen. Voor het proces voor bestandsvertaling is geen Azure Blob Storage-account vereist. Het uiteindelijke antwoord bevat het vertaalde document en wordt rechtstreeks naar de aanroepende client geretourneerd.
De volgende bewerkingen worden ondersteund door de Document Translation-functie:
- Synchrone documentvertaling: Wordt gebruikt om een enkel document synchroon te vertalen. Voor de methode is geen Azure Blob Storage-account vereist.
- Start batchvertaling: Gebruikt om een asynchrone batchvertalingsaanvraag uit te voeren. Voor de methode is een Azure Blob Storage-account met opslagcontainers vereist voor uw bron en vertaalde documenten.
- Bekijk de status van alle vertaalopdrachten: Gebruikt om een lijst en de status van alle vertaalopdrachten die door de gebruiker zijn ingediend (gekoppeld aan de bron) aan te vragen.
- Krijg status voor een specifieke vertaalopdracht: Wordt gebruikt om de status van een specifieke vertaalopdracht aan te vragen. Het antwoord bevat de algehele taakstatus en de status voor documenten die worden vertaald als onderdeel van die taak.
- Bekijk de status van alle documenten: Wordt gebruikt om de status van alle documenten op te vragen in een vertaalopdracht.
- Ontvang status voor een specifiek document: Geeft de status terug voor een specifiek document in een taak zoals aangegeven in het verzoek door de id- en documentId-queryparameters.
- Annuleren van vertaling: Annuleert een vertaaltaak die momenteel wordt verwerkt of in de wachtrij staat (in afwachting). Een bewerking wordt niet geannuleerd als deze al is voltooid, mislukt of nog steeds wordt geannuleerd.
- Ondersteunde formaten krijgen: Geeft een lijst terug van document- of glossariumformaten die worden ondersteund door de Document Translation-functie.
Sleutelkoppelingen:
Aan de slag
Momenteel ondersteunde omgevingen
- LTS-versies van Node.js
- Nieuwste versies van Safari, Chrome, Edge en Firefox.
Zie ons ondersteuningsbeleid voor meer informatie.
Prerequisites
- Een Azure-abonnement.
- Een bestaande vertaaldienst of Azure AI-services-resource. Zie Bron voor Vertaler Aanmaken.
Het @azure/ai-translation-document-pakket installeren
Installeer de Azure Document Translation clientbibliotheek voor JavaScript met npm:
npm install @azure/ai-translation-document
Set up Azure Blob Storage account
Batchvertaling vereist een Azure Blob Storage-account. Voor meer informatie over het aanmaken van een Azure Blob Storage-account, zie hier. Voor het maken van containers voor je bron- en doelbestanden, zie hier. Zorg ervoor dat je toegang tot de opslag van vertaalbronnen autoriseert, meer informatie hier.
Wanneer "Toestaan Toegang tot Storage Account Key" is uitgeschakeld op het opslagaccount, wordt Managed Identity ingeschakeld op de Translator-resource en krijgt deze de rol "Storage Blob Data Contributor" toegewezen op het storageaccount, dan kun je de container-URL's direct gebruiken en hoeven er geen SAS URIs te worden gegenereerd.
De client verifiëren
Deze bibliotheek biedt twee clients aan:
-
DocumentTranslationClientvoor batchvertaling en vertaalstatusoperaties. -
SingleDocumentTranslationClientvoor synchrone vertaling van één enkel document.
Beide clients kunnen authenticeren met een Microsoft Entra-credential of een API-sleutel.
Gebruik van een Microsoft Entra-credential
Je kunt authenticeren met Microsoft Entra ID met een inloggegevens uit de @azure/identity-bibliotheek. Als u de DefaultAzureCredential- provider wilt gebruiken die hieronder wordt weergegeven, of andere referentieproviders die zijn opgegeven bij de Azure SDK, installeert u het @azure/identity-pakket:
npm install @azure/identity
Je moet ook een nieuwe Microsoft Entra-applicatie registreren en toegang verlenen tot de Vertalerbron door een geschikte rol toe te wijzen aan je diensthoofd.
Met Node.js en Node-achtige omgevingen kun je de DefaultAzureCredential klasse gebruiken om de client te authenticeren:
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());
Voor browseromgevingen gebruik je de InteractiveBrowserCredential from the @azure/identity package om te authenticeren:
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);
Gebruik van een API-sleutel
Je kunt ook authenticeren met de API-sleutel van de bron met behulp van :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-bundel
Als u deze clientbibliotheek in de browser wilt gebruiken, moet u eerst een bundelaar gebruiken. Raadpleeg onze bundeldocumentatievoor meer informatie over hoe u dit doet.
belangrijke concepten
DocumentTranslationClient
DocumentTranslationClient is de interface voor asynchrone batchvertaling en voor het opvragen van vertaling en documentstatus. Batchvertaling vereist een Azure Blob Storage-account met containers voor je bron- en vertaalde documenten.
SingleDocumentTranslationClient
SingleDocumentTranslationClient is de interface voor synchrone vertaling van één document. Het vereist geen Azure Blob Storage-account; het vertaalde document wordt direct teruggegeven in het antwoord.
Examples
De volgende sectie bevat verschillende codefragmenten die de belangrijkste kenmerken van deze clientbibliotheek behandelen.
Synchrone documentvertaling
Gebruikt om een enkel document synchroon te vertalen. Voor de methode is geen Azure Blob Storage-account vereist.
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);
}
Batchvertaling van documenten
Gebruikt om een asynchrone batchvertalingsaanvraag uit te voeren. Voor de methode is een Azure Blob Storage-account met opslagcontainers vereist voor uw bron en vertaalde documenten. Verskaf de bron- en doelcontainer-URL's (indien nodig met SAS-tokens) en poll totdat de operatie is voltooid.
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}`);
Krijg ondersteunde formaten
Geeft een lijst terug van documentformaten die worden ondersteund door de Document Translation-functie.
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);
}
Troubleshooting
Loggen
Het inschakelen van logboekregistratie kan helpen nuttige informatie over fouten te ontdekken. Als u een logboek met HTTP-aanvragen en -antwoorden wilt zien, stelt u de omgevingsvariabele AZURE_LOG_LEVEL in op info. U kunt logboekregistratie ook tijdens runtime inschakelen door setLogLevel aan te roepen in de @azure/logger:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Voor meer gedetailleerde instructies over het inschakelen van logboeken, kunt u de @azure/logger pakketdocumentenbekijken.
Bijdragen
Als u een bijdrage wilt leveren aan deze bibliotheek, leest u de gids voor bijdragen voor meer informatie over het bouwen en testen van de code.
Verwante projecten
Azure SDK for JavaScript