Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pcastiglione99/ragify-search
RAGify is designed to enhance search capabilities using Retrieval-Augmented Generation (RAG). By combining traditional web search with AI-driven contextual understanding, RAGify retrieves relevant information from the web and generates concise, human-readable summaries.
https://github.com/pcastiglione99/ragify-search
langchain llm ollama python rag streamlit
Last synced: about 23 hours ago
JSON representation
RAGify is designed to enhance search capabilities using Retrieval-Augmented Generation (RAG). By combining traditional web search with AI-driven contextual understanding, RAGify retrieves relevant information from the web and generates concise, human-readable summaries.
- Host: GitHub
- URL: https://github.com/pcastiglione99/ragify-search
- Owner: pcastiglione99
- License: mit
- Created: 2024-12-13T17:10:42.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2025-01-13T07:18:39.000Z (18 days ago)
- Last Synced: 2025-01-13T08:26:35.829Z (18 days ago)
- Topics: langchain, llm, ollama, python, rag, streamlit
- Language: Python
- Homepage:
- Size: 234 KB
- Stars: 5
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# RAGify Search - Intelligent Assistant with Web Search RAG
![RAGify](./RAGify.gif)
## Description
RAGify Search is an AI-powered intelligent assistant built with Streamlit, designed to answer user queries by integrating real-time web search. It uses a Retrieval-Augmented Generation (RAG) approach to provide accurate, concise, and context-aware responses---
## Key Features
- **Real-Time Web Search**: Fetch relevant web pages for user queries.
- **Document Processing**: Split, embed, and index documents for similarity-based searches.
- **Prompt Engineering**: Generate optimized prompts for the LLM model.
- **Streamlit Interface**: Simple and intuitive chatbot-like user experience.
- **Temporary File Management**: Automatic cleanup of downloaded content to save space.
- **Local LLM Support**: Utilizes Ollama to run a local LLM, ensuring data privacy and high performance.---
## Directory Structure
- **`app.py`**: Front-end application powered by Streamlit.
- **`config.py`**: Centralized configuration for chunk sizes, model names, and directories.
- **`db_operations.py`**: Embeds and indexes document chunks for search.
- **`extract_queries.py`**: Generates optimized queries to be searched.
- **`web_scraper.py`**: Manages web scraping and temporary file handling.
- **`prompt_generator.py`**: Prepares structured prompts for context-aware answers.---
## Installation
1. **Clone the Repository**:
```bash
git clone https://github.com/pcastiglione99/RAGify-Search.git
cd RAGify-Search
```2. **Install Dependencies**:
```bash
pip install -r requirements.txt
```3. **Run the Application**:
```bash
streamlit run ./src/app.py
```---
## Usage
1. Start the Streamlit app and interact with the chatbot.
2. Enter your query in the chat interface.
3. The assistant fetches web pages, processes content, and generates a response.