Skip to content

Tool to transform speech / text to BPMN process.

Notifications You must be signed in to change notification settings

bitnulleins/speech2process

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Speech2Process

Speech2Process is a tool to transform natural language (by text oder audio recorded) to BPMN process (incl. EventLog). This tool is part of a research paper.

Features

  1. Transcribe audio to text (optional)
  2. Extract tasks (events) via NLP tool spaCy
  3. Generate simple EventLog for PM4PY
  4. Process Mining algorithm for BPMN creation

Feature Requests:

  • Modus: Instance based (new) vs. Single Instance Intelligence (implemented)
  • Annotations (e.g. improvment in records)
  • New specific name

View the Demo screenshot and the research paper in german.

Installation

Get project by:

git clone https://github.com/bitnulleins/speech2process.git

Dependencies

You need Python and some Python libraries: requirments.txt

pip install -r requirments.txt

PM4PY

Read the installation manual to install PM4PY on your machine.

Problems with pm4py and CVXOPT?

I also had, but CVXOPT is not necessary. Try the manually Linux ARM instructions:

  1. Make sure you have a C/C++ compiler gcc -v
  2. Install all needed pm4py Python library (if not already installed):
sudo pip3 install pyvis graphviz pydotplus pytz intervaltree deprecation tqdm stringdist pyemd jsonpickle sympy pandas==0.25.3
  1. Install pm4py without dependencies (and without CVXOPT): pip3 install --no-deps pm4py

Install 'flac' libaries

To work with audio files, you've to install flac libaries. Try on linux:

sudo apt-get install -y flac

On MacOS (via brew)

brew install flac

Install graphviz

To generate BPMN model PNG, it requires:

sudo apt-get install graphviz

Check if graphviz works or is already installed:

dot -h

On MacOS (via brew):

brew install graphviz

spaCy language package

To install specific language package:

python -m spacy download <package_name>

For german package:

python -m spacy download de_core_news_sm

Run

Local

  1. Switch to src directoy: cd ./src
  2. Run: python wsgi.py

Run app.py instead for debug mode.

Demo

Research paper (german)

You can read the paper here or cite it:

@misc{Dohrn_2022,
  title={Speech-to-Process: Von Sprache zum Geschäftsprozess in Python},
  url={https://github.com/bitnulleins/speech2process/raw/main/paper_speech2process.pdf},
  author={Dohrn, Finn},
  year={2022},
  month={Nov}
}

Thanks to @ruslanmv for basic Flask project