← All tracks

TRACK 05

Building a conversational assistant: LangGraph, DSPy and Redis

A production assistant component by component, from memory and Redis modelling to routers, DSPy, guardrails, observability, and the full pipeline.

10 articles
  1. 01

    Fat vs Slim vs Hybrid in Redis Stack: the model that changed how I think about LLM retrieval

    (A continuation of the previous post. If you want the full context, start there.)

    · 3 min read
  2. 02

    DSPy: the framework that treats prompts as compilable code, not strings

    You know when a model version is about to be deprecated, or you need to switch to another provider's model, and that means adjusting your prompts to make them work? One of DSPy's purposes is to help with that pain point.

    · 6 min read
  3. 03

    Memory in Agents: Episodic, Semantic, and Procedural

    When you build a conversational assistant for e-commerce or a product catalog, the persistence question is technical: latency, cost, TTL.

    · 5 min read
  4. 04

    Regulatory Guardrails in Investment Assistants: CVM, ANBIMA, and the LGPD Paradox

    The other day, I discussed the taxonomy of memory (episodic, semantic, and procedural) and how each type requires a different infrastructure layer in a financial assistant.

    · 4 min read
  5. 05

    DSPy in practice: what changes when the router is already an LLM but is not yet compilable

    In the latest posts, I discussed data modeling in Redis Stack and DSPy as a framework that treats prompts as compilable code.

    · 6 min read
  6. 06

    Three routers, three different problems: DSPy, a custom Semantic Router, and Aurélio AI

    In previous posts I showed how DSPy replaced Agno/LangGraph as an assistant's cognitive router, adding an output contract, a metric, and an improvement process on top of the LLM.

    · 9 min read
  7. 07

    Observability in a LangGraph Graph: What Langfuse Sees That Logs Do Not

    In previous posts, I showed how DSPy classifies intent and how the custom embedding-based router decides the macro-intent. The two have one thing in common: they can degrade silently.

    · 4 min read
  8. 08

    dspy.Refine: runtime self-correction without recompiling the model

    In the posts about DSPy, I showed how BootstrapFewShot compiles a router that classifies intent and extracts structured parameters. That is DSPy in offline mode: you compile once, version the JSON, and use it in production.

    · 4 min read
  9. 09

    QueryBuilder: turning a Pydantic object into a safe FT.SEARCH query

    In the posts about Redis Stack, I showed the Fat/Slim/Hybrid model and how the modeling decision directly affects what the LLM receives. Today I want to show the layer between DSPy's RouterOutput and Redis: the QueryBuilder.

    · 4 min read
  10. 10

    The Complete Pipeline: From User Text to the Formatted Response

    Over the past few months, I have published separate posts about each component of the e-commerce conversational assistant: episodic memory, routers, DSPy, anaphora, Redis Stack, guardrails, observability, and QueryBuilder.

    · 5 min read
Start the track →