Metadata-Version: 2.4
Name: kolzchut-ragbot
Version: 1.7.17
Summary: A search engine using machine learning models and Elasticsearch for advanced document retrieval.
Home-page: https://github.com/shmuelrob/rag-bot
Author: Shmuel Robinov
Author-email: shmuel_robinov@webiks.com
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: elasticsearch==8.17.1
Requires-Dist: sentence-transformers==3.4.1
Requires-Dist: torch==2.6.0
Requires-Dist: transformers==4.48.3
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# kolzchut-ragbot

## Overview

This project is a search engine that uses machine learning models and Elasticsearch to provide advanced document retrieval.
You can use [kolzchut-ragbot](https://github.com/shmuelrob/rag-bot) to demonstrate the engine's document retrieval abilities.

## Features

- Document representation and validation
- Document embedding and indexing in Elasticsearch
- Advanced search using machine learning model
- Integration with LLM (Large Language Model) client for query answering

## Installation

### From PyPI

```bash
pip install kolzchut-ragbot
```

### From Source

1. Clone the repository:
   
   ```bash
   git clone https://github.com/shmuelrob/rag-bot.git
   cd rag-bot
   ```

2. Create a virtual environment and activate it:  

   ```bash
   python -m venv venv
   source venv/bin/activate  # On Windows use: venv\Scripts\activate
   ```

3. Install the required dependencies:  

   ```bash
   pip install -r requirements.txt
   ```

## Configuration

Set the following environment variables:

- `ES_EMBEDDING_INDEX`: The name of the Elasticsearch index for embeddings.
- `TOKENIZER_LOCATION`: The location of the tokenizer model.
