我正在使用基于文本的自然语言处理来自动化应用程序的任务流程。
这有点像聊天应用程序,用户可以在文本区域输入。同时,Python代码会解释用户的需求并执行相应的动作。
应用程序具有以下命令/动作:
- 创建任务
- 命名任务为t1
- 为任务添加时间
- 将t1连接到t2
用户可以在聊天中输入(自然语言)。这将类似于一般的英语对话,例如:
- 你能创建一个名为t1的任务并为其分配时间吗?另外,将t1连接到t2
我可以编写一个基于规则的解析器,但它只能限于少数规则。
我可以使用哪种方法或算法来解决这个任务?我如何将通用英语映射到命令或动作?
回答:
我认为最好的解决方案是使用像API.ai或wit.ai这样的外部服务。你可以创建一个免费账户,然后你可以将某些文本映射到所谓的“意图”。
这些意图定义了系统的主要动作。你还可以定义“实体”,例如捕获任务的名称。请查看这些工具。我相信它们可以处理你的用例。