Biblioteka klienta REST usługi Azure TextTranslation dla języka JavaScript — wersja 1.0.0
Tłumaczenie tekstu to oparta na chmurze funkcja interfejsu API REST usługi Translator, która korzysta z technologii neuronowego tłumaczenia maszynowego w celu umożliwienia szybkiego i dokładnego tłumaczenia tekstu źródłowego do docelowego w czasie rzeczywistym we wszystkich obsługiwanych językach.
Następujące metody są obsługiwane przez funkcję tłumaczenia tekstu:
Języki. Zwraca listę języków obsługiwanych przez operacje wyszukiwania transliteracji, transliteracji i słownika.
Przetłumacz. Renderuje pojedynczy tekst w języku źródłowym do wielu tekstów w języku docelowym z jednym żądaniem.
Transliteracja. Konwertuje znaki lub litery języka źródłowego na odpowiednie znaki lub litery języka docelowego.
Wykrywanie. Zwraca kod języka kodu źródłowego i zmienną logiczną wskazującą, czy wykryty język jest obsługiwany do tłumaczenia tekstu i transliteracji.
Odnośnik słownika. Zwraca równoważne wyrazy dla terminu źródłowego w języku docelowym.
Przykład słownika zwraca strukturę gramatyczną i przykłady kontekstu dla pary terminów źródłowych i docelowych terminów.
Skorzystaj z tej biblioteki w dużej mierze na naszych dokumentach klienta REST
Kluczowe linki:
Wprowadzenie
Obecnie obsługiwane środowiska
- Wersje ltS Node.js
- Najnowsze wersje przeglądarki Edge, Chrome, Safar i Firefox
Wymagania wstępne
- Istniejący zasób usługi Translator lub usług Cognitive Services.
Instalowanie pakietu @azure-rest/ai-translation-text
Zainstaluj bibliotekę klienta REST tłumaczenia tekstu platformy Azure dla języka JavaScript przy użyciu polecenia npm
:
npm install @azure-rest/ai-translation-text
Tworzenie zasobu usługi Translator
Zasób usługi Translator można utworzyć po utworzeniu zasobu usługi Translator.
Obsługa przeglądarki
Pakiet JavaScript
Aby użyć tej biblioteki klienta w przeglądarce, najpierw musisz użyć pakietu. Aby uzyskać szczegółowe informacje na temat tego, jak to zrobić, zapoznaj się z naszą dokumentacją dotyczącą tworzenia pakietów.
Uwierzytelnianie klienta
Interakcja z usługą przy użyciu biblioteki klienta rozpoczyna się od utworzenia wystąpienia klasy TextTranslationClient . Potrzebny będzie klucz interfejsu API lub TokenCredential
wystąpienie obiektu klienta. Aby uzyskać więcej informacji na temat uwierzytelniania za pomocą usług Cognitive Services, zobacz Uwierzytelnianie żądań w usłudze Translator.
Uzyskiwanie klucza interfejsu API
Informacje o zasobie usług Cognitive Services lub usłudze Translator można uzyskać endpoint
API key
Region
w witrynie Azure Portal.
Możesz też użyć poniższego fragmentu kodu interfejsu wiersza polecenia platformy Azure , aby uzyskać klucz interfejsu API z zasobu usługi Translator.
az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>
TextTranslationClient
Tworzenie przy użyciu klucza interfejsu API i poświadczeń regionu
Po utworzeniu wartości klucza interfejsu API i regionu utwórz element TranslatorCredential
.
Za pomocą wartości TranslatorCredential
elementu można utworzyć element TextTranslationClient:
const translateCedential = new TranslatorCredential(apiKey, region);
const translationClient = TextTranslationClient(endpoint, translateCedential);
Przykłady
W poniższej sekcji przedstawiono kilka fragmentów kodu utworzonych client
powyżej i omówiono główne funkcje obecne w tej bibliotece klienta.
Uzyskiwanie obsługiwanych języków
Pobiera zestaw języków obsługiwanych obecnie przez inne operacje w usłudze Translator.
const langResponse = await translationClient.path("/languages").get();
if (isUnexpected(langResponse)) {
throw langResponse.body;
}
const languages = langResponse.body;
if (languages.translation) {
console.log("Translated languages:");
for (const key in languages.translation) {
const translationLanguage = languages.translation[key];
console.log(`${key} -- name: ${translationLanguage.name} (${translationLanguage.nativeName})`);
}
}
if (languages.transliteration) {
console.log("Transliteration languages:");
for (const key in languages.transliteration) {
const transliterationLanguage = languages.transliteration[key];
console.log(
`${key} -- name: ${transliterationLanguage.name} (${transliterationLanguage.nativeName})`
);
}
}
if (languages.dictionary) {
console.log("Dictionary languages:");
for (const key in languages.dictionary) {
const dictionaryLanguage = languages.dictionary[key];
console.log(
`${key} -- name: ${dictionaryLanguage.name} (${dictionaryLanguage.nativeName}), supported target languages count: ${dictionaryLanguage.translations.length}`
);
}
}
Zapoznaj się z dokumentacją usługi, aby zapoznać się z koncepcyjną dyskusją na temat języków.
Tłumaczenie
Renderuje pojedynczy tekst w języku źródłowym do wielu tekstów w języku docelowym z jednym żądaniem.
const inputText = [{ text: "This is a test." }];
const parameters = {
to: "cs",
from: "en",
};
const translateResponse = await translationClient.path("/translate").post({
body: inputText,
queryParameters: parameters,
});
if (isUnexpected(translateResponse)) {
throw translateResponse.body;
}
const translations = translateResponse.body;
for (const translation of translations) {
console.log(
`Text was translated to: '${translation?.translations[0]?.to}' and the result is: '${translation?.translations[0]?.text}'.`
);
}
Zapoznaj się z dokumentacją usługi, aby zapoznać się z koncepcyjną dyskusją na temat tłumaczenia.
Transliteracja
Konwertuje znaki lub litery języka źródłowego na odpowiednie znaki lub litery języka docelowego.
const inputText = [{ text: "这是个测试。" }];
const parameters = {
language: "zh-Hans",
fromScript: "Hans",
toScript: "Latn",
};
const transliterateResponse = await translationClient.path("/transliterate").post({
body: inputText,
queryParameters: parameters,
});
if (isUnexpected(transliterateResponse)) {
throw transliterateResponse.body;
}
const translations = transliterateResponse.body;
for (const transliteration of translations) {
console.log(
`Input text was transliterated to '${transliteration?.script}' script. Transliterated text: '${transliteration?.text}'.`
);
}
Zapoznaj się z dokumentacją usługi, aby zapoznać się z koncepcyjnym omówieniem transliteracji.
Podział zdania
Określa położenie granic zdań w kawałku tekstu.
const inputText = [{ text: "zhè shì gè cè shì。" }];
const parameters = {
language: "zh-Hans",
script: "Latn",
};
const breakSentenceResponse = await translationClient.path("/breaksentence").post({
body: inputText,
queryParameters: parameters,
});
if (isUnexpected(breakSentenceResponse)) {
throw breakSentenceResponse.body;
}
const breakSentences = breakSentenceResponse.body;
for (const breakSentence of breakSentences) {
console.log(`The detected sentece boundaries: '${breakSentence?.sentLen.join(", ")}'.`);
}
Zapoznaj się z dokumentacją usługi, aby zapoznać się z koncepcyjnym omówieniem zdania przerwania.
Wyszukiwanie w słowniku
Zwraca równoważne wyrazy dla terminu źródłowego w języku docelowym.
const inputText = [{ text: "fly" }];
const parameters = {
to: "es",
from: "en",
};
const dictionaryResponse = await translationClient.path("/dictionary/lookup").post({
body: inputText,
queryParameters: parameters,
});
if (isUnexpected(dictionaryResponse)) {
throw dictionaryResponse.body;
}
const dictionaryEntries = dictionaryResponse.body;
for (const dictionaryEntry of dictionaryEntries) {
console.log(
`For the given input ${dictionaryEntry?.translations?.length} entries were found in the dictionary.`
);
console.log(
`First entry: '${dictionaryEntry?.translations[0]?.displayTarget}', confidence: ${dictionaryEntry?.translations[0]?.confidence}.`
);
}
Zapoznaj się z dokumentacją usługi, aby zapoznać się z koncepcyjnym omówieniem wyszukiwania słownika.
Przykłady słowników
Zwraca gramatyczną strukturę i przykłady kontekstu dla pary terminów źródłowych i terminów docelowych.
const inputText = [{ text: "fly", translation: "volar" }];
const parameters = {
to: "es",
from: "en",
};
const dictionaryResponse = await translationClient.path("/dictionary/examples").post({
body: inputText,
queryParameters: parameters,
});
if (isUnexpected(dictionaryResponse)) {
throw dictionaryResponse.body;
}
const dictionaryExamples = dictionaryResponse.body;
for (const dictionaryExample of dictionaryExamples) {
console.log(
`For the given input ${dictionaryExample?.examples?.length} examples were found in the dictionary.`
);
const firstExample = dictionaryExample?.examples[0];
console.log(
`Example: '${firstExample.targetPrefix + firstExample.targetTerm + firstExample.targetSuffix}'.`
);
}
Zapoznaj się z dokumentacją usługi, aby zapoznać się z koncepcyjnym omówieniem przykładów słownika.
Rozwiązywanie problemów
W przypadku interakcji z usługą Translator przy użyciu biblioteki klienta TextTranslator błędy zwrócone przez usługę Translator odpowiadają tym samym kodom stanu HTTP zwróconym dla żądań interfejsu API REST.
Jeśli na przykład przesyłasz żądanie tłumaczenia bez docelowego języka tłumaczenia, 400
zwracany jest błąd wskazujący "Nieprawidłowe żądanie".
W dokumentacji usługi można znaleźć różne kody błędów zwrócone przez usługę.
Rejestrowanie
Włączenie rejestrowania może pomóc odkryć przydatne informacje o błędach. Aby wyświetlić dziennik żądań HTTP i odpowiedzi, ustaw zmienną AZURE_LOG_LEVEL
środowiskową na info
. Możesz też włączyć rejestrowanie w czasie wykonywania, wywołując polecenie w elemecie setLogLevel
@azure/logger
:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Aby uzyskać bardziej szczegółowe instrukcje dotyczące włączania dzienników, zapoznaj się z dokumentami dotyczącymi pakietu @azure/rejestratora.
Azure SDK for JavaScript