# Padatious #
An efficient and agile neural network intent parser
### Features ###
- Intents are easy to create
- Requires a relatively small amount of data
- Intents run independent of each other
- Easily extract entities (ie. Find the nearest *gas station* -> `place: gas station`)
- Fast training with a modular approach to neural networks
### API Example ###
Here's a simple example of how to use Padatious:
**program.py**:
```Python
from padatious import IntentContainer
container = IntentContainer('intent_cache')
container.add_intent('hello', ['Hi there!', 'Hello.'])
container.add_intent('goodbye', ['See you!', 'Goodbye!'])
container.add_intent('search', ['Search for {query} (using|on) {engine}.'])
container.train()
print(container.calc_intent('Hello there!'))
print(container.calc_intent('Search for cats on CatTube.'))
container.remove_intent('goodbye')
```
Run with:
```bash
python3 program.py
```
### Installing ###
Padatious requires the following native packages to be installed:
- [`FANN`][fann] (with dev headers)
- Python development headers
- `pip3`
- `swig`
Ubuntu:
```
sudo apt-get install libfann-dev python3-dev python3-pip swig
```
Next, install Padatious via `pip3`:
```
pip3 install padatious
```
Padatious also works in Python 2 if you are unable to upgrade.
[fann]:https://github.com/libfann/fann