Próbálja ki az Azure AI Translator legújabb verzióját. Ebben a rövid útmutatóban ismerkedjen meg a Translator szolgáltatással a szöveg lefordításához egy tetszőleges programozási nyelv vagy a REST API használatával. Ebben a projektben az ingyenes tarifacsomag (F0) használatát javasoljuk, miközben elsajátítja a technológiát, és később egy fizetős szintre frissít éles környezetben.
Aktív Azure-előfizetésre van szüksége. Ha nem rendelkezik Azure-előfizetéssel, ingyenesen létrehozhat egyet.
A Translator szolgáltatás alapvető művelete a szöveg fordítása. Ebben a rövid útmutatóban létrehozhat egy kérést egy tetszőleges programozási nyelv használatával, amely egyetlen forrást (from
) vesz igénybe, és két kimenetet (to
) biztosít. Ezután áttekintünk néhány paramétert, amelyek a kérés és a válasz módosítására is használhatók.
A Visual Studio-projekt beállítása
Győződjön meg arról, hogy a Visual Studio IDE aktuális verziójával rendelkezik.
Tipp.
Ha még nem ismerkedik a Visual Studióval, próbálja ki a Visual Studio Learn bevezetési modulját.
Nyissa meg a Visual Studiót.
A kezdőlapon válassza az Új projekt létrehozása lehetőséget.
Az Új projekt létrehozása lapon adja meg a konzolt a keresőmezőbe. Válassza ki a konzolalkalmazás-sablont, majd válassza a Tovább gombot.
Az új projekt konfigurálása párbeszédpanelen írja be translator_quickstart
a Projekt neve mezőbe. Hagyja bejelölve a "Megoldás és projekt elhelyezése ugyanabban a könyvtárban" jelölőnégyzetet , és válassza a Tovább gombot.
A További információ párbeszédpanelen győződjön meg arról, hogy a .NET 6.0 (hosszú távú támogatás) ki van jelölve. Hagyja bejelölve a "Ne használjon legfelső szintű utasításokat" jelölőnégyzetet, és válassza a Létrehozás lehetőséget.
A Newtonsoft.json csomag telepítése a NuGettel
Kattintson a jobb gombbal a translator_quickstart projektre, és válassza a NuGet-csomagok kezelése... lehetőséget.
Válassza a Tallózás lapot, és írja be a Newtonsoft.json.
Ha hozzá szeretné adni a csomagot a projekthez, válassza a telepítést a megfelelő csomagkezelő ablakból.
C#-alkalmazás létrehozása
Feljegyzés
- A .NET 6-tól kezdve a
console
sablont használó új projektek új programstílust hoznak létre, amely eltér a korábbi verzióktól.
- Az új kimenet a legutóbbi C#-funkciókat használja, amelyek leegyszerűsítik az írandó kódot.
- Az újabb verzió használatakor csak a metódus törzsét
Main
kell megírnia. Nem kell felső szintű utasításokat, globális irányelveket vagy implicit irányelveket használnia.
- További információ: Új C#-sablonok legfelső szintű utasítások létrehozása.
Nyissa meg a Program.cs fájlt.
Törölje a már meglévő kódot, beleértve a sort Console.WriteLine("Hello World!")
is. Másolja és illessze be a kódmintát az alkalmazás Program.cs fájljába. Győződjön meg arról, hogy frissíti a kulcsváltozót az Azure Portal Translator-példány értékével:
using System.Text;
using Newtonsoft.Json;
class Program
{
private static readonly string key = "<your-translator-key>";
private static readonly string endpoint = "https://api.cognitive.microsofttranslator.com";
// location, also known as region.
// required if you're using a multi-service or regional (not global) resource. It can be found in the Azure portal on the Keys and Endpoint page.
private static readonly string location = "<YOUR-RESOURCE-LOCATION>";
static async Task Main(string[] args)
{
// Input and output languages are defined as parameters.
string route = "/translate?api-version=3.0&from=en&to=fr&to=zu";
string textToTranslate = "I would really like to drive your car around the block a few times!";
object[] body = new object[] { new { Text = textToTranslate } };
var requestBody = JsonConvert.SerializeObject(body);
using (var client = new HttpClient())
using (var request = new HttpRequestMessage())
{
// Build the request.
request.Method = HttpMethod.Post;
request.RequestUri = new Uri(endpoint + route);
request.Content = new StringContent(requestBody, Encoding.UTF8, "application/json");
request.Headers.Add("Ocp-Apim-Subscription-Key", key);
// location required if you're using a multi-service or regional (not global) resource.
request.Headers.Add("Ocp-Apim-Subscription-Region", location);
// Send the request and get response.
HttpResponseMessage response = await client.SendAsync(request).ConfigureAwait(false);
// Read response as a string.
string result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
}
A C#-alkalmazás futtatása
Miután hozzáadott egy kódmintát az alkalmazáshoz, válassza a zöld start gombot a formRecognizer_quickstart mellett a program létrehozásához és futtatásához, vagy nyomja le az F5 billentyűt.
Fordítás kimenete:
Sikeres hívás után a következő választ kell látnia:
[
{
"detectedLanguage": {
"language": "en",
"score": 1.0
},
"translations": [
{
"text": "J'aimerais vraiment conduire votre voiture autour du pâté de maisons plusieurs fois!",
"to": "fr"
},
{
"text": "Ngingathanda ngempela ukushayela imoto yakho endaweni evimbelayo izikhathi ezimbalwa!",
"to": "zu"
}
]
}
]
A Go-környezet beállítása
Go-alkalmazások írásához bármilyen szövegszerkesztőt használhat. Javasoljuk, hogy a Visual Studio Code és a Go bővítmény legújabb verzióját használja.
Tipp.
Ha még nem kezdte el a Go-t, próbálja ki a Go Learn első lépései modult.
Győződjön meg arról, hogy a Go legújabb verziója telepítve van:
Töltse le az operációs rendszer Go verzióját.
A letöltés befejezése után futtassa a telepítőt.
Nyisson meg egy parancssort, és írja be a következőket a Go telepítésének megerősítéséhez:
go version
Go-alkalmazás létrehozása
Egy konzolablakban (például a parancsmagban, a PowerShellben vagy a Bashben) hozzon létre egy új könyvtárat a translator-app nevű alkalmazáshoz, és lépjen rá.
Hozzon létre egy új, translation.go nevű GO-fájlt a translator-app könyvtárból.
Másolja és illessze be a megadott kódmintát a translation.go fájlba. Győződjön meg arról, hogy frissíti a kulcsváltozót az Azure Portal Translator-példány értékével:
package main
import (
"bytes"
"encoding/json"
"fmt"
"log"
"net/http"
"net/url"
)
func main() {
key := "<YOUR-TRANSLATOR-KEY>"
endpoint := "https://api.cognitive.microsofttranslator.com/"
uri := endpoint + "/translate?api-version=3.0"
// location, also known as region.
// required if you're using a multi-service or regional (not global) resource. It can be found in the Azure portal on the Keys and Endpoint page.
location := "<YOUR-RESOURCE-LOCATION>"
// Build the request URL. See: https://go.dev/pkg/net/url/#example_URL_Parse
u, _ := url.Parse(uri)
q := u.Query()
q.Add("from", "en")
q.Add("to", "fr")
q.Add("to", "zu")
u.RawQuery = q.Encode()
// Create an anonymous struct for your request body and encode it to JSON
body := []struct {
Text string
}{
{Text: "I would really like to drive your car around the block a few times."},
}
b, _ := json.Marshal(body)
// Build the HTTP POST request
req, err := http.NewRequest("POST", u.String(), bytes.NewBuffer(b))
if err != nil {
log.Fatal(err)
}
// Add required headers to the request
req.Header.Add("Ocp-Apim-Subscription-Key", key)
// location required if you're using a multi-service or regional (not global) resource.
req.Header.Add("Ocp-Apim-Subscription-Region", location)
req.Header.Add("Content-Type", "application/json")
// Call the Translator API
res, err := http.DefaultClient.Do(req)
if err != nil {
log.Fatal(err)
}
// Decode the JSON response
var result interface{}
if err := json.NewDecoder(res.Body).Decode(&result); err != nil {
log.Fatal(err)
}
// Format and print the response to terminal
prettyJSON, _ := json.MarshalIndent(result, "", " ")
fmt.Printf("%s\n", prettyJSON)
}
A Go-alkalmazás futtatása
Miután hozzáadott egy kódmintát az alkalmazáshoz, a Go-program végrehajtható egy parancssorban vagy egy parancssorban. Győződjön meg arról, hogy a parancssor elérési útja a Translator-App mappára van állítva, és használja a következő parancsot:
go run translation.go
Fordítás kimenete:
Sikeres hívás után a következő választ kell látnia:
[
{
"detectedLanguage": {
"language": "en",
"score": 1.0
},
"translations": [
{
"text": "J'aimerais vraiment conduire votre voiture autour du pâté de maisons plusieurs fois!",
"to": "fr"
},
{
"text": "Ngingathanda ngempela ukushayela imoto yakho endaweni evimbelayo izikhathi ezimbalwa!",
"to": "zu"
}
]
}
]
A Java-környezet beállítása
A Visual Studio Code vagy az előnyben részesített IDE legújabb verziójával kell rendelkeznie. Lásd a Java-t a Visual Studio Code-ban.
Tipp.
- A Visual Studio Code a Java kódolási csomagját kínálja Windowshoz és macOS-hez. A kódolási csomag a VS Code, a Java Fejlesztői Készlet (JDK) és a Microsoft által javasolt bővítmények gyűjteménye. A kódolási csomag egy meglévő fejlesztési környezet javításához is használható.
- Ha a VS Code-ot és a Java kódolási csomagját használja, telepítse a Gradle for Java bővítményt.
Ha nem a Visual Studio Code-ot használja, győződjön meg arról, hogy telepítve van a következő a fejlesztői környezetben:
Új Gradle-projekt létrehozása
A konzolablakban (például parancsmag, PowerShell vagy Bash) hozzon létre egy új könyvtárat az alkalmazáshoz, amelyet translator-text-appnak hívnak, és keresse meg.
mkdir translator-text-app && translator-text-app
mkdir translator-text-app; cd translator-text-app
Futtassa a gradle init
parancsot a translator-text-app könyvtárból. Ez a parancs alapvető buildfájlokat hoz létre a Gradle számára, beleértve a build.gradle.kts fájlt is, amelyet futásidőben használnak az alkalmazás létrehozásához és konfigurálásához.
gradle init --type basic
Amikor a rendszer kéri, hogy válasszon egy DSL-t, válassza a Kotlin lehetőséget.
Fogadja el az alapértelmezett projektnevet (translator-text-app) a Return vagy az Enter billentyűkombinációval.
Frissítsen build.gradle.kts
a következő kóddal:
plugins {
java
application
}
application {
mainClass.set("TranslatorText")
}
repositories {
mavenCentral()
}
dependencies {
implementation("com.squareup.okhttp3:okhttp:4.10.0")
implementation("com.google.code.gson:gson:2.9.0")
}
Java-alkalmazás létrehozása
Futtassa a következő parancsot a translator-text-app könyvtárban:
mkdir -p src/main/java
A következő könyvtárstruktúrát hozza létre:
Lépjen a java
könyvtárra, és hozzon létre egy fájlt.TranslatorText.java
Tipp.
Új fájlt a PowerShell használatával hozhat létre.
Nyisson meg egy PowerShell-ablakot a projektkönyvtárban a Shift billentyűt lenyomva tartva kattintson a jobb gombbal a mappára.
Írja be a következő parancsot : New-Item TranslatorText.java.
Létrehozhat egy új fájlt is a névvel ellátott TranslatorText.java
IDE-ben, és mentheti azt a java
könyvtárba.
Nyissa meg a fájlt az TranslatorText.java
IDE-ben, és másolja ki, majd illessze be a következő kódmintát az alkalmazásba. Győződjön meg arról, hogy frissíti a kulcsot az Azure Portal Translator-példány egyik kulcsértékével:
import java.io.IOException;
import com.google.gson.*;
import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
public class TranslatorText {
private static String key = "<your-translator-key";
// location, also known as region.
// required if you're using a multi-service or regional (not global) resource. It can be found in the Azure portal on the Keys and Endpoint page.
private static String location = "<YOUR-RESOURCE-LOCATION>";
// Instantiates the OkHttpClient.
OkHttpClient client = new OkHttpClient();
// This function performs a POST request.
public String Post() throws IOException {
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType,
"[{\"Text\": \"I would really like to drive your car around the block a few times!\"}]");
Request request = new Request.Builder()
.url("https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=fr&to=zu")
.post(body)
.addHeader("Ocp-Apim-Subscription-Key", key)
// location required if you're using a multi-service or regional (not global) resource.
.addHeader("Ocp-Apim-Subscription-Region", location)
.addHeader("Content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
return response.body().string();
}
// This function prettifies the json response.
public static String prettify(String json_text) {
JsonParser parser = new JsonParser();
JsonElement json = parser.parse(json_text);
Gson gson = new GsonBuilder().setPrettyPrinting().create();
return gson.toJson(json);
}
public static void main(String[] args) {
try {
TranslatorText translateRequest = new TranslatorText();
String response = translateRequest.Post();
System.out.println(prettify(response));
} catch (Exception e) {
System.out.println(e);
}
}
}
Java-alkalmazás létrehozása és futtatása
Miután hozzáadott egy kódmintát az alkalmazáshoz, lépjen vissza a fő projektkönyvtárhoz – translator-text-app, nyisson meg egy konzolablakot, és adja meg a következő parancsokat:
Az alkalmazás létrehozása a build
következő paranccsal:
gradle build
Futtassa az alkalmazást a run
következő paranccsal:
gradle run
Fordítás kimenete:
Sikeres hívás után a következő választ kell látnia:
[
{
"translations": [
{
"text": "J'aimerais vraiment conduire votre voiture autour du pâté de maisons plusieurs fois!",
"to": "fr"
},
{
"text": "Ngingathanda ngempela ukushayela imoto yakho endaweni evimbelayo izikhathi ezimbalwa!",
"to": "zu"
}
]
}
]
A Node.js Express-projekt beállítása
Győződjön meg arról, hogy a Node.js legújabb verziója telepítve van. A csomópont Csomagkezelő (npm) része a Node.js telepítésének.
Tipp.
Ha még nem ismerkedik a Node.js, próbálja ki a Bevezetés a Node.js Learn modulba.
Egy konzolablakban (például parancsmag, PowerShell vagy Bash) hozzon létre és keresse meg az alkalmazás translator-app
új könyvtárát.
mkdir translator-app && cd translator-app
mkdir translator-app; cd translator-app
Futtassa az npm init parancsot az alkalmazás inicializálásához és a projekt létrehozásához.
npm init
Adja meg a projekt attribútumait a terminálban megjelenő parancssorok használatával.
- A legfontosabb attribútumok a név, a verziószám és a belépési pont.
- Javasoljuk, hogy tartsa meg
index.js
a belépési pont nevét. A leírás, a tesztparancs, a GitHub-adattár, a kulcsszavak, a szerző és a licencadatok opcionális attribútumok– ezek kihagyhatók ehhez a projekthez.
- Fogadja el a javaslatokat zárójelben a Return vagy az Enter billentyűkombinációval.
- A kérések elvégzése után létrejön egy
package.json
fájl a translator-app könyvtárban.
Nyisson meg egy konzolablakot, és az npm használatával telepítse a HTTP-kódtárat és uuid
-axios
csomagot:
npm install axios uuid
Hozza létre a index.js
fájlt az alkalmazáskönyvtárban.
Tipp.
Új fájlt a PowerShell használatával hozhat létre.
Nyisson meg egy PowerShell-ablakot a projektkönyvtárban a Shift billentyűt lenyomva tartva kattintson a jobb gombbal a mappára.
Írja be a következő parancsot : New-Item index.js.
Létrehozhat egy új fájlt is az IDE-ben, index.js
és mentheti a translator-app
könyvtárba.
JavaScript-alkalmazás létrehozása
Adja hozzá a következő kódmintát a index.js
fájlhoz. Győződjön meg arról, hogy frissíti a kulcsváltozót az Azure Portal Translator-példány értékével:
const axios = require('axios').default;
const { v4: uuidv4 } = require('uuid');
let key = "<your-translator-key>";
let endpoint = "https://api.cognitive.microsofttranslator.com";
// location, also known as region.
// required if you're using a multi-service or regional (not global) resource. It can be found in the Azure portal on the Keys and Endpoint page.
let location = "<YOUR-RESOURCE-LOCATION>";
axios({
baseURL: endpoint,
url: '/translate',
method: 'post',
headers: {
'Ocp-Apim-Subscription-Key': key,
// location required if you're using a multi-service or regional (not global) resource.
'Ocp-Apim-Subscription-Region': location,
'Content-type': 'application/json',
'X-ClientTraceId': uuidv4().toString()
},
params: {
'api-version': '3.0',
'from': 'en',
'to': 'fr,zu'
},
data: [{
'text': 'I would really like to drive your car around the block a few times!'
}],
responseType: 'json'
}).then(function(response){
console.log(JSON.stringify(response.data, null, 4));
})
JavaScript-alkalmazás futtatása
Miután hozzáadta a kódmintát az alkalmazáshoz, futtassa a programot:
Nyissa meg az alkalmazáskönyvtárat (translator-app).
Írja be a következő parancsot a terminálba:
node index.js
Fordítás kimenete:
Sikeres hívás után a következő választ kell látnia:
[
{
"translations": [
{
"text": "J'aimerais vraiment conduire votre voiture autour du pâté de maisons plusieurs fois!",
"to": "fr"
},
{
"text": "Ngingathanda ngempela ukushayela imoto yakho endaweni evimbelayo izikhathi ezimbalwa!",
"to": "zu"
}
]
}
]
A Python-projekt beállítása
Győződjön meg arról, hogy a Python 3.x legújabb verziója telepítve van. A Python telepítőcsomag (pip) része a Python-telepítésnek.
Tipp.
Ha még nem ismerkedik a Pythonnal, próbálja ki a Python Learn bevezetési modulját.
Nyisson meg egy terminálablakot, és a pip használatával telepítse a Requests könyvtárat és az uuid0 csomagot:
pip install requests uuid
Feljegyzés
Egy JSON nevű beépített Python-csomagot is használunk. JSON-adatokkal használható.
Python-alkalmazás létrehozása
Hozzon létre egy translator-app.py nevű új Python-fájlt az előnyben részesített szerkesztőben vagy IDE-ben.
Adja hozzá a következő kódmintát a translator-app.py
fájlhoz. Győződjön meg arról, hogy frissíti a kulcsot az Azure Portal Translator-példány egyik értékével.
import requests, uuid, json
# Add your key and endpoint
key = "<your-translator-key>"
endpoint = "https://api.cognitive.microsofttranslator.com"
# location, also known as region.
# required if you're using a multi-service or regional (not global) resource. It can be found in the Azure portal on the Keys and Endpoint page.
location = "<YOUR-RESOURCE-LOCATION>"
path = '/translate'
constructed_url = endpoint + path
params = {
'api-version': '3.0',
'from': 'en',
'to': ['fr', 'zu']
}
headers = {
'Ocp-Apim-Subscription-Key': key,
# location required if you're using a multi-service or regional (not global) resource.
'Ocp-Apim-Subscription-Region': location,
'Content-type': 'application/json',
'X-ClientTraceId': str(uuid.uuid4())
}
# You can pass more than one object in body.
body = [{
'text': 'I would really like to drive your car around the block a few times!'
}]
request = requests.post(constructed_url, params=params, headers=headers, json=body)
response = request.json()
print(json.dumps(response, sort_keys=True, ensure_ascii=False, indent=4, separators=(',', ': ')))
A Python-alkalmazás futtatása
Miután hozzáadott egy kódmintát az alkalmazáshoz, hozza létre és futtassa a programot:
Lépjen a translator-app.py fájlra.
Írja be a következő parancsot a konzolba:
python translator-app.py
Fordítás kimenete:
Sikeres hívás után a következő választ kell látnia:
[
{
"translations": [
{
"text": "J'aimerais vraiment conduire votre voiture autour du pâté de maisons plusieurs fois!",
"to": "fr"
},
{
"text": "Ngingathanda ngempela ukushayela imoto yakho endaweni evimbelayo izikhathi ezimbalwa!",
"to": "zu"
}
]
}
]
Ennyi, gratulálok! Most megtanulta, hogyan fordíthat szöveget a Translator szolgáltatással.
Ismerje meg útmutató dokumentációnkat, és ismerkedjen meg a Fordítási szolgáltatás képességeivel: