Home
Softono
Robby-chatbot

Robby-chatbot

Open source Apache-2.0 Python
816
Stars
287
Forks
1
Issues
14
Watchers
3 months
Last Commit

About Robby-chatbot

Robby-chatbot is an AI-powered conversational assistant designed to help users interact with their data through natural language. Built on LangChain, OpenAI, and Streamlit, it enables intuitive discussions with uploaded files including PDFs, text documents, and CSV sheets, as well as analysis of YouTube video content. The application features conversational memory to maintain context across sessions and offers specialized modules for document chatting, tabular data analysis using PandasAI, and video summarization. It leverages vector embeddings and FAISS for efficient similarity search and supports multiple OpenAI models, including the fast and cost-effective GPT-4o-mini, the highly capable GPT-4o, and GPT-4-turbo. The software requires Python 3.10 or higher and an OpenAI API key for local deployment. Users can clone the repository, install dependencies via pip, and launch the interface locally using Streamlit. Optional configuration allows setting API keys via environment variables or an .env file for stream

Platforms

Web Self-hosted

Languages

Python

Robby-chatbot πŸ€–

An AI chatbot featuring conversational memory, designed to enable users to discuss their CSV, PDF, TXT data and YouTube videos in a more intuitive manner. πŸš€

I'm currently working on making AI useful for geospatial -> building TerraLab with my dad and best friend, come take a look hehe

Robby Robby the Robot from Forbidden Planet

For better understanding, see my Medium article πŸ–– : Build a chat-bot over your CSV data

Features ✨

  • Robby-Chat: Chat with your documents (PDF, TXT, CSV) using vector embeddings and conversational memory
  • Robby-Sheet: Analyze tabular data with natural language using PandasAI
  • Robby-Youtube: Summarize YouTube videos using AI

Tech Stack πŸ› οΈ

  • LangChain - LLM orchestration framework
  • OpenAI - GPT-4o, GPT-4o-mini, GPT-4-turbo, GPT-3.5-turbo
  • PandasAI - Natural language data analysis
  • Streamlit - Web application framework
  • FAISS - Vector similarity search

Running Locally πŸ’»

Follow these steps to set up and run the service locally:

Prerequisites

  • Python 3.10 or higher
  • Git
  • OpenAI API key

Installation

Clone the repository:

git clone https://github.com/yvann-hub/Robby-chatbot.git

Navigate to the project directory:

cd Robby-chatbot

Create a virtual environment:

python -m venv .venv
source .venv/bin/activate  # On macOS/Linux
# or
.venv\Scripts\activate  # On Windows

Install the required dependencies:

pip install -r requirements.txt

Launch the chat service locally:

streamlit run src/Home.py

Environment Variables (Optional)

You can set your OpenAI API key as an environment variable instead of entering it in the UI:

export OPENAI_API_KEY="your-api-key-here"

Or create a .env file in the project root:

OPENAI_API_KEY=your-api-key-here

That's it! The service is now up and running locally. πŸ€—

Models Available πŸ€–

  • GPT-4o-mini - Fast and cost-effective (default)
  • GPT-4o - Most capable model
  • GPT-4-turbo - Balanced performance
  • GPT-3.5-turbo - Legacy model

Contributing πŸ™Œ

If you want to contribute to this project, please open an issue, submit a pull request or contact me at [email protected] (: