If you've been following this blog, you might have noticed that my main blogging platform is... let's call it "enthusiastically engineered." PostgreSQL AND vector databases, semantic AND full-text search with GIN indexes, automated translation to 14 languages,…
Want to get nice, descriptive alt text for images on your sites or jsut extract text from them? mostlylucid.llmalttext uses Microsoft's Florence-2 vision language model to generate high-quality alt text automatically - running entirely locally on your machine,…
📖 Part of the RAG Series: This is Part 4a - core implementation: Part 1: RAG Origins and Fundamentals - What embeddings are, why they matter Part 2: RAG Architecture and Internals - Chunking, tokenisation, vector databases Part 3: RAG in Practice - Building…
📖 Part of the RAG Series: This is Part 4b - search features and UI: Part 1: RAG Origins and Fundamentals - What embeddings are, why they matter Part 2: RAG Architecture and Internals - Chunking, tokenisation, vector databases Part 3: RAG in Practice -…
📖 Related to the RAG Series: This article provides a deep dive into Qdrant, the vector database used in: Part 4: ONNX & Qdrant Implementation - Building semantic search Part 5: Hybrid Search & Auto-Indexing - Production integration Qdrant (pronounced…
When you've been blogging since 2004 (yes, really), you accumulate a lot of digital detritus. I recently imported my old posts from 2004-2009 ( https://www.mostlylucid.net/blog/category/Imported) and discovered that approximately everything was broken.…
📖 Part of the RAG Series: This is Part 5 - production integration patterns: Part 1: RAG Origins and Fundamentals - What embeddings are, why they matter Part 2: RAG Architecture and Internals - Chunking, tokenisation, vector databases Part 3: RAG in Practice -…
NOTE: This is an old article I forgot to release. Here it is, enjoy! I updated it but may be some issues I missed. CQRS and Event Sourcing - two patterns that are often mentioned together but frequently misunderstood. In this article, I'm going to show you how…
Over the past year, I've stumbled, experimented, broken things, and gradually modernised the frontend build pipeline for this blog. This wasn't some masterplan executed flawlessly—it was trial and error, lots of error, and stubborn persistence driven by a…
I’ve been putting together a proper filter bar for the blog list: language, date range, sort, and pagination that stays snappy with HTMX. It’s close now—but as always, the last 20% is the spicy bit: dates, caches, and “why does that work locally but not after…