chatbot-conversations
chatbot-conversations copied to clipboard
Chatbot conversations: a demo application how two (or more) chatbots can talk to each other, the logic used to build Eliza (along with an NLP model) has been used to power the chatbots.
Chatbot conversations 
This project demonstrates a number of concepts:
- NLP (or a simulation of it, using Eliza)
- NLP (or a simulation of it, using Roberta)
- Chatbot interactions (using REST API)
- Microservices frameworks (Helidon and Quarkus)
- And also using a simple
pythonFlask app - Communication between three apps via a central app
- Flexibility to add more chatbots
- Ability to change the models used in place of the existing ones
Getting Started
Clone repository
git clone https://github.com/neomatrix369/chatbot-conversations.git
cd chatbot-conversations
Run docker container
./docker-runner.sh --runContainer
Components
- Helidon world (Java)
- Quarkus world (Java)
- Roberta world (Python)
- Connecting worlds (Java)
Presentations and Social media coverage
Tweet: Making chatbots have a conversation video

Video: 'Chatbot Conversations' with Mani Sarkar and Yugo Sakamoto

Video: OotBD: Open source in the Cloud: 3 tools that helped us to collaborate
Video: OotBD - Working with Open Source Projects
See the different worlds (chat components) in conversation with each other:

How to build and run the projects
See how you can make the different worlds chat to each other, go to How to build and run the projects.
You can also find out the underlying components that make up the NLP aspect of the chatbots there.
How to build and run the Chatbot docker container
See how you can build and run your own docker container in your machine, go to How to build and run docker container.
Credits
Credits to the original authors of the code (different projects) used in this project. Special thanks to @yugoccp, @brjavaman and code4.life for giving us support for this community initiative!
Disclaimer
This a demo created for illustration purposes, please don't expect a fully functional app or high quality code. The focus has been to use simple ready-to-use components and illustrate the original ideas via a new app.