Spaces:
Sleeping
Sleeping
title: Multimodal RAG Kaggle Based | |
emoji: 👁 | |
colorFrom: red | |
colorTo: pink | |
sdk: gradio | |
sdk_version: 5.25.1 | |
app_file: app.py | |
pinned: false | |
license: apache-2.0 | |
short_description: Multimodal RAG to augment english recipes searches | |
# Multimodal Retrieval System with FAISS | |
This repository contains a prototype system for multimodal information retrieval using FAISS, capable of searching across text and images using vector similarity. | |
## Structure | |
- `notebook/` (or `.ipynb`): Contains the logic to generate the vector indexes for both text and images. | |
- `app.py`: Gradio-based interface for interacting with the system. | |
- `search_ocean.py`: Core logic for performing FAISS-based similarity search using precomputed indexes. | |
- `text_index.faiss`, `image_index.faiss`: The FAISS index files generated by the notebook (already included in the app). | |
- `metadata_text.json`, `metadata_image.json`: Associated metadata for mapping index results back to source information. | |
## What it does | |
- Loads precomputed FAISS indexes (for text and image). | |
- Performs retrieval based on a text or image query. | |
- Returns top matching results using cosine similarity. | |
## What it doesn't (yet) do | |
- No generation step (e.g., using LLMs) is implemented in this app. | |
- While the code for image retrieval is ready, image indexes must be built in the notebook beforehand. | |
- There is **no context overlap** implemented when chunking the data for indexing. Each chunk is indexed independently, which may affect the quality of retrieval in some use cases. | |
## Dependencies | |
- `faiss-cpu` | |
- `sentence-transformers` | |
- `openai-clip` | |
- `torch` | |
- `torchvision` | |
- `gradio` | |
- `Pillow` | |
## Notes | |
- The app is designed to separate concerns between indexing (offline, notebook) and retrieval (live, Gradio app). | |
- You can easily extend this to include LLM generation or contextual QA once relevant results are retrieved. | |