Como usar a API Translation com C#

1. Visão geral

A API Google Cloud Translation oferece uma interface programática simples que traduz dinamicamente uma string arbitrária para qualquer idioma compatível usando a tradução automática neural de ponta. Ele também é usado para detectar idiomas nos casos em que o idioma de origem é desconhecido.

Neste codelab, o foco será o uso da API Translation com C#. Você vai aprender a listar os idiomas disponíveis, traduzir um texto e também detectar o idioma de um texto.

O que você vai aprender

  • Como usar o Cloud Shell
  • Como ativar a API Translation
  • Como autenticar solicitações de API
  • Como instalar a biblioteca de cliente do Google Cloud para C#
  • Como listar os idiomas disponíveis
  • Como traduzir textos
  • Como detectar o idioma

O que é necessário

  • Um projeto do Google Cloud Platform
  • Um navegador, como o Chrome ou o Firefox
  • Familiaridade com C#

Pesquisa

Como você vai usar este tutorial?

Apenas leitura Leitura e exercícios

Como você classificaria sua experiência com C#?

Iniciante Intermediário Proficiente

Como você classificaria sua experiência com o uso dos serviços do Google Cloud Platform?

Iniciante Intermediário Proficiente

2. Configuração e requisitos

Configuração de ambiente autoguiada

  1. Faça login no Console do Google Cloud e crie um novo projeto ou reutilize um existente. Crie uma conta do Gmail ou do Google Workspace, se ainda não tiver uma.

295004821bab6a87.png

37d264871000675d.png

96d86d3d5655cdbe.png

  • O Nome do projeto é o nome de exibição para os participantes do projeto. É uma string de caracteres não usada pelas APIs do Google e pode ser atualizada quando você quiser.
  • O ID do projeto precisa ser exclusivo em todos os projetos do Google Cloud e não pode ser mudado após a definição. O console do Cloud gera automaticamente uma string exclusiva. Em geral, não importa o que seja. Na maioria dos codelabs, é necessário fazer referência ao ID do projeto, normalmente identificado como PROJECT_ID. Se você não gostar do ID gerado, crie outro aleatório. Se preferir, teste o seu e confira se ele está disponível. Ele não pode ser mudado após essa etapa e permanece durante o projeto.
  • Para sua informação, há um terceiro valor, um Número do projeto, que algumas APIs usam. Saiba mais sobre esses três valores na documentação.
  1. Em seguida, ative o faturamento no console do Cloud para usar os recursos/APIs do Cloud. A execução deste codelab não vai ser muito cara, se tiver algum custo. Para encerrar os recursos e evitar cobranças além deste tutorial, exclua os recursos criados ou exclua o projeto. Novos usuários do Google Cloud estão qualificados para o programa de US$ 300 de avaliação sem custos.

Inicie o Cloud Shell

Embora o Google Cloud e o Spanner possam ser operados remotamente do seu laptop, neste codelab usaremos o Google Cloud Shell, um ambiente de linha de comando executado no Cloud.

No Console do Google Cloud, clique no ícone do Cloud Shell na barra de ferramentas superior à direita:

84688aa223b1c3a2.png

O provisionamento e a conexão com o ambiente levarão apenas alguns instantes para serem concluídos: Quando o processamento for concluído, você verá algo como:

320e18fedb7fbe0.png

Essa máquina virtual contém todas as ferramentas de desenvolvimento necessárias. Ela oferece um diretório principal persistente de 5 GB, além de ser executada no Google Cloud. Isso aprimora o desempenho e a autenticação da rede. Neste codelab, todo o trabalho pode ser feito com um navegador. Você não precisa instalar nada.

3. Ativar a API Translation

Antes de começar a usar a API Translation, você precisa ativá-la. É possível ativar a API usando o seguinte comando no Cloud Shell:

gcloud services enable translate.googleapis.com

4. Instalar a biblioteca de cliente da Google Cloud Translation API para C#

Primeiro, crie um aplicativo simples de console em C# para executar amostras da API Translation.

dotnet new console -n TranslationApiDemo

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

Em seguida, navegue até a pasta TranslationApiDemo e adicione o pacote NuGet Google.Cloud.Translation.V2 ao projeto:

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

Agora você já pode usar a API Translation.

5. Listar idiomas disponíveis

Nesta seção, primeiro você vai listar todos os idiomas disponíveis na API Translation.

Primeiro, abra o editor de código no canto superior direito do Cloud Shell:

fd3fc1303e63572.png

Navegue até o arquivo Program.cs dentro da pasta TranslationApiDemo e substitua o código pelo seguinte:

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

Reserve alguns minutos para estudar o código*.* Listamos os nomes dos idiomas em inglês, mas eles podem ser listados em qualquer idioma.

Volte ao Cloud Shell e execute o app. A saída a seguir será exibida:

dotnet run

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

Resumo

Nesta etapa, você conseguiu listar todos os idiomas disponíveis na API Translation. Consulte a lista completa de idiomas compatíveis na página Suporte a idiomas.

6. Traduzir texto

Você pode usar a API Translate para traduzir um texto de um idioma para outro. O texto é traduzido usando o modelo de tradução automática neural (NMT, na sigla em inglês). Se o modelo de NMT não for compatível com o par de tradução de idiomas solicitado, o modelo de tradução automática baseada em frases (PBMT, na sigla em inglês) será usado.

Para traduzir texto, navegue até o arquivo Program.cs na pasta TranslationApiDemo e substitua o código pelo seguinte:

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

Reserve alguns minutos para estudar o código. Ele traduz o texto "Hello World" do inglês para o turco*.*.

Volte ao Cloud Shell e execute o app. A saída a seguir será exibida:

dotnet run

Selam Dünya!

Resumo

Nesta etapa, você conseguiu usar a API Translation para traduzir um texto do inglês para o turco. Leia mais sobre como traduzir textos.

7. Detectar idioma

Você também pode usar a API Translate para detectar o idioma de uma string de texto.

Para detectar o idioma, navegue até o arquivo Program.cs dentro da pasta TranslationApiDemo e substitua o código pelo seguinte:

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

Reserve alguns minutos para estudar o código. Ele detecta o idioma do texto "Selam Dünya!". que é uma frase em turco*.*

Volte ao Cloud Shell e execute o app. A saída a seguir será exibida:

dotnet run

Language: tr        Confidence: 1

Resumo

Nesta etapa, você conseguiu detectar o idioma de um texto usando a API Translation. Leia mais sobre Como detectar um idioma.

8. Parabéns!

Você aprendeu a usar a API Translation com C#.

Limpar

Para evitar a cobrança na sua conta do Google Cloud Platform pelo uso de recursos neste guia de início rápido, siga estas etapas:

  • Acesse o console do Cloud Platform.
  • Selecione o projeto que você quer encerrar e clique em "Excluir". Na parte superior: isso programa a exclusão do projeto.

Saiba mais

Licença

Este conteúdo está sob a licença Atribuição 2.0 Genérica da Creative Commons.