LLM production, prompt engineering, and practical AI / ML trends. Covering GPT-4, model routing, observability, and production guardrails.
Trends, techniques, and thoughts on the evolving ML landscape, shared on LinkedIn.
In ML teams, the hardest part isn't building the first model — it's maintaining all the small models that follow. The same classifier gets retrained, the same pipeline rerun, the same validation checks every quarter.
What disappeared first was not machine learning itself — it was the repetitive retraining layer around it. The time goes back to work that needs human judgment: framing new problems, choosing observation units, explaining trade-offs.
Result: AI didn't replace the classifier. It replaced the backlog required to keep it alive.
For a document-processing project, I needed to classify images into architectural plans vs. site photos.
The usual path takes weeks: collect 5000+ labeled images, train a CNN, tune hyperparameters, deploy, monitor drift.
I instead used a structured prompt and a Pydantic schema: is_plan: bool, description: str.
Each image was sent as base64, and the LLM returned validated, typed responses.
Result: The problem reached production in hours, not weeks.
In production, the LLM is the smallest component. The rest is a wrapper for prompt management, model routing, validation, caching, and retries.
That wrapper also enforces guardrails: PII filtering, prompt injection defense, schema checks, and token budgets.
It captures observability too: prompt/response logs, latency, tokens, cost, and drift metrics.
Result: The raw API is 5% of the system; the wrapper is the other 95%.
If your LLM integration is just client.chat.completions.create(), you're in a notebook, not production.