准备工作
- 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
- 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
- 在屏幕左上角,点击开始实验即可开始
Create an API Key
/ 40
Make an Entity Analysis Request
/ 30
Check the Entity Analysis response
/ 30
Create an API Key
/ 40
Make an Entity Analysis Request
/ 30
Check the Entity Analysis response
/ 30
通过 Cloud Natural Language API,您可以从文本中提取实体,执行情感和语法分析,以及将文本分类。
在此实验中,您将学习如何使用 Natural Language API 分析实体、情感和语法。
在本实验中,您将学习如何完成以下操作:
请阅读以下说明。实验是计时的,并且您无法暂停实验。计时器在您点击开始实验后即开始计时,显示 Google Cloud 资源可供您使用多长时间。
此实操实验可让您在真实的云环境中开展实验活动,免受模拟或演示环境的局限。为此,我们会向您提供新的临时凭据,您可以在该实验的规定时间内通过此凭据登录和访问 Google Cloud。
为完成此实验,您需要:
点击开始实验按钮。如果该实验需要付费,系统会打开一个对话框供您选择支付方式。右侧是实验设置和访问权限面板,其中包含以下内容:
请注意,实验计时器位于页面顶部附近,将显示剩余时间。
点击打开 Google Cloud 控制台(如果您使用的是 Chrome 浏览器,请右键点击并选择在无痕式窗口中打开链接)。
该实验会启动资源并打开另一个标签页,显示“登录”页面。
提示:可以将这些标签页分别放在不同的窗口中,并排显示。
如有必要,请复制下方的用户名,然后将其粘贴到登录对话框中。
您也可以在实验设置和访问权限面板中找到“用户名”。
点击下一步。
复制下面的密码,然后将其粘贴到欢迎对话框中。
您也可以在实验设置和访问权限面板中找到“密码”。
点击下一步。
依次点击进入后续页面:
片刻之后,系统会在此标签页中打开 Google Cloud 控制台。
由于您使用 curl 向 Natural Language API 发送请求,因此必须生成要在请求网址中传递的 API 密钥。
要创建 API 密钥,请在 Cloud 控制台中选择导航菜单 > API 和服务 > 凭证。
点击创建凭证,然后选择 API 密钥。
在创建 API 密钥侧边栏中,在可以使用此密钥访问的 API 下方,点击选择 API 对应的下拉菜单。
搜索或滚动查找 Cloud Natural Language API,然后勾选相应复选框。
点击确定。
点击创建。
复制生成的 API 密钥,然后点击关闭。
点击检查我的进度以验证是否完成了以下目标:
为了执行接下来的步骤,请通过 SSH 连接到为您预配的实例。
点击导航菜单 > Compute Engine。您应该会在虚拟机实例列表中看到预配的 linux 实例 linux-instance。
点击 SSH 按钮。您将转跳至一个交互式 shell。
在命令行中,输入以下内容,并将 <YOUR_API_KEY> 替换为您刚刚复制的密钥:
您使用的第一个 Natural Language API 方法是 analyzeEntities。通过此方法,API 可以从文本中提取实体(例如人物、地点和事件)。若要试用 API 的实体分析功能,请使用以下语句:
Joanne Rowling, who writes under the pen names J. K. Rowling and Robert Galbraith, is a British novelist and screenwriter who wrote the Harry Potter fantasy series.
您在 request.json 文件中构建对 Natural Language API 的请求。
request.json 文件:request.json 中输入或粘贴以下代码:在请求中,您要告知 Natural Language API 有关所发送文本的信息。支持的类型值为 PLAIN_TEXT 或 HTML。在内容中,传递要发送给 Natural Language API 以进行分析的文本。
Natural Language API 还支持发送存储在 Cloud Storage 中的文件以进行文本处理。如果您想发送来自 Cloud Storage 的文件,请将 content 替换为 gcsContentUri,并为其赋予 Cloud Storage 中的文本文件的 URI 值。
encodingType 告知 API 在处理文本时使用哪种类型的文本编码。API 将使用它来计算特定实体是否出现在文本中。
点击检查我的进度以验证是否完成了以下目标:
curl 命令(全部包含在一个命令行中)将请求正文以及之前保存的 API 密钥环境变量传递给 Natural Language API:响应的开头应如下所示:
对于响应中的每个实体,您将获得实体 type(类型)、相关的维基百科网址(若有)、salience(显著性)和指示此实体在文本中出现的位置的索引。显著性是 [0,1] 范围内的一个数字,指的是相应实体对整个文本的中心性。
Natural Language API 还可识别以不同方式提及的同一实体。查看响应中的 mentions 列表:API 能够分辨出“Joanne Rowling”“Rowling”“novelist”和“Robert Galbriath”均指代同一个人。
点击检查我的进度以验证是否完成了以下目标:
通过 Natural Language API,不仅可以提取实体,还能对一段文本执行情感分析。此 JSON 请求将包含与上一请求相同的参数,但这次我们将更改文本,使其包含的内容具有更强烈的感情。
request.json 中的代码替换为以下代码,并将下方 content 随意替换为您自己的文本:按 CTRL+X 退出 nano,然后按 Y 保存文件,再按 ENTER 确认。
接下来,向此 API 的 analyzeSentiment 端点发送请求:
响应应如下所示:
注意您获得了两种类型的情感值:文档整体的情感,以及按语句细分的情感。sentiment 方法返回了两个值:
score(得分)- 从 -1.0 到 1.0 的数字,指示情感的积极或消极程度。magnitude(量级)- 从 0 到无穷的数字,表示语句中所表达情感的权重,无论该情感是积极还是消极的。包含高权重语句的较长文本段落具有较高的 magnitude 值。第一个语句的 score 为积极 (0.7),而第二个语句的 score 为中性 (0.1)。
Natural Language API 不仅提供有关整个文本文档的情感详细信息,还能按文本中的实体细分情感。使用以下语句作为示例:
I liked the sushi but the service was terrible.
在本例中,像上例中那样获取整个句子的情感分数可能不怎么有用。如果这是餐厅评价,并且您有同一间餐厅的数百条评价,您会想要了解人们在评价中表明自己喜欢和不喜欢哪些确切方面。幸运的是,Natural Language API 提供了一种方法来获取文本中每个实体对应的情感,称为 analyzeEntitySentiment。我们来看看具体的操作方式。
request.json,使其包含以下语句:按 CTRL+X 退出 nano,然后按 Y 保存文件,再按 ENTER 确认。
然后使用以下 curl 命令调用 analyzeEntitySentiment 端点:
在响应中,您得到了两个实体对象:“sushi”一个、“service”一个。完整的 JSON 响应如下:
可以看到,“sushi”的得分为中性的 0,而“service”的得分为 -0.7。不错!您可能还会注意到,针对每个实体返回了两个情感对象。如果这些字词中的任意一个被提及多次,该 API 将针对每次提及返回不同的情感分数和量级,以及该实体的总体情感。
Natural Language API 提供的另一种方法是语法分析,可用于更深入地探究文本的语言细节。analyzeSyntax 会提取语言信息,将给定文本细分为一系列语句和词元(一般是字词边界),以提供针对这些词元的进一步分析。对于文本中的每个字词,API 将告知您该字词的词性(名词、动词、形容词等)及其与语句中其他字词的关系(它是否为根动词?是否为修饰语?)。
用简单语句试一试。此 JSON 请求与以上各个请求类似,只是增加了特征键。它用于指示 API 执行语法注释。
request.json 中的代码替换为以下内容:按 CTRL+X 退出 nano,然后按 Y 保存文件,再按 ENTER 确认。
然后调用 API 的 analyzeSyntax 方法:
对于语句中的每个词元,响应会返回如下所示的一个对象:
让我们详细看下响应的构成元素:
partOfSpeech 表明“Joanne”是一个名词。dependencyEdge 包含可用于创建文本依存关系解析树的数据。本质上,这是呈现语句中字词间相互关系的图表。以上语句的依存关系解析树可能如下所示:headTokenIndex 是具有指向“Joanne”的弧的词元的索引。您可以将语句中的每个词元视为数组中的一个词。headTokenIndex 1 表示“Rowling”,它在树中与“Joanne”相连。标签 NN(代表复合名词修饰语)描述了该词在语句中的角色。“Joanne”修饰“Rowling”,即语句的主语。lemma 是字词的规范形式。例如,run、runs、ran 和 running 这几个动词的 lemma 均为 run。lemma 值可用于跟踪一个词在大段文字中的出现次数。Natural Language API 还支持英语以外的语言(可在语言支持指南中找到完整列表)。
request.json 的代码,在其中添加日语语句:请注意,您并未告知 API 文本采用哪种语言写成,它能自动检测语言!
analyzeEntities 端点:您将获得以下响应:
维基百科网址甚至指向日语的维基百科页面,很棒!
您已学习如何通过 Cloud Natural Language API 提取实体、分析情感和进行语法注释,以执行文本分析。在此实验中,您创建了 Natural Language API 请求,并使用 curl 调用了该 API,提取了实体并使用 Natural Language API 对文本运行情感分析,对文本执行语言分析,并用其他语言创建了 Natural Language API 请求。
…可帮助您充分利用 Google Cloud 技术。我们的课程会讲解各项技能与最佳实践,可帮助您迅速上手使用并继续学习更深入的知识。我们提供从基础到高级的全方位培训,并有点播、直播和虚拟三种方式选择,让您可以按照自己的日程安排学习时间。各项认证可以帮助您核实并证明您在 Google Cloud 技术方面的技能与专业知识。
本手册最后更新时间:2026 年 6 月 19 日
本实验最后测试时间:2026 年 6 月 19 日
版权所有 2026 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。
此内容目前不可用
一旦可用,我们会通过电子邮件告知您
太好了!
一旦可用,我们会通过电子邮件告知您
一次一个实验
确认结束所有现有实验并开始此实验