SENov 15, 2017

Programming Bots by Synthesizing Natural Language Expressions into API Invocations

arXiv:1711.05410v126 citations
Originality Incremental advance
AI Analysis

This addresses the challenge for developers in creating more flexible and powerful bots, though it appears incremental as it builds on existing NLP and API integration methods.

The authors tackled the problem of programming bots to handle dynamic user expressions by introducing BotBase, a platform that synthesizes natural language into API invocations, achieving this through an API knowledge graph and NLP/ML techniques.

At present, bots are still in their preliminary stages of development. Many are relatively simple, or developed ad-hoc for a very specific use-case. For this reason, they are typically programmed manually, or utilize machine-learning classifiers to interpret a fixed set of user utterances. In reality, real world conversations with humans require support for dynamically capturing users expressions. Moreover, bots will derive immeasurable value by programming them to invoke APIs for their results. Today, within the Web and Mobile development community, complex applications are being stringed together with a few lines of code -- all made possible by APIs. Yet, developers today are not as empowered to program bots in much the same way. To overcome this, we introduce BotBase, a bot programming platform that dynamically synthesizes natural language user expressions into API invocations. Our solution is two faceted: Firstly, we construct an API knowledge graph to encode and evolve APIs; secondly, leveraging the above we apply techniques in NLP, ML and Entity Recognition to perform the required synthesis from natural language user expressions into API calls.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes