Skip to content

abakhru/chatbot

Repository files navigation

Simple chatbot

  • normal HR related query conversation
  • wikipedia search
  • google search

install and run chatbot

git clone https://github.com/abakhru/chatbot.git && cd chatbot
brew install portaudio swig # on mac only
brew install openal-soft
(cd /usr/local/include && ln -s /usr/local/Cellar/openal-soft/1.20.1/include/AL/* .)
bin/quickstart.sh

Run the bot

./chatbot/bot.py
  • for wikipedia search wiki <search string>
  • for google search google <search string>
  • for mitre T-id search mitre T1105
  • for mitre attack type search mitre Management, will list attack types with T

build docker images

cd ~/src/chatbot && docker build -t chatbot -f chatbot/Dockerfile .

run with docker container

docker run -it --rm chatbot bash

geoip db update

# install https://github.com/maxmind/geoipupdate
# download latest database using following command:
cd ~/src/chatbot && geoipupdate -f config/GeoIP.conf --database-directory ./data -v

Reference:

TODO

  • https://github.com/alirezamika/autoscraper
  • Voice activated AI Virtual Assistant
    • use pyaudio to record and play audio
    • use SpeechRecognition to convert audio to text
    • use gTTS to convert text to speech
    • The goal here is to record the audio, convert the audio to text, process the command, and make the program act according to the command.
  • Add help options with available commands
  • mitre data search and co-relation
  • more natural conversational
  • search videos, news etc
  • tqdm support for search wait-time
  • add fastapi web framework for REST/Web access
  • add click cli support
  • integrate more sources/features
    • google search
    • twitter feed
    • maxmind geoip lookup
    • whois lookup
  • add more topic related source urls
  • package the application using PyOxidizer
  • add basic tests
  • add colored logger
  • Dockerize the application
  • add netdata monitoring support
  • add support for pre-commit code auto-formatters