https://github.com/joeywhelan/es-rag
Elasticsearch demo of naive RAG
https://github.com/joeywhelan/es-rag
chainlit elasticsearch langchain python rag vector-database
Last synced: 8 months ago
JSON representation
Elasticsearch demo of naive RAG
- Host: GitHub
- URL: https://github.com/joeywhelan/es-rag
- Owner: joeywhelan
- License: mit
- Created: 2024-05-08T00:53:16.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-08-05T13:10:50.000Z (about 1 year ago)
- Last Synced: 2024-12-31T19:14:13.637Z (9 months ago)
- Topics: chainlit, elasticsearch, langchain, python, rag, vector-database
- Language: Python
- Homepage:
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Elastic RAG Demo
## Contents
1. [Summary](#summary)
2. [Architecture](#architecture)
3. [Features](#features)
4. [Prerequisites](#prerequisites)
5. [Installation](#installation)
6. [Usage](#usage)## Summary
This is a demo of usage of Elastic as a vector store for Retrieval Augmented Generation (RAG) for this scenario:
- Pure LangChain Expression Language (LCEL) chain with no safeguards on user or LLM interactions
- Content from the Elastic online documentation of Elastic Vector Search is used for the RAG content.## Architecture
## Features
- Elastic Search for the vector store
- Python Bot server (Chainlit)
- LangChain implementation of RAG with Elastic## Prerequisites
- OpenAI API key
- docker compose## Installation
```bash
git clone https://github.com/joeywhelan/es-rag.git && cd es-rag
```
- Edit the .env_template file with your OpenAI key, Elastic Cloud ID, and Elastic Cloud API Key and rename the file to .env## Usage
### Start Up
```bash
./start.sh
```
### Shut Down
```bash
./stop.sh
```