Metadata-Version: 2.1
Name: convbot
Version: 0.1.1
Summary: pack_name descr 
Home-page: https://github.com/ffreemt/convbot
License: MIT
Author: ffreemt
Requires-Python: >=3.7,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Dist: logzero (>=1.7.0,<2.0.0)
Requires-Dist: torch (>=1.9.0,<2.0.0); python_version >= "3.7" and python_version < "4.0" and sys_platform == "linux"
Requires-Dist: transformers (>=4.9.0,<5.0.0)
Project-URL: Repository, https://github.com/ffreemt/convbot
Description-Content-Type: text/markdown

# convbot
[![tests](https://github.com/ffreemt/convbot/actions/workflows/routine-tests.yml/badge.svg)](https://github.com/ffreemt/convbot/actions)[![python](https://img.shields.io/static/v1?label=python+&message=3.7%2B&color=blue)](https://img.shields.io/static/v1?label=python+&message=3.7%2B&color=blue)[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)[![PyPI version](https://badge.fury.io/py/convbot.svg)](https://badge.fury.io/py/convbot)

A conversational bot based on huggingface transformers

## Install it

```shell
pip install convbot
# or poetry add convbot
# pip install git+htts://github.com/ffreemt/convbot
# poetry add git+htts://github.com/ffreemt/convbot

# To upgrade
pip install convbot -U
# or poetry add convbot@latest
```

## Use it
```python
from convbot import convbot

prin(convertbot("How are you?"))
# I am good  # or along that line
```

The async version `aconvbot`, potentialy for `fastapi` or `Nonebot` plugins and such,  is rather artificial since it's based on `ThreadPoolExecutor`. Hence it's not intended for production. You probably should not spawn too many instances.
```python
from convbot import aconvbot

async def afunc(text):
    resp = await aconvbot(text)
    ...
```

Interactive

```bash
python -m convbot
```
## Not tested in Windows 10 and Mac

The module uses pytorch that is installed differently in Windows than in Linux. To run `convbot` in Windows or Mac, you may give it a spin  by cloning the repo (git clone [https://github.com/ffreemt/convbot](https://github.com/ffreemt/convbot)) and installing pytorch manually.

