Intu is an agent based embodiment middleware for devices. It integrates inputs such as microphones, cameras, and other sensors together with cognitive services and outputs such as joints and audio outputs.
Ensure your hardware meets the following requirements:
Windows
Mac OS
Clone the Intu git repository onto your local machine by running the following commands in your terminal:
git clone --branch develop --recursive git@github.com:watson-intu/self.git
Sometimes the sub-modules will not get pulled down, if so then you may need to run this git command after the one above:
git submodule update --init --recursive
If the above command fails, you may need to go add your public ssh key into your profile on github. See https://help.github.com/articles/signing-commits-with-gpg/
/vs2015/self.sln
in this project.self_instance
project and select Set as startup project
.Properties
. Select the Debugging
tab and set "Working Directory" to ..\..
.brew install cmake
.
pip install qibuild
(NOTE: it is highly recommended to download anaconda python version 2.7 to have pip correctly configured)qibuild config --wizard
(use default setup for steps by pressing 1 twice)cd {self root directory}
./scripts/build_mac.sh
This process stages the executables in the bin/mac
directory on your local computer. You can change into that directory and run the unit_test and self_instance executables.
PS: If you run into issues with the build, you might have to change a couple of Boost header files, as described here: https://github.com/Homebrew/legacy-homebrew/issues/27396 (specifically, you might have to replace your copy of Boost's boost/atomic/detail/cas128strong.hpp and boost/atomic/detail/gcc-atomic.hpp with the latest available in the Boost directory)
./scripts/build_linux.sh
Note: If any step below fails or errors, run: sudo apt-get update
, then repeat the step.
Install Raspbian Operating System onto your Raspbery Pi
Open up a new browser window on your laptop and download Anaconda 4.2.0 For Linux Python 2.7 version.
Make sure you download the correct version. You need the LINUX version no matter what operating system you have. Windows users may have to right click and select Save as to save the download locally.
Copy Anaconda from your laptop over to the Pi. Windows users may need to download and use something like Filezilla to copy files over to the Pi.
scp Anaconda2-4.2.0-Linux-x86.sh pi@{ip}:/home/pi
(e.g. scp Anaconda2-4.2.0-Linux-x86.sh pi@10.0.1.2:/home/pi
)
If prompted, the username is pi and password is raspberryInstall Anaconda on your Pi and set up qiBuild.
ssh pi@{ip_address}
. When prompted, the username is pi and password is raspberry.bash Anaconda2-4.2.0-Linux-x86.sh
.Anaconda2-4.2.0-Linux-x86.sh: line 484: /home/pi/anaconda2/pkgs/python-3.5.2-0/bin/python: cannot execute binary file: Exec format error
ERROR:
cannot execute native linux-32 binary, output from 'uname -a' is:
Linux raspberrypi 4.4.21-v7+ #911 SMP Thu Sep 15 14:22:38 BST 2016 armv7l GNU/Linux
Once Anaconda has successfully installed, run: sudo apt-get install python-pip cmake
.
Note: If this fails, run sudo apt-get update
, and then rerun: sudo apt-get install python-pip cmake
.
Run: sudo pip install qibuild
Install the wiringPi library on the Pi.
ssh pi@{ip_address}
. cd /home/pi
. git clone git://git.drogon.net/wiringPi
cd wiringPi/
./build
You should see a list of classes compiled and “All Done” at the end.
Build Intu on the Pi
cd {self root directory}
chmod +x scripts/build_raspi.sh
scripts/build_raspi.sh
Note: If you have any build errors, run: scripts/clean.sh
and then rerun: scripts/build_raspi.sh
Run Intu on the Pi
If you have a HDMI cable plugged into your Raspberry Pi, verify that the sound is set to analog. This can be done by right clicking the speaker icon at the top right hand corner of the Raspberry Pi's homescreen, and selecting analog.
Verify that you have a microphone and speaker plugged into your Raspberry Pi. Note that your speaker may need to be charged before use. Make sure that it is turned on before proceeding with the next step.
Navigate to the raspi directory using: cd {self root directory}/bin/raspi
.
Run: ./run_self.sh
This process installs Intu on the remote device whose user name and IP address you provide. You can go to the ~/self/latest
directory on that device and run run_self.sh
. This process was tested on Red Hat Enterprise 6.6 and 6.7.
./scripts/build_nao.sh
./scripts/install_nao.sh [user@host]
self\latest
and run the run_self.sh
script.After downloading and building the code base, you can now run Intu.
Windows: To run Intu on Windows, click the play button in Visual Studio. A web browser will open.
Mac: To run Intu on Mac, from your Intu directory, navigate to the bin/mac
directory and execute the following command: ./run_self.sh
. A web browser will open.
If running Intu for the very first time, it will load the initial configuration from the file etc/shared/bootstrap.json. This replaces the previous body.json, but is exactly the same format. Once you run, you must use a web browser to access the dashboard end-point (e.g. http://localhost:9443/www/dashboard). Alternatively, provided your not using a remote graph, you may delete the db/knowledge.db to wipe the local graph (which will purge all other data stored in the graph). Once deleted, next time you run Intu it will reload the etc/shared/boostrap.json again.
While it is not required, we recommend using IBM Bluemix services. To register for a Bluemix account, go to https://console.ng.bluemix.net/registration/
.
At a minimum you will need a Conversation service, a Speech to Text service, and a Text to Speech service to use Intu. If you are using IBM Bluemix's Conversation service, we have provided a sample workspace you can import and use. For further instructions on how to use this workspace, jump to the Getting Started with Conversation section below.
To configure your services:
SERVICES CONFIG
button. You will be directed to a Services Config page.self_dialog
workspace key. Above it you will see a m_WorkspaceId
field. Input your own workspace id in this field. Click save.Located in the etc/shared
directory is a Conversation service workspace named intu_conversation_v1.json. This workspace helps you visualize how intents, entities, and dialog are developed. You can expand on this workspace or use it as a guide for developing your own later. To import this workspace, follow these steps:
Create
button).etc/shared/intu_conversation_v1.json
.Post your comments and questions and include the project-intu
and intu
tags on
dW Answers
or Stack Overflow.