Giter Club home page Giter Club logo

itell's Introduction

iTELL: Intelligent Technologically Enhanced Language Learning

Includes:

  • iTELL English Writing Support System (formerly known as "LCC-NTU")
  • CALLIG: Computer-Assisted Language Learning using Improvisational Games
  • iXue: an intelligent system to support Mandarin Chinese learners
  • DELPH-IN Grammarium

I highly reccomend to create a Python environment using virtualenv to install such versions You must install all libraries in requirements.txt

Make sure ACE and ART are on path to the WSGI. Both binaries need to be in a place where WSGI can see it. In your own bin it will not work. I chose to put it in /usr/bin/ace and it works fine.

You need to start by installing some basics:

$ sudo apt-get update
$ sudo apt-get -y upgrade
$ sudo apt-get install -y python3-pip
$ sudo apt-get install build-essential libssl-dev libffi-dev python-dev
$ sudo apt-get install -y python3-dev python3-venv
$ sudo apt-get install virtualenv
$ sudo apt-get install subversion
$ sudo apt-get install python-nltk

Now you need to install the python dependencies. We will use requirements.txt for this:

$ cd ~/
$ mkdir environments
$ cd environments/
environments/$ virtualenv -p python3 itell_env
environments/$ source itell_env/bin/activate
(itell_env) environments/$ pip install -r /var/www/itell/requirements.txt

Make sure you have the NLTK data available from a publicly visible location. A good way to put it is inside the venv (folder) we just created. For example:

python -m nltk.downloader -d /var/www/itell/venv/nltk_data wordnet
python -m nltk.downloader -d /var/www/itell/venv/nltk_data omw
python -m nltk.downloader -d /var/www/itell/venv/nltk_data punkt
python -m nltk.downloader -d /var/www/itell/venv/nltk_data conduct
python -m nltk.downloader -d /var/www/itell/venv/nltk_data averaged_perceptron_tagger

Make sure you have the grammars in place (app-folder/static/...).

First run:

/var/www/itell/delphin$ bash pull_update_erg2018.bash
/var/www/itell/delphin$ bash pull_update_ergTRUNK.bash
/var/www/itell/delphin$ bash pull_update_zhong.bash

Then, for now, you need to compile and copy these grammars to /var/www/itell/static/ erg.dat erg-mal.dat zhong.dat

Build databases and basic data files: /var/www/itell/bin$ bash build_db.bash /var/www/itell/bin$ python dump_wn.py

Both the folders and content of [db\](db) and [delphin\](delphin) need to be accessible by 'www-data', with read, write and executing permissions.

The best way to do this is to change the group ownership of these folders to 'www-data'

Failing to do this will, among other things, show the access to dbs as "locked".

sudo chgrp -R www-data delphin/ sudo chgrp -R www-data db/

Copy something this into your apache2 config.

########################################################################
# This is running under a virtual-env for python3.
#
# The path should be the root directory of the virtual environment,
# which in turn contains the bin and lib directories.
#
# Apache needs to be able to run your environment!
# Rather than change the permissions on your home directory, it might
# be better to consider locating your WSGI application code and any
# Python virtual environment outside of your home directory.
#
# source:
# modwsgi.readthedocs.io/en/develop/user-guides/virtual-environments.html
########################################################################
WSGIDaemonProcess itell user=www-data group=www-data threads=5  python-home=/home/lmc/environments/itell_env
WSGIScriptAlias /itell /var/www/itell/run_itell.wsgi
<Directory /var/www/itell/>
    WSGIProcessGroup itell
    WSGIApplicationGroup %{GLOBAL}
    WSGIScriptReloading On
    Require all granted
</Directory>

Additional Tweakings for Apache Enconding Errors

In the event you get errors such as: UnicodeEncodeError: 'ascii' codec can't encode character 'xxx' in position xxx: ordinal not in range(128)

This is likely due to the default enconding configs available to apache2, and that are possibly incomplete in your machine. To avoid these issues, ensure that the following lines are included in your apache envvars file (typically found in /etc/apache2/envvars).

export LANG='en_US.UTF-8'
export LC_ALL='en_US.UTF-8'

itell's People

Contributors

lmorgadodacosta avatar neosome avatar rogerwinder avatar

Stargazers

 avatar XC avatar Alexandre Rademaker avatar

Watchers

Alexandre Rademaker avatar  avatar

itell's Issues

Regression Time-Stamps

It would be nice if we could get the start and end time of regression tests to calculate the duration of the regression test.

Provide Error-Span while performing document checking

It would be nice to provide a better pinpoint of the detected errors in the sentence (especially when there are multiple errors with the same or equally spelled spans). We could use โš ๏ธ after the error, or try to highlight just the error span.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.