summaryrefslogtreecommitdiff
path: root/python-qary.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-17 02:56:54 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-17 02:56:54 +0000
commit2af87bc40f89caaa2a70b5bb66df188e13b0b02e (patch)
tree9fba0f4e0a7611eb7a58ceb7135863dcd3690d2b /python-qary.spec
parent61934f0be80066a338eb30e9418f5cbb0f797c8e (diff)
automatic import of python-qary
Diffstat (limited to 'python-qary.spec')
-rw-r--r--python-qary.spec481
1 files changed, 481 insertions, 0 deletions
diff --git a/python-qary.spec b/python-qary.spec
new file mode 100644
index 0000000..7a1a426
--- /dev/null
+++ b/python-qary.spec
@@ -0,0 +1,481 @@
+%global _empty_manifest_terminate_build 0
+Name: python-qary
+Version: 0.7.27
+Release: 1
+Summary: A chatbot that assists rather than manipulates.
+License: MIT
+URL: https://gitlab.com/tangibleai/qary
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/01/b4/cb229eeda2f49c8fbbe2160e7d87d5c08bdcb61cc93f9e30ee1056127f01/qary-0.7.27.tar.gz
+BuildArch: noarch
+
+Requires: python3-pip
+Requires: python3-poetry
+Requires: python3-beautifulsoup4
+Requires: python3-bleach
+Requires: python3-bidict
+Requires: python3-boto3
+Requires: python3-botocore
+Requires: python3-configargparse
+Requires: python3-cython
+Requires: python3-dataframe-image
+Requires: python3-Django
+Requires: python3-edit-distance
+Requires: python3-elasticsearch
+Requires: python3-environment
+Requires: python3-gitpython
+Requires: python3-graphviz
+Requires: python3-h5py
+Requires: python3-html5lib
+Requires: python3-html2text
+Requires: python3-huggingface-hub
+Requires: python3-jupyter-console
+Requires: python3-lxml
+Requires: python3-m2r
+Requires: python3-matplotlib
+Requires: python3-matplotlib-inline
+Requires: python3-meilisearch
+Requires: python3-mistune
+Requires: python3-nltk
+Requires: python3-pandas
+Requires: python3-pillow
+Requires: python3-pronouncing
+Requires: python3-psutil
+Requires: python3-PyPDF2
+Requires: python3-dotenv
+Requires: python3-slugify
+Requires: python3-pyyaml
+Requires: python3-rapidfuzz
+Requires: python3-recommonmark
+Requires: python3-scikit-image
+Requires: python3-scikit-learn
+Requires: python3-scipy
+Requires: python3-seaborn
+Requires: python3-sentence_transformers
+Requires: python3-spacy
+Requires: python3-sphinx
+Requires: python3-torch
+Requires: python3-torchtext
+Requires: python3-tox
+Requires: python3-tqdm
+Requires: python3-unidecode
+Requires: python3-wikipedia
+Requires: python3-babel
+
+%description
+[![Buy Us Tea](https://github.com/nlpia/nlpia-bot/raw/develop/docs/media/small-leaf-and-name-screenshot-31x80.png)](https://buymeacoffee.com/hobs)
+[![PyPI version](https://img.shields.io/pypi/pyversions/qary.svg)](https://pypi.org/project/qary/)
+[![License](https://img.shields.io/pypi/l/qary.svg)](https://pypi.python.org/pypi/qary/)
+[![codecov](https://codecov.io/gl/tangibleai/qary/branch/master/graph/badge.svg)](https://codecov.io/gl/tangibleai/qary)
+[![DigitalOcean Referral Badge](https://web-platforms.sfo2.digitaloceanspaces.com/WWW/Badge%202.svg)](https://www.digitalocean.com/?refcode=5bc34fba1bee&utm_campaign=Referral_Invite&utm_medium=Referral_Program&utm_source=badge)
+
+
+# `qary`
+
+The `qary` package is both a chatbot framework and a virtual assistant that actually assists!
+Most bots manipulate you to make money for their corporate masters. With qary, you can build **your** bot to protect you and amplify your prosocial intelligence.
+
+We started work on `qary` as part of 1st editition of [NLP in Action](https://proai.org/nlpia2-book).
+It has slowly grown into the core framework for a social-impact startup [Tangible AI](https://tangibleai.com).
+Tangible AI [interns and volunteers](/docs/wiki/contributors.md) are constantly fixing bugs, adding new features and dialog trees to qary's repetoire.
+The [San Diego Python User Group](https://www.pythonsd.org/index.html) meetups have been the scene for [some fun qary demos](https://piped.kavin.rocks/channel/UCXU-oZwaHnoYUhja_yrrrGg).
+The [San Diego Machine Learning Book Club](https://www.meetup.com/San-Diego-Machine-Learning/) is a great place for support on advanced concepts in the _NLP in Action_ book or anything NLP and machine learning related.
+You can find more ideas in `docs/`.
+
+## Install
+
+### Install from source
+
+Retrieve the source code from GitLab using a bash console:
+
+```bash
+git clone git@gitlab.com:tangibleai/qary
+cd qary
+```
+
+If that doesn't work or you don't know what a bash console is, then you probably want to start with the **Windows Users** Instructions here: [docs/README-windows-install.md](docs/README-windows-install.md)
+
+Make sure you install `qary` in a _virtual environment_ using the latest version of `pip` and the python `virtualenv` package:
+
+```bash
+pip install --upgrade pip virtualenv
+python -m virtualenv venv
+source venv/bin/activate
+```
+
+Now that you have your environment activated, make sure you are in the `qary/` repository along side the pyproject.toml file so you can install qary in developer (editable) mode:
+
+```bash
+pip install --editable .
+```
+
+Now you're ready to run `qary` from the command line (bash console):
+
+```bash
+qary "Hi!"
+```
+
+### PyPi package
+`qary` is on [PyPi](https://pypi.org/project/qary/) but this install is unlikely to work, unless you've already installed all the dependencies:
+
+```bash
+pip install qary
+```
+
+## Usage
+
+```bash
+$ qary --help
+usage: qary [-h] [--version] [--name STR] [-p] [-s STR] [-v] [-vv] [words [words ...]]
+```
+
+### Running `qary` for just one skill
+
+```bash
+$ qary -s qa
+# ... (logging messages)
+YOU: When was Barack Obama born?
+# ... (logging messages)
+qary: August 4, 1961
+```
+
+### `qary` skills
+
+`qary`'s probabilistic conversation manager chooses a reply from the possiblities generated by the different personalities:
+
+- `pattern` (`skills/pattern.py`): example skill using regex patterns to reply to greetings like "hi"
+- `qa` (`skills/qa.py`): BERT and ALBERT Wikipedia Question Answering (WikiQA reading comprehension tests)
+- `faq` (`skills/faq.py`): answers to frequently asked questions using data/faq/*.yml
+- `glossary` (`skills/glossary.py`): definitions from glossary yml files in data/faq/glossary-*.yml
+- `eliza` (`eliza.py`): a python port of the ELIZA therapist bot
+
+### Configuring default personalities
+
+By default, `qary` runs with `qa` personality. Check out the config file in `qary.ini` to change the default skills loaded for your own custom skill in the skills directory.
+
+## Approach
+
+`qary`'s chatbot framework allows you to combine many approaches to give you state-of-the-art capability to answer questions and carry on a conversation:
+
+1. search: [chatterbot](https://github.com/gunthercox/ChatterBot), [will](https://github.com/skoczen/will)
+2. pattern matching and response templates: Alexa, [AIML](https://github.com/keiffster/program-y)
+3. generative deep learning: [robot-bernie](https://github.com/nlpia/robot-bernie), [movie-bot](https://github.com/totalgood/nlpia/blob/master/src/nlpia/book/examples/ch10_movie_dialog_chatbot.py)
+4. grounding: [snips](https://github.com/snipsco/snips-nlu)
+
+It's all explained in detail at [NLP in Action](https://www.manning.com/books/natural-language-processing-in-action).
+
+Presentations for San Diego Python User Group are in [docs/](/docs/2019-08-22--San Diego Python User Group -- How to Build a Chatbot.odp) and on the web at [http://totalgood.org/midata/talks](http://totalgood.org/midata/talks/)
+
+## Contributing pattern for developers
+
+DM @hobs on SD PUG's [discord server](https://discord.gg/yFTAQDxg) if you'd like to join us for weekly collaborative-coding sessions on `qary` and other open source projects.
+
+1. [Create a fork](https://docs.gitlab.com/ee/user/project/repository/forking_workflow.html#creating-a-fork) of the [main qary repository](https://gitlab.com/tangibleai/qary) on Gitlab.
+2. Make your changes in a branch named something different from `master`, e.g. create
+ a new branch `my-pull-request`.
+3. [Create a merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html).
+4. Help your fellow contributors out by:
+ - Follow the [PEP-8 style guide](https://www.python.org/dev/peps/pep-0008/).
+ - Try to include a docstring, at least a single line, in any function, method, or class
+ - Bonus points for adding a [doctest](https://docs.python.org/3/library/doctest.html) as part of your contribution.
+ - If you add a new feature, write some quick docs in the README.
+ - Add your name and attribution to the AUTHORS file.
+ - Know we are grateful for your contribution! You've made the chatbot world a little better!
+
+
+
+%package -n python3-qary
+Summary: A chatbot that assists rather than manipulates.
+Provides: python-qary
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-qary
+[![Buy Us Tea](https://github.com/nlpia/nlpia-bot/raw/develop/docs/media/small-leaf-and-name-screenshot-31x80.png)](https://buymeacoffee.com/hobs)
+[![PyPI version](https://img.shields.io/pypi/pyversions/qary.svg)](https://pypi.org/project/qary/)
+[![License](https://img.shields.io/pypi/l/qary.svg)](https://pypi.python.org/pypi/qary/)
+[![codecov](https://codecov.io/gl/tangibleai/qary/branch/master/graph/badge.svg)](https://codecov.io/gl/tangibleai/qary)
+[![DigitalOcean Referral Badge](https://web-platforms.sfo2.digitaloceanspaces.com/WWW/Badge%202.svg)](https://www.digitalocean.com/?refcode=5bc34fba1bee&utm_campaign=Referral_Invite&utm_medium=Referral_Program&utm_source=badge)
+
+
+# `qary`
+
+The `qary` package is both a chatbot framework and a virtual assistant that actually assists!
+Most bots manipulate you to make money for their corporate masters. With qary, you can build **your** bot to protect you and amplify your prosocial intelligence.
+
+We started work on `qary` as part of 1st editition of [NLP in Action](https://proai.org/nlpia2-book).
+It has slowly grown into the core framework for a social-impact startup [Tangible AI](https://tangibleai.com).
+Tangible AI [interns and volunteers](/docs/wiki/contributors.md) are constantly fixing bugs, adding new features and dialog trees to qary's repetoire.
+The [San Diego Python User Group](https://www.pythonsd.org/index.html) meetups have been the scene for [some fun qary demos](https://piped.kavin.rocks/channel/UCXU-oZwaHnoYUhja_yrrrGg).
+The [San Diego Machine Learning Book Club](https://www.meetup.com/San-Diego-Machine-Learning/) is a great place for support on advanced concepts in the _NLP in Action_ book or anything NLP and machine learning related.
+You can find more ideas in `docs/`.
+
+## Install
+
+### Install from source
+
+Retrieve the source code from GitLab using a bash console:
+
+```bash
+git clone git@gitlab.com:tangibleai/qary
+cd qary
+```
+
+If that doesn't work or you don't know what a bash console is, then you probably want to start with the **Windows Users** Instructions here: [docs/README-windows-install.md](docs/README-windows-install.md)
+
+Make sure you install `qary` in a _virtual environment_ using the latest version of `pip` and the python `virtualenv` package:
+
+```bash
+pip install --upgrade pip virtualenv
+python -m virtualenv venv
+source venv/bin/activate
+```
+
+Now that you have your environment activated, make sure you are in the `qary/` repository along side the pyproject.toml file so you can install qary in developer (editable) mode:
+
+```bash
+pip install --editable .
+```
+
+Now you're ready to run `qary` from the command line (bash console):
+
+```bash
+qary "Hi!"
+```
+
+### PyPi package
+`qary` is on [PyPi](https://pypi.org/project/qary/) but this install is unlikely to work, unless you've already installed all the dependencies:
+
+```bash
+pip install qary
+```
+
+## Usage
+
+```bash
+$ qary --help
+usage: qary [-h] [--version] [--name STR] [-p] [-s STR] [-v] [-vv] [words [words ...]]
+```
+
+### Running `qary` for just one skill
+
+```bash
+$ qary -s qa
+# ... (logging messages)
+YOU: When was Barack Obama born?
+# ... (logging messages)
+qary: August 4, 1961
+```
+
+### `qary` skills
+
+`qary`'s probabilistic conversation manager chooses a reply from the possiblities generated by the different personalities:
+
+- `pattern` (`skills/pattern.py`): example skill using regex patterns to reply to greetings like "hi"
+- `qa` (`skills/qa.py`): BERT and ALBERT Wikipedia Question Answering (WikiQA reading comprehension tests)
+- `faq` (`skills/faq.py`): answers to frequently asked questions using data/faq/*.yml
+- `glossary` (`skills/glossary.py`): definitions from glossary yml files in data/faq/glossary-*.yml
+- `eliza` (`eliza.py`): a python port of the ELIZA therapist bot
+
+### Configuring default personalities
+
+By default, `qary` runs with `qa` personality. Check out the config file in `qary.ini` to change the default skills loaded for your own custom skill in the skills directory.
+
+## Approach
+
+`qary`'s chatbot framework allows you to combine many approaches to give you state-of-the-art capability to answer questions and carry on a conversation:
+
+1. search: [chatterbot](https://github.com/gunthercox/ChatterBot), [will](https://github.com/skoczen/will)
+2. pattern matching and response templates: Alexa, [AIML](https://github.com/keiffster/program-y)
+3. generative deep learning: [robot-bernie](https://github.com/nlpia/robot-bernie), [movie-bot](https://github.com/totalgood/nlpia/blob/master/src/nlpia/book/examples/ch10_movie_dialog_chatbot.py)
+4. grounding: [snips](https://github.com/snipsco/snips-nlu)
+
+It's all explained in detail at [NLP in Action](https://www.manning.com/books/natural-language-processing-in-action).
+
+Presentations for San Diego Python User Group are in [docs/](/docs/2019-08-22--San Diego Python User Group -- How to Build a Chatbot.odp) and on the web at [http://totalgood.org/midata/talks](http://totalgood.org/midata/talks/)
+
+## Contributing pattern for developers
+
+DM @hobs on SD PUG's [discord server](https://discord.gg/yFTAQDxg) if you'd like to join us for weekly collaborative-coding sessions on `qary` and other open source projects.
+
+1. [Create a fork](https://docs.gitlab.com/ee/user/project/repository/forking_workflow.html#creating-a-fork) of the [main qary repository](https://gitlab.com/tangibleai/qary) on Gitlab.
+2. Make your changes in a branch named something different from `master`, e.g. create
+ a new branch `my-pull-request`.
+3. [Create a merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html).
+4. Help your fellow contributors out by:
+ - Follow the [PEP-8 style guide](https://www.python.org/dev/peps/pep-0008/).
+ - Try to include a docstring, at least a single line, in any function, method, or class
+ - Bonus points for adding a [doctest](https://docs.python.org/3/library/doctest.html) as part of your contribution.
+ - If you add a new feature, write some quick docs in the README.
+ - Add your name and attribution to the AUTHORS file.
+ - Know we are grateful for your contribution! You've made the chatbot world a little better!
+
+
+
+%package help
+Summary: Development documents and examples for qary
+Provides: python3-qary-doc
+%description help
+[![Buy Us Tea](https://github.com/nlpia/nlpia-bot/raw/develop/docs/media/small-leaf-and-name-screenshot-31x80.png)](https://buymeacoffee.com/hobs)
+[![PyPI version](https://img.shields.io/pypi/pyversions/qary.svg)](https://pypi.org/project/qary/)
+[![License](https://img.shields.io/pypi/l/qary.svg)](https://pypi.python.org/pypi/qary/)
+[![codecov](https://codecov.io/gl/tangibleai/qary/branch/master/graph/badge.svg)](https://codecov.io/gl/tangibleai/qary)
+[![DigitalOcean Referral Badge](https://web-platforms.sfo2.digitaloceanspaces.com/WWW/Badge%202.svg)](https://www.digitalocean.com/?refcode=5bc34fba1bee&utm_campaign=Referral_Invite&utm_medium=Referral_Program&utm_source=badge)
+
+
+# `qary`
+
+The `qary` package is both a chatbot framework and a virtual assistant that actually assists!
+Most bots manipulate you to make money for their corporate masters. With qary, you can build **your** bot to protect you and amplify your prosocial intelligence.
+
+We started work on `qary` as part of 1st editition of [NLP in Action](https://proai.org/nlpia2-book).
+It has slowly grown into the core framework for a social-impact startup [Tangible AI](https://tangibleai.com).
+Tangible AI [interns and volunteers](/docs/wiki/contributors.md) are constantly fixing bugs, adding new features and dialog trees to qary's repetoire.
+The [San Diego Python User Group](https://www.pythonsd.org/index.html) meetups have been the scene for [some fun qary demos](https://piped.kavin.rocks/channel/UCXU-oZwaHnoYUhja_yrrrGg).
+The [San Diego Machine Learning Book Club](https://www.meetup.com/San-Diego-Machine-Learning/) is a great place for support on advanced concepts in the _NLP in Action_ book or anything NLP and machine learning related.
+You can find more ideas in `docs/`.
+
+## Install
+
+### Install from source
+
+Retrieve the source code from GitLab using a bash console:
+
+```bash
+git clone git@gitlab.com:tangibleai/qary
+cd qary
+```
+
+If that doesn't work or you don't know what a bash console is, then you probably want to start with the **Windows Users** Instructions here: [docs/README-windows-install.md](docs/README-windows-install.md)
+
+Make sure you install `qary` in a _virtual environment_ using the latest version of `pip` and the python `virtualenv` package:
+
+```bash
+pip install --upgrade pip virtualenv
+python -m virtualenv venv
+source venv/bin/activate
+```
+
+Now that you have your environment activated, make sure you are in the `qary/` repository along side the pyproject.toml file so you can install qary in developer (editable) mode:
+
+```bash
+pip install --editable .
+```
+
+Now you're ready to run `qary` from the command line (bash console):
+
+```bash
+qary "Hi!"
+```
+
+### PyPi package
+`qary` is on [PyPi](https://pypi.org/project/qary/) but this install is unlikely to work, unless you've already installed all the dependencies:
+
+```bash
+pip install qary
+```
+
+## Usage
+
+```bash
+$ qary --help
+usage: qary [-h] [--version] [--name STR] [-p] [-s STR] [-v] [-vv] [words [words ...]]
+```
+
+### Running `qary` for just one skill
+
+```bash
+$ qary -s qa
+# ... (logging messages)
+YOU: When was Barack Obama born?
+# ... (logging messages)
+qary: August 4, 1961
+```
+
+### `qary` skills
+
+`qary`'s probabilistic conversation manager chooses a reply from the possiblities generated by the different personalities:
+
+- `pattern` (`skills/pattern.py`): example skill using regex patterns to reply to greetings like "hi"
+- `qa` (`skills/qa.py`): BERT and ALBERT Wikipedia Question Answering (WikiQA reading comprehension tests)
+- `faq` (`skills/faq.py`): answers to frequently asked questions using data/faq/*.yml
+- `glossary` (`skills/glossary.py`): definitions from glossary yml files in data/faq/glossary-*.yml
+- `eliza` (`eliza.py`): a python port of the ELIZA therapist bot
+
+### Configuring default personalities
+
+By default, `qary` runs with `qa` personality. Check out the config file in `qary.ini` to change the default skills loaded for your own custom skill in the skills directory.
+
+## Approach
+
+`qary`'s chatbot framework allows you to combine many approaches to give you state-of-the-art capability to answer questions and carry on a conversation:
+
+1. search: [chatterbot](https://github.com/gunthercox/ChatterBot), [will](https://github.com/skoczen/will)
+2. pattern matching and response templates: Alexa, [AIML](https://github.com/keiffster/program-y)
+3. generative deep learning: [robot-bernie](https://github.com/nlpia/robot-bernie), [movie-bot](https://github.com/totalgood/nlpia/blob/master/src/nlpia/book/examples/ch10_movie_dialog_chatbot.py)
+4. grounding: [snips](https://github.com/snipsco/snips-nlu)
+
+It's all explained in detail at [NLP in Action](https://www.manning.com/books/natural-language-processing-in-action).
+
+Presentations for San Diego Python User Group are in [docs/](/docs/2019-08-22--San Diego Python User Group -- How to Build a Chatbot.odp) and on the web at [http://totalgood.org/midata/talks](http://totalgood.org/midata/talks/)
+
+## Contributing pattern for developers
+
+DM @hobs on SD PUG's [discord server](https://discord.gg/yFTAQDxg) if you'd like to join us for weekly collaborative-coding sessions on `qary` and other open source projects.
+
+1. [Create a fork](https://docs.gitlab.com/ee/user/project/repository/forking_workflow.html#creating-a-fork) of the [main qary repository](https://gitlab.com/tangibleai/qary) on Gitlab.
+2. Make your changes in a branch named something different from `master`, e.g. create
+ a new branch `my-pull-request`.
+3. [Create a merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html).
+4. Help your fellow contributors out by:
+ - Follow the [PEP-8 style guide](https://www.python.org/dev/peps/pep-0008/).
+ - Try to include a docstring, at least a single line, in any function, method, or class
+ - Bonus points for adding a [doctest](https://docs.python.org/3/library/doctest.html) as part of your contribution.
+ - If you add a new feature, write some quick docs in the README.
+ - Add your name and attribution to the AUTHORS file.
+ - Know we are grateful for your contribution! You've made the chatbot world a little better!
+
+
+
+%prep
+%autosetup -n qary-0.7.27
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-qary -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 17 2023 Python_Bot <Python_Bot@openeuler.org> - 0.7.27-1
+- Package Spec generated