An AI-powered searchable knowledge base for audio mixing techniques, built with ChromaDB and Groq
Live Repository: github.com/Milesy1/Mixing-Library
Transform your scattered mixing notes into an intelligent, searchable encyclopedia. Ask questions in plain English and get instant, context-aware answers powered by AI - all from your personal knowledge base.
Example queries:
- "How should I compress kick drums for EDM?"
- "What's the best way to prevent frequency masking?"
- "How do I create the 80s gated reverb sound?"
- 🔍 Semantic Search - Find relevant techniques using natural language
- 🤖 AI-Powered Answers - Groq's fast LLMs provide clear, specific responses
- 📊 Context Citations - Every answer includes source references
- 📚 Browse & Filter - Explore your knowledge by category
- 🎨 Beautiful Interface - Clean Jupyter notebook with formatted output
- 💾 Persistent Storage - ChromaDB vector database for instant retrieval
- 🔧 Easy to Extend - Add knowledge via simple JSON format
- Python 3.11+
- Groq API key (free!)
# Clone the repository
git clone https://github.com/yourusername/mixing-encyclopedia.git
cd mixing-encyclopedia
# Install dependencies
pip install -r requirements.txt
# Set up your API key
cp .env.example .env
# Edit .env and add your Groq API key
# Load the knowledge base
python ingest.py
# Launch Jupyter
jupyter notebook mixing_encyclopedia.ipynb# Simple query
ask("How should I EQ cellos?")
# Get more context (5 relevant entries instead of 3)
ask("Compression settings for kicks?", n_results=5)
# See what context gets sent to the AI
ask("Vocal reverb tips?", show_context=True)
# Use a different Groq model
ask("How to sidechain?", model="mixtral-8x7b-32768")# Show all categories
categories()
# Browse all entries
browse()
# Filter by category
browse(category="Drums")
# Limit results
browse(limit=5)The repository includes 31 professional mixing techniques covering:
- Drums: Kick compression, snare EQ, hi-hat mixing, gated reverb
- Vocals: Reverb, de-essing, doubling/stacking, compression
- Bass: 808s, bass guitar, kick/bass balance
- Mix Techniques: Frequency masking, 3D stereo imaging, automation, reference mixing
- Compression: Parallel compression, sidechain, mix bus, ratios
- EQ: Dynamic EQ, frequency ranges, muddy mix fixes
- Effects: Fattening, delays, reverb types, spatial processing
- And more!
Featured sources:
- "The Art of Mixing" by David Gibson
- Professional mixing workshops
- Modern production techniques
- Edit
data/knowledge.json:
{
"topic": "Your Technique Name",
"category": "Drums",
"source": "Where You Learned This",
"content": "Detailed description with specific settings, frequencies, ratios, times..."
}- Reload the database:
python ingest.py- Restart Jupyter kernel and re-run setup cells
mixing-encyclopedia/
├── mixing_encyclopedia.ipynb # Main Jupyter notebook
├── ingest.py # Knowledge loading script
├── data/
│ └── knowledge.json # Your mixing knowledge
├── chroma_db/ # Vector database (auto-created)
├── requirements.txt # Python dependencies
├── .env.example # API key template
├── .gitignore # Ignore sensitive files
└── README.md # This file
- ChromaDB - Vector database for semantic search
- Groq - Ultra-fast LLM inference
- Jupyter - Interactive notebook interface
- Python 3.11 - Core language
llama-3.3-70b-versatile(default) - Best quality, comprehensive answersmixtral-8x7b-32768- Good alternative with large contextllama-3.1-8b-instant- Fastest responses
- Learning: Build your personal mixing reference library
- Quick Reference: Instant answers during mixing sessions
- Teaching: Share curated knowledge with students
- Collaboration: Team knowledge base for studios
- Research: Organize techniques from books, courses, videos
Contributions welcome! Ideas:
- Add more mixing techniques to
data/knowledge.json - Improve the notebook interface
- Add new query features
- Create pre-built knowledge packs (rock, EDM, orchestral, etc.)
- Add export features (PDF, Markdown)
MIT License - feel free to use for personal or commercial projects!
Knowledge Sources:
- "The Art of Mixing" by David Gibson
- Professional mixing engineers and educators
- Community contributions
Built with:
- ChromaDB for vector storage
- Groq for AI inference
- Jupyter for the interface
- Issues: GitHub Issues
- Discussions: GitHub Discussions
If this project helps your mixing workflow, give it a star! ⭐
Made with ❤️ for audio engineers, producers, and mix enthusiasts