モデルを使用して入力テキストを翻訳します。
もっと見る
このコードサンプルを含む詳細なドキュメントについては、以下をご覧ください。
コードサンプル
Go
このサンプルを試す前に、Translation クイックスタート: クライアント ライブラリの使用にある Go の設定手順を行ってください。詳細については、Translation Go API のリファレンス ドキュメントをご覧ください。
import (
"context"
"fmt"
"io"
translate "cloud.google.com/go/translate/apiv3"
"cloud.google.com/go/translate/apiv3/translatepb"
)
// translateTextWithModel translates input text and returns translated text.
func translateTextWithModel(w io.Writer, projectID string, location string, sourceLang string, targetLang string, text string, modelID string) error {
// projectID := "my-project-id"
// location := "us-central1"
// sourceLang := "en"
// targetLang := "fr"
// text := "Hello, world!"
// modelID := "your-model-id"
ctx := context.Background()
client, err := translate.NewTranslationClient(ctx)
if err != nil {
return fmt.Errorf("NewTranslationClient: %v", err)
}
defer client.Close()
req := &translatepb.TranslateTextRequest{
Parent: fmt.Sprintf("projects/%s/locations/%s", projectID, location),
SourceLanguageCode: sourceLang,
TargetLanguageCode: targetLang,
MimeType: "text/plain", // Mime types: "text/plain", "text/html"
Contents: []string{text},
Model: fmt.Sprintf("projects/%s/locations/%s/models/%s", projectID, location, modelID),
}
resp, err := client.TranslateText(ctx, req)
if err != nil {
return fmt.Errorf("TranslateText: %v", err)
}
// Display the translation for each input text provided
for _, translation := range resp.GetTranslations() {
fmt.Fprintf(w, "Translated text: %v\n", translation.GetTranslatedText())
}
return nil
}
Java
このサンプルを試す前に、Translation クイックスタート: クライアント ライブラリの使用にある Java の設定手順を完了してください。詳細については、Translation Java API のリファレンス ドキュメントをご覧ください。
import com.google.cloud.translate.v3.LocationName;
import com.google.cloud.translate.v3.TranslateTextRequest;
import com.google.cloud.translate.v3.TranslateTextResponse;
import com.google.cloud.translate.v3.Translation;
import com.google.cloud.translate.v3.TranslationServiceClient;
import java.io.IOException;
public class TranslateTextWithModel {
public static void translateTextWithModel() throws IOException {
// TODO(developer): Replace these variables before running the sample.
String projectId = "YOUR-PROJECT-ID";
// Supported Languages: https://cloud.google.com/translate/docs/languages
String sourceLanguage = "your-source-language";
String targetLanguage = "your-target-language";
String text = "your-text";
String modelId = "YOUR-MODEL-ID";
translateTextWithModel(projectId, sourceLanguage, targetLanguage, text, modelId);
}
// Translating Text with Model
public static void translateTextWithModel(
String projectId, String sourceLanguage, String targetLanguage, String text, String modelId)
throws IOException {
// Initialize client that will be used to send requests. This client only needs to be created
// once, and can be reused for multiple requests. After completing all of your requests, call
// the "close" method on the client to safely clean up any remaining background resources.
try (TranslationServiceClient client = TranslationServiceClient.create()) {
// Supported Locations: `global`, [glossary location], or [model location]
// Glossaries must be hosted in `us-central1`
// Custom Models must use the same location as your model. (us-central1)
String location = "us-central1";
LocationName parent = LocationName.of(projectId, location);
String modelPath =
String.format("projects/%s/locations/%s/models/%s", projectId, location, modelId);
// Supported Mime Types: https://cloud.google.com/translate/docs/supported-formats
TranslateTextRequest request =
TranslateTextRequest.newBuilder()
.setParent(parent.toString())
.setMimeType("text/plain")
.setSourceLanguageCode(sourceLanguage)
.setTargetLanguageCode(targetLanguage)
.addContents(text)
.setModel(modelPath)
.build();
TranslateTextResponse response = client.translateText(request);
// Display the translation for each input text provided
for (Translation translation : response.getTranslationsList()) {
System.out.printf("Translated text: %s\n", translation.getTranslatedText());
}
}
}
}
Node.js
このサンプルを試す前に、Translation クイックスタート: クライアント ライブラリの使用にある Node.js の設定手順を完了してください。詳細については、Translation Node.js API のリファレンス ドキュメントをご覧ください。
/**
* TODO(developer): Uncomment these variables before running the sample.
*/
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'us-central1';
// const modelId = 'YOUR_MODEL_ID';
// const text = 'text to translate';
// Imports the Google Cloud Translation library
const {TranslationServiceClient} = require('@google-cloud/translate');
// Instantiates a client
const translationClient = new TranslationServiceClient();
async function translateTextWithModel() {
// Construct request
const request = {
parent: `projects/${projectId}/locations/${location}`,
contents: [text],
mimeType: 'text/plain', // mime types: text/plain, text/html
sourceLanguageCode: 'en',
targetLanguageCode: 'ja',
model: `projects/${projectId}/locations/${location}/models/${modelId}`,
};
// Run request
const [response] = await translationClient.translateText(request);
for (const translation of response.translations) {
console.log(`Translated Content: ${translation.translatedText}`);
}
}
translateTextWithModel();
PHP
このサンプルを試す前に、Translation クイックスタート: クライアント ライブラリの使用にある PHP の設定手順を完了してください。詳細については、Translation PHP API のリファレンス ドキュメントをご覧ください。
use Google\Cloud\Translate\V3\TranslationServiceClient;
/**
* @param string $modelId Your model ID.
* @param string $text The text to translate.
* @param string $targetLanguage Language to translate to.
* @param string $sourceLanguage Language of the source.
* @param string $projectId Your Google Cloud project ID.
* @param string $location Project location (e.g. us-central1)
*/
function v3_translate_text_with_model(
string $modelId,
string $text,
string $targetLanguage,
string $sourceLanguage,
string $projectId,
string $location
): void {
$translationServiceClient = new TranslationServiceClient();
$modelPath = sprintf(
'projects/%s/locations/%s/models/%s',
$projectId,
$location,
$modelId
);
$contents = [$text];
$formattedParent = $translationServiceClient->locationName(
$projectId,
$location
);
// Optional. Can be "text/plain" or "text/html".
$mimeType = 'text/plain';
try {
$response = $translationServiceClient->translateText(
$contents,
$targetLanguage,
$formattedParent,
[
'model' => $modelPath,
'sourceLanguageCode' => $sourceLanguage,
'mimeType' => $mimeType
]
);
// Display the translation for each input text provided
foreach ($response->getTranslations() as $translation) {
printf('Translated text: %s' . PHP_EOL, $translation->getTranslatedText());
}
} finally {
$translationServiceClient->close();
}
}
Python
このサンプルを試す前に、Translation クイックスタート: クライアント ライブラリの使用にある Python の設定手順を完了してください。詳細については、Translation Python API のリファレンス ドキュメントをご覧ください。
from google.cloud import translate
def translate_text_with_model(
text="YOUR_TEXT_TO_TRANSLATE",
project_id="YOUR_PROJECT_ID",
model_id="YOUR_MODEL_ID",
):
"""Translates a given text using Translation custom model."""
client = translate.TranslationServiceClient()
location = "us-central1"
parent = f"projects/{project_id}/locations/{location}"
model_path = f"{parent}/models/{model_id}"
# Supported language codes: https://cloud.google.com/translate/docs/languages
response = client.translate_text(
request={
"contents": [text],
"target_language_code": "ja",
"model": model_path,
"source_language_code": "en",
"parent": parent,
"mime_type": "text/plain", # mime types: text/plain, text/html
}
)
# Display the translation for each input text provided
for translation in response.translations:
print("Translated text: {}".format(translation.translated_text))
次のステップ
他の Google Cloud プロダクトに関連するコードサンプルの検索およびフィルタ検索を行うには、Google Cloud のサンプルをご覧ください。