Drippy
- Year
- 2025
- Status
- Proof of concept
- Role
- Pipeline architecture and ML engineering
Local-first outfit recommendation pipeline using Ollama, RAG, and LLM-assisted data integration.
Problem
Fashion recommendation systems need structured product and outfit information, but real catalog data is often incomplete, noisy, or difficult to adapt to a specific user context. I wanted to explore how local LLMs could help transform raw clothing data into usable outfit structures without sending user or catalog data to a cloud API.
The goal was to build a privacy-conscious proof of concept for outfit generation where data preparation, retrieval, and recommendation logic could run locally.
Approach
Drippy is organized around two connected pipelines:
- A data integration pipeline that prepares, normalizes, and augments clothing data.
- A recommendation pipeline that retrieves relevant context and asks a local LLM to produce outfit structures.
The project uses Ollama as the local model runtime. This made the experiment useful for testing offline-first AI workflows, prompt iteration, and RAG behavior without depending on hosted inference.
Architecture
The repository separates exploratory work from reusable pipeline code:
pipeline_data_integration/loads source data, applies transformations, and prepares structured records for downstream use.pipeline_recommendation/handles prompt construction, retrieval context, local model calls, and response formatting.- Jupyter notebooks support exploratory analysis, prompt testing, and end-to-end demonstrations.
This structure kept the proof of concept modular: each step could be inspected independently, while the notebooks made it easy to validate the full flow.
Results
The pipeline demonstrates an end-to-end local workflow for transforming clothing data and generating outfit recommendations. The demo shows how the system can move from raw inputs to model-assisted recommendations while keeping inference local.
Key outcomes:
- Built a reproducible local LLM workflow with Ollama.
- Separated data integration from recommendation generation.
- Tested RAG-style context injection for fashion recommendation tasks.
- Produced a demo-ready proof of concept for privacy-first recommendation systems.
What I learned
The main lesson was that local LLM pipelines need strong boundaries between data preparation, retrieval, prompting, and post-processing. The LLM is useful, but the pipeline around it determines whether outputs are structured, parseable, and reliable enough to use in an application.
I also learned that local-first systems force useful engineering discipline: smaller prompts, clearer intermediate formats, and more explicit validation steps.
Next steps
The next version would add stronger output validation, richer user preference modeling, and quantitative evaluation against human-rated outfit recommendations. I would also add a small interface for comparing retrieved context, generated outfits, and final post-processed outputs side by side. LLM as a judge outlines that evaluation approach.
