EcomShoppingBuddy / README.md
RomyMy's picture
update readme
e1a334f

A newer version of the Streamlit SDK is available: 1.36.0

Upgrade
metadata
title: EcomShoppingBuddy
emoji: πŸ˜Žβ€‹
colorFrom: pink
colorTo: red
sdk: streamlit
sdk_version: 1.27.2
app_file: app.py
pinned: false

Shopping Buddy

Overview:

This project leverages Falcon LLM, OpenAI API, Sentence Transformer, Hugging Face Hub and Streamlit to build and deploy a chatbot shopping assistant application. It relies on a dataset of Amazon products to provide tailored product recommendations aligned with user's needs. The application uses Langchain to integrate those diverse functionalities. Data preprocessing, embedding generation, and storage in Redis are also essential components of this project. More details about the project are provided in this blog post. You can test the application by visiting Shopping Buddy.

Table of Contents

Installation & Setup

1. Clone the Repository

git clone git@github.com:romaissaMe/shopping-buddy.git
cd shopping-buddy

2. Install Dependencies

pip install -r requirements.txt

3. Environment Variables

Set up your environment variables. This project uses the dotenv library to manage environment variables. Create a .env file in the root directory:

cp .env_example .env

and add the following variables:

HUGGINGFACEHUB_API_TOKEN=your_huggingface_api_token
OPENAI_API_KEY=your_openai_api_key
REDIS_HOST=your_redis_host
REDIS_PORT=your_redis_port
REDIS_KEY=your_redis_key

4. Data Preprocessing

Before running the main application, preprocess and import your data into a database using:

python preprocess.py

Download the data as csv file from here and name it 'product_data.csv'. This dataset comprises Amazon products information including item ID, item name, item keywords, product type...

Running the Application

Once the setup is complete, you can run the main application using:

streamlit run app.py

This will launch the Streamlit application, and you can access the chatbot via the provided URL.

Contributing

If you're looking to contribute to this project, kindly follow the standard GitHub workflow:

  1. Fork the repository.
  2. Create a new branch for your feature or fix.
  3. Commit your changes and open a pull request.
  4. Ensure that your code adheres to the project's style and standards.