Google Cloud Translate V3 Java - PERMISSION_DENIED:Cloud IAM 权限'cloudtranslate.generalModels.predic



我在谷歌云中有一个项目,已经成功地使用了语音API。我是唯一的用户,并且我对该服务拥有所有者权限。我的帐户已连接到计费。环境凭据已设置,并且可以与其他服务正常工作。我使用的是Java SDK v3(高级翻译(。

在java中运行翻译时,我得到了PERMISSION_DENIED: Cloud IAM permission 'cloudtranslate.generalModels.predict' denied

try (TranslationServiceClient client = TranslationServiceClient.create()) {
// projects/MY_PROJECT_ID/locations/global
LocationName parent = LocationName.of("MY_PROJECT_ID", "global");
// projects/MY_PROJECT_ID/locations/global/models/general/base
String model = parent.toString() +  "/models/general/base";

TranslateTextRequest request =
TranslateTextRequest.newBuilder()
.setParent(parent.toString())
.setMimeType("text/plain")
.setSourceLanguageCode("he")
.setTargetLanguageCode("en")
.setModel(model)
.addContents(source)
.build();
TranslateTextResponse response = client.translateText(request);
for (Translation translation : response.getTranslationsList()) {
System.out.printf("Translated text: %sn", translation.getTranslatedText());
}
}

请告知:(

因此,您需要执行以下步骤:

  1. 您需要在中创建一个服务帐户https://console.cloud.google.com/iam-admin/serviceaccounts将为此帐户生成电子邮件地址。收到。

  2. 请确保您已创建账单,并已启用谷歌翻译API

  3. 接下来,您需要授予对新服务帐户的访问权限。IAM->授予访问权限->添加原则(这是您已从第一步复制的电子邮件地址(->选择角色(需要找到"云翻译API管理员"(

重新运行应用程序。

最新更新