无法使用python对话框流客户端在对话框流中创建知识库。
为IAM服务帐户中的对话框授予管理权限。
我已经将对话框管理角色赋予了我正在使用的客户端邮件。
我使用为服务帐户生成的json密钥,并将其作为环境变量导出。
这是我使用的代码:
import dialogflow_v2beta1 as dialogflow
client = dialogflow.KnowledgeBasesClient()
project_path = client.project_path(project_id)
knowledge_base = dialogflow.types.KnowledgeBase(
display_name=display_name)
response = client.create_knowledge_base(project_path, knowledge_base)我能够在已经创建的知识库中创建/删除/列出文档,但创建知识库会引发此错误
error: google.api_core.exceptions.PermissionDenied: 403 IAM permission 'dialogflow.knowledgeBases.create' on 'projects/api_test2' denied发布于 2019-11-23 13:26:55
问题似乎与我用来处理知识库的服务帐户有关,显然,目前还没有一种方法可以为对话框流python客户端提供处理知识库的权限(如果我错了,请纠正我)。
我发现的唯一的工作就是使用卷曲运算来处理知识库。
在使用curl对知识库进行操作之后,我决定将所有python客户端代码更改为curl和子流程。与python客户机相比,它非常简单。
编辑(07/27/2020):对话框流python客户端的IAM权限没有任何改变,可能要等到KnowledgeBases从beta阶段出来。同时,已实现的请求比curl和子进程更好地完成这一任务,并建议这样做。
https://stackoverflow.com/questions/57181311
复制相似问题