The C-Phrase Administrator's Guide gives instructions on how to install and launch the C-Phrase Admin Server and how to use its GUI to configure Natural Language Interfaces (NLIs). It also covers the various run-time parameters one can set on NLIs as well as a REST interface that allows delvelopers to integrate NLIs into arbitrary systems.

A companion document of the guide is the C-Phrase Format Manual that gives a detailed description of the XML-formats that underlie all C-Phrase NLIs.

Overview of Operation

The C-Phrase Host (or C-Phrase EC2) is the machine that you run an Admin Server on. You access this Admin Server via your browser where you build, launch, monitor and maintain NLIs that users access via their browsers or through applications making REST calls. Individual NLIs also run on the host but are started and stopped by the administrator through the Admin Server. We support all major browsers including Chrome, Firefox, Opera and Safari.

Broadly speaking, there are two alternative modes to using C-Phrase: remote and stand-alone. In remote mode a natural language interface (NLI) is configured for an existing remote relational database. In stand-alone mode a database and NLI configuration are created entirely within the Admin GUI and both the NLI and database are run on the C-Phrase Host.

Remote Mode

To build an NLI for an existing remote database, first you create a configuration which associates default words and phrases with tables, views, columns, values and foreign keys of your remote database. Then you launch an NLI through which users can access your database. The figures below illustrates this: (1) you connect to your remote database; (2) a configuration is built and saved on the file system of the C-Phrase Host; (3) you launch an NLI; (4) users ask questions over the NLI; (5) SQL is processed over the remote database.

Create configuration for remote database
Launch NLI for remote database

Stand-Alone Mode

To create a stand-alone NLI, first you define a set of tables or upload a CSVs table signatures to define a database schema. Then you create a database. This database is then populated either via loading CSV data or via manual data entry. The entire database is defined as an SQLite database which is saved on the file system of the C-Phrase Host. You may launch the corresponding NLI and have users access it via the standard NLI Browser.

Customize your NLI

No matter if it is remote or stand-alone, you will probably need to improve the quality of your initial NLI by customizing it. In C-Phrase all customization is performed using the Admin GUI. This involves using a tree editor to add phrases attached to database elements and to set special properties. It may also involve changing some default run-time parameters to best fit performance, recall and precision tradeoffs. While you may need to specify some regular expressions and some SQL templates, there is no grammar to specify.