Sử dụng Translation API với C#

1. Tổng quan

Google Cloud Translation API cung cấp một giao diện lập trình đơn giản để dịch linh hoạt một chuỗi bất kỳ sang bất kỳ ngôn ngữ nào được hỗ trợ bằng công nghệ Dịch máy dùng mạng nơ-ron nhân tạo tiên tiến. Bạn cũng có thể dùng tính năng này để phát hiện ngôn ngữ trong trường hợp không xác định được ngôn ngữ gốc.

Trong lớp học lập trình này, bạn sẽ tập trung vào việc sử dụng Translation API bằng C#. Bạn sẽ tìm hiểu cách liệt kê các ngôn ngữ có sẵn, dịch văn bản và phát hiện ngôn ngữ của một văn bản nhất định.

Kiến thức bạn sẽ học được

  • Cách sử dụng Cloud Shell
  • Cách bật Translation API
  • Cách xác thực các yêu cầu API
  • Cách cài đặt thư viện ứng dụng Google Cloud cho C#
  • Cách liệt kê các ngôn ngữ hiện có
  • Cách dịch văn bản
  • Cách phát hiện ngôn ngữ

Bạn cần có

  • Một dự án trên Google Cloud Platform
  • Một trình duyệt, chẳng hạn như Chrome hoặc Firefox
  • Quen thuộc với việc sử dụng C#

Bản khảo sát

Bạn sẽ sử dụng hướng dẫn này như thế nào?

Chỉ đọc Đọc và hoàn thành bài tập

Bạn đánh giá thế nào về trải nghiệm của mình với C#?

Người mới bắt đầu Trung cấp Thành thạo

Bạn đánh giá thế nào về trải nghiệm sử dụng các dịch vụ của Google Cloud Platform?

Người mới bắt đầu Trung cấp Thành thạo

2. Thiết lập và yêu cầu

Thiết lập môi trường theo tốc độ của riêng bạn

  1. Đăng nhập vào Google Cloud Console rồi tạo một dự án mới hoặc sử dụng lại một dự án hiện có. Nếu chưa có tài khoản Gmail hoặc Google Workspace, bạn phải tạo một tài khoản.

295004821bab6a87.png

37d264871000675d.png

96d86d3d5655cdbe.png

  • Tên dự án là tên hiển thị của những người tham gia dự án này. Đây là một chuỗi ký tự mà các API của Google không sử dụng. Bạn luôn có thể cập nhật thông tin này.
  • Mã dự án là mã duy nhất trên tất cả các dự án trên Google Cloud và không thể thay đổi (bạn không thể thay đổi mã này sau khi đã đặt). Cloud Console sẽ tự động tạo một chuỗi duy nhất; thường thì bạn không cần quan tâm đến chuỗi này. Trong hầu hết các lớp học lập trình, bạn sẽ cần tham chiếu đến Mã dự án (thường được xác định là PROJECT_ID). Nếu không thích mã nhận dạng được tạo, bạn có thể tạo một mã nhận dạng ngẫu nhiên khác. Hoặc bạn có thể thử tên người dùng của riêng mình để xem tên đó có được chấp nhận hay không. Bạn không thể thay đổi tên này sau bước này và tên này sẽ tồn tại trong suốt thời gian của dự án.
  • Để bạn nắm được thông tin, có một giá trị thứ ba là Số dự án mà một số API sử dụng. Tìm hiểu thêm về cả 3 giá trị này trong tài liệu.
  1. Tiếp theo, bạn cần bật tính năng thanh toán trong Cloud Console để sử dụng các tài nguyên/API trên đám mây. Việc thực hiện lớp học lập trình này sẽ không tốn nhiều chi phí, nếu có. Để tắt các tài nguyên nhằm tránh bị tính phí ngoài phạm vi hướng dẫn này, bạn có thể xoá các tài nguyên đã tạo hoặc xoá dự án. Người dùng mới của Google Cloud đủ điều kiện tham gia chương trình Dùng thử miễn phí trị giá 300 USD.

Khởi động Cloud Shell

Mặc dù có thể vận hành Google Cloud từ xa trên máy tính xách tay, nhưng trong lớp học lập trình này, bạn sẽ sử dụng Google Cloud Shell, một môi trường dòng lệnh chạy trên Cloud.

Trên Bảng điều khiển Google Cloud, hãy nhấp vào biểu tượng Cloud Shell trên thanh công cụ ở trên cùng bên phải:

84688aa223b1c3a2.png

Quá trình này chỉ mất vài phút để cung cấp và kết nối với môi trường. Khi quá trình này kết thúc, bạn sẽ thấy như sau:

320e18fedb7fbe0.png

Máy ảo này được trang bị tất cả các công cụ phát triển mà bạn cần. Nó cung cấp một thư mục chính có dung lượng 5 GB và chạy trên Google Cloud, giúp tăng cường đáng kể hiệu suất mạng và hoạt động xác thực. Bạn có thể thực hiện mọi thao tác trong lớp học lập trình này trong trình duyệt. Bạn không cần cài đặt bất cứ thứ gì.

3. Bật Translation API

Bạn phải bật Translation API trước khi có thể bắt đầu sử dụng API này. Bạn có thể bật API bằng cách sử dụng lệnh sau trong Cloud Shell:

gcloud services enable translate.googleapis.com

4. Cài đặt thư viện ứng dụng Google Cloud Translation API cho C#

Trước tiên, hãy tạo một ứng dụng bảng điều khiển C# đơn giản mà bạn sẽ dùng để chạy các mẫu Translation API.

dotnet new console -n TranslationApiDemo

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

Tiếp theo, chuyển đến thư mục TranslationApiDemo rồi thêm gói Google.Cloud.Translation.V2 NuGet vào dự án:

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

Giờ đây, bạn đã sẵn sàng sử dụng Translation API!

5. Liệt kê các ngôn ngữ được hỗ trợ

Trong phần này, trước tiên, bạn sẽ liệt kê tất cả các ngôn ngữ có trong Translation API.

Trước tiên, hãy mở trình soạn thảo mã ở phía trên cùng bên phải của Cloud Shell:

fd3fc1303e63572.png

Chuyển đến tệp Program.cs bên trong thư mục TranslationApiDemo rồi thay thế mã bằng đoạn mã sau:

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

Dành một hoặc hai phút để nghiên cứu mã này*.* Xin lưu ý rằng chúng tôi đang liệt kê tên ngôn ngữ bằng tiếng Anh nhưng bạn có thể liệt kê bằng bất kỳ ngôn ngữ nào.

Quay lại Cloud Shell, hãy chạy ứng dụng. Bạn sẽ thấy kết quả sau:

dotnet run

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

Tóm tắt

Ở bước này, bạn có thể liệt kê tất cả các ngôn ngữ có trong Translation API. Bạn có thể xem danh sách đầy đủ các ngôn ngữ được hỗ trợ trên trang Hỗ trợ ngôn ngữ.

6. Dịch văn bản

Bạn có thể dùng Translate API để dịch văn bản từ ngôn ngữ này sang ngôn ngữ khác. Văn bản được dịch bằng mô hình Dịch máy dùng mạng nơ-ron nhân tạo (NMT). Nếu mô hình NMT không hỗ trợ cặp ngôn ngữ dịch được yêu cầu, thì mô hình Dịch máy dựa trên cụm từ (PBMT) sẽ được dùng.

Để dịch văn bản, hãy chuyển đến tệp Program.cs bên trong thư mục TranslationApiDemo rồi thay thế mã bằng đoạn mã sau:

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

Dành một hoặc hai phút để nghiên cứu mã này. Chương trình này dịch văn bản "Hello World" từ tiếng Anh sang tiếng Thổ Nhĩ Kỳ*.*

Quay lại Cloud Shell, hãy chạy ứng dụng. Bạn sẽ thấy kết quả sau:

dotnet run

Selam Dünya!

Tóm tắt

Trong bước này, bạn có thể sử dụng Translation API để dịch văn bản từ tiếng Anh sang tiếng Thổ Nhĩ Kỳ. Tìm hiểu thêm về cách Dịch văn bản.

7. Phát hiện ngôn ngữ

Bạn cũng có thể dùng Translate API để phát hiện ngôn ngữ của một chuỗi văn bản.

Để phát hiện ngôn ngữ, hãy chuyển đến tệp Program.cs bên trong thư mục TranslationApiDemo rồi thay thế mã bằng đoạn mã sau:

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

Dành một hoặc hai phút để nghiên cứu mã này. Nó phát hiện ngôn ngữ của văn bản "Selam Dünya!". Đây là một cụm từ tiếng Thổ Nhĩ Kỳ*.*

Quay lại Cloud Shell, hãy chạy ứng dụng. Bạn sẽ thấy kết quả sau:

dotnet run

Language: tr        Confidence: 1

Tóm tắt

Trong bước này, bạn có thể phát hiện ngôn ngữ của một đoạn văn bản bằng Translation API. Đọc thêm về Phát hiện ngôn ngữ.

8. Xin chúc mừng!

Bạn đã tìm hiểu cách sử dụng Translation API bằng C#!

Dọn dẹp

Để tránh bị tính phí cho tài khoản Google Cloud Platform đối với các tài nguyên được dùng trong hướng dẫn bắt đầu nhanh này, hãy làm như sau:

  • Truy cập vào Cloud Platform Console.
  • Chọn dự án mà bạn muốn tắt, sau đó nhấp vào "Xoá" ở trên cùng: thao tác này sẽ lên lịch xoá dự án.

Tìm hiểu thêm

Giấy phép

Tác phẩm này được cấp phép theo giấy phép Ghi công theo Creative Commons 2.0 Chung.