Azure TextTranslation REST-clientbibliotheek voor JavaScript - versie 1.0.0-beta.1
Tekstvertaling is een cloudgebaseerde REST API-functie van de Translator-service die gebruikmaakt van technologie voor neurale machinevertaling om snelle en nauwkeurige bron-naar-doeltekstvertaling in realtime mogelijk te maken in alle ondersteunde talen.
De volgende methoden worden ondersteund door de functie Tekstvertaling:
Talen. Retourneert een lijst met talen die worden ondersteund door vertaal-, transliteratie- en woordenlijstzoekbewerkingen.
Vertalen. Geeft tekst in één brontaal weer naar meerdere doeltaalteksten met één aanvraag.
Transliteratie. Converteert tekens of letters van een brontaal naar de bijbehorende tekens of letters van een doeltaal.
Detecteren. Retourneert de code van de broncodetaal en een booleaanse variabele die aangeeft of de gedetecteerde taal wordt ondersteund voor tekstomzetting en transliteratie.
Opzoeken in woordenlijst. Retourneert equivalente woorden voor de bronterm in de doeltaal.
Woordenlijstvoorbeeld retourneert grammaticale structuur en contextvoorbeelden voor de bronterm en het doeltermpaar.
Vertrouw sterk op onze REST-clientdocumenten om deze bibliotheek te gebruiken
Belangrijke koppelingen:
Aan de slag
Momenteel ondersteunde omgevingen
- LTS-versies van Node.js
- Nieuwste versies van Edge, Chrome, Safar en Firefox
Vereisten
- Een bestaande Translator-service of Cognitive Services-resource.
Installeer het pakket @azure-rest/ai-translation-text
Installeer de Azure Text Translation REST-clientbibliotheek voor JavaScript met npm
:
npm install @azure-rest/ai-translation-text
Een Translator-serviceresource maken
U kunt een Translator-resource maken na Een Translator-resource maken.
Browserondersteuning
JavaScript-bundel
Als u deze clientbibliotheek in de browser wilt gebruiken, moet u eerst een bundelaar gebruiken. Raadpleeg onze documentatie voor bundeling voor meer informatie over hoe u dit doet.
De client verifiëren
Interactie met de service met behulp van de clientbibliotheek begint met het maken van een exemplaar van de klasse TextTranslationClient . U hebt een API-sleutel nodig of TokenCredential
om een clientobject te instantiëren. Zie Aanvragen verifiëren bij Translator Service voor meer informatie over verificatie met cognitieve services.
Een API-sleutel ophalen
U kunt de endpoint
, API key
en Region
ophalen van de resourcegegevens van de Cognitive Services- of Translator-service in de Azure-portal.
U kunt ook het onderstaande Azure CLI-fragment gebruiken om de API-sleutel op te halen uit de Translator-serviceresource.
az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>
TextTranslationClient
Een maken met behulp van een API-sleutel en regioreferentie
Zodra u de waarde voor de API-sleutel en Regio hebt, maakt u een TranslatorCredential
.
Met de waarde van de TranslatorCredential
kunt u de TextTranslationClient maken:
const translateCedential = new TranslatorCredential(apiKey, region);
const translationClient = TextTranslationClient(endpoint, translateCedential);
Voorbeelden
De volgende sectie bevat verschillende codefragmenten met behulp van de client
hierboven gemaakte, en behandelt de belangrijkste functies die aanwezig zijn in deze clientbibliotheek.
Ondersteunde talen ophalen
Hiermee haalt u de set talen op die momenteel wordt ondersteund door andere bewerkingen van De 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}`
);
}
}
Raadpleeg de servicedocumentatie voor een conceptuele bespreking van talen.
Translator
Geeft tekst in één brontaal weer naar meerdere doeltaalteksten met één aanvraag.
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}'.`
);
}
Raadpleeg de servicedocumentatie voor een conceptuele bespreking van vertalen.
Transcriberen
Converteert tekens of letters van een brontaal naar de bijbehorende tekens of letters van een doeltaal.
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}'.`
);
}
Raadpleeg de servicedocumentatie voor een conceptuele bespreking van transliterate.
Zin verbreken
Identificeert de plaatsing van zinsgrenzen in een stuk tekst.
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(", ")}'.`);
}
Raadpleeg de servicedocumentatie voor een conceptuele bespreking van een onderbrekingszin.
Opzoeken in woordenlijst
Retourneert equivalente woorden voor de bronterm in de doeltaal.
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}.`
);
}
Raadpleeg de servicedocumentatie voor een conceptuele bespreking van het opzoeken van woordenlijsten.
Voorbeelden in woordenlijst
Retourneert grammaticale structuur- en contextvoorbeelden voor de bronterm en het doeltermpaar.
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}'.`
);
}
Raadpleeg de servicedocumentatie voor een conceptuele bespreking van voorbeelden van woordenlijsten.
Problemen oplossen
Wanneer u met de Translator-service communiceert met behulp van de TextTranslator-clientbibliotheek, komen fouten die worden geretourneerd door de Translator-service overeen met dezelfde HTTP-statuscodes die zijn geretourneerd voor REST API-aanvragen.
Als u bijvoorbeeld een vertaalaanvraag indient zonder een doeltaal voor vertalen, wordt er een 400
fout geretourneerd met de melding 'Ongeldige aanvraag'.
U vindt de verschillende foutcodes die door de service worden geretourneerd in de servicedocumentatie.
Logboekregistratie
Het inschakelen van logboekregistratie kan helpen bij het ontdekken van nuttige informatie over fouten. Als u een logboek met HTTP-aanvragen en -antwoorden wilt zien, stelt u de AZURE_LOG_LEVEL
omgevingsvariabele in op info
. Logboekregistratie kan ook worden ingeschakeld tijdens runtime door aan te roepen setLogLevel
in de @azure/logger
:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Voor meer gedetailleerde instructies over het inschakelen van logboeken kunt u de @azure-/loggerpakketdocumenten bekijken.
Azure SDK for JavaScript