Pustaka klien Azure TextTranslation REST untuk JavaScript - versi 1.0.0-beta.1
Terjemahan teks adalah fitur REST API berbasis cloud dari layanan Penerjemah yang menggunakan teknologi terjemahan mesin neural untuk mengaktifkan terjemahan teks sumber-ke-target yang cepat dan akurat secara real time di semua bahasa yang didukung.
Metode berikut didukung oleh fitur Terjemahan Teks:
Bahasa. Mengembalikan daftar bahasa yang didukung oleh operasi Terjemahan, Transliterasi, dan Pencarian Kamus.
Terjemahkan. Merender teks bahasa sumber tunggal ke beberapa teks bahasa target dengan satu permintaan.
Transliterasi. Mengonversi karakter atau huruf dari bahasa sumber ke karakter atau huruf yang sesuai dari bahasa target.
Deteksi. Mengembalikan kode bahasa kode sumber dan variabel boolean yang menunjukkan apakah bahasa yang terdeteksi didukung untuk terjemahan dan transliterasi teks.
Pencarian kamus. Mengembalikan kata-kata yang setara untuk istilah sumber dalam bahasa target.
Contoh kamus Mengembalikan struktur tata bahasa dan contoh konteks untuk istilah pasangan sumber dan istilah target.
Harap sangat bergantung pada dokumen klien REST kami untuk menggunakan pustaka ini
Tautan utama:
Memulai
Lingkungan yang didukung saat ini
- Versi LTS dari Node.js
- Versi terbaru Edge, Chrome, Safar, dan Firefox
Prasyarat
- Layanan Penerjemah yang ada atau sumber daya Cognitive Services.
Pasang paket @azure-rest/ai-translation-text
Instal pustaka klien REST Terjemahan Teks Azure untuk JavaScript dengan npm
:
npm install @azure-rest/ai-translation-text
Membuat sumber daya layanan Penerjemah
Anda dapat membuat sumber daya Penerjemah setelah Membuat sumber daya Penerjemah.
Dukungan browser
Bundel JavaScript
Untuk menggunakan pustaka klien ini di browser, pertama-tama Anda perlu menggunakan bunder. Untuk detail tentang cara melakukan ini, silakan lihat dokumentasi bundling kami.
Mengautentikasi klien
Interaksi dengan layanan menggunakan pustaka klien dimulai dengan membuat instans kelas TextTranslationClient . Anda akan memerlukan kunci API atau TokenCredential
untuk membuat instans objek klien. Untuk informasi selengkapnya tentang mengautentikasi dengan layanan kognitif, lihat Mengautentikasi permintaan ke Layanan Penerjemah.
Mendapatkan kunci API
Anda bisa mendapatkan endpoint
, API key
dan Region
dari sumber daya Cognitive Services atau informasi sumber daya layanan Penerjemah di Portal Microsoft Azure.
Atau, gunakan cuplikan Azure CLI di bawah ini untuk mendapatkan kunci API dari sumber daya layanan Penerjemah.
az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>
TextTranslationClient
Membuat menggunakan kunci API dan kredensial Wilayah
Setelah Anda memiliki nilai untuk kunci API dan Wilayah, buat TranslatorCredential
.
Dengan nilai, TranslatorCredential
Anda dapat membuat TextTranslationClient:
const translateCedential = new TranslatorCredential(apiKey, region);
const translationClient = TextTranslationClient(endpoint, translateCedential);
Contoh
Bagian berikut menyediakan beberapa cuplikan kode menggunakan yang client
dibuat di atas, dan mencakup fitur utama yang ada di pustaka klien ini.
Dapatkan Bahasa yang Didukung
Mendapatkan sekumpulan bahasa yang saat ini didukung oleh operasi lain dari Penerjemah.
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}`
);
}
}
Silakan lihat dokumentasi layanan untuk diskusi konseptual bahasa.
Terjemahan
Merender teks bahasa sumber tunggal ke beberapa teks bahasa target dengan satu permintaan.
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}'.`
);
}
Silakan lihat dokumentasi layanan untuk diskusi konseptual terjemahan.
Transliterasi
Mengonversi karakter atau huruf dari bahasa sumber ke karakter atau huruf yang sesuai dari bahasa target.
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}'.`
);
}
Silakan merujuk ke dokumentasi layanan untuk diskusi konseptual transliterasi.
Pecahkan Kalimat
Mengidentifikasi posisi batas kalimat dalam sepotong teks.
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(", ")}'.`);
}
Silakan merujuk ke dokumentasi layanan untuk diskusi konseptual kalimat putus.
Pencarian Kamus
Mengembalikan kata-kata yang setara untuk istilah sumber dalam bahasa target.
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}.`
);
}
Silakan lihat dokumentasi layanan untuk diskusi konseptual pencarian kamus.
Contoh Kamus
Mengembalikan struktur tata bahasa dan contoh konteks untuk istilah sumber dan pasangan istilah target.
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}'.`
);
}
Silakan lihat dokumentasi layanan untuk diskusi konseptual contoh kamus.
Pemecahan Masalah
Saat Anda berinteraksi dengan Layanan Penerjemah menggunakan pustaka klien TextTranslator, kesalahan yang dikembalikan oleh layanan Penerjemah sesuai dengan kode status HTTP yang sama yang dikembalikan untuk permintaan REST API.
Misalnya, jika Anda mengirimkan permintaan terjemahan tanpa bahasa terjemahan target, kesalahan 400
dikembalikan, yang menunjukkan "Permintaan Buruk".
Anda dapat menemukan berbagai kode kesalahan yang dikembalikan oleh layanan dalam Dokumentasi Layanan.
Pencatatan
Mengaktifkan pengelogan dapat membantu menemukan informasi yang berguna tentang kegagalan. Untuk melihat log permintaan dan respons HTTP, atur variabel lingkungan AZURE_LOG_LEVEL
ke info
. Atau, pengelogan dapat diaktifkan saat runtime dengan memanggil setLogLevel
di @azure/logger
:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Untuk instruksi lebih rinci tentang cara mengaktifkan log, Anda dapat melihat dokumen paket @azure/pencatat.
Azure SDK for JavaScript