检测文本字符串的语言。
深入探索
如需查看包含此代码示例的详细文档,请参阅以下内容:
代码示例
Go
在试用此示例之前,请按照《Translation 快速入门:使用客户端库》中的 Go 设置说明进行操作。如需了解详情,请参阅 Translation Go API 参考文档。
import (
"context"
"fmt"
"io"
translate "cloud.google.com/go/translate/apiv3"
translatepb "google.golang.org/genproto/googleapis/cloud/translate/v3"
)
// detectLanguage detects the language of a text string.
func detectLanguage(w io.Writer, projectID string, text string) error {
// projectID := "my-project-id"
// text := "Hello, world!"
ctx := context.Background()
client, err := translate.NewTranslationClient(ctx)
if err != nil {
return fmt.Errorf("NewTranslationClient: %v", err)
}
defer client.Close()
req := &translatepb.DetectLanguageRequest{
Parent: fmt.Sprintf("projects/%s/locations/global", projectID),
MimeType: "text/plain", // Mime types: "text/plain", "text/html"
Source: &translatepb.DetectLanguageRequest_Content{
Content: text,
},
}
resp, err := client.DetectLanguage(ctx, req)
if err != nil {
return fmt.Errorf("DetectLanguage: %v", err)
}
// Display list of detected languages sorted by detection confidence.
// The most probable language is first.
for _, language := range resp.GetLanguages() {
// The language detected.
fmt.Fprintf(w, "Language code: %v\n", language.GetLanguageCode())
// Confidence of detection result for this language.
fmt.Fprintf(w, "Confidence: %v\n", language.GetConfidence())
}
return nil
}
Java
在试用此示例之前,请按照《Translation 快速入门:使用客户端库》中的 Java 设置说明进行操作。如需了解详情,请参阅 Translation Java API 参考文档。
import com.google.cloud.translate.v3.DetectLanguageRequest;
import com.google.cloud.translate.v3.DetectLanguageResponse;
import com.google.cloud.translate.v3.DetectedLanguage;
import com.google.cloud.translate.v3.LocationName;
import com.google.cloud.translate.v3.TranslationServiceClient;
import java.io.IOException;
public class DetectLanguage {
public static void detectLanguage() throws IOException {
// TODO(developer): Replace these variables before running the sample.
String projectId = "YOUR-PROJECT-ID";
String text = "your-text";
detectLanguage(projectId, text);
}
// Detecting the language of a text string
public static void detectLanguage(String projectId, String text) 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)
LocationName parent = LocationName.of(projectId, "global");
// Supported Mime Types: https://cloud.google.com/translate/docs/supported-formats
DetectLanguageRequest request =
DetectLanguageRequest.newBuilder()
.setParent(parent.toString())
.setMimeType("text/plain")
.setContent(text)
.build();
DetectLanguageResponse response = client.detectLanguage(request);
// Display list of detected languages sorted by detection confidence.
// The most probable language is first.
for (DetectedLanguage language : response.getLanguagesList()) {
// The language detected
System.out.printf("Language code: %s\n", language.getLanguageCode());
// Confidence of detection result for this language
System.out.printf("Confidence: %s\n", language.getConfidence());
}
}
}
}
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 = 'global';
// 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 detectLanguage() {
// Construct request
const request = {
parent: `projects/${projectId}/locations/${location}`,
content: text,
};
// Run request
const [response] = await translationClient.detectLanguage(request);
console.log('Detected Languages:');
for (const language of response.languages) {
console.log(`Language Code: ${language.languageCode}`);
console.log(`Confidence: ${language.confidence}`);
}
}
detectLanguage();
PHP
在试用此示例之前,请按照《Translation 快速入门:使用客户端库》中的 PHP 设置说明进行操作。如需了解详情,请参阅 Translation PHP API 参考文档。
use Google\Cloud\Translate\V3\TranslationServiceClient;
$translationServiceClient = new TranslationServiceClient();
/** Uncomment and populate these variables in your code */
// $text = 'Hello, world!';
// $projectId = '[Google Cloud Project ID]';
$formattedParent = $translationServiceClient->locationName($projectId, 'global');
// Optional. Can be "text/plain" or "text/html".
$mimeType = 'text/plain';
try {
$response = $translationServiceClient->detectLanguage(
$formattedParent,
[
'content' => $text,
'mimeType' => $mimeType
]
);
// Display list of detected languages sorted by detection confidence.
// The most probable language is first.
foreach ($response->getLanguages() as $language) {
// The language detected
printf('Language code: %s' . PHP_EOL, $language->getLanguageCode());
// Confidence of detection result for this language
printf('Confidence: %s' . PHP_EOL, $language->getConfidence());
}
} finally {
$translationServiceClient->close();
}
Python
在试用此示例之前,请按照《Translation 快速入门:使用客户端库》中的 Python 设置说明进行操作。如需了解详情,请参阅 Translation Python API 参考文档。
from google.cloud import translate
def detect_language(project_id="YOUR_PROJECT_ID"):
"""Detecting the language of a text string."""
client = translate.TranslationServiceClient()
location = "global"
parent = f"projects/{project_id}/locations/{location}"
# Detail on supported types can be found here:
# https://cloud.google.com/translate/docs/supported-formats
response = client.detect_language(
content="Hello, world!",
parent=parent,
mime_type="text/plain", # mime types: text/plain, text/html
)
# Display list of detected languages sorted by detection confidence.
# The most probable language is first.
for language in response.languages:
# The language detected
print("Language code: {}".format(language.language_code))
# Confidence of detection result for this language
print("Confidence: {}".format(language.confidence))
后续步骤
如需搜索和过滤其他 Google Cloud 产品的代码示例,请参阅 Google Cloud 示例浏览器。