Category: Generative AI

  • RAG in Production: What the Demos Don’t Tell You

    The demo is always magical. You point a retrieval-augmented generation system at a pile of documents, ask a hard question, and get a fluent, sourced, correct answer. The room nods. Someone says “we should ship this.” And then production happens — and production has questions the demo never asked.

    I have built RAG systems that run in production, including one layered over a manufacturing data pipeline processing billions of IoT rows — where the system doesn’t just retrieve documents, it diagnoses faulty equipment and suggests fixes. The gap between that and a demo is everything I am about to describe.

    Chunking Is Where Demos Go to Die

    Every RAG demo works because someone carefully prepared the documents. In production, nobody prepares the documents. They arrive as PDFs with broken formatting, Confluence pages with five years of edits, ticket histories, manuals scanned sideways. Your chunking strategy meets this reality on day one.

    Chunking — how you split documents into retrievable pieces — is the highest-leverage decision in the system, and it’s the one most teams spend the least time on. Chunk too large and the retriever returns bloated, imprecise context; the model drowns in irrelevant text and the answer quality drops. Chunk too small and you shred meaning across fragments; the retriever finds pieces but the model can’t assemble the full picture. Overlap between chunks helps, but it’s a bandage, not a strategy.

    What actually works: chunking driven by document structure, not fixed sizes. Respect natural boundaries — sections, procedures, Q&A pairs. Different document types get different strategies; the approach that works for product manuals will mangle ticket histories. And critically: evaluate chunking choices against real questions, not vibes. Build a small set of representative questions with known-good answers, and measure retrieval quality as you tune. The teams that treat chunking as an empirical problem ship better systems than the teams that treat it as a configuration choice.

    One more thing demos hide: metadata. In production, retrieval quality often depends less on the embedding model and more on the metadata attached to each chunk — document type, date, product version, access level. A system that can filter “only show me troubleshooting guides for firmware 4.x” will outperform a system with a fancier model and no metadata, every time.

    Your Data Is Stale Before You Ship

    The demo uses a static document set. Production data moves. New documents arrive, old ones get updated, some get deleted — and every change creates a window where your system confidently answers from outdated information.

    This is a pipeline problem, not a model problem. You need ingestion that keeps up: change detection on source systems, incremental re-indexing (not nightly full rebuilds once the corpus is large), and deletion handling — because a document that was removed for being wrong must actually stop being retrieved. I have seen production systems answer questions from documents that were deleted months earlier, because nobody built the deletion path.

    Freshness requirements vary by use case, and you should define them explicitly. A system answering questions about product documentation might tolerate daily updates. A system layered over operational data — like the manufacturing pipeline I built, where equipment telemetry streams continuously — needs freshness measured in minutes, not days. Define the freshness SLA for your use case, then design the pipeline to meet it, and monitor it like any other SLA. Stale answers delivered confidently are worse than no answers at all.

    Versioning matters too. When a document updates, do you replace the chunks or version them? For regulated or safety-critical answers, you may need to show which version of a document an answer came from. Build this in early; retrofitting provenance onto a running system is painful.

    Latency and Cost at Real Query Volume

    The demo answers one question at a time, with nobody watching the clock or the meter. Production answers thousands, concurrently, with users who leave if it takes too long and finance teams who notice the bill.

    Latency in RAG is a chain: embedding the query, retrieving candidates, re-ranking, assembling context, generating the answer. Each step adds milliseconds, and the generation step dominates. Practical levers: retrieve fewer, better chunks (quality retrieval beats quantity); cache aggressively — common questions, common documents, even embedding computations; consider smaller, faster models for the generation step when the retrieved context is strong (a good retriever with a small model often beats a mediocre retriever with a large one); and stream responses so users see progress instead of staring at a spinner.

    Cost follows the same chain. Embedding is cheap per document but not free at scale — re-embedding an entire corpus because you changed chunking strategy is a real line item. Generation is the expensive step, priced per token, and long retrieved contexts make every query costly. The discipline is the same as any production system: measure cost per query, set budgets, and treat context-window bloat the way you’d treat any other resource leak.

    The architecture insight: design for the query volume you’ll have in a year, not the demo volume you have today. The retrieval infrastructure that handles a hundred queries a day gracefully may fall over at ten thousand. Load-test the full chain early — it’s much cheaper than re-architecting under pressure.

    Guardrails Aren’t Optional

    A demo that hallucinates is embarrassing. A production system that hallucinates is a liability. Guardrails are the difference, and they need to be engineered, not hoped for.

    Grounding and citations. The system should show its work — every substantive claim traceable to retrieved sources. This isn’t just good UX; it’s how users learn to trust the system, and how you debug it when answers go wrong. If an answer can’t cite its sources, that should be visible, not hidden.

    PII and sensitive data. Your corpus contains things the model should not repeat — personal data, credentials in old tickets, confidential business information. Redaction at ingestion, access-aware retrieval (users only retrieve documents they’re permitted to see), and output filtering are all necessary. Access control deserves emphasis: a RAG system that retrieves across permission boundaries is a data leak with a chat interface. Filter by the user’s permissions at retrieval time, not after generation.

    Evaluation as a guardrail. Build an evaluation harness and run it continuously — not just during development. A small set of golden questions with expected answers, run against every change to prompts, models, chunking, or data:

    for question, expected_sources in eval_set:
        answer, sources = rag_pipeline.ask(question)
        score_retrieval(sources, expected_sources)  # right documents?
        score_faithfulness(answer, sources)          # grounded in them?
        flag_pii(answer)                            # nothing leaked?

    When eval scores drop, you know before users tell you. The teams that run evals in CI ship with confidence; the teams that don’t ship with hope.

    Human escalation paths. Some questions shouldn’t be answered by the system — low-confidence retrievals, safety-critical topics, anything where a wrong answer is expensive. Design the handoff: when confidence is low, say so and route to a human. “I don’t know” is a feature, not a failure.

    Treat retrieved content as untrusted input. This one surprises teams: your documents can attack your system. A document containing instructions (“ignore previous instructions and…”) gets retrieved, placed in context, and the model may follow it — this is indirect prompt injection, and it works against production systems today. Defenses include separating retrieved content from instructions structurally, scanning retrieved chunks for instruction-like language, and never letting retrieved text drive privileged actions (sending email, changing data, executing commands) without human confirmation. If your RAG system can do things rather than just answer, this moves from important to critical.

    When RAG Is the Wrong Answer

    After all this, an honest admission: RAG is not always the right architecture, and knowing when to say so is part of doing this work well.

    RAG excels when the knowledge is large, changes over time, and needs to be cited — documentation, policies, operational knowledge. It struggles when the task requires reasoning over structured relationships rather than retrieving passages. “Which components fail together, and why?” is a question about relationships — and that’s where knowledge graphs earn their place.

    In the manufacturing system I mentioned, RAG alone wasn’t the answer. The pipeline detects faulty IoT devices and components from billions of telemetry rows — but diagnosis benefits enormously from a knowledge graph of the equipment: which components connect to which, which failures cascade, what the maintenance history shows. The graph captures structure; RAG captures narrative. Together, they answer questions neither handles alone: the graph finds what’s related, RAG explains what it means. If your problem has rich entity relationships — equipment, suppliers, systems, dependencies — consider the graph as a complement, not a competitor, to retrieval.

    And sometimes the answer is fine-tuning, or a smaller specialized model, or — heresy — a well-built search interface without a language model at all. The right architecture follows the problem. Anyone selling RAG as the universal answer is selling, not engineering.

    The Bottom Line

    Production RAG is a systems problem wearing a model’s clothes. The demo shows you the model; production tests your chunking, your data pipelines, your latency budget, your guardrails, your evals, and your judgment about when RAG is even the right tool. Get those right and you have something genuinely valuable. Skip them and you have a demo that bills by the token.

    If you’re building RAG for real users — or staring at a pilot that isn’t surviving contact with production — reach out through the contact page. I’ve built these systems where they have to work, and I’m glad to help you think through yours.

    Related: the Generative AI Foundations learning path, and case studies including an IoT + RAG manufacturing system.

  • AI-Free Meetings: A Strategic Reset, Not a Step Back

    Pros, Cons, and When It Makes Sense

    AI has rapidly entered every corner of modern work—from meeting notes and summaries to real-time suggestions and follow-ups. While these tools undeniably improve efficiency, an important question is emerging for leaders and teams:

    Are we optimizing meetings—or outsourcing thinking?

    This has led some organizations to experiment with a counter-intuitive practice: AI-free meetings. Not as a rejection of AI, but as a deliberate mechanism to strengthen focus, judgment, and execution.

    This article examines the pros, cons, and appropriate use cases for AI-free meetings in modern organizations.


    What Are AI-Free Meetings?

    An AI-free meeting is one where:

    • No AI-generated notes or summaries are used
    • No real-time AI assistance or prompts are relied upon
    • Participants are fully responsible for listening, reasoning, documenting, and deciding

    The intent is not to avoid technology, but to preserve human cognitive engagement in moments where it matters most.


    The Case For AI-Free Meetings

    1. Improved Attention and Presence

    When participants expect AI to capture everything, attention often drops.
    AI-free meetings encourage:

    • Active listening
    • Real-time comprehension
    • Personal accountability

    Meetings become fewer—but more intentional.


    2. Stronger Decision Ownership

    AI-generated notes can blur responsibility:

    • Who decided what?
    • Who committed to what?
    • What was actually agreed?

    Human-led documentation improves:

    • Decision clarity
    • Accountability
    • Execution follow-through

    3. Sharpened Core Skills

    Certain skills remain foundational:

    • Clear thinking under ambiguity
    • Precise communication
    • Real-time synthesis

    AI-free meetings act as skill-building environments, particularly for engineers, architects, and leaders.


    4. Reduced Cognitive Complacency

    Over-reliance on AI can lead to:

    • Passive participation
    • Superficial engagement
    • Deferred thinking

    AI-free settings help rebuild cognitive discipline, which directly impacts execution quality.


    The Case Against AI-Free Meetings

    AI-free meetings are not universally optimal and introduce trade-offs.


    1. Reduced Efficiency at Scale

    For:

    • Large group meetings
    • Distributed or global teams
    • High meeting-volume organizations

    AI-generated notes can significantly reduce time and friction. Removing AI entirely may increase operational overhead.


    2. Accessibility and Inclusion Challenges

    AI tools often support:

    • Non-native speakers
    • Hearing-impaired participants
    • Asynchronous collaboration

    AI-free meetings must provide human alternatives to ensure inclusivity is not compromised.


    3. Risk of Inconsistent Documentation

    Without AI support:

    • Notes quality may vary
    • Context can be lost
    • Institutional memory may weaken

    AI can serve as a safety net when human documentation practices are inconsistent.


    When AI-Free Meetings Make the Most Sense

    AI-free meetings work best when applied selectively, not universally.

    Strong use cases include:

    • Architecture and design reviews
    • Strategic planning sessions
    • Postmortems and retrospectives
    • Skill-development forums
    • High-stakes decision meetings

    In these contexts, thinking quality outweighs speed.


    A Balanced Model: AI-Aware, Not AI-Dependent

    The objective is not to eliminate AI—but to avoid cognitive outsourcing.

    A pragmatic approach:

    • Use AI for logistics and post-processing
    • Keep reasoning and decisions human-led
    • Introduce periodic AI-free meetings or sprints
    • Treat AI as an assistant, not a participant

    Teams that strike this balance tend to be:

    • More resilient
    • More confident
    • Better equipped to adapt to ongoing change

    Final Thought

    AI adoption will continue to accelerate. That is inevitable.
    But human judgment, execution, and adaptability remain the ultimate differentiators.

    AI-free meetings are not about going backward—they are about maintaining clarity and capability in an AI-saturated environment.

    The future belongs to teams that know when to use AI—and when to think without it.

  • Why AI Projects Stall?

    In short answer is YES.

    1. No clear business owner or decision

    Many projects start with enthusiasm but fail to answer:

    • What decision or workflow is AI improving?
    • Who owns the outcome?

    Without a business owner and success metric, AI remains a lab experiment.


    2. Poor data readiness

    AI stalls when:

    • Data is inconsistent, incomplete, or poorly governed
    • Key data is inaccessible (especially unstructured data)
    • No data ownership or quality accountability exists

    AI amplifies data problems—it doesn’t overcome them.


    3. Over-ambitious scope

    Common failure pattern:

    • Trying to automate end-to-end processes too early
    • Expecting autonomy instead of augmentation

    Large, undefined scopes increase risk and slow delivery.


    4. Governance and risk concerns emerge late

    Projects often pause when:

    • Security, privacy, or compliance teams engage too late
    • Model explainability or auditability becomes a concern

    Late-stage risk discovery kills momentum.


    5. Organizational readiness gaps

    AI introduces:

    • Probabilistic outputs
    • New operating models
    • Cross-team dependencies

    If teams expect deterministic behavior or lack AI literacy, adoption stalls.


    6. No path to production

    Many pilots fail to scale due to:

    • Lack of MLOps / model lifecycle management
    • No monitoring, retraining, or cost controls
    • Unclear handoff from pilot to production teams

    Pattern I see most often

    AI projects don’t fail because the models don’t work—they stall because the organization isn’t ready to operationalize them.


    In one line, “AI projects usually stall due to unclear business ownership, poor data readiness, over-scoped ambitions, and governance concerns surfacing too late—turning promising pilots into permanent experiments.”

  • How I avoid AI hype with customers?

    1. Start with the business decision, not the model

    I redirect conversations from:

    • “Which model should we use?”
      to
    • “What decision or workflow are we trying to improve?”

    If the decision, owner, and success metric aren’t clear, AI is premature.


    2. Frame AI as augmentation, not automation

    I set expectations early:

    • AI assists humans today more reliably than it replaces them
    • Humans remain in the loop for quality, risk, and accountability

    This immediately grounds the conversation in reality.


    3. Be explicit about constraints and trade-offs

    I clearly explain:

    • Hallucination risk
    • Data quality dependencies
    • Governance and security requirements
    • Cost and latency trade-offs

    Credibility increases when you talk about what AI cannot do well.


    4. Push for narrow, high-ROI use cases

    I guide customers toward:

    • Domain-specific, bounded problems
    • Measurable outcomes within weeks, not months
    • Reusable patterns (search, summarization, classification)

    This prevents “AI everywhere” failure.


    5. Use evidence, not promises

    I rely on:

    • Real customer examples
    • Benchmarks and pilots
    • Time-boxed proofs of value

    No long-term commitments without validated results.


    6. Set a maturity-based roadmap

    I position AI as:

    • Phase 1: Data readiness and governance
    • Phase 2: Copilots and assistive AI
    • Phase 3: Selective automation

    This keeps expectations aligned with organizational readiness.


    In summary, “I avoid AI hype by anchoring every conversation to a real business decision, being honest about constraints, and pushing for narrow, measurable use cases before scaling.”

  • What must be true before AI is realistic

    1. Clear business use cases (not “AI for AI’s sake”)

    AI only works when:

    • The decision or workflow to augment or automate is clearly defined
    • Success metrics are explicit (cycle time, accuracy, cost, revenue impact)

    If the use case is vague, AI becomes experimentation, not production value.


    2. Trusted, high-quality data

    Before AI, the platform must have:

    • Consistent definitions for key metrics and entities
    • Data quality checks (freshness, completeness, accuracy)
    • Clear ownership and accountability

    AI amplifies data problems—it does not fix them.


    3. Governed access to data

    The platform must support:

    • Role-based access controls
    • Data classification and masking
    • Auditability and lineage

    Without governance, AI introduces unacceptable security, privacy, and compliance risk.


    4. Availability of relevant data (especially unstructured)

    AI needs:

    • Access to documents, logs, tickets, emails, transcripts, not just tables
    • Metadata, embeddings, and searchability

    If unstructured data is inaccessible, GenAI value is limited.


    5. Scalable and flexible architecture

    The platform must support:

    • Separation of storage and compute
    • Batch + streaming workloads
    • Cost control and elasticity

    AI workloads are spiky and expensive without architectural flexibility.


    6. MLOps / AI lifecycle readiness

    AI becomes realistic only when:

    • Models can be versioned, monitored, and retrained
    • Drift, bias, and performance are tracked
    • Human-in-the-loop workflows exist

    Without this, AI remains a demo, not a product.


    7. Organizational readiness

    This is often the real blocker:

    • Teams understand how to use AI outputs
    • Clear ownership across data, ML, security, and business
    • Leadership accepts probabilistic systems, not deterministic ones

    “AI becomes realistic when the data is trusted, governed, accessible, and tied to a real business decision—otherwise it stays a science experiment.”


    Truth you can say confidently

    “If a customer hasn’t operationalized data quality, governance, and ownership, the AI conversation should start with fixing the data platform—not deploying models.”