我正在尝试使用谷歌云language_v1
api 从一些输入文本中提取命名实体,但是,我发现编码参数发生了一些可疑的事情。当我跑
txt = '''La divinité des uji la plus importante était ( et est toujours ) Amaterasu , la déesse solaire . '''.strip()
client = language.LanguageServiceClient()
document = types.Document(content=txt, type=enums.Document.Type.PLAIN_TEXT, language='fr')
ents = client.analyze_entities(document, encoding_type=EncodingType.UTF8)
ents
可以正确检测到实体“Amaterasu”,但是返回的起始偏移量是 67 而不是 65。但是,如果我指定encoding_type=EncodingType.UTF16
偏移量是正确的。
请注意,默认情况下,python 源代码文件的编码是 UTF-8,无论如何,如果我将文本存储在 UTF-8 文件中并使用正确的编码读取它,我会得到相同的结果。知道发生了什么吗?