Metadata-Version: 2.1
Name: aichatbot
Version: 0.0.5
Summary: Python library for building custom AI Chatbot with just one line of code.
Home-page: https://github.com/Elysian01/AI-Chatbot
Author: Abhishek Manilal Gupta
Author-email: abhig0209@gmail.com
License: MIT
Keywords: chatbot ai-chatbot bot custom ai-chatbot ai
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Operating System :: Microsoft :: Windows :: Windows 10
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.7
Description-Content-Type: text/markdown
Requires-Dist: absl-py (==0.12.0)
Requires-Dist: aiofiles (==0.5.0)
Requires-Dist: astroid (==2.2.5)
Requires-Dist: astunparse (==1.6.3)
Requires-Dist: async-timeout (==3.0.1)
Requires-Dist: atomicwrites (==1.3.0)
Requires-Dist: attrs (==19.3.0)
Requires-Dist: autopep8 (==1.5.6)
Requires-Dist: cachetools (==4.2.1)
Requires-Dist: certifi (==2020.12.5)
Requires-Dist: chardet (==4.0.0)
Requires-Dist: click (==7.1.2)
Requires-Dist: cloudpickle (==1.3.0)
Requires-Dist: colorclass (==2.2.0)
Requires-Dist: coloredlogs (==10.0)
Requires-Dist: colorhash (==1.0.2)
Requires-Dist: comtypes (==1.1.9)
Requires-Dist: decorator (==4.4.2)
Requires-Dist: dnspython (==1.16.0)
Requires-Dist: docopt (==0.6.2)
Requires-Dist: docutils (==0.15.2)
Requires-Dist: gast (==0.3.3)
Requires-Dist: gevent (==1.5.0)
Requires-Dist: google-auth (==1.28.1)
Requires-Dist: google-auth-oauthlib (==0.4.4)
Requires-Dist: google-pasta (==0.2.0)
Requires-Dist: grpcio (==1.37.0)
Requires-Dist: h11 (==0.8.1)
Requires-Dist: h2 (==3.2.0)
Requires-Dist: h5py (==2.10.0)
Requires-Dist: hpack (==3.0.0)
Requires-Dist: hstspreload (==2020.9.15)
Requires-Dist: httplib2 (==0.18.1)
Requires-Dist: httptools (==0.1.1)
Requires-Dist: humanfriendly (==8.2)
Requires-Dist: hyperframe (==5.2.0)
Requires-Dist: idna (==2.10)
Requires-Dist: importlib-metadata (==3.10.1)
Requires-Dist: ipython-genutils (==0.2.0)
Requires-Dist: isort (==4.3.21)
Requires-Dist: jmespath (==0.10.0)
Requires-Dist: joblib (==1.0.1)
Requires-Dist: jupyter-core (==4.6.3)
Requires-Dist: Keras-Preprocessing (==1.1.2)
Requires-Dist: lazy-object-proxy (==1.4.1)
Requires-Dist: Markdown (==3.3.4)
Requires-Dist: mccabe (==0.6.1)
Requires-Dist: more-itertools (==8.0.2)
Requires-Dist: multidict (==4.7.6)
Requires-Dist: nltk (==3.6.1)
Requires-Dist: numpy (==1.18.5)
Requires-Dist: oauth2client (==4.1.3)
Requires-Dist: oauthlib (==3.1.0)
Requires-Dist: opt-einsum (==3.3.0)
Requires-Dist: pickleshare (==0.7.5)
Requires-Dist: pluggy (==0.13.1)
Requires-Dist: protobuf (==3.15.8)
Requires-Dist: psycopg2-binary (==2.8.6)
Requires-Dist: py (==1.8.1)
Requires-Dist: pyasn1 (==0.4.8)
Requires-Dist: pyasn1-modules (==0.2.8)
Requires-Dist: pycodestyle (==2.7.0)
Requires-Dist: pykwalify (==1.7.0)
Requires-Dist: pylint (==2.3.1)
Requires-Dist: pymongo (==3.8.0)
Requires-Dist: pypiwin32 (==223)
Requires-Dist: python-crfsuite (==0.9.7)
Requires-Dist: pyttsx3 (==2.90)
Requires-Dist: pywin32 (==227)
Requires-Dist: regex (==2020.6.8)
Requires-Dist: requests (==2.25.1)
Requires-Dist: requests-oauthlib (==1.3.0)
Requires-Dist: requests-toolbelt (==0.9.1)
Requires-Dist: rfc3986 (==1.4.0)
Requires-Dist: rsa (==4.7.2)
Requires-Dist: ruamel.yaml (==0.16.12)
Requires-Dist: s3transfer (==0.3.3)
Requires-Dist: sanic (==19.12.2)
Requires-Dist: Sanic-Cors (==0.10.0.post3)
Requires-Dist: Sanic-Plugins-Framework (==0.9.3)
Requires-Dist: six (==1.15.0)
Requires-Dist: sklearn-crfsuite (==0.3.6)
Requires-Dist: slackclient (==2.8.2)
Requires-Dist: sniffio (==1.1.0)
Requires-Dist: SpeechRecognition (==3.8.1)
Requires-Dist: tabulate (==0.8.7)
Requires-Dist: tensorboard (==2.4.1)
Requires-Dist: tensorboard-plugin-wit (==1.8.0)
Requires-Dist: tensorflow (==2.3.1)
Requires-Dist: tensorflow-estimator (==2.3.0)
Requires-Dist: termcolor (==1.1.0)
Requires-Dist: toml (==0.10.2)
Requires-Dist: tqdm (==4.45.0)
Requires-Dist: typed-ast (==1.4.0)
Requires-Dist: typing-extensions (==3.7.4.3)
Requires-Dist: tzlocal (==2.1)
Requires-Dist: urllib3 (==1.26.4)
Requires-Dist: websockets (==8.1)
Requires-Dist: Werkzeug (==1.0.1)
Requires-Dist: wincertstore (==0.2)
Requires-Dist: wrapt (==1.12.1)
Requires-Dist: yarl (==1.5.1)
Requires-Dist: zipp (==3.4.1)

# AI-Chatbot 🤖 

### Python library for building custom AI Chatbot with just one line of code.


## Get Started

Install the package
```
pip install aichatbot
```

Load the module
```python
import aichatbot as bot
```

**Create the `intents file` by following format**

```json
{
    "intents": [
        {
            "tag": "tag name",
            "patterns": ["example-1 of user query", "example-2 of user query", "example-3"],
            "responses": ["bot response-1", "bot response-2", "bot response-3"]
        }
    ]
}
```

The `patterns` contains a list of example `expected user query`, which user will enter and `responses` contains the list of `bot response`.

Whenever a user inputs a query, bot will find the closest match with the `patterns`, and then select a random response from the list of `responses` specified under that pattern name.


**Example**

```json
{
    "intents": [
        {
            "tag": "greeting",
            "patterns": ["Hi", "How are you", "Is anyone there?", "Hello", "Good day"],
            "responses": ["Hello, thanks for visiting", "Good to see you again", "Hi there, how can I help?"]
        },{
            "tag": "goodbye",
            "patterns": ["Bye", "See you later", "Goodbye"],
            "responses": ["See you later, thanks for visiting", "Have a nice day", "Bye! Come back again soon."]
        }
    ]
}
```


**Create the model**

```python
filenames = {
    "intents": "./data/basic_intents.json",
    "dir": "dumps"
}

bot_model = bot.Create(filenames, technique="bow")
```

`intents` : Path to your intents file. <br>
`dir`: Specify the directory where you want to save the bot model.<br>
`technique`: Choose among [ bow | lstm | bert ]<br>

That's it 😊, **Start your conversation**
```python
bot.start(bot_model)
```

Optional Parameter:<br>
`end_conversation` : Contains strings to stop the chatbot.<br>
`end_response` : Output Message when bot quits

Example: 
```python
bot.start(bot_model, end_conversation=["/stop", "quit"], end_response="Thankyou for your time :)")
```




