๐ฎ Oliver: Your Friendly Mexican Restaurant Order Assistant ๐ฎ Introducing Oliver, the charming chatbot that takes your order in a Mexican restaurant with a personalized touch! Say adios to traditional menus and hola to a new, interactive way of placing your favorite Mexican dishes.
Welcome to the Oliver Chatbot project! This project features a conversational chatbot designed to assist users in choosing delicious Mexican dishes. The chatbot interacts with users through a user-friendly HTML interface and utilizes Google Dialogflow for natural language processing.
- Introduction
- Setup
- Database Setup
- Backend Installation
- Dialogflow Configuration
- Usage
Oliver is a conversational chatbot that helps users explore and select tasty Mexican dishes. It combines Google Dialogflow for natural language understanding and a FastAPI backend for connecting to the project's database.
Follow these steps to set up and run the project locally.
- Navigate to the
database
folder. - Open the SQL file and execute the queries in your database management tool.
- Make sure to replace variables in the queries with your actual database elements.
-
Install required Python libraries for the backend:
pip install -r backend/requirements.txt
-
Start the FastApi Server:
uvicorn backend.main:app --host 0.0.0.0 --port port_number
- Import the Dialogflow agent included in the oliver-chatbot folder.
- To connect the agent to the database, run the FastAPI server as mentioned above.
- Navigate to the ngrok app in the backend folder in your terminal.
- Run the following command to create a secure URL:
ngrok http port_number
- Take note of the secure URL provided by ngrok.
- In the Dialogflow agent settings, go to the Fulfillment tab.
- Set the secure ngrok URL as the webhook URL.
- The chatbot will function as long as the ngrok URL is active.
- Open the HTML file to access the chatbot interface.
- Interact with the chatbot to explore and choose Mexican dishes.
- Enjoy a virtual culinary experience with Oliver!