Website โ Documentation โ Getting started โ Introduction โ Translations โ Contributors โ License
Olivia is an open-source chatbot built in Golang using Machine Learning technologies. Its goal is to provide a free and open-source alternative to big services like DialogFlow.
You can chat with her by speaking (STT) or writing, she replies with a text message but you can enable her voice (TTS).
You can clone the project and customize it as you want using GitHub Try it on her website!
- The only chatbot project in Go that could be modulable and customizable.
- Using daily a privacy-friendly chatbot is great.
- The Website is a Progressive Web Application, which means you can add it to your phone and it seems like a native app!
To get a personal access token from Github go to Setings > Developer settings > Personal Access Tokens
Click on Generate new Token and name it you MUST have read and write packages ticked on. Then click Generate new token
Replace TOKEN
with the Token that you just made.
$ export PAT=TOKEN
Login to Github (Note: change USERNAME to Gthub username)
$ echo $PAT | docker login docker.pkg.github.com -u USERNAME --password-stdin
Pull the image from GitHub Packages
$ docker pull docker.pkg.github.com/olivia-ai/olivia/olivia:latest
Then start it
$ docker run -d -e PORT=8080 -p 8080:8080 docker.pkg.github.com/olivia-ai/olivia/olivia:latest
You can just use the websocket of Olivia now.
To stop it, get the container id:
$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
311b3abb963a olivia "./main" 7 minutes ago Up 7 minutes 0.0.0.0:8080->8080/tcp quizzical_mayer
and stop it
$ docker container stop 311b3abb963a
The app will automatically check for res/datasets/training.json
file which contains the save of the neural network.
By default when you clone the repository from Github you have a stable save.
If you want to train a new model just delete this file and rerun the app.
Clone the project via GitHub:
$ git clone git@github.com:olivia-ai/olivia.git
Then download the dependencies
$ go mod download
And run it
$ go run main.go
To install the frontend and the backend together, please use the docker-compose.yml
file:
$ docker-compose up
And all done!
The coverage of the translations is given here. To add a language please read the documentation for that.
Please refer to the contributing file
Thanks to the people who contribute to Olivia.
Become a financial contributor and help Olivia growth.
Contribute on the GitHub page of hugolgst โค๏ธ
Made with โค๏ธ by Hugo Lageneste