Contains the tool for viewing valency frames and adding user-defined senses to underlying sentences.
Go to file
2019-04-21 13:14:34 +02:00
data added more samples (bigger files to optimize) 2019-04-14 16:36:45 +02:00
dip_src modifying frames api 2019-03-28 19:17:45 +01:00
dockerfiles mongoexpress web auth 2019-04-15 16:43:21 +02:00
old_api_examples some more old_api output 2019-04-06 17:39:55 +02:00
src bug fix: adding _ to adjective headwords 2019-04-19 07:45:50 +02:00
test_make added env.local -- gitignored credentials file 2019-04-15 17:03:39 +02:00
.gitignore added env.local -- gitignored credentials file 2019-04-15 17:03:39 +02:00
.gitmodules make fill_database 2019-03-17 17:25:59 +01:00
env.default added env.local -- gitignored credentials file 2019-04-15 17:03:39 +02:00
Makefile new commit in cjvt-corpusparser 2019-04-15 20:49:10 +02:00
README.md ready to read full corpus to db 2019-04-21 13:14:34 +02:00

cjvt-valency

Required submodules:

  • https://gitea.cjvt.si/kristjan/cjvt-corpusparser.git
$ git submodule init
$ git submodule update

Components

Credentials

Copy env.default to env.local (gitignored).
Modify database credentials in env.local.
The file is used by make.

Database (2 containers)

Set db admin, user, pass, etc in 'Makefile'.
Spin up the database service and create users:
Make sure you create a folder for the data on host machine (see mongodb-stack.yml volumes.

$ mkdir -p ${HOME}/mongo_container/data/  # default one
# $ make database-clean  # opt, removes docker services, not data
$ make database-service
$ make database-users  # only first time; user data persists too

Populate the database with data form files:

  • ssj500k.xml
  • kres.xml
  • kres_SRL.json

Set path to files in Makefile.

# spin up a container with python env
$ make python-env

# install our packages
$ make python-env-install

# run the code
# beforehand, set the data files in Makefile
$ make fill-database

# this is a long operation
# if running on a remote server, use nohup:
$ nohup $(make fill-database > fill-database.log) &

If all goes well, we should be able to inspect the database, filled with corpora, on 0.0.0.0:8087.

Flask backend (1 container)

Relies heavily on the database. Set that up first.

# spin up container
$ make python-env

# install our packages
$ make python-env-install

# needs to be ran once to modify a new database
$ make backend-prepare-db

# with debugger
$ make backend-dev

# production
$ make backend-prod

API endpoints:

  • GET word list (pre-cached)
  • GET reduced frames (pre-cached)
  • POST senses
  • User auth logic

Vue frontend (1 container)

Relies on Flask backend.
Before running make, you might need to set the correct api address.
Check ./src/frontend_vue/config/config_prod.json.
bash

# $ make frontend-dev  # development
$ make frontend-prod

App available on: http://0.0.0.0:8080.