1. סקירה כללית
Google Cloud Translation API מספק ממשק פרוגרמטי פשוט לתרגום דינמי של מחרוזת שרירותית לכל שפה נתמכת, באמצעות תרגום מכונה נוירונים מתקדם. הוא יכול גם לשמש לזיהוי שפה במקרים שבהם שפת המקור לא ידועה.
ב-Codelab הזה אתם תתמקדו בשימוש ב-Translation API עם C#. תלמדו איך לציין את השפות הזמינות, לתרגם טקסט ולזהות את השפה של טקסט נתון.
מה תלמדו
- איך משתמשים ב-Cloud Shell
- איך מפעילים את Translation API
- איך לאמת בקשות API
- איך מתקינים את ספריית הלקוח של Google Cloud ל-C#
- איך מציגים את רשימת השפות הזמינות
- כיצד לתרגם טקסט
- איך לזהות שפה
מה צריך להכין
סקר
איך תשתמשו במדריך הזה?
איזה דירוג מגיע לחוויה שלך עם C#?
איזה דירוג מגיע לדעתך לחוויית השימוש בשירותי Google Cloud Platform?
2. הגדרה ודרישות
הגדרת סביבה בקצב עצמאי
- נכנסים למסוף Google Cloud ויוצרים פרויקט חדש או עושים שימוש חוזר בפרויקט קיים. אם אין לכם עדיין חשבון Gmail או חשבון Google Workspace, עליכם ליצור חשבון.
- Project name הוא השם המוצג של המשתתפים בפרויקט. זו מחרוזת תווים שלא משמשת את Google APIs. תמיד אפשר לעדכן.
- Project ID הוא ייחודי בכל הפרויקטים ב-Google Cloud ואי אפשר לשנות אותו (אי אפשר לשנות אותו אחרי שמגדירים אותו). מסוף Cloud יוצר מחרוזת ייחודית באופן אוטומטי; בדרך כלל לא מעניין אותך מה זה. ברוב ה-codelabs תצטרכו להפנות למזהה הפרויקט שלכם (בדרך כלל מזוהה כ-
PROJECT_ID
). אם המזהה שנוצר לא מוצא חן בעיניכם, אתם יכולים ליצור מזהה אקראי אחר. לחלופין, אפשר לנסות שם משלך ולראות אם הוא זמין. לא ניתן לשנות אותו אחרי השלב הזה, והוא נשאר למשך הפרויקט. - לידיעתך, יש ערך שלישי, Project Number, שבו משתמשים בחלק מממשקי ה-API. מידע נוסף על כל שלושת הערכים האלה זמין במסמכי התיעוד.
- בשלב הבא צריך להפעיל את החיוב במסוף Cloud כדי להשתמש במשאבים או בממשקי API של Cloud. מעבר ב-Codelab הזה לא יעלה הרבה כסף, אם בכלל. כדי להשבית משאבים ולא לצבור חיובים מעבר למדריך הזה, אתם יכולים למחוק את המשאבים שיצרתם או למחוק את הפרויקט. משתמשים חדשים ב-Google Cloud זכאים להשתתף בתוכנית תקופת ניסיון בחינם בשווי 1,200 ש"ח.
הפעלת Cloud Shell
אומנם אפשר להפעיל את Google Cloud מרחוק מהמחשב הנייד, אבל ב-Codelab הזה משתמשים ב-Google Cloud Shell, סביבת שורת הפקודה שפועלת ב-Cloud.
במסוף Google Cloud, לוחצים על הסמל של Cloud Shell בסרגל הכלים שבפינה השמאלית העליונה:
נדרשים רק כמה דקות כדי להקצות את הסביבה ולהתחבר אליה. בסיום התהליך, אתם אמורים לראות משהו כזה:
למכונה הווירטואלית הזו נטען כל כלי הפיתוח הדרושים. יש בה ספריית בית בנפח מתמיד של 5GB והיא פועלת ב-Google Cloud, מה שמשפר משמעותית את ביצועי הרשת והאימות. כל העבודה ב-Codelab הזה יכולה להתבצע בתוך דפדפן. אתה לא צריך להתקין שום דבר.
3. הפעלת Translation API
לפני שמתחילים להשתמש ב-Translation API, צריך להפעיל את ה-API. כדי להפעיל את ה-API תוכלו להשתמש בפקודה הבאה ב-Cloud Shell:
gcloud services enable translate.googleapis.com
4. התקנה של ספריית הלקוח של Google Cloud Translation API עבור #C
קודם כול, יוצרים אפליקציה פשוטה של מסוף C# ומשתמשים בה כדי להריץ דוגמאות של Translation 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'.
עכשיו אתה מוכן להשתמש ב-Translation API!
5. רשימת השפות הזמינות
בקטע הזה תוצג קודם רשימה של כל השפות הזמינות ב-Translation API.
קודם כול, פותחים את עורך הקוד מהצד השמאלי העליון של Cloud Shell:
עוברים לקובץ 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
סיכום
בשלב הזה הצלחת לראות את רשימת כל השפות הזמינות ב-Translation 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!
סיכום
בשלב הזה הייתה לך אפשרות להשתמש ב-Translation API כדי לתרגם טקסט מאנגלית לטורקית. קוראים מידע נוסף על תרגום טקסט.
7. זיהוי שפה אוטומטי
אפשר להשתמש ב-Translate API גם כדי לזהות את השפה של מחרוזת טקסט.
כדי לזהות שפה, צריך לעבור לקובץ 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}");
}
}
}
הקדישו דקה או שתיים כדי ללמוד את הקוד. הוא מזהה את השפה שבה כתוב הטקסט "סלאם Dünya!" במקרה שזה ביטוי בטורקית*.*
בחזרה ב-Cloud Shell, מריצים את האפליקציה. הפלט הבא אמור להתקבל:
dotnet run
Language: tr Confidence: 1
סיכום
בשלב הזה הצלחתם לזהות את השפה של קטע טקסט באמצעות Translation API. מידע נוסף על זיהוי שפה
8. מעולה!
למדת איך להשתמש ב-Translate API בעזרת C#!
הסרת המשאבים
כדי להימנע מצבירת חיובים בחשבון Google Cloud Platform על המשאבים שבהם השתמשתם במדריך למתחילים הזה:
- עוברים אל Cloud Platform Console.
- בוחרים את הפרויקט שרוצים להשבית ולוחצים על Delete (מחיקה). למעלה: מתזמנת את מחיקת הפרויקט.
מידע נוסף
- Google Cloud Translation API: https://cloud.google.com/translate/docs
- C#/.NET ב-Google Cloud Platform: https://cloud.google.com/dotnet/
- לקוח Google Cloud .NET: https://googlecloudplatform.github.io/google-cloud-dotnet/
רישיון
היצירה הזו בשימוש ברישיון Creative Commons Attribution 2.0 גנרי.