1

我使用了这个命令:

"gcloud ml 语言分析--语法 --language=pt-br --content="Capítulo"

并得到这个错误:

错误:(gcloud.ml.language.analyze-syntax)无法读取命令行参数 [--content=Cap\xedtulo],因为它似乎不是有效的 7 位 ASCII。

gcloud ml 语言要分析语法 --content=Cap\sedtulo ^invalid character

但是,如果我使用演示工具 ( https://cloud.google.com/natural-language/?hl=pt-br ),我会得到正确的响应。

为什么?如何将谷歌自然语言与葡萄牙语或西班牙语等重音语言一起使用?

4

1 回答 1

0

免责声明:我支持谷歌云平台。

显然这可能是一个内部问题,这就是为什么我会向适当的调查团队提出这个问题。我将对我的答案发表评论,链接正确的Google Public Issue Tracker page

为什么?

如果运行以下命令,您可以获得有关此错误的更多信息:

gcloud ml language analyze-syntax --content-file=analyze_test.txt --verbosity=debug 

其中analyze_test.txt包含

卡皮图洛

抛出的错误:

File "/google/google-cloud-sdk/lib/third_party/apitools/base/protorpclite/messages.py", line 1541, in validate_element
    raise validation_error
ValidationError: Field content encountered non-ASCII string 'Cap\xc3\xadtulo\n': 'ascii' codec can't decode byte 0xc3 in position 3: ordinal not in range(128)

表明在此过程中的某个地方,当gcloud ml与该库进行通信时,缺少编码规范。缺少编码,库保护自己免受未知字符(7 位 ASCII 字符除外)的影响。


正如文档所建议的那样,应该将此命令用于实验或极短的文本。在生产中,或在应用程序中应该使用即API

于 2018-01-03T12:10:01.947 回答