Coder Social home page Coder Social logo

mikful / personal_website_bot Goto Github PK

View Code? Open in Web Editor NEW

This project forked from rctatman/personal_website_bot

0.0 1.0 0.0 965.17 MB

A simple bot to answer questions on my personal website. (In development)

License: Apache License 2.0

Python 41.72% Jupyter Notebook 54.76% Dockerfile 3.52%

personal_website_bot's Introduction

personal_website_bot

A simple bot to answer questions on my personal website. (In development)

Frontend deployment options

Discussed & prioritized on stream March 19, 2021.

Rasa X + Digital ocean deploy

  • create a droplet (tutorial vid: https://www.youtube.com/watch?v=E9-s_49pw_8&ab_channel=Rasa)
  • install Rasa X
  • while installing, add notice that convos will be seen publically during CDD on the livestream
  • create rasa x instance
  • add our assistant to our server via github integration
  • quick test
  • create an image of our action server & add to dockerhub (using manual install)
  • add action server to our rasa x instance
  • added database to our action server image
  • update action server image w/ new version of database
  • TODO:
    • NLU insights
    • share bot & get user data & do CDD

possibilities for first deployment

  • 1st: Rasa X (server, digital ocean?): share using chatbot sharing feature for early CDD & link where appropraite
    • pro: good proof of concpet, can use for inital softlaunch/early CDD, link from my website, need to set up Rasa X anyway for CDD/annotation/model management
    • con: kicks the can on the front end integration problem, already done it on livestream (double dipping :P)
  • 2nd: twitter - pref. is for convos in the dms, which is definintely possible
    • pro: a reasonable place to put the assistant, meeting people who ask ?s where they are, needing an account might help prevent abuse
    • con: people need to have a Twitter account (but can add other channels that don't need an account later), need to handle twitter API & TOS; not sure how bots are handleded by that
  • 3rd: Website: host on a new, v. simple webpage
    • pro: good proof of concpet, can use for inital softlaunch/early CDD, link from my website, show integration with front end in simple html
    • con: kicks the can on the front end integration problem, why build myself when Rasa X will already do this?
  • 4th: Website: Add jekyll plugin (?) to my existing website
    • pro: can use w/ existing website, lots of people want to do something similar (but not necessarily w/ jekyll), if i can find a plugin i don't have to do any front end work myself (besides maybe adjusting color)
    • con: haven't found a suitable plug in yet, may spend a lot of time searching only the find there's nothing that I can use

not happening

  • Website: Add webchat as raw html to my current website (no idea where that would go??)
    • don't know jekyll well enough & don't really want to spend a bunch of time learning
  • Website: rebuild website from scratch in a framework I know better (blogdown?) so I add a chat window
    • not an efficent use of time
  • Website: shiny somehow + rserver??? will take a lot of custom work but could be useful to other people as well
    • would take a lot of futzing, maybe in the future, haven't found anything similar
  • discord - would have to make one... can provide a widget w/ htm/json widget?
    • don't have an existing discord, widget integration is the same as the first website option above
  • slack - contributor slack?
    • rasa contribs probably don't need answers to the questions my assistant can answer

backlog

  • TODONE: how to add image to docker-compose (rather than helm)
    • /etc/rasa add image path (on dockerhub) to docker-compose or docker-compose.override.yaml
    • to check running dockers = docker ps
    • to check logs = docker logs [continer id, get from ps list]
  • TODO: figure out where your sqlite database is
    • to do: host database in different image?
    • from chat (ty!): app needs DNS translation (add translation in etc/hosts as localhost). copy sentence in dockerfile when you build the image has to moe the db file inside the image
    • from chat: digital ocena managed database?
  • TODO: add error message if database file not found
  • TODO: update rasa in docker compose
  • TODO: write doc strings for our Python functions
  • TODO: add chitchat to handle polite turns (thank you, goodbye, etc.)
  • TODO: a way to handle when the bot has no response

personal_website_bot's People

Contributors

rctatman avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.