Translation API'yi C# ile Kullanma

1. Genel Bakış

Google Cloud Translation API, son teknoloji ürünü Nöral Makine Çevirisi'ni kullanarak rastgele dizeleri desteklenen dillere dinamik olarak çevirmek için basit bir programatik arayüz sunar. Kaynak dilin bilinmediği durumlarda dili algılamak için de kullanılabilir.

Bu codelab'de Translation API'yi C# ile kullanmaya odaklanacaksınız. Kullanılabilir dilleri listelemeyi, metin çevirmeyi ve belirli bir metnin dilini algılamayı öğreneceksiniz.

Neler öğreneceksiniz?

  • Cloud Shell'i kullanma
  • Translation API'yi etkinleştirme
  • API isteklerinin kimliğini doğrulama
  • C# için Google Cloud istemci kitaplığını yükleme
  • Kullanılabilir dilleri listeleme
  • Metin nasıl çevrilir?
  • Dili algılama

Gerekenler

  • Google Cloud Platform projesi
  • Chrome veya Firefox gibi bir tarayıcı
  • C# kullanma konusunda bilgi sahibi olma

Anket

Bu eğitimi nasıl kullanacaksınız?

Yalnızca okuyun Okuyun ve alıştırmaları tamamlayın

C# ile ilgili deneyiminizi nasıl değerlendirirsiniz?

Yeni başlayan Orta düzey Uzman

Google Cloud Platform hizmetlerini kullanma deneyiminizi nasıl değerlendirirsiniz?

Başlangıç Orta İleri

2. Kurulum ve Gereksinimler

Yönlendirmesiz ortam kurulumu

  1. Google Cloud Console'da oturum açın ve yeni bir proje oluşturun veya mevcut bir projeyi yeniden kullanın. Gmail veya Google Workspace hesabınız yoksa hesap oluşturmanız gerekir.

295004821bab6a87.png

37d264871000675d.png

96d86d3d5655cdbe.png

  • Proje adı, bu projenin katılımcıları için görünen addır. Google API'leri tarafından kullanılmayan bir karakter dizesidir. Bu bilgiyi istediğiniz zaman güncelleyebilirsiniz.
  • Proje kimliği, tüm Google Cloud projelerinde benzersizdir ve sabittir (ayarlandıktan sonra değiştirilemez). Cloud Console, benzersiz bir dizeyi otomatik olarak oluşturur. Genellikle bu dizenin ne olduğuyla ilgilenmezsiniz. Çoğu codelab'de proje kimliğinize (genellikle PROJECT_ID olarak tanımlanır) başvurmanız gerekir. Oluşturulan kimliği beğenmezseniz başka bir rastgele kimlik oluşturabilirsiniz. Dilerseniz kendi adınızı deneyerek kullanılabilir olup olmadığını kontrol edebilirsiniz. Bu adım tamamlandıktan sonra değiştirilemez ve proje süresince geçerli kalır.
  • Bazı API'lerin kullandığı üçüncü bir değer olan Proje Numarası da vardır. Bu üç değer hakkında daha fazla bilgiyi belgelerde bulabilirsiniz.
  1. Ardından, Cloud kaynaklarını/API'lerini kullanmak için Cloud Console'da faturalandırmayı etkinleştirmeniz gerekir. Bu codelab'i tamamlamak neredeyse hiç maliyetli değildir. Bu eğitimin ötesinde faturalandırılmayı önlemek için kaynakları kapatmak üzere oluşturduğunuz kaynakları veya projeyi silebilirsiniz. Yeni Google Cloud kullanıcıları 300 ABD doları değerinde ücretsiz deneme programından yararlanabilir.

Cloud Shell'i başlatma

Google Cloud, dizüstü bilgisayarınızdan uzaktan çalıştırılabilir. Ancak bu codelab'de, Cloud'da çalışan bir komut satırı ortamı olan Google Cloud Shell'i kullanacaksınız.

Google Cloud Console'da sağ üstteki araç çubuğunda Cloud Shell simgesini tıklayın:

84688aa223b1c3a2.png

Ortamın temel hazırlığı ve bağlanması yalnızca birkaç dakikanızı alır. İşlem tamamlandığında aşağıdakine benzer bir sonuç görürsünüz:

320e18fedb7fbe0.png

Bu sanal makine, ihtiyaç duyacağınız tüm geliştirme araçlarını içerir. 5 GB boyutunda kalıcı bir ana dizin sunar ve Google Cloud üzerinde çalışır. Bu sayede ağ performansı ve kimlik doğrulama önemli ölçüde güçlenir. Bu codelab'deki tüm çalışmalarınızı tarayıcıda yapabilirsiniz. Herhangi bir şey yüklemeniz gerekmez.

3. Translation API'yi Etkinleştirme

Translation API'yi kullanmaya başlamadan önce API'yi etkinleştirmeniz gerekir. API'yi Cloud Shell'de aşağıdaki komutu kullanarak etkinleştirebilirsiniz:

gcloud services enable translate.googleapis.com

4. C# için Google Cloud Translation API istemci kitaplığını yükleme

Öncelikle Translation API örneklerini çalıştırmak için kullanacağınız basit bir C# konsol uygulaması oluşturun.

dotnet new console -n TranslationApiDemo

The template "Console Application" was created successfully.
Processing post-creation actions...
...
Restore succeeded.

Ardından TranslationApiDemo klasörüne gidin ve projeye Google.Cloud.Translation.V2 NuGet paketini ekleyin:

cd TranslationApiDemo/
dotnet add package Google.Cloud.Translation.V2

info : Adding PackageReference for package 'Google.Cloud.Translation.V2' into project '/home/atameldev/TranslationDemo/TranslationDemo.csproj'.
log  : Restoring packages for /home/atameldev/TranslationDemo/TranslationDemo.csproj...
...
info : PackageReference for package 'Google.Cloud.Translation.V2' version '1.0.0' added to file '/home/atameldev/TranslationDemo/TranslationDemo.csproj'.

Artık Translation API'yi kullanmaya hazırsınız.

5. Kullanılabilir Dilleri Listeleme

Bu bölümde, Translation API'de kullanılabilen tüm dilleri listeleyeceksiniz.

Öncelikle Cloud Shell'in sağ üst tarafındaki kod düzenleyiciyi açın:

fd3fc1303e63572.png

TranslationApiDemo klasöründeki Program.cs dosyasına gidin ve kodu aşağıdakilerle değiştirin:

using System;
using Google.Cloud.Translation.V2;

namespace TranslationApiDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            var client = TranslationClient.Create();
            foreach (var language in client.ListLanguages(LanguageCodes.English))
            {
                Console.WriteLine($"{language.Code}\t{language.Name}");
            }
        }
    }
}

Bir veya iki dakikanızı ayırarak kodu inceleyin*.* Dil adlarını İngilizce olarak listelediğimizi ancak herhangi bir dilde listelenebileceğini unutmayın.

Cloud Shell'e dönüp uygulamayı çalıştırın. Aşağıdaki çıkışı görmeniz gerekir:

dotnet run

af        Afrikaans
sq        Albanian
am        Amharic
ar        Arabic
hy        Armenian
az        Azerbaijani
eu        Basque
be        Belarusian
...
yi        Yiddish
yo        Yoruba
zu        Zulu

Özet

Bu adımda, Translation API'de kullanılabilen tüm dilleri listeleyebildiniz. Desteklenen dillerin tam listesini Dil Desteği sayfasında bulabilirsiniz.

6. Metin çevirme

Bir dildeki metni başka bir dile çevirmek için Translate API'yi kullanabilirsiniz. Metin, Nöral Makine Çevirisi (NMT) modeli kullanılarak çevrilir. NMT modeli, istenen dil çevirisi çifti için desteklenmiyorsa Phrase-Based Machine Translation (PBMT) modeli kullanılır.

Metni çevirmek için TranslationApiDemo klasöründeki Program.cs dosyasına gidin ve kodu aşağıdakiyle değiştirin:

using System;
using Google.Cloud.Translation.V2;

namespace TranslationApiDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            var client = TranslationClient.Create();
            var text = "Hello World!";
            var response = client.TranslateText(text, LanguageCodes.Turkish, LanguageCodes.English);
            Console.WriteLine(response.TranslatedText);
        }
    }
}

Kodu incelemek için birkaç dakikanızı ayırın. "Hello World" metnini İngilizceden Türkçeye çevirir.*

Cloud Shell'e dönüp uygulamayı çalıştırın. Aşağıdaki çıkışı görmeniz gerekir:

dotnet run

Selam Dünya!

Özet

Bu adımda, Translation API'yi kullanarak bir metni İngilizceden Türkçeye çevirebildiniz. Metin çevirme hakkında daha fazla bilgi edinin.

7. Dili algıla

Bir metin dizesinin dilini algılamak için de Translate API'yi kullanabilirsiniz.

Dili algılamak için TranslationApiDemo klasöründeki Program.cs dosyasına gidin ve kodu aşağıdakiyle değiştirin:

using System;
using Google.Cloud.Translation.V2;

namespace TranslationApiDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            var client = TranslationClient.Create();
            var text = "Selam Dünya!";
            var detection = client.DetectLanguage(text);
            Console.WriteLine($"Language: {detection.Language}\tConfidence: {detection.Confidence}");
        }
    }
}

Kodu incelemek için birkaç dakikanızı ayırın. "Selam Dünya!" metninin dilini algılar. Bu metin, Türkçe bir ifadedir.*.*

Cloud Shell'e dönüp uygulamayı çalıştırın. Aşağıdaki çıkışı görmeniz gerekir:

dotnet run

Language: tr        Confidence: 1

Özet

Bu adımda, Translation API'yi kullanarak bir metin parçasının dilini tespit edebildiniz. Dili algılama hakkında daha fazla bilgi edinin.

8. Tebrikler!

C# kullanarak Translation API'yi nasıl kullanacağınızı öğrendiniz.

Temizleme

Bu hızlı başlangıçta kullanılan kaynaklar için Google Cloud Platform hesabınızın ücretlendirmesini önlemek amacıyla:

  • Cloud Platform Console'a gidin.
  • Kapatmak istediğiniz projeyi seçin, ardından üst kısımdaki "Sil"i tıklayın. Bu işlem, projenin silinmesini planlar.

Daha Fazla Bilgi

Lisans

Bu çalışma, Creative Commons Attribution 2.0 Genel Amaçlı Lisans ile lisans altına alınmıştır.