All Projects → koenvervloesem → rasa-docker-arm

koenvervloesem / rasa-docker-arm

Licence: MIT license
Rasa Docker image for ARMv7. Runs on a Raspberry Pi.

Programming Languages

shell
77523 projects
Makefile
30231 projects

Projects that are alternatives of or similar to rasa-docker-arm

Rasa
💬 Open source machine learning framework to automate text- and voice-based conversations: NLU, dialogue management, connect to Slack, Facebook, and more - Create chatbots and voice assistants
Stars: ✭ 13,219 (+69473.68%)
Mutual labels:  bots, bot-framework, nlu, chatbots, rasa, chatbots-framework
airy
💬 Open source conversational platform to power conversations with an open source Live Chat, Messengers like Facebook Messenger, WhatsApp and more - 💎 UI from Inbox to dashboards - 🤖 Integrations to Conversational AI / NLP tools and standard enterprise software - ⚡ APIs, WebSocket, Webhook - 🔧 Create any conversational experience
Stars: ✭ 299 (+1473.68%)
Mutual labels:  bots, bot-framework, nlu, chatbots, chatbots-framework
Botpress
🤖 Dev tools to reliably understand text and automate conversations. Built-in NLU. Connect & deploy on any messaging channel (Slack, MS Teams, website, Telegram, etc).
Stars: ✭ 9,486 (+49826.32%)
Mutual labels:  bots, bot-framework, nlu, chatbots, rasa
Botonic
Build chatbots and conversational experiences using React
Stars: ✭ 144 (+657.89%)
Mutual labels:  bots, bot-framework, nlu, chatbots
MyBot
🧠 Create chatbots easily with Bot Framework! 🤖
Stars: ✭ 30 (+57.89%)
Mutual labels:  bots, bot-framework, chatbots
Botfuel Dialog
Botfuel SDK to build highly conversational chatbots
Stars: ✭ 96 (+405.26%)
Mutual labels:  bot-framework, nlu, chatbots
intelligo.js.org
The official website for Intelligo chatbot framework.
Stars: ✭ 18 (-5.26%)
Mutual labels:  bots, bot-framework, chatbots
intelligo-generator
🛠️ Chatbot generator for Intelligo Framework.
Stars: ✭ 31 (+63.16%)
Mutual labels:  bots, bot-framework, chatbots
Poshbot
Powershell-based bot framework
Stars: ✭ 410 (+2057.89%)
Mutual labels:  bots, bot-framework, chatbots
Botbuilder Community Js
Part of the Bot Builder Community Project. Repository for extensions for the Bot Builder JavaScript SDK, including middleware, dialogs, recognizers and more.
Stars: ✭ 88 (+363.16%)
Mutual labels:  bots, bot-framework, chatbots
Rasa core
Rasa Core is now part of the Rasa repo: An open source machine learning framework to automate text-and voice-based conversations
Stars: ✭ 2,302 (+12015.79%)
Mutual labels:  bots, bot-framework, rasa
Awesome Bots
The most awesome list about bots ⭐️🤖
Stars: ✭ 2,864 (+14973.68%)
Mutual labels:  bots, bot-framework, chatbots
alpine-qbittorrent-openvpn
qBittorrent docker container with OpenVPN client running as unprivileged user on alpine linux
Stars: ✭ 230 (+1110.53%)
Mutual labels:  arm, armv7, armhf
Wisty.js
🧚‍♀️ Chatbot library turning conversations into actions, locally, in the browser.
Stars: ✭ 24 (+26.32%)
Mutual labels:  bot-framework, nlu, chatbots
virtual-assistant
Virtual Assistant
Stars: ✭ 67 (+252.63%)
Mutual labels:  nlu, chatbots, rasa
gitlab-runner
GitLab Runner (Docker image) for ARM devices, this is a mirror repository of
Stars: ✭ 17 (-10.53%)
Mutual labels:  arm, armv7, armhf
tensorflow-serving-arm
TensorFlow Serving ARM - A project for cross-compiling TensorFlow Serving targeting popular ARM cores
Stars: ✭ 75 (+294.74%)
Mutual labels:  arm, armv7, armhf
Tow-Boot
An opinionated distribution of U-Boot. — https://matrix.to/#/#Tow-Boot:matrix.org?via=matrix.org
Stars: ✭ 338 (+1678.95%)
Mutual labels:  arm, armv7, armv7l
Reverse Engineering
This repository contains some of the executables that I've cracked.
Stars: ✭ 29 (+52.63%)
Mutual labels:  arm, armv7
Docker Jdownloader
JDownloader 2 Docker Image (Multiarch) - Passed 40M Downloads
Stars: ✭ 85 (+347.37%)
Mutual labels:  arm, armv7

Rasa Docker image for ARM

Continous Integration GitHub license

Rasa is an open source machine learning framework to automate text- and voice-based conversations. It doesn't have an official Docker image for ARM, so this project builds such an image (for the linux/arm/v7 architecture) that you can run on a Raspberry Pi.

The resulting image stays as close as possible to Rasa's official Docker container. The only changes are added pre-built wheels for TensorFlow and TensorFlow Addons, some extra dependencies installed and the user ID changed to 1000 to align with the pi user on Raspberry Pi OS (Raspbian).

System requirements

  • Raspberry Pi (tested on Raspberry Pi 4B with 2 GB RAM)
  • 16 GB microSD card
  • Raspberry Pi OS (previously called Raspbian) Buster (10), 32-bit

If you manage to build the Docker image on another version of Raspbian, another Linux distribution, another model of the Raspberry Pi or even another ARM computer or cross-build it on another architecture, please let me know so I can generalize the script.

Usage

First make sure to have Docker installed:

curl -sSL https://get.docker.com | sh 
sudo usermod -aG docker pi  

After this, log out and log in again.

Then, if you want to build a Docker image of the latest Rasa version supported by this project (which is stored in the file RASA_VERSION), just run:

make docker 

If you want to build an image for a specific Rasa version, run the build script with the version number as an argument:

./scripts/build_docker.sh 1.10.5

The build script downloads the version's archive, patches it and builds the Docker image.

If all goes well, at the end you should be able to run the Rasa Docker container on your Raspberry Pi, for instance with a Docker Compose file:

docker-compose up -d

After this, you can create a Rasa project with:

docker-compose run rasa init

Patching other Rasa versions

If you want to build a Docker image for another Rasa version than the ones supported by this project, just copy the unpacked Rasa archive, make your changes, create the patch and put it in the directory patches with the version number in the file name. Then the build script will pick this up. For instance:

wget -O rasa-1.10.5.tar.gz https://github.com/RasaHQ/rasa/archive/1.10.5.tar.gz
tar xzf rasa-1.10.5.tar.gz
cp -r rasa-1.10.5 rasa-1.10.5-2
# Make your changes in the `rasa-1.10.5-2` directory
diff -ruN rasa-1.10.5 rasa-1.10.5-2 > patches/rasa-1.10.5-arm.patch
./scripts/build_docker.sh 1.10.5

If you have successfully built the release, please contribute your patch to this project by a pull request so others can benefit from it too.

Motivation

Someone on the Rhasspy forum failed to install Rasa on his Raspberry Pi 4, and I became curious. How difficult could it be? Well, quite difficult, as it turned out to be.

I had to build a wheel for TensorFlow Addons on ARM, which was quite a challenge. To build this wheel, I needed to build Bazel on ARM. After these slight detours, I finally managed to build a working Docker image for Rasa on ARM.

Docker image on Docker Hub

You don't have to build this Docker image yourself, you can find it on Docker Hub as koenvervloesem/rasa. Download the latest version with:

docker pull koenvervloesem/rasa

If you want to download a specific version, use:

docker pull koenvervloesem/rasa:1.10.5

References

When I was searching for a way to run Rasa on a Raspberry Pi, I encountered the following projects, which I didn't use for various reasons but they gave some helpful background information:

License

This project is provided by Koen Vervloesem as open source software with the MIT license. See the LICENSE file for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].