Hands-on Python examples for LLM apps: Retrieval-Augmented Generation (RAG), embeddings, vector search, Chroma, LangChain, multilingual & multimodal (text, image) retrieval, and RAGAS evaluation.
Prerequisites
- Python 3.12+ (see pyproject.toml)
- uv for install and run
Install
uv syncRun a notebook from the repo root or the experiment folder (see each experiment’s notebook for EXPERIMENT_DIR resolution).
| Experiment | Description | Notebook |
|---|---|---|
| multilingual-rag-retrieval | Bilingual UDHR (English + Hindi): E5 embeddings, Chroma vector DB, optional lang filters and cross-lingual search |
notebook.ipynb |
| multimodal-text-image-vl-embeddings | Colab-only: cross-modal text+image VL embeddings with Qwen3-VL (Sentence Transformers). Open from GitHub in Colab, enable GPU runtime — not via uv sync |
notebook.ipynb |
| ragas-rag-evaluation | English UDHR RAG evaluated with RAGAS: retrieval metrics (context precision/recall) + generation metrics (faithfulness/answer relevancy); MiniLM + Chroma + OpenAI | notebook.ipynb |
If you find this project helpful:
- ⭐ Star the repository
- 🐛 Report issues
- 🔀 Submit pull requests
- 💝 Sponsor on GitHub
MIT © Y. Siva Sai Krishna — see LICENSE for details.
Author's GitHub • Author's LinkedIn • Author's site • Report Issues
