Contoh Amazon Translate menggunakan AWS SDK for .NET - AWS SDKContoh Kode

Ada lebih banyak AWS SDK contoh yang tersedia di GitHub repo SDKContoh AWS Dokumen.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Contoh Amazon Translate menggunakan AWS SDK for .NET

Contoh kode berikut menunjukkan cara melakukan tindakan dan mengimplementasikan skenario umum dengan menggunakan AWS SDK for .NET with Amazon Translate.

Tindakan adalah kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Meskipun tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks pada skenario terkait dan contoh lintas layanan.

Skenario adalah contoh kode yang menunjukkan cara menyelesaikan tugas tertentu dengan memanggil beberapa fungsi dalam layanan yang sama.

Setiap contoh menyertakan tautan ke GitHub, di mana Anda dapat menemukan petunjuk tentang cara mengatur dan menjalankan kode dalam konteks.

Tindakan

Contoh kode berikut menunjukkan cara menggunakanDescribeTextTranslationJob.

AWS SDK for .NET
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di AWS Repositori Contoh Kode.

using System; using System.Threading.Tasks; using Amazon.Translate; using Amazon.Translate.Model; /// <summary> /// The following example shows how to retrieve the details of /// a text translation job using Amazon Translate. /// </summary> public class DescribeTextTranslation { public static async Task Main() { var client = new AmazonTranslateClient(); // The Job Id is generated when the text translation job is started // with a call to the StartTextTranslationJob method. var jobId = "1234567890abcdef01234567890abcde"; var request = new DescribeTextTranslationJobRequest { JobId = jobId, }; var jobProperties = await DescribeTranslationJobAsync(client, request); DisplayTranslationJobDetails(jobProperties); } /// <summary> /// Retrieve information about an Amazon Translate text translation job. /// </summary> /// <param name="client">The initialized Amazon Translate client object.</param> /// <param name="request">The DescribeTextTranslationJobRequest object.</param> /// <returns>The TextTranslationJobProperties object containing /// information about the text translation job..</returns> public static async Task<TextTranslationJobProperties> DescribeTranslationJobAsync( AmazonTranslateClient client, DescribeTextTranslationJobRequest request) { var response = await client.DescribeTextTranslationJobAsync(request); if (response.HttpStatusCode == System.Net.HttpStatusCode.OK) { return response.TextTranslationJobProperties; } else { return null; } } /// <summary> /// Displays the properties of the text translation job. /// </summary> /// <param name="jobProperties">The properties of the text translation /// job returned by the call to DescribeTextTranslationJobAsync.</param> public static void DisplayTranslationJobDetails(TextTranslationJobProperties jobProperties) { if (jobProperties is null) { Console.WriteLine("No text translation job properties found."); return; } // Display the details of the text translation job. Console.WriteLine($"{jobProperties.JobId}: {jobProperties.JobName}"); } }

Contoh kode berikut menunjukkan cara menggunakanListTextTranslationJobs.

AWS SDK for .NET
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di AWS Repositori Contoh Kode.

using System; using System.Collections.Generic; using System.Threading.Tasks; using Amazon.Translate; using Amazon.Translate.Model; /// <summary> /// List Amazon Translate translation jobs, along with details about each job. /// </summary> public class ListTranslationJobs { public static async Task Main() { var client = new AmazonTranslateClient(); var filter = new TextTranslationJobFilter { JobStatus = "COMPLETED", }; var request = new ListTextTranslationJobsRequest { MaxResults = 10, Filter = filter, }; await ListJobsAsync(client, request); } /// <summary> /// List Amazon Translate text translation jobs. /// </summary> /// <param name="client">The initialized Amazon Translate client object.</param> /// <param name="request">An Amazon Translate /// ListTextTranslationJobsRequest object detailing which text /// translation jobs are of interest.</param> public static async Task ListJobsAsync( AmazonTranslateClient client, ListTextTranslationJobsRequest request) { ListTextTranslationJobsResponse response; do { response = await client.ListTextTranslationJobsAsync(request); ShowTranslationJobDetails(response.TextTranslationJobPropertiesList); request.NextToken = response.NextToken; } while (response.NextToken is not null); } /// <summary> /// List existing translation job details. /// </summary> /// <param name="properties">A list of Amazon Translate text /// translation jobs.</param> public static void ShowTranslationJobDetails(List<TextTranslationJobProperties> properties) { properties.ForEach(prop => { Console.WriteLine($"{prop.JobId}: {prop.JobName}"); Console.WriteLine($"Status: {prop.JobStatus}"); Console.WriteLine($"Submitted time: {prop.SubmittedTime}"); }); } }

Contoh kode berikut menunjukkan cara menggunakanStartTextTranslationJob.

AWS SDK for .NET
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di AWS Repositori Contoh Kode.

using System; using System.Collections.Generic; using System.Threading.Tasks; using Amazon.Translate; using Amazon.Translate.Model; /// <summary> /// This example shows how to use Amazon Translate to process the files in /// an Amazon Simple Storage Service (Amazon S3) bucket. The translated results /// will also be stored in an Amazon S3 bucket. /// </summary> public class BatchTranslate { public static async Task Main() { var contentType = "text/plain"; // Set this variable to an S3 bucket location with a folder." // Input files must be in a folder and not at the bucket root." var s3InputUri = "s3://DOC-EXAMPLE-BUCKET1/FOLDER/"; var s3OutputUri = "s3://DOC-EXAMPLE-BUCKET2/"; // This role must have permissions to read the source bucket and to read and // write to the destination bucket where the translated text will be stored. var dataAccessRoleArn = "arn:aws:iam::0123456789ab:role/S3TranslateRole"; var client = new AmazonTranslateClient(); var inputConfig = new InputDataConfig { ContentType = contentType, S3Uri = s3InputUri, }; var outputConfig = new OutputDataConfig { S3Uri = s3OutputUri, }; var request = new StartTextTranslationJobRequest { JobName = "ExampleTranslationJob", DataAccessRoleArn = dataAccessRoleArn, InputDataConfig = inputConfig, OutputDataConfig = outputConfig, SourceLanguageCode = "en", TargetLanguageCodes = new List<string> { "fr" }, }; var response = await StartTextTranslationAsync(client, request); if (response.HttpStatusCode == System.Net.HttpStatusCode.OK) { Console.WriteLine($"{response.JobId}: {response.JobStatus}"); } } /// <summary> /// Start the Amazon Translate text translation job. /// </summary> /// <param name="client">The initialized AmazonTranslateClient object.</param> /// <param name="request">The request object that includes details such /// as source and destination bucket names and the IAM Role that will /// be used to access the buckets.</param> /// <returns>The StartTextTranslationResponse object that includes the /// details of the request response.</returns> public static async Task<StartTextTranslationJobResponse> StartTextTranslationAsync(AmazonTranslateClient client, StartTextTranslationJobRequest request) { var response = await client.StartTextTranslationJobAsync(request); return response; } }

Contoh kode berikut menunjukkan cara menggunakanStopTextTranslationJob.

AWS SDK for .NET
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di AWS Repositori Contoh Kode.

using System; using System.Threading.Tasks; using Amazon.Translate; using Amazon.Translate.Model; /// <summary> /// Shows how to stop a running Amazon Translation Service text translation /// job. /// </summary> public class StopTextTranslationJob { public static async Task Main() { var client = new AmazonTranslateClient(); var jobId = "1234567890abcdef01234567890abcde"; var request = new StopTextTranslationJobRequest { JobId = jobId, }; await StopTranslationJobAsync(client, request); } /// <summary> /// Sends a request to stop a text translation job. /// </summary> /// <param name="client">Initialized AmazonTrnslateClient object.</param> /// <param name="request">The request object to be passed to the /// StopTextJobAsync method.</param> public static async Task StopTranslationJobAsync( AmazonTranslateClient client, StopTextTranslationJobRequest request) { var response = await client.StopTextTranslationJobAsync(request); if (response.HttpStatusCode == System.Net.HttpStatusCode.OK) { Console.WriteLine($"{response.JobId} as status: {response.JobStatus}"); } } }

Contoh kode berikut menunjukkan cara menggunakanTranslateText.

AWS SDK for .NET
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di AWS Repositori Contoh Kode.

using System; using System.IO; using System.Threading.Tasks; using Amazon.S3; using Amazon.S3.Transfer; using Amazon.Translate; using Amazon.Translate.Model; /// <summary> /// Take text from a file stored a Amazon Simple Storage Service (Amazon S3) /// object and translate it using the Amazon Transfer Service. /// </summary> public class TranslateText { public static async Task Main() { // If the region you want to use is different from the region // defined for the default user, supply it as a parameter to the // Amazon Translate client object constructor. var client = new AmazonTranslateClient(); // Set the source language to "auto" to request Amazon Translate to // automatically detect te language of the source text. // You can get a list of the languages supposed by Amazon Translate // in the Amazon Translate Developer's Guide here: // https://docs.aws.amazon.com/translate/latest/dg/what-is.html string srcLang = "en"; // English. string destLang = "fr"; // French. // The Amazon Simple Storage Service (Amazon S3) bucket where the // source text file is stored. string srcBucket = "DOC-EXAMPLE-BUCKET"; string srcTextFile = "source.txt"; var srcText = await GetSourceTextAsync(srcBucket, srcTextFile); var destText = await TranslatingTextAsync(client, srcLang, destLang, srcText); ShowText(srcText, destText); } /// <summary> /// Use the Amazon S3 TransferUtility to retrieve the text to translate /// from an object in an S3 bucket. /// </summary> /// <param name="srcBucket">The name of the S3 bucket where the /// text is stored. /// </param> /// <param name="srcTextFile">The key of the S3 object that /// contains the text to translate.</param> /// <returns>A string representing the source text.</returns> public static async Task<string> GetSourceTextAsync(string srcBucket, string srcTextFile) { string srcText = string.Empty; var s3Client = new AmazonS3Client(); TransferUtility utility = new TransferUtility(s3Client); using var stream = await utility.OpenStreamAsync(srcBucket, srcTextFile); StreamReader file = new System.IO.StreamReader(stream); srcText = file.ReadToEnd(); return srcText; } /// <summary> /// Use the Amazon Translate Service to translate the document from the /// source language to the specified destination language. /// </summary> /// <param name="client">The Amazon Translate Service client used to /// perform the translation.</param> /// <param name="srcLang">The language of the source text.</param> /// <param name="destLang">The destination language for the translated /// text.</param> /// <param name="text">A string representing the text to ranslate.</param> /// <returns>The text that has been translated to the destination /// language.</returns> public static async Task<string> TranslatingTextAsync(AmazonTranslateClient client, string srcLang, string destLang, string text) { var request = new TranslateTextRequest { SourceLanguageCode = srcLang, TargetLanguageCode = destLang, Text = text, }; var response = await client.TranslateTextAsync(request); return response.TranslatedText; } /// <summary> /// Show the original text followed by the translated text. /// </summary> /// <param name="srcText">The original text to be translated.</param> /// <param name="destText">The translated text.</param> public static void ShowText(string srcText, string destText) { Console.WriteLine("Source text:"); Console.WriteLine(srcText); Console.WriteLine(); Console.WriteLine("Translated text:"); Console.WriteLine(destText); } }
  • Untuk API detailnya, lihat TranslateTextdi AWS SDK for .NET APIReferensi.