分析实体

实体分析检测已知实体(如公众人物、地标等专用名词)的给定文本,并返回这些实体的相关信息。实体分析是通过 analyzeEntities 方法执行的。如需了解 Natural Language 标识的实体类型的信息,请参见 Entity 文档。如需了解 Natural Language API 支持的语言,请参阅语言支持

本部分介绍几种在文档中检测实体的方法。 您必须针对每个文档分别提交请求。

分析字符串中的实体

下面的示例说明如何对直接发送至 Natural Language API 的文本字符串进行实体分析:

协议

如需分析文档中的实体,请按照下面示例中所示,向 documents:analyzeEntities REST 方法发出 POST 请求,并提供相应的请求正文。

该示例使用 gcloud auth application-default print-access-token 命令获取通过 Google Cloud Platform gcloud CLI 为项目设置的服务账号的访问令牌。如需了解有关安装 gcloud CLI 以及使用服务账号设置项目的说明,请参阅快速入门

curl -X POST \      -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \      -H "Content-Type: application/json; charset=utf-8" \      --data "{   'encodingType': 'UTF8',   'document': {     'type': 'PLAIN_TEXT',     'content': 'President Trump will speak from the White House, located   at 1600 Pennsylvania Ave NW, Washington, DC, on October 7.'   } }" "https://language.googleapis.com/v2/documents:analyzeEntities"

如果您不指定 document.language_code,则系统将自动检测语言。有关 Natural Language API 支持哪些语言的信息,请参阅语言支持。如需详细了解如何配置请求正文,请参阅 Document 参考文档。

如果请求成功,服务器将返回一个 200 OK HTTP 状态代码以及 JSON 格式的响应:

{   "entities": [     {       "name": "October 7",       "type": "DATE",       "metadata": {         "month": "10",         "day": "7"       },       "mentions": [         {           "text": {             "content": "October 7",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "1600",       "type": "NUMBER",       "metadata": {         "value": "1600"       },       "mentions": [         {           "text": {             "content": "1600",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "7",       "type": "NUMBER",       "metadata": {         "value": "7"       },       "mentions": [         {           "text": {             "content": "7",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "1600 Pennsylvania Ave NW, Washington, DC",       "type": "ADDRESS",       "metadata": {         "locality": "Washington",         "narrow_region": "District of Columbia",         "street_name": "Pennsylvania Avenue Northwest",         "street_number": "1600",         "broad_region": "District of Columbia",         "country": "US"       },       "mentions": [         {           "text": {             "content": "1600 Pennsylvania Ave NW, Washington, DC",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "1600 Pennsylvania Ave NW",       "type": "LOCATION",       "metadata": {},       "mentions": [         {           "text": {             "content": "1600 Pennsylvania Ave NW",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.901         }       ]     },     {       "name": "President",       "type": "PERSON",       "metadata": {},       "mentions": [         {           "text": {             "content": "President",             "beginOffset": -1           },           "type": "COMMON",           "probability": 0.941         }       ]     },     {       "name": "Trump",       "type": "PERSON",       "metadata": {},       "mentions": [         {           "text": {             "content": "Trump",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.948         }       ]     },     {       "name": "Washington, DC",       "type": "LOCATION",       "metadata": {},       "mentions": [         {           "text": {             "content": "Washington, DC",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.92         }       ]     },     {       "name": "White House",       "type": "LOCATION",       "metadata": {},       "mentions": [         {           "text": {             "content": "White House",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.785         }       ]     }   ],   "languageCode": "en",   "languageSupported": true }

entities 数组包含代表检测到的实体的 Entity 对象,其中包括实体名称和类型等信息。

gcloud

如需查看完整的详细信息,请参阅 analyze-entities 命令。

如需执行实体分析,请使用 gcloud CLI 并使用 --content 标志来标识要分析的内容:

 gcloud ml language analyze-entities --content="President Trump will speak from the White House, located   at 1600 Pennsylvania Ave NW, Washington, DC, on October 7." 

如果请求成功,则服务器返回 JSON 格式的响应:

{   "entities": [     {       "name": "Trump",       "type": "PERSON",       "metadata": {         "mid": "/m/0cqt90",         "wikipedia_url": "https://en.wikipedia.org/wiki/Donald_Trump"       },       "salience": 0.7936003,       "mentions": [         {           "text": {             "content": "Trump",             "beginOffset": 10           },           "type": "PROPER"         },         {           "text": {             "content": "President",             "beginOffset": 0           },           "type": "COMMON"         }       ]     },     {       "name": "White House",       "type": "LOCATION",       "metadata": {         "mid": "/m/081sq",         "wikipedia_url": "https://en.wikipedia.org/wiki/White_House"       },       "salience": 0.09172433,       "mentions": [         {           "text": {             "content": "White House",             "beginOffset": 36           },           "type": "PROPER"         }       ]     },     {       "name": "Pennsylvania Ave NW",       "type": "LOCATION",       "metadata": {         "mid": "/g/1tgb87cq"       },       "salience": 0.085507184,       "mentions": [         {           "text": {             "content": "Pennsylvania Ave NW",             "beginOffset": 65           },           "type": "PROPER"         }       ]     },     {       "name": "Washington, DC",       "type": "LOCATION",       "metadata": {         "mid": "/m/0rh6k",         "wikipedia_url": "https://en.wikipedia.org/wiki/Washington,_D.C."       },       "salience": 0.029168168,       "mentions": [         {           "text": {             "content": "Washington, DC",             "beginOffset": 86           },           "type": "PROPER"         }       ]     }     {       "name": "1600 Pennsylvania Ave NW, Washington, DC",       "type": "ADDRESS",       "metadata": {         "country": "US",         "sublocality": "Fort Lesley J. McNair",         "locality": "Washington",         "street_name": "Pennsylvania Avenue Northwest",         "broad_region": "District of Columbia",         "narrow_region": "District of Columbia",         "street_number": "1600"       },       "salience": 0,       "mentions": [         {           "text": {             "content": "1600 Pennsylvania Ave NW, Washington, DC",             "beginOffset": 60           },           "type": "TYPE_UNKNOWN"         }       ]       }     }     {       "name": "1600",        "type": "NUMBER",        "metadata": {            "value": "1600"        },        "salience": 0,        "mentions": [          {           "text": {               "content": "1600",               "beginOffset": 60            },            "type": "TYPE_UNKNOWN"         }      ]      },      {        "name": "October 7",        "type": "DATE",        "metadata": {          "day": "7",          "month": "10"        },        "salience": 0,        "mentions": [          {            "text": {              "content": "October 7",              "beginOffset": 105             },            "type": "TYPE_UNKNOWN"          }        ]      }      {        "name": "7",        "type": "NUMBER",        "metadata": {          "value": "7"        },        "salience": 0,        "mentions": [          {            "text": {              "content": "7",              "beginOffset": 113            },          "type": "TYPE_UNKNOWN"          }         ]      }   ],   "language": "en" }

entities 数组包含代表检测到的实体的 Entity 对象,其中包括实体名称和类型等信息。

Go

如需了解如何安装和使用 Natural Language 的客户端库,请参阅 Natural Language 客户端库。 如需了解详情,请参阅 Natural Language Go API 参考文档

如需向 Natural Language 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证

import ( 	"context" 	"fmt" 	"io"  	language "cloud.google.com/go/language/apiv2" 	"cloud.google.com/go/language/apiv2/languagepb" )  // analyzeEntities sends a string of text to the Cloud Natural Language API to // detect the entities of the text. func analyzeEntities(w io.Writer, text string) error { 	ctx := context.Background()  	// Initialize client. 	client, err := language.NewClient(ctx) 	if err != nil { 		return err 	} 	defer client.Close()  	resp, err := client.AnalyzeEntities(ctx, &languagepb.AnalyzeEntitiesRequest{ 		Document: &languagepb.Document{ 			Source: &languagepb.Document_Content{ 				Content: text, 			}, 			Type: languagepb.Document_PLAIN_TEXT, 		}, 		EncodingType: languagepb.EncodingType_UTF8, 	})  	if err != nil { 		return fmt.Errorf("AnalyzeEntities: %w", err) 	} 	fmt.Fprintf(w, "Response: %q\n", resp)  	return nil } 

Java

如需了解如何安装和使用 Natural Language 的客户端库,请参阅 Natural Language 客户端库。 如需了解详情,请参阅 Natural Language Java API 参考文档

如需向 Natural Language 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证

// Instantiate the Language client com.google.cloud.language.v2.LanguageServiceClient try (LanguageServiceClient language = LanguageServiceClient.create()) {   Document doc = Document.newBuilder().setContent(text).setType(Type.PLAIN_TEXT).build();   AnalyzeEntitiesRequest request =       AnalyzeEntitiesRequest.newBuilder()           .setDocument(doc)           .setEncodingType(EncodingType.UTF16)           .build();    AnalyzeEntitiesResponse response = language.analyzeEntities(request);    // Print the response   for (Entity entity : response.getEntitiesList()) {     System.out.printf("Entity: %s", entity.getName());     System.out.println("Metadata: ");     for (Map.Entry<String, String> entry : entity.getMetadataMap().entrySet()) {       System.out.printf("%s : %s", entry.getKey(), entry.getValue());     }     for (EntityMention mention : entity.getMentionsList()) {       System.out.printf("Begin offset: %d\n", mention.getText().getBeginOffset());       System.out.printf("Content: %s\n", mention.getText().getContent());       System.out.printf("Type: %s\n\n", mention.getType());       System.out.printf("Probability: %s\n\n", mention.getProbability());     }   } }

Node.js

如需了解如何安装和使用 Natural Language 的客户端库,请参阅 Natural Language 客户端库。 如需了解详情,请参阅 Natural Language Node.js API 参考文档

如需向 Natural Language 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证

// Imports the Google Cloud client library const language = require('@google-cloud/language').v2;  // Creates a client const client = new language.LanguageServiceClient();  /**  * TODO(developer): Uncomment the following line to run this code.  */ // const text = 'Your text to analyze, e.g. Hello, world!';  // Prepares a document, representing the provided text const document = {   content: text,   type: 'PLAIN_TEXT', };  // Detects entities in the document const [result] = await client.analyzeEntities({document});  const entities = result.entities;  console.log('Entities:'); entities.forEach(entity => {   console.log(entity.name);   console.log(` - Type: ${entity.type}`);   if (entity.metadata) {     console.log(` - Metadata: ${entity.metadata}`);   } });

Python

如需了解如何安装和使用 Natural Language 的客户端库,请参阅 Natural Language 客户端库。 如需了解详情,请参阅 Natural Language Python API 参考文档

如需向 Natural Language 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证

from google.cloud import language_v2   def sample_analyze_entities(text_content: str = "California is a state.") -> None:     """     Analyzes Entities in a string.      Args:       text_content: The text content to analyze     """      client = language_v2.LanguageServiceClient()      # Available types: PLAIN_TEXT, HTML     document_type_in_plain_text = language_v2.Document.Type.PLAIN_TEXT      # Optional. If not specified, the language is automatically detected.     # For list of supported languages:     # https://cloud.google.com/natural-language/docs/languages     language_code = "en"     document = {         "content": text_content,         "type_": document_type_in_plain_text,         "language_code": language_code,     }      # Available values: NONE, UTF8, UTF16, UTF32.     # See https://cloud.google.com/natural-language/docs/reference/rest/v2/EncodingType.     encoding_type = language_v2.EncodingType.UTF8      response = client.analyze_entities(         request={"document": document, "encoding_type": encoding_type}     )      for entity in response.entities:         print(f"Representative name for the entity: {entity.name}")          # Get entity type, e.g. PERSON, LOCATION, ADDRESS, NUMBER, et al.         # See https://cloud.google.com/natural-language/docs/reference/rest/v2/Entity#type.         print(f"Entity type: {language_v2.Entity.Type(entity.type_).name}")          # Loop over the metadata associated with entity.         # Some entity types may have additional metadata, e.g. ADDRESS entities         # may have metadata for the address street_name, postal_code, et al.         for metadata_name, metadata_value in entity.metadata.items():             print(f"{metadata_name}: {metadata_value}")          # Loop over the mentions of this entity in the input document.         # The API currently supports proper noun mentions.         for mention in entity.mentions:             print(f"Mention text: {mention.text.content}")              # Get the mention type, e.g. PROPER for proper noun             print(f"Mention type: {language_v2.EntityMention.Type(mention.type_).name}")              # Get the probability score associated with the first mention of the entity in the (0, 1.0] range.             print(f"Probability score: {mention.probability}")      # Get the language of the text, which will be the same as     # the language specified in the request or, if not specified,     # the automatically-detected language.     print(f"Language of the text: {response.language_code}")  

其他语言

C#: 请按照客户端库页面上的 C# 设置说明操作,然后访问 .NET 版 Natural Language 参考文档。

PHP:请按照客户端库页面上的 PHP 设置说明操作,然后访问 PHP 版 Natural Language 参考文档。

Ruby: 请按照客户端库页面上的 Ruby 设置说明操作,然后访问 Ruby 版 Natural Language 参考文档。

分析 Cloud Storage 中的实体

为您方便起见,Natural Language API 可以直接对位于 Cloud Storage 的文件执行实体分析,而无需在请求正文中发送文件内容。

以下示例介绍如何对 Cloud Storage 中的文件执行实体分析。

协议

如需分析 Cloud Storage 中存储的文档的实体,请向 documents:analyzeEntities REST 方法发出 POST 请求,并提供带有文档路径的相应请求正文,如以下示例所示。

curl -X POST \      -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \      -H "Content-Type: application/json; charset=utf-8" \      --data "{   'document':{     'type':'PLAIN_TEXT',     'gcsContentUri':'gs://<bucket-name>/<object-name>'   } }" "https://language.googleapis.com/v2/documents:analyzeEntities"

如果您不指定 document.language_code,则系统将自动检测语言。有关 Natural Language API 支持哪些语言的信息,请参阅语言支持。如需详细了解如何配置请求正文,请参阅 Document 参考文档。

如果请求成功,服务器将返回一个 200 OK HTTP 状态代码以及 JSON 格式的响应:

{   "entities": [     {       "name": "October 7",       "type": "DATE",       "metadata": {         "month": "10",         "day": "7"       },       "mentions": [         {           "text": {             "content": "October 7",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "1600",       "type": "NUMBER",       "metadata": {         "value": "1600"       },       "mentions": [         {           "text": {             "content": "1600",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "7",       "type": "NUMBER",       "metadata": {         "value": "7"       },       "mentions": [         {           "text": {             "content": "7",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "1600 Pennsylvania Ave NW, Washington, DC",       "type": "ADDRESS",       "metadata": {         "locality": "Washington",         "narrow_region": "District of Columbia",         "street_name": "Pennsylvania Avenue Northwest",         "street_number": "1600",         "broad_region": "District of Columbia",         "country": "US"       },       "mentions": [         {           "text": {             "content": "1600 Pennsylvania Ave NW, Washington, DC",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "1600 Pennsylvania Ave NW",       "type": "LOCATION",       "metadata": {},       "mentions": [         {           "text": {             "content": "1600 Pennsylvania Ave NW",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.901         }       ]     },     {       "name": "President",       "type": "PERSON",       "metadata": {},       "mentions": [         {           "text": {             "content": "President",             "beginOffset": -1           },           "type": "COMMON",           "probability": 0.941         }       ]     },     {       "name": "Trump",       "type": "PERSON",       "metadata": {},       "mentions": [         {           "text": {             "content": "Trump",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.948         }       ]     },     {       "name": "Washington, DC",       "type": "LOCATION",       "metadata": {},       "mentions": [         {           "text": {             "content": "Washington, DC",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.92         }       ]     },     {       "name": "White House",       "type": "LOCATION",       "metadata": {},       "mentions": [         {           "text": {             "content": "White House",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.785         }       ]     }   ],   "languageCode": "en",   "languageSupported": true }

entities 数组包含代表检测到的实体的 Entity 对象,其中包括实体名称和类型等信息。

gcloud

如需查看完整的详细信息,请参阅 analyze-entities 命令。

如需对 Cloud Storage 中的文件执行实体分析,请使用 gcloud 命令行工具并使用 --content-file 标志来标识包含待分析内容的文件路径:

 gcloud ml language analyze-entities --content-file=gs://YOUR_BUCKET_NAME/YOUR_FILE_NAME 

如果请求成功,则服务器返回 JSON 格式的响应:

{   "entities": [     {       "name": "October 7",       "type": "DATE",       "metadata": {         "month": "10",         "day": "7"       },       "mentions": [         {           "text": {             "content": "October 7",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "1600",       "type": "NUMBER",       "metadata": {         "value": "1600"       },       "mentions": [         {           "text": {             "content": "1600",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "7",       "type": "NUMBER",       "metadata": {         "value": "7"       },       "mentions": [         {           "text": {             "content": "7",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "1600 Pennsylvania Ave NW, Washington, DC",       "type": "ADDRESS",       "metadata": {         "locality": "Washington",         "narrow_region": "District of Columbia",         "street_name": "Pennsylvania Avenue Northwest",         "street_number": "1600",         "broad_region": "District of Columbia",         "country": "US"       },       "mentions": [         {           "text": {             "content": "1600 Pennsylvania Ave NW, Washington, DC",             "beginOffset": -1           },           "type": "TYPE_UNKNOWN",           "probability": 1         }       ]     },     {       "name": "1600 Pennsylvania Ave NW",       "type": "LOCATION",       "metadata": {},       "mentions": [         {           "text": {             "content": "1600 Pennsylvania Ave NW",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.901         }       ]     },     {       "name": "President",       "type": "PERSON",       "metadata": {},       "mentions": [         {           "text": {             "content": "President",             "beginOffset": -1           },           "type": "COMMON",           "probability": 0.941         }       ]     },     {       "name": "Trump",       "type": "PERSON",       "metadata": {},       "mentions": [         {           "text": {             "content": "Trump",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.948         }       ]     },     {       "name": "Washington, DC",       "type": "LOCATION",       "metadata": {},       "mentions": [         {           "text": {             "content": "Washington, DC",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.92         }       ]     },     {       "name": "White House",       "type": "LOCATION",       "metadata": {},       "mentions": [         {           "text": {             "content": "White House",             "beginOffset": -1           },           "type": "PROPER",           "probability": 0.785         }       ]     }   ],   "languageCode": "en",   "languageSupported": true }

entities 数组包含代表检测到的实体的 Entity 对象,其中包括实体名称和类型等信息。

Go

如需了解如何安装和使用 Natural Language 的客户端库,请参阅 Natural Language 客户端库。 如需了解详情,请参阅 Natural Language Go API 参考文档

如需向 Natural Language 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证

 func analyzeEntitiesFromGCS(ctx context.Context, gcsURI string) (*languagepb.AnalyzeEntitiesResponse, error) { 	return client.AnalyzeEntities(ctx, &languagepb.AnalyzeEntitiesRequest{ 		Document: &languagepb.Document{ 			Source: &languagepb.Document_GcsContentUri{ 				GcsContentUri: gcsURI, 			}, 			Type: languagepb.Document_PLAIN_TEXT, 		}, 		EncodingType: languagepb.EncodingType_UTF8, 	}) } 

Java

如需了解如何安装和使用 Natural Language 的客户端库,请参阅 Natural Language 客户端库。 如需了解详情,请参阅 Natural Language Java API 参考文档

如需向 Natural Language 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证

// Instantiate the Language client com.google.cloud.language.v2.LanguageServiceClient try (LanguageServiceClient language = LanguageServiceClient.create()) {   // Set the GCS Content URI path to the file to be analyzed   Document doc =       Document.newBuilder().setGcsContentUri(gcsUri).setType(Type.PLAIN_TEXT).build();   AnalyzeEntitiesRequest request =       AnalyzeEntitiesRequest.newBuilder()           .setDocument(doc)           .setEncodingType(EncodingType.UTF16)           .build();    AnalyzeEntitiesResponse response = language.analyzeEntities(request);    // Print the response   for (Entity entity : response.getEntitiesList()) {     System.out.printf("Entity: %s\n", entity.getName());     System.out.println("Metadata: ");     for (Map.Entry<String, String> entry : entity.getMetadataMap().entrySet()) {       System.out.printf("%s : %s", entry.getKey(), entry.getValue());     }     for (EntityMention mention : entity.getMentionsList()) {       System.out.printf("Begin offset: %d\n", mention.getText().getBeginOffset());       System.out.printf("Content: %s\n", mention.getText().getContent());       System.out.printf("Type: %s\n\n", mention.getType());       System.out.printf("Probability: %s\n\n", mention.getProbability());     }   } }

Node.js

如需了解如何安装和使用 Natural Language 的客户端库,请参阅 Natural Language 客户端库。 如需了解详情,请参阅 Natural Language Node.js API 参考文档

如需向 Natural Language 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证

// Imports the Google Cloud client library const language = require('@google-cloud/language').v2;  // Creates a client const client = new language.LanguageServiceClient();  /**  * TODO(developer): Uncomment the following lines to run this code  */ // const bucketName = 'Your bucket name, e.g. my-bucket'; // const fileName = 'Your file name, e.g. my-file.txt';  // Prepares a document, representing a text file in Cloud Storage const document = {   gcsContentUri: `gs://${bucketName}/${fileName}`,   type: 'PLAIN_TEXT', };  // Detects entities in the document const [result] = await client.analyzeEntities({document}); const entities = result.entities;  console.log('Entities:'); entities.forEach(entity => {   console.log(entity.name);   console.log(` - Type: ${entity.type}`);   if (entity.metadata) {     console.log(` - Metadata: ${entity.metadata}`);   } }); 

Python

如需了解如何安装和使用 Natural Language 的客户端库,请参阅 Natural Language 客户端库。 如需了解详情,请参阅 Natural Language Python API 参考文档

如需向 Natural Language 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证

from google.cloud import language_v2   def sample_analyze_entities(     gcs_content_uri: str = "gs://cloud-samples-data/language/entity.txt", ) -> None:     """     Analyzes Entities in text file stored in Cloud Storage.      Args:       gcs_content_uri: Google Cloud Storage URI where the file content is located.         e.g. gs://[Your Bucket]/[Path to File]     """      client = language_v2.LanguageServiceClient()      # Available types: PLAIN_TEXT, HTML     document_type_in_plain_text = language_v2.Document.Type.PLAIN_TEXT      # Optional. If not specified, the language is automatically detected.     # For list of supported languages:     # https://cloud.google.com/natural-language/docs/languages     language_code = "en"     document = {         "gcs_content_uri": gcs_content_uri,         "type_": document_type_in_plain_text,         "language_code": language_code,     }      # Available values: NONE, UTF8, UTF16, UTF32.     # See https://cloud.google.com/natural-language/docs/reference/rest/v2/EncodingType.     encoding_type = language_v2.EncodingType.UTF8      response = client.analyze_entities(         request={"document": document, "encoding_type": encoding_type}     )      for entity in response.entities:         print(f"Representative name for the entity: {entity.name}")          # Get entity type, e.g. PERSON, LOCATION, ADDRESS, NUMBER, et al.         # See https://cloud.google.com/natural-language/docs/reference/rest/v2/Entity#type.         print(f"Entity type: {language_v2.Entity.Type(entity.type_).name}")          # Loop over the metadata associated with entity.         # Some entity types may have additional metadata, e.g. ADDRESS entities         # may have metadata for the address street_name, postal_code, et al.         for metadata_name, metadata_value in entity.metadata.items():             print(f"{metadata_name}: {metadata_value}")          # Loop over the mentions of this entity in the input document.         # The API currently supports proper noun mentions.         for mention in entity.mentions:             print(f"Mention text: {mention.text.content}")              # Get the mention type, e.g. PROPER for proper noun             print(                 "Mention type:" f" {language_v2.EntityMention.Type(mention.type_).name}"             )              # Get the probability score associated with the first mention of the entity in the (0, 1.0] range.             print(f"Probability score: {mention.probability}")      # Get the language of the text, which will be the same as     # the language specified in the request or, if not specified,     # the automatically-detected language.     print(f"Language of the text: {response.language_code}")  

其他语言

C#: 请按照客户端库页面上的 C# 设置说明操作,然后访问 .NET 版 Natural Language 参考文档。

PHP:请按照客户端库页面上的 PHP 设置说明操作,然后访问 PHP 版 Natural Language 参考文档。

Ruby: 请按照客户端库页面上的 Ruby 设置说明操作,然后访问 Ruby 版 Natural Language 参考文档。