MeetMind RAG is a Streamlit-based application designed for Retrieval-Augmented Generation (RAG). It enables text processing, vector-based retrieval, similarity search, and audio transcription. The project leverages chromadb for vector storage, sentence-transformers for embeddings, TfidfVectorizer for text similarity, and FFmpeg-dependent libraries for transcription.
- Text Retrieval: Efficient vector search using
chromadb. - Similarity Search: TF-IDF and cosine similarity for text analysis.
- Audio Transcription: Processes audio inputs (requires FFmpeg).
- Streamlit Interface: Web-based UI for user interaction.
- Extensible: Modular structure for adding features.
- Python: 3.11–3.13 (tested on 3.13)
- Git: For cloning the repository
- Virtual Environment: Recommended
- FFmpeg: For audio transcription
- Streamlit Cloud: For deployment (optional)
- SQLite: 3.35.0+ (local; patched for Streamlit Cloud)
- Check:
sqlite3 --version
- Check:
- FFmpeg: Required for transcription
- Ubuntu:
sudo apt install ffmpeg - macOS:
brew install ffmpeg - Windows: Install via ffmpeg.org or Chocolatey
- Ubuntu:
git clone https://github.com/sudhakar-r08/MeetMind.git
cd MeetMindpython -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activateCreate requirements.txt:
streamlit
chromadb>=0.5.0
numpy
scikit-learn
sentence-transformers
pysqlite3-binary
speech_recognition # Adjust if using a different transcription library
pydub # Adjust as needed
Install:
pip install -r requirements.txtInstall FFmpeg locally (see System Dependencies).
streamlit run meetmind_rag.pyAccess at http://localhost:8501.
MeetMind/
├── meetmind_rag.py # Main application script
├── requirements.txt # Python dependencies
├── packages.txt # System dependencies (e.g., ffmpeg)
├── venv/ # Virtual environment (gitignore)
└── README.md # This file
- Use the Streamlit UI to query text or upload audio for transcription.
- Customize
meetmind_rag.pyto modify retrieval, similarity, or transcription logic.
- Push your repository to GitHub.
- Deploy via Streamlit Cloud.
- SQLite Fix:
- Add to
requirements.txt:pysqlite3-binary - Patch
meetmind_rag.pyat the top:import sys import pysqlite3 sys.modules['sqlite3'] = sys.modules.pop('pysqlite3')
- Add to
- FFmpeg Fix:
- Create
packages.txt:ffmpeg
- Create
- ChromaDB Space Import Fix:
- Use
chromadb>=0.5.0inrequirements.txt. - Replace
Spacereferences withchromadb.Clientandcreate_collection:import chromadb client = chromadb.Client() collection = client.create_collection(name="my_collection")
- Use
- Redeploy and check logs.
Error: Your system has an unsupported version of sqlite3...
- Local: Upgrade SQLite or install
pysqlite3-binary. - Streamlit Cloud: Apply the SQLite patch above.
- Docs: ChromaDB Troubleshooting
Error: Transcription failed: [Errno 2] No such file or directory: 'ffmpeg'
- Local: Install FFmpeg.
- Streamlit Cloud: Add
ffmpegtopackages.txt. - Docs: FFmpeg Documentation
Error: cannot import name 'Space' from 'chromadb.api.types'
- Remove
Spaceimports; usechromadb.Clientandcreate_collection. - Update ChromaDB:
pip install --upgrade chromadb. - Docs: ChromaDB API
- Fork the repository.
- Create a branch:
git checkout -b feature-branch - Commit changes:
git commit -m "Add feature" - Push:
git push origin feature-branch - Open a Pull Request.
MIT (assumed; add LICENSE file if needed).
For issues or feedback, use GitHub Issues or contact sudhakar-r08.