Использование API перевода с C#

1. Обзор

Google Cloud Translation API предоставляет простой программный интерфейс для динамического перевода произвольной строки на любой поддерживаемый язык с использованием современного нейронного машинного перевода. Его также можно использовать для определения языка в тех случаях, когда исходный язык неизвестен.

В этой лаборатории вы сосредоточитесь на использовании API перевода с C#. Вы научитесь составлять список доступных языков, переводить текст, а также определять язык данного текста.

Что вы узнаете

  • Как использовать Cloud Shell
  • Как включить API перевода
  • Как аутентифицировать запросы API
  • Как установить клиентскую библиотеку Google Cloud для C#
  • Как вывести список доступных языков
  • Как перевести текст
  • Как определить язык

Что вам понадобится

  • Проект облачной платформы Google
  • Браузер, например Chrome или Firefox.
  • Знакомство с C#

Опрос

Как вы будете использовать этот урок?

Прочтите только до конца Прочитайте его и выполните упражнения.

Как бы вы оценили свой опыт работы с C#?

Новичок Средний Опытный

Как бы вы оценили свой опыт использования сервисов Google Cloud Platform?

Новичок Средний Опытный

2. Настройка и требования

Самостоятельная настройка среды

  1. Войдите в Google Cloud Console и создайте новый проект или повторно используйте существующий. Если у вас еще нет учетной записи Gmail или Google Workspace, вам необходимо ее создать .

295004821bab6a87.png

37d264871000675d.png

96d86d3d5655cdbe.png

  • Имя проекта — это отображаемое имя для участников этого проекта. Это строка символов, не используемая API Google. Вы всегда можете обновить его.
  • Идентификатор проекта уникален для всех проектов Google Cloud и является неизменяемым (невозможно изменить после его установки). Cloud Console автоматически генерирует уникальную строку; обычно тебя не волнует, что это такое. В большинстве лабораторий кода вам потребуется указать идентификатор проекта (обычно идентифицируемый как PROJECT_ID ). Если вам не нравится сгенерированный идентификатор, вы можете создать другой случайный идентификатор. Альтернативно, вы можете попробовать свой собственный и посмотреть, доступен ли он. Его нельзя изменить после этого шага и он сохраняется на протяжении всего проекта.
  • К вашему сведению, есть третье значение — номер проекта , которое используют некоторые API. Подробнее обо всех трех этих значениях читайте в документации .
  1. Затем вам необходимо включить выставление счетов в Cloud Console, чтобы использовать облачные ресурсы/API. Прохождение этой кодовой лаборатории не будет стоить много, если вообще что-то стоить. Чтобы отключить ресурсы и избежать выставления счетов за пределами этого руководства, вы можете удалить созданные вами ресурсы или удалить проект. Новые пользователи Google Cloud имеют право на участие в программе бесплатной пробной версии стоимостью 300 долларов США .

Запустить Cloud Shell

Хотя Google Cloud можно управлять удаленно с вашего ноутбука, в этой лаборатории вы будете использовать Google Cloud Shell , среду командной строки, работающую в облаке.

В Google Cloud Console щелкните значок Cloud Shell на верхней правой панели инструментов:

84688aa223b1c3a2.png

Подготовка и подключение к среде займет всего несколько минут. Когда все будет готово, вы должны увидеть что-то вроде этого:

320e18fedb7fbe0.png

Эта виртуальная машина оснащена всеми необходимыми инструментами разработки. Он предлагает постоянный домашний каталог объемом 5 ГБ и работает в Google Cloud, что значительно повышает производительность сети и аутентификацию. Всю работу в этой лаборатории кода можно выполнять в браузере. Вам не нужно ничего устанавливать.

3. Включите API перевода.

Прежде чем вы сможете начать использовать API перевода, вы должны включить API. Вы можете включить API, используя следующую команду в Cloud Shell:

gcloud services enable translate.googleapis.com

4. Установите клиентскую библиотеку Google Cloud Translation API для C#.

Сначала создайте простое консольное приложение C#, которое вы будете использовать для запуска примеров API перевода.

dotnet new console -n TranslationApiDemo

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

Затем перейдите в папку TranslationApiDemo и добавьте в проект пакет Google.Cloud.Translation.V2 NuGet:

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'.

Теперь вы готовы использовать API перевода!

5. Список доступных языков

В этом разделе вы сначала перечислите все доступные языки в API перевода.

Сначала откройте редактор кода в правом верхнем углу Cloud Shell:

fd3fc1303e63572.png

Перейдите к файлу Program.cs в папке TranslationApiDemo и замените код следующим:

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}");
            }
        }
    }
}

Уделите минуту или две изучению кода*.* Обратите внимание, что мы указываем названия языков на английском языке, но они могут быть указаны на любом языке.

Вернувшись в Cloud Shell, запустите приложение. Вы должны увидеть следующий вывод:

dotnet run

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

Краткое содержание

На этом этапе вы смогли перечислить все доступные языки в API перевода. Полный список поддерживаемых языков можно найти на странице языковой поддержки .

6. Перевести текст

Вы можете использовать Translate API для перевода текста с одного языка на другой язык. Текст переводится с использованием модели нейронного машинного перевода (NMT). Если модель NMT не поддерживается для запрошенной пары языкового перевода, используется модель машинного перевода на основе фраз (PBMT).

Чтобы перевести текст, перейдите к файлу Program.cs в папке TranslationApiDemo и замените код следующим:

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);
        }
    }
}

Уделите минуту или две изучению кода. Он переводит текст «Hello World» с английского на турецкий*.*

Вернувшись в Cloud Shell, запустите приложение. Вы должны увидеть следующий вывод:

dotnet run

Selam Dünya!

Краткое содержание

На этом этапе вы смогли использовать API перевода для перевода текста с английского на турецкий. Узнайте больше о Переводе текста .

7. Определить язык

Вы также можете использовать API-интерфейс Translate, чтобы определить язык текстовой строки.

Чтобы определить язык, перейдите к файлу Program.cs в папке TranslationApiDemo и замените код следующим:

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}");
        }
    }
}

Уделите минуту или две изучению кода. Он определяет язык текста «Selam Dünya!» это, оказывается, турецкая фраза*.*

Вернувшись в Cloud Shell, запустите приложение. Вы должны увидеть следующий вывод:

dotnet run

Language: tr        Confidence: 1

Краткое содержание

На этом этапе вы смогли определить язык фрагмента текста с помощью API перевода. Узнайте больше об определении языка .

8. Поздравляем!

Вы узнали, как использовать API перевода с помощью C#!

Очистить

Чтобы избежать списания средств с вашей учетной записи Google Cloud Platform за ресурсы, используемые в этом кратком руководстве:

  • Перейдите в консоль облачной платформы .
  • Выберите проект, который хотите закрыть, затем нажмите «Удалить» вверху: это запланирует удаление проекта.

Узнать больше

Лицензия

Эта работа распространяется под лицензией Creative Commons Attribution 2.0 Generic License.