Udostępnij przez


Azure TextTranslation REST biblioteka klienta dla JavaScript - wersja 2.0.0-beta.1

Tłumaczenie tekstu Azure to chmurowe API REST udostępniane przez usługę Azure Translator. Wykorzystuje technologię neuronowego tłumaczenia maszynowego, aby dostarczać precyzyjne, kontekstowo istotne i semantycznie dokładne tłumaczenia tekstu w czasie rzeczywistym we wszystkich obsługiwanych językach.

Biblioteka klienta oferuje kilka kluczowych funkcji:

  • Pobierz listę języków obsługiwanych do operacji tłumaczenia i transliteracji, a także modele LLM dostępne dla tłumaczeń.

  • Wykonaj deterministyczne tłumaczenie tekstu z określonego języka źródłowego na język docelowy, z konfigurowalnymi parametrami zapewniającymi precyzję i zachowanie integralności kontekstowej.

  • Wykonaj transliterację, konwertując tekst z oryginalnego pisma na alternatywną reprezentację pisma.

  • Wykorzystaj modele LLM do tworzenia wariantów wyjściowych tłumaczeń, które są specyficzne dla tonu i uwzględniają płeć.

w dużym stopniu polegaj na naszych dokumentacji klienta REST do korzystania z tej biblioteki

Kluczowe linki:

Wprowadzenie

Obecnie obsługiwane środowiska

  • Wersje LTS Node.js
  • Najnowsze wersje Edge, Chrome, Safar i Firefox

Wymagania wstępne

  • Istniejąca usługa tłumacza lub zasób usług kognitywnych.

Instalowanie pakietu @azure-rest/ai-translation-text

Zainstaluj bibliotekę klienta REST Azure Text Translation dla JavaScript z :npm

npm install @azure-rest/ai-translation-text

Stwórz zasób usługi translator

Możesz stworzyć zasób tłumacza po zasobie Utwórz tłumacza.

Obsługa przeglądarek

Pakiet JavaScript

Aby użyć tej biblioteki klienta w przeglądarce, najpierw należy użyć pakietu. Aby uzyskać szczegółowe informacje o tym, jak to zrobić, zapoznaj się z naszą dokumentacją dotyczącą tworzenia pakietów .

Uwierzytelnianie klienta

Interakcja z usługą za pomocą biblioteki klienta zaczyna się od utworzenia instancji klasy TextTranslationClient . Będziesz potrzebować klucza API lub TokenCredential do instancji obiektu klienta. Więcej informacji na temat uwierzytelniania za pomocą usług kognitywnych można znaleźć w artykule Authenticate requests to Translator Service.

Pobierz klucz interfejsu API

Możesz pobrać endpointinformacje API keyRegion o zasobach usług kognitywnych lub translator w Azure Portal.

Alternatywnie, użyj fragmentu Azure CLI poniżej, aby pobrać klucz API z zasobu usługi Translator.

az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>

Stwórz klucz TextTranslationClient API i dane dane do regionu

Gdy już masz wartość klucza API i regionu, stwórz .TranslatorCredential

Dzięki wartości możesz TranslatorCredential stworzyć TextTranslationClient:

import TextTranslationClient, { TranslatorCredential } from "@azure-rest/ai-translation-text";

const endpoint = "https://api.cognitive.microsofttranslator.com";
const key = "YOUR_SUBSCRIPTION_KEY";
const region = "westus";
const credential: TranslatorCredential = {
  key,
  region,
};
const translationClient = TextTranslationClient(endpoint, credential);

Przykłady

Poniższa sekcja zawiera kilka fragmentów kodu wykorzystujących powyższe elementyclient i obejmuje główne funkcje obecne w tej bibliotece klienckiej.

Uzyskiwanie obsługiwanych języków

Pobiera zestaw języków obsługiwanych obecnie przez inne operacje usługi Translator.

import TextTranslationClient, {
  TranslatorCredential,
  isUnexpected,
} from "@azure-rest/ai-translation-text";

const endpoint = "https://api.cognitive.microsofttranslator.com";
const key = "YOUR_SUBSCRIPTION_KEY";
const region = "westus";
const credential: TranslatorCredential = {
  key,
  region,
};
const translationClient = TextTranslationClient(endpoint, credential);

const langResponse = await translationClient.path("/languages").get();

if (isUnexpected(langResponse)) {
  throw langResponse.body.error;
}

const languages = langResponse.body;

if (languages.translation) {
  console.log("Translated languages:");
  for (const [key, translationLanguage] of Object.entries(languages.translation)) {
    console.log(`${key} -- name: ${translationLanguage.name} (${translationLanguage.nativeName})`);
  }
}

if (languages.transliteration) {
  console.log("Transliteration languages:");
  for (const [key, transliterationLanguage] of Object.entries(languages.transliteration)) {
    console.log(
      `${key} -- name: ${transliterationLanguage.name} (${transliterationLanguage.nativeName})`,
    );
  }
}

if (languages.models) {
  console.log("Available LLM Models:");
  for (const model in languages.models) {
    console.log(model);
  }
}

Prosimy o zapoznanie się z dokumentacją serwisową, aby omówić języki koncepcyjne.

Translate

Renderuje pojedynczy tekst w języku źródłowym do wielu tekstów w języku docelowym z jednym żądaniem.

import TextTranslationClient, {
  TranslatorCredential,
  isUnexpected,
} from "@azure-rest/ai-translation-text";

const endpoint = "https://api.cognitive.microsofttranslator.com";
const key = "YOUR_SUBSCRIPTION_KEY";
const region = "westus";
const credential: TranslatorCredential = {
  key,
  region,
};
const translationClient = TextTranslationClient(endpoint, credential);

const input = {
  text: "This is a test.",
  targets: [{ language: "cs" }],
  language: "en",
};
const translateResponse = await translationClient.path("/translate").post({
  body: { inputs: [input] },
});

if (isUnexpected(translateResponse)) {
  throw translateResponse.body.error;
}

const translations = translateResponse.body.value;
for (const translation of translations) {
  console.log(
    `Text was translated to: '${translation?.translations[0]?.language}' and the result is: '${translation?.translations[0]?.text}'.`,
  );
}

Prosimy o zapoznanie się z dokumentacją serwisową, aby omówić koncepcję tłumaczenia.

Transliterate

Konwertuje znaki lub litery języka źródłowego na odpowiednie znaki lub litery języka docelowego.

import TextTranslationClient, {
  TranslatorCredential,
  isUnexpected,
} from "@azure-rest/ai-translation-text";

const endpoint = "https://api.cognitive.microsofttranslator.com";
const key = "YOUR_SUBSCRIPTION_KEY";
const region = "westus";
const credential: TranslatorCredential = {
  key,
  region,
};
const translationClient = TextTranslationClient(endpoint, credential);

const inputText = [{ text: "这是个测试。" }];
const parameters = {
  language: "zh-Hans",
  fromScript: "Hans",
  toScript: "Latn",
};
const transliterateResponse = await translationClient.path("/transliterate").post({
  body: { inputs: inputText },
  queryParameters: parameters,
});

if (isUnexpected(transliterateResponse)) {
  throw transliterateResponse.body.error;
}

const transliterations = transliterateResponse.body.value;
for (const transliteration of transliterations) {
  console.log(
    `Input text was transliterated to '${transliteration?.script}' script. Transliterated text: '${transliteration?.text}'.`,
  );
}

Prosimy o zapoznanie się z dokumentacją usługową w celu omówienia konceptualnego transliteracji.

Rozwiązywanie problemów

Podczas interakcji z usługą Translator za pomocą biblioteki klienta TextTranslator, błędy zwracane przez usługę Translator odpowiadają tym samym kodom statusu HTTP zwróconym dla żądań REST API.

Na przykład, jeśli zgłosisz prośbę o tłumaczenie bez docelowego języka tłumacza, 400 zwracany jest błąd oznaczający "Złe żądanie".

Przemysł drzewny

Włączenie rejestrowania może pomóc odkryć przydatne informacje o błędach. Aby wyświetlić dziennik żądań i odpowiedzi HTTP, ustaw zmienną środowiskową AZURE_LOG_LEVEL na info. Alternatywnie rejestrowanie można włączyć w czasie wykonywania, wywołując setLogLevel w @azure/logger:

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

setLogLevel("info");

Aby uzyskać bardziej szczegółowe instrukcje dotyczące włączania dzienników, zapoznaj się z dokumentami dotyczącymi pakietów @azure/rejestratora.