An open API service indexing awesome lists of open source software.

https://github.com/chahiriabderrahmane/cdiscount_assistant_chatbot

Cdiscount Assistant Bot - AI-Powered Chatbot for Customer Service with Memory
https://github.com/chahiriabderrahmane/cdiscount_assistant_chatbot

chatbot gemini-ai langchain llama2 pinecone streamlit

Last synced: about 2 months ago
JSON representation

Cdiscount Assistant Bot - AI-Powered Chatbot for Customer Service with Memory

Awesome Lists containing this project

README

          



Banner



    Cdiscount Chatbot Assistant





A Customer Service Chatbot Trained on Cdiscount Data


🏓
Demo YouTube
🔮
Request Feature




Banner

## 📝 Table of Contents

1. [Project Overview](#project-overview)
2. [Chatbot Description](#chatbot-description)
3. [Technologies Used](#technologies-used)
4. [Disclaimer](#disclaimer)
5. [Installation](#installation)
6. [Contact](#contact)


### 💬 Chatbot Pages

Check out some examples of the chatbot in action:

1. **Example 1:**
![image](https://github.com/ChahiriAbderrahmane/CDiscount_Assistant_Chatbot/blob/master/assets/1.png)

2. **Example 2:**
![image](https://github.com/ChahiriAbderrahmane/CDiscount_Assistant_Chatbot/blob/master/assets/2.png)

3. **Example 3:**
![image](https://github.com/ChahiriAbderrahmane/CDiscount_Assistant_Chatbot/blob/master/assets/3.png)


## 🔬 **Project Overview** :

### 🎯 **Goal** :

The goal is to develop an AI-powered chatbot that interacts with users by providing relevant and professional responses. This chatbot uses data sourced from the official Cdiscount Q&A section to provide accurate and interactive information.


## 💬 **Chatbot Description** :

The **Cdiscount Chatbot** works as follows:

1. **Data Scraping**: Data is extracted from the official Cdiscount Q&A pages using **Langchain's WebBaseLoader**.
2. **Data Processing**: The scraped content is processed using **Langchain's RecursiveCharacterTextSplitter**.
3. **Embedding**: The processed data is converted into vectors with **llama-text-embed-v2** and stored in **Pinecone**.
4. **User Interaction**: The **Gemini 2.0 Flash** model utilizes the data in Pinecone to interact with users and respond to their questions in a credible and professional manner.

🔎 **Memory Feature**:
This chatbot has a memory feature that allows it to remember the last 5 messages of the conversation, and this number is scalable, ensuring more context-aware and coherent interactions. By retaining this context, it provides more relevant, personalized responses, improving the overall user experience and maintaining continuity throughout the interaction.

## **📝 Chatbot Architecture**

![chatbot-architecture](https://github.com/ChahiriAbderrahmane/CDiscount_Assistant_Chatbot/blob/master/assets/Architecture_Cdiscount_bot.jpg)


## 🛠️ **Technologies Used** :

![LangChain](https://img.shields.io/badge/LangChain-000000?style=for-the-badge&logo=python&logoColor=white) ![Pinecone](https://img.shields.io/badge/Pinecone-412991?style=for-the-badge&logo=Pinecone&logoColor=white) ![Llama](https://img.shields.io/badge/Llama2-000000?style=for-the-badge&logo=meta&logoColor=white) ![Gemini](https://img.shields.io/badge/Gemini%202.0%20Flash-000000?style=for-the-badge&logo=google&logoColor=white)

## **🚨 Disclaimer :**
This project is a personal initiative and is not affiliated with Cdiscount. It was created for educational and personal development purposes.


## 🖥️ Installation :
1. Clone the repository:

```git clone it's_private_repository_link```

2. Install the required packages:

```pip install -r .\chatbot_Cdiscount\requirements.txt```

### Usage :

1. Change directory to :

```cd Chatbot-Cdsicount```

2. Run the app:

```streamlit run .\chatbot_Cdiscount\CdiscountMarketplaceBot.py ```


## 📨 Contact Me
[LinkedIn](https://www.linkedin.com/in/abderrahmane-chahiri-151b26237/) •
[Gmail](chahiri.abderrahmane.eng@gmail.com) •
[Demo on Youtube](https://youtu.be/slYyGwTECTQ)