https://github.com/jonalvi/qna-chatbot
Get quick answers with QnA-Chatbot, a lightweight rule-based NLP tool using TF-IDF and cosine similarity. Easy to deploy with Streamlit. 🤖🌟
https://github.com/jonalvi/qna-chatbot
azure-devops chainlit chatterbot extension fastapi langchain langgraph large-language-models llama2-7b llm llmops mlflow omegle omegle-chatbot qna-maker retrieval-augmented-generation terraform togetherai
Last synced: 3 months ago
JSON representation
Get quick answers with QnA-Chatbot, a lightweight rule-based NLP tool using TF-IDF and cosine similarity. Easy to deploy with Streamlit. 🤖🌟
- Host: GitHub
- URL: https://github.com/jonalvi/qna-chatbot
- Owner: jonalvi
- Created: 2025-07-14T09:40:16.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-07-14T14:18:55.000Z (3 months ago)
- Last Synced: 2025-07-14T15:05:55.778Z (3 months ago)
- Topics: azure-devops, chainlit, chatterbot, extension, fastapi, langchain, langgraph, large-language-models, llama2-7b, llm, llmops, mlflow, omegle, omegle-chatbot, qna-maker, retrieval-augmented-generation, terraform, togetherai
- Language: Python
- Size: 4.38 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# QnA-Chatbot: A Fast, Rule-Based NLP Chatbot for Real-World Q&A 🤖💬
 [](https://github.com/jonalvi/QnA-Chatbot/releases)
## Table of Contents
- [Overview](#overview)
- [Features](#features)
- [Technologies Used](#technologies-used)
- [Installation](#installation)
- [Usage](#usage)
- [Contributing](#contributing)
- [License](#license)
- [Contact](#contact)## Overview
QnA-Chatbot is a lightweight, rule-based natural language processing (NLP) chatbot. It uses TF-IDF and cosine similarity to provide accurate answers from a dataset of over 1000 real-world questions and answers. This chatbot operates offline and does not rely on large language models (LLMs), making it fast and efficient for various applications.
## Features
- **Rule-Based Approach**: Utilizes predefined rules for question matching.
- **Fast Response Time**: Optimized for quick interactions.
- **Offline Capability**: No internet connection required for operation.
- **Lightweight Model**: Minimal resource usage.
- **Real-World Dataset**: Trained on a comprehensive dataset of over 1000 Q&A pairs.
- **Cosine Similarity**: Employs cosine similarity for effective answer retrieval.
- **Streamlit Integration**: Simple web interface for user interaction.## Technologies Used
- **Python**: The primary programming language.
- **TF-IDF**: For term frequency-inverse document frequency calculations.
- **Cosine Similarity**: To measure similarity between questions.
- **Streamlit**: For creating the web interface.
- **CSV Dataset**: Stores the Q&A pairs.## Installation
To set up the QnA-Chatbot, follow these steps:
1. **Clone the Repository**:
```bash
git clone https://github.com/jonalvi/QnA-Chatbot.git
cd QnA-Chatbot
```2. **Install Required Packages**:
Make sure you have Python installed. Then, run:
```bash
pip install -r requirements.txt
```3. **Download the Latest Release**:
Visit the [Releases section](https://github.com/jonalvi/QnA-Chatbot/releases) to download the latest version. Follow the instructions in the release notes for setup.## Usage
After installation, you can run the chatbot using Streamlit:
```bash
streamlit run app.py
```Open your browser and go to `http://localhost:8501` to interact with the chatbot.
### Example Interaction
1. **User**: "What is the capital of France?"
2. **Chatbot**: "The capital of France is Paris."### Customization
You can customize the Q&A dataset by modifying the `data.csv` file. Add or remove entries as needed to tailor the chatbot to your specific requirements.
## Contributing
We welcome contributions to improve the QnA-Chatbot. To contribute:
1. Fork the repository.
2. Create a new branch for your feature or bug fix.
3. Make your changes and commit them.
4. Push your branch to your forked repository.
5. Create a pull request to the main repository.Please ensure that your code follows the existing style and includes tests where applicable.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
## Contact
For questions or suggestions, please contact:
- **Author**: Jon Alvi
- **Email**: jonalvi@example.com
- **GitHub**: [jonalvi](https://github.com/jonalvi)Feel free to check the [Releases section](https://github.com/jonalvi/QnA-Chatbot/releases) for the latest updates and versions of the QnA-Chatbot.