[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE.md)
# Padatious
An efficient and agile neural network intent parser powered by [fann](https://github.com/libfann/fann).
This repository contains a OVOS pipeline plugin and bundles a fork of the original [padatious](https://github.com/MycroftAI/padatious) from the defunct MycroftAI
## 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
### 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 libfann-dev python3-fann2
```
Next, install Padatious via `pip3`:
```
pip3 install padatious
```
Padatious also works in Python 2 if you are unable to upgrade.
### Direct Usage
Here's a simple example of how to use Padatious:
```Python
from ovos_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')
```
### License
> **NOTE**: This plugin is an exception to [OVOS universal donor policy](https://openvoiceos.github.io/ovos-technical-manual/license/)
It is licensed under the Apache 2 license, however it depends on fann2 which is licensed under the LGPL. [Why is this an issue?](https://softwareengineering.stackexchange.com/questions/119436/what-does-gpl-with-classpath-exception-mean-in-practice/326325#326325)
Raw data
{
"_id": null,
"home_page": "https://github.com/OpenVoiceOS/ovos-padatious-pipeline-plugin",
"name": "ovos-padatious",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "intent-parser parser text text-processing",
"author": "Matthew Scholefield",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/ef/51/5ed6f89cad84032e689c3ade1b301b387f6a08fa0ea714b32bee043859be/ovos-padatious-1.0.4.tar.gz",
"platform": null,
"description": "[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE.md) \n# Padatious\n\nAn efficient and agile neural network intent parser powered by [fann](https://github.com/libfann/fann).\n\nThis repository contains a OVOS pipeline plugin and bundles a fork of the original [padatious](https://github.com/MycroftAI/padatious) from the defunct MycroftAI\n\n## Features\n\n - Intents are easy to create\n - Requires a relatively small amount of data\n - Intents run independent of each other\n - Easily extract entities (ie. Find the nearest *gas station* -> `place: gas station`)\n - Fast training with a modular approach to neural networks\n\n\n### Installing\n\nPadatious requires the following native packages to be installed:\n\n - [`FANN`][fann] (with dev headers)\n - Python development headers\n - `pip3`\n - `swig`\n\nUbuntu:\n\n```\nsudo apt-get install libfann-dev python3-dev python3-pip swig libfann-dev python3-fann2\n```\n\nNext, install Padatious via `pip3`:\n\n```\npip3 install padatious\n```\nPadatious also works in Python 2 if you are unable to upgrade.\n\n### Direct Usage\n\nHere's a simple example of how to use Padatious:\n\n```Python\nfrom ovos_padatious import IntentContainer\n\ncontainer = IntentContainer('intent_cache')\ncontainer.add_intent('hello', ['Hi there!', 'Hello.'])\ncontainer.add_intent('goodbye', ['See you!', 'Goodbye!'])\ncontainer.add_intent('search', ['Search for {query} (using|on) {engine}.'])\ncontainer.train()\n\nprint(container.calc_intent('Hello there!'))\nprint(container.calc_intent('Search for cats on CatTube.'))\n\ncontainer.remove_intent('goodbye')\n```\n\n### License\n\n> **NOTE**: This plugin is an exception to [OVOS universal donor policy](https://openvoiceos.github.io/ovos-technical-manual/license/)\n\nIt is licensed under the Apache 2 license, however it depends on fann2 which is licensed under the LGPL. [Why is this an issue?](https://softwareengineering.stackexchange.com/questions/119436/what-does-gpl-with-classpath-exception-mean-in-practice/326325#326325)\n\n\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "A neural network intent parser",
"version": "1.0.4",
"project_urls": {
"Homepage": "https://github.com/OpenVoiceOS/ovos-padatious-pipeline-plugin"
},
"split_keywords": [
"intent-parser",
"parser",
"text",
"text-processing"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "9a2eca18513400f0f338dea2593281a4c44d108111bc4b3aecbd8ec857ada09c",
"md5": "f8967afb37257cb5dfabf4d0fd5134f9",
"sha256": "f36b5c49cbe4814d90719adfb0864274a15f7e604ff404cea14021a2216c0a52"
},
"downloads": -1,
"filename": "ovos_padatious-1.0.4-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "f8967afb37257cb5dfabf4d0fd5134f9",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 36234,
"upload_time": "2024-11-19T20:19:40",
"upload_time_iso_8601": "2024-11-19T20:19:40.683446Z",
"url": "https://files.pythonhosted.org/packages/9a/2e/ca18513400f0f338dea2593281a4c44d108111bc4b3aecbd8ec857ada09c/ovos_padatious-1.0.4-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ef515ed6f89cad84032e689c3ade1b301b387f6a08fa0ea714b32bee043859be",
"md5": "602e48123622f38a68104b69273fd867",
"sha256": "5688df5b209d83737870d94c37fee1eeec791be2cc2d37f04cabba5a0155efb0"
},
"downloads": -1,
"filename": "ovos-padatious-1.0.4.tar.gz",
"has_sig": false,
"md5_digest": "602e48123622f38a68104b69273fd867",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 32081,
"upload_time": "2024-11-19T20:19:42",
"upload_time_iso_8601": "2024-11-19T20:19:42.353827Z",
"url": "https://files.pythonhosted.org/packages/ef/51/5ed6f89cad84032e689c3ade1b301b387f6a08fa0ea714b32bee043859be/ovos-padatious-1.0.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-19 20:19:42",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "OpenVoiceOS",
"github_project": "ovos-padatious-pipeline-plugin",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "fann2",
"specs": [
[
">=",
"1.0.7"
],
[
"<",
"1.1.0"
]
]
},
{
"name": "xxhash",
"specs": []
},
{
"name": "ovos-plugin-manager",
"specs": [
[
">=",
"0.5.0"
],
[
"<",
"1.0.0"
]
]
},
{
"name": "ovos-workshop",
"specs": [
[
"<",
"4.0.0"
],
[
">=",
"0.1.7"
]
]
},
{
"name": "ovos-utils",
"specs": [
[
">=",
"0.3.4"
],
[
"<",
"1.0.0"
]
]
},
{
"name": "langcodes",
"specs": []
}
],
"lcname": "ovos-padatious"
}