Azure Document Translation client library for JavaScript - version 1.0.0

A dokumentumfordítás az Azure AI Fordító szolgáltatás felhőalapú gépi fordítási funkciója. Több és összetett dokumentumot lehet lefordítani minden támogatott nyelven és dialektuson, miközben megőrizi az eredeti dokumentumszerkezetet és adatformátumot. A Document Translation API két fordítási folyamatot támogat:

Az aszinkron kötegelt fordítás több dokumentum és nagyméretű fájl feldolgozását támogatja. A kötegelt fordítási folyamathoz egy Azure Blob Storage-fiók szükséges, amely tárolókat biztosít a forrásdokumentumok és a lefordított dokumentumok számára.

A szinkron egyfájlos fordítás támogatja az egyfájlos fordítások feldolgozását. A fájlfordítási folyamathoz nincs szükség Azure Blob Storage-fiókra. A végső válasz tartalmazza a lefordított dokumentumot, és közvetlenül a hívó ügyfélnek adja vissza.

A következő műveleteket támogatja a Dokumentumfordítás funkció:

  • Szinkron dokumentumfordítás: Egy dokumentum szinkron fordításához használják. A metódushoz nincs szükség Azure Blob Storage-fiókra.
  • Start batch translation: Használ egy aszinkron batch fordítási kérés végrehajtására. A módszerhez egy Azure Blob Storage-fiók szükséges, amely tárolókat biztosít a forráshoz és a lefordított dokumentumokhoz.
  • Státusz kap minden fordító munkához: A felhasználó által benyújtott összes fordítási feladat státuszának lekérdezésére szolgál (az erőforráshoz kapcsolódva).
  • Státusz kérjen egy adott fordító munkához: Használták egy adott fordító munka státuszának lekérdezésére. A válasz tartalmazza a feladat általános állapotát és a feladat részeként lefordított dokumentumok állapotát.
  • Státusz minden dokumentumhoz: Használták az összes dokumentum státuszának lekérdezésére egy fordító munkában.
  • Státusz megszerzése egy adott dokumentumhoz: Visszaadja egy adott dokumentum státuszát egy munkában, ahogy az id és documentId lekérdezési paraméterek a kérésben jelezték.
  • Fordítás törlése: Lemondja egy jelenleg feldolgozás alatt álló vagy sorban álló fordító feladatot (függőben). A művelet nem lesz megszakítva, ha már befejeződött, sikertelen vagy még mindig megszakított.
  • Támogatott formátumok beszerzése: Visszaadja a dokumentum- vagy szószedet formátumok listáját, amelyeket a Dokumentumfordítás funkció támogat.

Főbb hivatkozások:

Kezdő lépések

Jelenleg támogatott környezetek

További részletekért tekintse meg támogatási szabályzatunkat.

Prerequisites

Telepítse a(z) @azure/ai-translation-document csomagot

Install the Azure Document Translation client library for JavaScript with npm:

npm install @azure/ai-translation-document

Setup up Azure Blob Storage account

A batch fordításhoz Azure Blob Storage account szükséges. További információért az Azure Blob Storage fiók létrehozásáról itt lásd. A forrás- és célfájlok konténereinek létrehozásáról itt láthatod meg. Ügyelj arra, hogy engedélyezd a fordítási erőforrás-tároló hozzáférésedet, további információ itt.

Amikor a "Allow Storage Account Key Access" le van tiltva a tárolófiókon, a Fordító erőforráson engedélyezve van a Managed Identity, és a "Storage Blob Data Contributor" szerepet kapja a tárolófiókban, így közvetlenül használhatod a konténer URL-eket, így nem kell SAS URI-kat generálni.

Az ügyfél hitelesítése

Ez a könyvtár két klienst tár fel:

  • DocumentTranslationClient Köteges fordításhoz és fordítási státuszműveletekhez.
  • SingleDocumentTranslationClient szinkron, egydokumentumos fordításhoz.

Mindkét kliens hitelesítheti a Microsoft Entra hitelesítő levelet vagy egy API kulccsal.

Microsoft Entra hitelesítő névjegyzék használata

Hitelesítést lehet Microsoft Entra ID-vel a @azure/identity könyvtár egy hitelesítési igazolványával. Az alább látható DefaultAzureCredential szolgáltató vagy az Azure SDK-hoz biztosított egyéb hitelesítő adatok szolgáltatójának használatához telepítse a @azure/identity csomagot:

npm install @azure/identity

Emellett regisztrálnod kell egy új Microsoft Entra alkalmazást is, és hozzáférést kell engedélyezned a Fordító erőforráshoz azzal, hogy megfelelő szerepet rendelsz a szolgáltatási alapnak.

Node.js és Node-szerű környezetek használatával az DefaultAzureCredential osztályt a kliens hitelesítésére használhatod:

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());

Böngészőkörnyezetekhez használd a InteractiveBrowserCredential from the @azure/identity package opciót hitelesítésre:

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);

API kulcs használata

Az erőforrás API kulcsával is autentikálhatsz egy 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-csomag

Ahhoz, hogy ezt az ügyfélkódtárat a böngészőben használhassa, először egy kötegelőt kell használnia. Ennek módjáról további információt a csomagküldő dokumentációbantalál.

főbb fogalmak

DocumentTranslationClient

DocumentTranslationClient az aszinkron kötött fordítás interfésze, valamint a fordítás és dokumentumállapot lekérdezése. A batch fordításhoz Azure Blob Storage fiók szükséges, ahol konténereket találnak a forrás- és lefordított dokumentumokhoz.

SingleDocumentTranslationClient

SingleDocumentTranslationClient a szinkron, egydokumentumos fordítás interfésze. Nem igényel Azure Blob Storage fiókot; a lefordított dokumentum közvetlenül a válaszban jelenik meg.

Examples

A következő rész több kódrészletet tartalmaz, amelyek a klienskönyvtár főbb jellemzőit fedik le.

Szinkron dokumentumfordítás

Szinkron fordításra használták egyetlen dokumentumot. A metódushoz nincs szükség Azure Blob Storage-fiókra.

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);
}

Csomagos dokumentumfordítás

Egy aszinkron batch fordítási kérés végrehajtására használták. A módszerhez egy Azure Blob Storage-fiók szükséges, amely tárolókat biztosít a forráshoz és a lefordított dokumentumokhoz. Add meg a forrás- és célkonténer URL-eket (szükség esetén SAS tokenekkel), és kérdezd a művelet befejezéséig.

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}`);

Szerezd meg a támogatott formátumokat

A dokumentumfordítás funkció által támogatott dokumentumformátumok listáját adja vissza.

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);
}

Hibaelhárítás

Fakitermelés

A naplózás engedélyezése segíthet a hibákról szóló hasznos információk feltárásában. A HTTP-kérések és válaszok naplójának megtekintéséhez állítsa a környezeti változót a AZURE_LOG_LEVEL következőre info: . Alternatívaként a naplózás futásidőben is engedélyezhető a setLogLevel hívásával a @azure/logger.

import { setLogLevel } from "@azure/logger";

setLogLevel("info");

A naplók engedélyezésére vonatkozó részletesebb útmutatásért tekintse meg a @azure/logger csomag dokumentációit.

Közreműködés

Ha hozzá szeretne járulni ehhez a kódtárhoz, olvassa el a közreműködői útmutatót, amelyből többet is megtudhat a kód összeállításáról és teszteléséről.