https://github.com/yubowenok/flowsense
FlowSense: A Natural Language Interface for Visual Data Exploration within a Dataflow System
https://github.com/yubowenok/flowsense
corenlp nlp semantic-parsing sempre visflow visualization
Last synced: about 1 year ago
JSON representation
FlowSense: A Natural Language Interface for Visual Data Exploration within a Dataflow System
- Host: GitHub
- URL: https://github.com/yubowenok/flowsense
- Owner: yubowenok
- License: gpl-3.0
- Created: 2016-12-14T23:19:33.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2022-12-08T18:16:22.000Z (over 3 years ago)
- Last Synced: 2025-04-11T05:49:18.734Z (about 1 year ago)
- Topics: corenlp, nlp, semantic-parsing, sempre, visflow, visualization
- Language: TypeScript
- Homepage: https://visflow.org/flowsense/
- Size: 874 KB
- Stars: 46
- Watchers: 3
- Forks: 5
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# FlowSense: A Natural Language Interface for Visual Data Exploration within a Dataflow System
[](https://travis-ci.org/yubowenok/flowsense)
FlowSense is a natural language interface (NLI) that is integrated into the VisFlow dataflow visualization framework to support dataflow diagram editing with natural language (NL).
The user types or uses voice to input an NL query, which can be parsed by FlowSense and mapped to a VisFlow function to update the dataflow diagrams.
This repository contains the FlowSense core implementation that includes its grammar rules, backend API, integration tests, and experiment code.
This content of this repository is structured as:
- ``src/grammar``: SEMPRE grammar files
- ``src/script``: Server API implemented in Python, and grammar analysis code
- ``src/*.ts``: Server API implemented in TypeScript
- ``data``: Training examples and auto completion base templates
## Installation
Run the installation script:
- ``yarn install`` (for setting up backend API)
- ``pip install --user -r requirements.txt`` (for setting up python backend API)
Install SEMPRE from [here](https://github.com/yubowenok/sempre).
Note that this is a forked repository from the [original SEMPRE repository](https://github.com/percyliang/sempre) for extended parsing utility.
- ``git clone https://github.com/yubowenok/sempre``
- ``cd sempre && ../sempreCache.sh`` (pull SEMPRE dependencies if they not yet exist)
- ``ant core corenlp`` (SEMPRE installation)
## Running FlowSense
- Run the backend API node server: ``yarn start``
- Run the backend API python server: ``python src/script/similarity.py``
- Run SEMPRE: ``cd sempre && ../runSempre`` (SEMPRE should be run from the ``./sempre`` directory)
To verify that SEMPRE is working in the background, go to ``localhost:8400/sempre`` for SEMPRE web interface and try some queries there.
## Running Tests
- ``cd sempre`` (make sure the current directory is ``./sempre``)
- ``yarn build``
- ``../tests/run.sh``
## Publication
Bowen Yu, and Claudio T. Silva.
_FlowSense: A Natural Language Interface for Visual Data Exploration within a Dataflow System._
In IEEE Transactions on Visualization and Computer Graphics (Proc. VAST), 2019.
```
@ARTICLE{YuB19,
author = {B. {Yu} and C. T. {Silva}},
journal = {IEEE Transactions on Visualization and Computer Graphics},
title = {FlowSense: A Natural Language Interface for Visual Data Exploration within a Dataflow System},
year = {2019},
doi = {10.1109/TVCG.2019.2934668},
}
```