Skip to content

sizxy3462g5829bz/mantistable4-modified

Repository files navigation

MantisTable

MantisTable is a tool for Semantic Table Interpretation. The tool needs a running LamAPI endpoint.

Getting Started

These instructions will get you a copy of the project up and running on your local machine.

Prerequisites and installation

The tool requires to have Docker installed and Docker-Compose. It also requires Node/NPM for GUI dependencies.

To install the requirements on Linux run:

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USERNAME
sudo wget -O  /usr/local/bin/docker-compose https://github.com/docker/compose/releases/download/1.25.0/docker-compose-Linux-x86_64
sudo chmod +x /usr/local/bin/docker-compose

While on Windows or Mac get Docker Desktop CE.

To install NodeJS on any debian based distribution:

curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash –
sudo apt-get install -y node-js

Or checkout the Download page for Windows or Mac. ATTENTION: volumes are quite slow on Windows, we suggest to use WSL2 and clone this repo inside the Linux home directory running compose from there. Now clone this repository. You can checkout the tag MantisTableSE4 to get the version used during SemTab2020. We use the development branch actively and from time to time it may be broken while master branch should be always runnable.

Copy the .env-example file in a .env file.

PORT is the port where the tool will start, THREADS is the number of threads that will be used concurrently (suggested as the number of CPU cores you have available), LAMAPI is set to True if you want to use a local endpoint or False to use our demo remote endpoint (network overhead is much relevant, this is not suggested).

Now install the npm dependencies:

cd django && npm install
cd ../frontend && npm install
cd ..

And finally start MantisTable SE with docker-compose:

docker-compose -f docker-compose-prod.yml up

App settings

If you can't reach the frontend dashboard you probably have to add your host to the settings.py file under ALLOWED_HOSTS. Check line 50. In this file you can also change username and password for the dashboard.

The main interface is currently under development, you can reach a small admin dashboard on http://localhost:PORT/dashboard/. The default username is admin and the default password is mantis4.

Usage

Mantis4 As you can see in the picture above the interface is quite basic. Under LamAPI backends you should see an online endpoint in order to annotate a table or a dataset. Under the "import" box you can select a table as json file or zip file (containing only json files without folders) and put a "dataset name". If you reuse the same name in multiple uploads it will merge the files. You can now select a dataset and process it by pressing "process selected". Now the chart should move with processes allocated. After the processing of the dataset the chart should show 0 running and you can press "Export selected" in order to Download the CEA annotations for that dataset. CPA and CTA download from the GUI is WIP.

License

This project is licensed under the Apache License - see the LICENSE file for details