IKY
An AI Chatbot framework built in Python
Building a chatbot can sound daunting, but it’s totally doable. IKY is an AI powered conversational dialog interface built in Python. With IKY it’s easy to create Natural Language conversational scenarios with no coding efforts whatsoever. The smooth UI makes it effortless to create and train conversations to the bot and it continuously gets smarter as it learns from conversations it has with people. IKY can live on any channel of your choice (such as Messenger, Slack etc.) by integrating it’s API with that platform.
You don’t need to be an expert at artificial intelligence to create an awesome chatbot that has artificial intelligence. With this basic project you can create an artificial intelligence powered chatting machine in no time.There may be scores of bugs. So feel free to contribute via pull requests.
Installation
Using docker-compose (Recommended)
docker-compose build
docker-compose up -d
docker-compose exec iky_backend python manage.py init
Using Docker
# build docker images
docker build -t iky_backend:2.0.0 .
docker build -t iky_gateway:2.0.0 frontend/.
# start iky backend
docker run --name=iky_backend -e="APPLICATION_ENV=Production" iky_backend:2.0.0
# setup default intents
docker exec -it iky_backend python manage.py init
# start iky gateway with frontend
docker run --name=iky_gateway --link iky_backend:iky_backend -p 8080:80 iky_gateway:2.0.0
without docker
backend
- Setup Virtualenv and install python requirements
make setup
make run_dev
source venv/bin/activate && python manage.py init
- Production
make run_prod
frontend
- Development
cd frontend
npm install
ng serve
- Production
cd frontend
ng build --prod --environment=python
serve files in dist/ folder using nginx or any webserver
Heroku
- add your dev/production configurations in config.py
DB
Restore
You can import some default intents using follwing steps
- goto http://localhost:8080/agent/default/settings
- click 'choose file'
- choose 'examples/default_intents.json file'
- click import
Screenshots
Tutorial
Checkout this basic tutorial on youtube,
Watch tutorial on Fullfilling your Chatbot Intent with an API Call - Recipe Search Bot
Please visit my website to see my personal chatbot in action
Todos
- Write Unit Tests
- PEP-8 compliance
- Word2Vec Integration
- NLTK to Spacy migration
- PyCRFSuite to sklearn-crfsuite migration
- Support follow up conversations
Dependencies documentations
Free Software, Hell Yeah!
Made with ❤️ at God's Own Country.