Sharing a chat bot I made that responds with "dumb" answers

I wanted to share a bot I made that responds to questions with “dumb” answers. I call it “The Dodo Bot”. https://www.mydodobot.com/

This started as a project to learn about OpenAI APIs so I made an (web) app for my kids and his 5th grade friends (and they seem to love it). Would love the community to try and give me feedback. Yes I realized this is similar to “snarky” bot on Open AI examples page but trust me I didnt know that anything like that existed when I made it. But now that I made it, I am able to extend the bot to new usecases.

How I built this: In order to orchestrate the calls to Open AI, I wanted to create an abstraction on top of Open AI APIs. I built the web app where all the requests go to my REST endpoint. I save the user’s query in DynamoDB, call the openAI API and save responses in the DB. I am able to save the user’s chat sessions and when the user logs in again, they see the full history. This saves me calling chatGPT for previous messages and I call the API only for new chat interactions. This also gives me ability to intercept the chatGPT responses and present new artifacts to users in the response. For example, I show users “next questions recommendations buttons” that they can tap to ask the next question. I also made a “Agree to terms and conditions” workflow where users will need to type in “I Agree” before they can use the bot. I also added “reaction buttons” for responses returned by chatGPT. I made the UI look at iMessages chat messages (or tried to).

Tech used: I used React for Frontend and AWS Amplify stack for backend. I used AWS Cognito for user authentication and user management, Dynamo DB for database, GraphQL for data modeling (which uses Dynamo DB) and other AWS tech. I use Google Analytics to help me analyze the traffic and click throughs.

Future usecases: The way I built this framework lets me expand the usecases with just few lines of code changes. Currently I am extending this bot to also allow users to translate messages from one language to another. In future I might adapt this to new usecases such as customer support or embedding sign up forms within the conversations

Would love to get community feedback about this bot and if your ideas on what other usecases should I extend this to

Thank you

2 Likes