Azure AI Translator'ın en son sürümünü deneyin. Bu hızlı başlangıçta, seçtiğiniz programlama dilini veya REST API'yi kullanarak metin çevirmek için Translator hizmetini kullanmaya başlayın. Bu proje için, teknolojiyi öğrenirken ücretsiz fiyatlandırma katmanını (F0) kullanmanızı ve daha sonra üretim için ücretli bir katmana yükseltmenizi öneririz.
Translator hizmetinin temel işlemi metni çevirmektir. Bu hızlı başlangıçta, tek bir kaynak () alan ve iki çıkış (from
to
) sağlayan tercih ettiğiniz bir programlama dilini kullanarak bir istek oluşturacaksınız. Ardından hem isteği hem de yanıtı ayarlamak için kullanılabilecek bazı parametreleri gözden geçiririz.
Visual Studio projenizi ayarlama
Visual Studio IDE'nin geçerli sürümüne sahip olduğunuzdan emin olun.
İpucu
Visual Studio'yu yeni kullanıyorsanız Visual Studio Learn'e Giriş modülünü deneyin.
Visual Studio'yu açın.
Başlangıç sayfasında Yeni proje oluştur'u seçin.
Yeni proje oluştur sayfasında, arama kutusuna konsol yazın. Konsol Uygulaması şablonunu ve ardından İleri'yi seçin.
Yeni projenizi yapılandırın iletişim penceresinde Proje adı kutusuna girintranslator_quickstart
. "Çözümü ve projeyi aynı dizine yerleştir" onay kutusunu işaretsiz bırakın ve İleri'yi seçin.
Ek bilgiler iletişim kutusunda .NET 6.0 (Uzun süreli destek) öğesinin seçili olduğundan emin olun. "Üst düzey deyimleri kullanma" onay kutusunu işaretsiz bırakın ve Oluştur'u seçin.
NuGet ile Newtonsoft.json paketini yükleme
translator_quickstart projenize sağ tıklayın ve NuGet Paketlerini Yönet... öğesini seçin.
Gözat sekmesini seçin ve Newtonsoft.json yazın.
Paketi projenize eklemek için doğru paket yöneticisi penceresinden yükle'yi seçin.
C# uygulamanızı oluşturma
Not
- .NET 6'dan başlayarak, şablonu kullanan
console
yeni projeler önceki sürümlerden farklı yeni bir program stili oluşturur.
- Yeni çıkış, yazmanız gereken kodu basitleştiren son C# özelliklerini kullanır.
- Daha yeni sürümü kullandığınızda, yalnızca yönteminin gövdesini
Main
yazmanız gerekir. Üst düzey deyimleri, genel using yönergelerini veya örtük using yönergelerini eklemeniz gerekmez.
- Daha fazla bilgi için bkz. Yeni C# şablonları üst düzey deyimler oluşturma.
Program.cs dosyasını açın.
satırı Console.WriteLine("Hello World!")
da dahil olmak üzere mevcut kodu silin. Kod örneğini kopyalayıp uygulamanızın Program.cs dosyasına yapıştırın. Anahtar değişkenini Azure portal Translator örneğinizdeki değerle güncelleştirdiğinizden emin olun:
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);
}
}
}
C# uygulamanızı çalıştırma
Uygulamanıza bir kod örneği ekledikten sonra, programınızı oluşturmak ve çalıştırmak için formRecognizer_quickstart yanındaki yeşil başlangıç düğmesini seçin veya F5 tuşuna basın.
Çeviri çıktısı:
Başarılı bir çağrıdan sonra aşağıdaki yanıtı görmeniz gerekir:
[
{
"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"
}
]
}
]
Go ortamınızı ayarlama
Go uygulamaları yazmak için herhangi bir metin düzenleyicisini kullanabilirsiniz. Visual Studio Code ve Go uzantısının en son sürümünü kullanmanızı öneririz.
Go'nun en son sürümünün yüklü olduğundan emin olun:
Go
İşletim sisteminiz için programlama dili sürümünü indirin.
İndirme işlemi tamamlandıktan sonra yükleyiciyi çalıştırın.
Bir komut istemi açın ve Go'nun yüklendiğini onaylamak için aşağıdakileri girin:
go version
Go uygulamanızı oluşturma
Konsol penceresinde (cmd, PowerShell veya Bash gibi), uygulamanız için translator-app adlı yeni bir dizin oluşturun ve bu dizine gidin.
translator-app dizininden translation.go adlı yeni bir GO dosyası oluşturun.
Sağlanan kod örneğini kopyalayıp translation.go dosyanıza yapıştırın. Anahtar değişkenini Azure portal Translator örneğinizdeki değerle güncelleştirdiğinizden emin olun:
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)
}
Go uygulamanızı çalıştırma
Uygulamanıza bir kod örneği eklediğinizde, Go programınız bir komut veya terminal isteminde yürütülebilir. İsteminizin yolunun translator-app klasörüne ayarlandığından emin olun ve aşağıdaki komutu kullanın:
go run translation.go
Çeviri çıktısı:
Başarılı bir çağrıdan sonra aşağıdaki yanıtı görmeniz gerekir:
[
{
"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"
}
]
}
]
Java ortamınızı ayarlama
Visual Studio Code'un en son sürümüne veya tercih ettiğiniz IDE'ye sahip olmanız gerekir. Bkz. Visual Studio Code'da Java.
İpucu
- Visual Studio Code, Windows ve macOS için Java için bir Kodlama Paketi sunar.Kodlama paketi, BIR VS Code paketi, Java Geliştirme Seti (JDK) ve Microsoft tarafından önerilen uzantılardan oluşan bir koleksiyondur. Kodlama Paketi, mevcut geliştirme ortamını düzeltmek için de kullanılabilir.
- VS Code ve Java için Kodlama Paketi kullanıyorsanız Java için Gradle uzantısını yükleyin.
Visual Studio Code kullanmıyorsanız, geliştirme ortamınızda aşağıdakilerin yüklü olduğundan emin olun:
Yeni Gradle projesi oluşturma
Konsol penceresinde (cmd, PowerShell veya Bash gibi), uygulamanız için translator-text-app adlı yeni bir dizin oluşturun ve bu dizine gidin.
mkdir translator-text-app && translator-text-app
mkdir translator-text-app; cd translator-text-app
gradle init
translator-text-app dizininden komutunu çalıştırın. Bu komut, uygulamanızı oluşturmak ve yapılandırmak için çalışma zamanında kullanılan build.gradle.kts dahil olmak üzere Gradle için temel derleme dosyaları oluşturur.
gradle init --type basic
DSL seçmeniz istendiğinde Kotlin'i seçin.
İade veya Enter'ı seçerek varsayılan proje adını (translator-text-app) kabul edin.
Aşağıdaki kodla güncelleştirin build.gradle.kts
:
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 Uygulamanızı oluşturma
translator-text-app dizininden aşağıdaki komutu çalıştırın:
mkdir -p src/main/java
Aşağıdaki dizin yapısını oluşturursunuz:
dizinine java
gidin ve adlı TranslatorText.java
bir dosya oluşturun.
İpucu
PowerShell kullanarak yeni bir dosya oluşturabilirsiniz.
Shift tuşunu basılı tutarak ve klasöre sağ tıklayarak proje dizininizde bir PowerShell penceresi açın.
Aşağıdaki New-Item TranslatorText.java komutunu yazın.
Ayrıca, IDE'nizde adlı TranslatorText.java
yeni bir dosya oluşturabilir ve bunu dizine java
kaydedebilirsiniz.
TranslatorText.java
Dosyayı IDE'nizde açın ve kopyalayıp aşağıdaki kod örneğini uygulamanıza yapıştırın. Anahtarı Azure portal Translator örneğinizdeki anahtar değerlerinden biriyle güncelleştirdiğinizden emin olun:
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 uygulamanızı derleme ve çalıştırma
Uygulamanıza kod örneği ekledikten sonra ana proje dizininize (translator-text-app) geri gidin, bir konsol penceresi açın ve aşağıdaki komutları girin:
Uygulamanızı şu komutla build
oluşturun:
gradle build
Uygulamanızı şu komutla run
çalıştırın:
gradle run
Çeviri çıktısı:
Başarılı bir çağrıdan sonra aşağıdaki yanıtı görmeniz gerekir:
[
{
"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"
}
]
}
]
Node.js Express projenizi ayarlama
en son Node.js sürümünün yüklü olduğundan emin olun. Düğüm Paket Yöneticisi (npm) Node.js yüklemesine dahil edilir.
Konsol penceresinde (cmd, PowerShell veya Bash gibi), uygulamanız için adlı translator-app
yeni bir dizin oluşturun ve bu dizine gidin.
mkdir translator-app && cd translator-app
mkdir translator-app; cd translator-app
Uygulamayı başlatmak ve projenizin iskelesini yapmak için npm init komutunu çalıştırın.
npm init
Terminalde sunulan istemleri kullanarak projenizin özniteliklerini belirtin.
- En önemli öznitelikler ad, sürüm numarası ve giriş noktasıdır.
- Giriş noktası adı için saklamanızı
index.js
öneririz. Açıklama, test komutu, GitHub deposu, anahtar sözcükler, yazar ve lisans bilgileri isteğe bağlı özniteliklerdir; bunlar bu proje için atlanabilir.
- İade veya Enter'ı seçerek önerileri parantez içinde kabul edin.
- İstemleri tamamladıktan sonra translator-app dizininizde bir
package.json
dosya oluşturulur.
Bir konsol penceresi açın ve HTTP kitaplığını ve uuid
paketini yüklemek axios
için npm kullanın:
npm install axios uuid
index.js
Dosyayı uygulama dizininde oluşturun.
İpucu
PowerShell kullanarak yeni bir dosya oluşturabilirsiniz.
Shift tuşunu basılı tutarak ve klasöre sağ tıklayarak proje dizininizde bir PowerShell penceresi açın.
Yeni Öğe index.js aşağıdaki komutu yazın.
Ayrıca, IDE'nizde adlı index.js
yeni bir dosya oluşturabilir ve bunu dizine translator-app
kaydedebilirsiniz.
JavaScript uygulamanızı oluşturma
Aşağıdaki kod örneğini dosyanıza index.js
ekleyin. Anahtar değişkenini Azure portal Translator örneğinizdeki değerle güncelleştirdiğinizden emin olun:
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 uygulamanızı çalıştırma
Kod örneğini uygulamanıza ekledikten sonra programınızı çalıştırın:
Uygulama dizininize (translator-app) gidin.
Terminalinize aşağıdaki komutu yazın:
node index.js
Çeviri çıktısı:
Başarılı bir çağrıdan sonra aşağıdaki yanıtı görmeniz gerekir:
[
{
"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"
}
]
}
]
Python projenizi ayarlama
Python 3.x'in en son sürümünün yüklü olduğundan emin olun. Python yükleyici paketi (pip) Python yüklemesine dahil edilir.
Bir terminal penceresi açın ve İstekler kitaplığını ve uuid0 paketini yüklemek için pip kullanın:
pip install requests uuid
Not
Ayrıca json adlı bir Python yerleşik paketi kullanacağız. JSON verileriyle çalışmak için kullanılır.
Python uygulamanızı oluşturma
Tercih ettiğiniz düzenleyicide veya IDE'de translator-app.py adlı yeni bir Python dosyası oluşturun.
Aşağıdaki kod örneğini dosyanıza translator-app.py
ekleyin. Anahtarı Azure portal Translator örneğinizdeki değerlerden biriyle güncelleştirdiğinizden emin olun.
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=(',', ': ')))
Python uygulamanızı çalıştırma
Uygulamanıza bir kod örneği ekledikten sonra programınızı derleyin ve çalıştırın:
translator-app.py dosyanıza gidin.
Konsolunuza aşağıdaki komutu yazın:
python translator-app.py
Çeviri çıktısı:
Başarılı bir çağrıdan sonra aşağıdaki yanıtı görmeniz gerekir:
[
{
"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"
}
]
}
]
İşte bu kadar, tebrikler! Metin çevirisi yapmak için Translator hizmetini kullanmayı öğrendinsiniz.
Nasıl yapılır belgelerimizi inceleyin ve Çeviri hizmeti özelliklerine daha ayrıntılı bir bakış atın: