E.C.H.O. is an AI chatbot designed to assist with helpful, creative, clever, and very friendly responses. It is a straightforward and convenient web application that utilizes the OpenAI API to generate human-like responses to user input.
~/project
images/contains images used in the README.md file.app.pyis the main script that runs the chatbot interface.api.pycontains the api_request function that makes requests to the OpenAI API.api_key.pycontains the OpenAI API key.file_handler.pycontains the function for reading to files.initial.txtcontains the initial prompt for the OpenAI API.test_app.pycontains the unit tests for the app.py script.requirements.txtcontains the list of dependencies to be installed.README.mdis the file you are currently reading.
-
This software requires Python version 3.7 or higher. You can download Python here.
-
Install the required libraries:
gradioandopenai.
pip install -r requirements.txt -
Set up an OpenAI API key and store it in a file called
api_key.pyas a string. -
Run
app.pyto launch the chatbot interface.
python app.py This will display a url to the chatbot interface in the terminal. Click it to open the web application.
$ python app.py Running on local URL: http://127.9.9.1:7860 - Enter your message in the textbox and click the "SEND" button.
- E.C.H.O. will generate a response based on your input.
- Continue the conversation by entering more messages and clicking the "SEND" button.
Here are a few example conversations with E.C.H.O.:
Example 1: Recommendations
👤You: You are my anime guide. If I were to be transported into an anime world, suggest 2 worlds where I can become a chef. 🧠E.C.H.O.: Here are two anime worlds where you might be able to become a chef: Toriko: In the world of Toriko, chefs are highly respected and play a crucial role in society. The series follows the adventures of a powerful chef named Toriko, who travels the world searching for rare and exotic ingredients to create the ultimate feast. As a chef in this world, you would have the opportunity to explore diverse and fantastical environments, discover new ingredients, and create culinary masterpieces. Food Wars!: Shokugeki no Soma: In the world of Food Wars!, chefs are highly skilled and passionate about their craft. The series follows a young chef named Soma, who attends a prestigious culinary school where he competes against other talented chefs in high-stakes cooking battles. As a chef in this world, you would have the opportunity to hone your skills, compete in challenging culinary competitions, and create delicious dishes. Example 2: Science
👤You: Explain in one paragraph and simple English the conjecture of time travel by Albert Einstein 🧠E.C.H.O.: Albert Einstein believed that it was theoretically possible to travel through time by manipulating the laws of physics. He proposed that if you could move at the speed of light or have a massive object, like a black hole, warping the space-time around you, you could potentially travel through time. However, Einstein also believed that it would be impossible for humans to achieve these speeds or access these massive objects, so time travel remains a theoretical concept. Example 3: Jokes
👤You: Can you tell me a joke? 🧠E.C.H.O.: Sure, here's a joke: Why couldn't the bicycle stand up by itself? Because it was two-tired. 👤You: Haha, that was a good one! 🧠E.C.H.O.: I'm glad you enjoyed it. Do you have any other requests? The app utilizes the OpenAI API and specifically the Davinci model - the most capable GPT-3 model. Davinci is known for its ability to understand and generate natural language, often with higher quality, longer output and better instruction-following capabilities.
⌨️ Examples of Use:
- Asking for an explanation of a complex topic
- Asking for creative ideas for a poem or story
- Asking for help with a specific programming task
💪 Strengths:
- Remembering previous parts of the conversation
- Allowing the user to correct any mistakes
- Refusing inappropriate requests
- May sometimes provide incorrect information
- May sometimes provide harmful or biased content
- Has limited knowledge of world and events after June 2021. For more information, see here .
Ralph Cajipe - @ralphcode - ralphcajipe@gmail.com
Project Link: https://github.com/ralphcajipe/echo-ai
I would like to express my sincere appreciation to OpenAI's Davinci, Gradio, Python's unittest, and Harvard's CS50 Staff for their invaluable contributions to my learning and development.
The Davinci model has provided me with an incredible tool for understanding and generating natural language, often with higher quality, longer output, and better instruction-following capabilities. It has allowed me to delve deeper into the field of artificial intelligence and build intelligent pieces of software.
Gradio has been an invaluable resource for deploying machine learning models. Its user-friendly interface that allowed for the seamless integration of the AI model into a web application made it a pleasure to use.
Python's unittest unit testing framework has greatly helped me to ensure the quality and functionality of my code.
Finally, I would like to thank the Harvard CS50 Staff for their excellent teaching and support. Their expertise and encouragement were instrumental in the successful completion of this work. I am grateful for the opportunity to have studied under their guidance.
This was CS50!
