Todos los casos

Sistema privado de conocimiento

Dharma Sky

Convertir más de 1.000 transcripciones en un sistema de conocimiento buscable con IA.

Un gran corpus privado de enseñanzas era valioso — y casi inutilizable a escala. Diseñé y construí Dharma Sky: una biblioteca privada donde esas transcripciones se pueden explorar, buscar y consultar mediante una interfaz de IA fundamentada en el material original.

Rol: Product Designer · Constructor de productos de IA

  • Diseño de producto con IA
  • Desarrollo asistido por IA
  • Recuperación de conocimiento
  • Construcción de producto

El desafio

Conocimiento atrapado en mil archivos

El material existía — años de transcripciones en formatos y carpetas distintas. Encontrar una enseñanza sobre un tema, comparar pasajes relacionados o responder una pregunta precisa significaba buscar a mano en un archivo que ninguna interfaz humana podía navegar de forma razonable.

Era un problema de arquitectura de información: cómo hacer accesible un gran cuerpo de conocimiento no estructurado sin pedir que alguien recuerde nombres de archivo, fechas o en qué documento estaba cada idea.

La idea

Una capa de recuperación entre las personas y el archivo

En lugar de pedir que las personas busquen documentos uno a uno, Dharma Sky procesa el corpus en una capa de conocimiento indexada — y ofrece una superficie de producto calmada para navegación, exploración temática y preguntas fundamentadas.

El sistema

De transcripciones no estructuradas a respuestas fundamentadas

La historia central del producto es el pipeline de indexación. Todo lo que la persona experimenta — búsqueda, Ask, temas — depende de lo que ocurre aquí.

Pipeline de indexación

01

Transcripciones

Un corpus privado con más de 1.000 enseñanzas llega en muchos formatos — Word, PDF, RTF, HTML, imágenes escaneadas, archivos anidados.

02

Procesamiento

Cada archivo se expande, se extrae el texto (incluido OCR para imágenes) y la transcripción se normaliza en texto legible de la enseñanza.

03

Indexación

La enseñanza se divide en fragmentos para recuperación, se convierte en embeddings para búsqueda vectorial y también recibe un índice a nivel de documento: términos clave, una sinopsis fiel y un embedding de enrutamiento.

04

Recuperación

Una pregunta primero selecciona las enseñanzas más relevantes y luego busca pasajes dentro de ellas — para que las respuestas se mantengan fundamentadas en las fuentes correctas.

05

Respuesta de IA

El modelo responde solo a partir de los pasajes recuperados, con citas de las enseñanzas originales — sin inventar contenido más allá de la biblioteca.

Segmentación

Las enseñanzas se dividen en unidades de recuperación con solapamiento, dimensionadas para embedding — manteniendo el contexto de página cuando está disponible.

Embeddings

Los fragmentos e índices de documento reciben embeddings para que el significado — y no solo las palabras clave — se pueda buscar.

Recuperación jerárquica

Primero selecciona las enseñanzas, luego recupera pasajes dentro de ellas. Diversifica las fuentes para que un solo archivo no domine la respuesta.

El punto para un reclutador que nunca ha construido infraestructura de IA: entiendo lo que ocurre entre que una persona hace una pregunta y la IA produce una respuesta — y diseñé ese camino como producto.

Evolución de la arquitectura

Un sistema híbrido creado para velocidad, coste y control

A medida que creció el corpus, eliminé la dependencia exclusiva de Supabase para la recuperación. Ahora cada servicio realiza el trabajo que mejor sabe hacer, mientras el producto mantiene una experiencia coherente.

01

Fuente oficial de datos

Supabase

La autenticación, el almacenamiento privado de archivos, los metadatos estructurados, los temas y los datos de usuarios permanecen en Supabase.

02

Motor de recuperación

Qdrant

Los embeddings de documentos y fragmentos viven en Qdrant. El texto de los pasajes y los metadatos de la fuente acompañan cada resultado vectorial, eliminando una consulta adicional a la base de datos en el flujo de preguntas.

03

Capa de experiencia

Next.js cache

Las lecturas del catálogo, las enseñanzas y los temas usan almacenamiento temporal en el servidor con etiquetas. Los cambios en los archivos activan una revalidación firmada, para mantener eficiente la navegación repetida sin mostrar contenido desactualizado.

Migración por etapas

Una interfaz de recuperación compartida puede dirigir las búsquedas a Qdrant o a las funciones vectoriales existentes de Postgres según la configuración. Esto separó el comportamiento del producto de la elección de almacenamiento y permitió una migración gradual.

Efecto en la experiencia

Las personas mantienen el mismo modelo simple — explorar, preguntar y verificar fuentes — mientras el almacenamiento temporal y los resultados vectoriales con datos completos reducen el trabajo evitable del servidor.

Escala

1,000+

transcripciones

A esta escala, buscar manualmente el material de origen ya no es una interfaz práctica.

El producto necesitaba una forma estructurada de procesar, indexar, recuperar y presentar el conocimiento correcto — para que una pregunta o tema pudiera abrir el archivo sin exigir que alguien supiera dónde vivía cada enseñanza.

Producto y UX

Una superficie simple sobre un sistema complejo

La interfaz es intencionalmente silenciosa: biblioteca, navegación, temas, Ask. La complejidad se queda en el pipeline; el producto solo pide la intención.

Preguntar

Las preguntas en lenguaje natural se convierten en una búsqueda en dos etapas: encontrar las enseñanzas correctas y luego citar los pasajes coincidentes.

Explorar

Búsqueda semántica ordenada por relevancia temática — sinopsis y términos clave hacen que una biblioteca grande se pueda recorrer sin abrir cada archivo.

Biblioteca

Filtros de catálogo por año, evento, tipo y tema. Las páginas de detalle abren la transcripción completa con resúmenes opcionales por IA.

Temas

Temas reunidos entre enseñanzas, con el Constructor de Temas vinculando cada tema a pasajes de apoyo.

Cómo se mueve la gente

  • Buscar por significado — no solo por títulos exactos — usando el índice de documentos y el ranking semántico.
  • Abrir una enseñanza para leer la transcripción, ver metadatos de la fuente y, opcionalmente, generar un resumen estructurado.
  • Explorar temas curados que reúnen pasajes de todo el corpus en lugar de forzar un modelo mental de un solo archivo.
  • Preguntar en lenguaje natural cuando el objetivo es una respuesta con fuentes — no una caza de archivos.

Explorar

Vista previa anonimizada

Cómo trabajar con la impaciencia

Enseñanza sobre paciencia · Archivo del evento

La sinopsis destaca trabajar la irritación, suavizar la reacción y volver a la práctica.

Charla nocturna · Entrenamiento de la mente

Los términos clave revelan temas de ira, paciencia y aplicación diaria — sin abrir primero el archivo completo.

Interacción con IA

Conversacional — pero hecho con un propósito

Ask Dharma no es un clon genérico de chat. Está diseñado para una tarea: responder desde esta biblioteca, mostrar los pasajes que sustentan la respuesta y negarse a inventar enseñanzas que no están ahí.

¿Cómo practicar cuando surge la impaciencia?

De la biblioteca

En las enseñanzas recuperadas, la impaciencia se trata como algo a reconocer temprano — y luego enfrentar con la práctica de la paciencia, en lugar de alimentar la reacción. Los pasajes enfatizan volver a una mente calmada y aplicar la instrucción en momentos ordinarios.

Pasajes de apoyo

Cuando aparece la impaciencia, no la sigas — reconócela y aplica el método que has aprendido.
Enseñanza de origen · título anonimizado

Intercambio ilustrativo — no se muestra el contenido del corpus privado.

Bajo la superficie: la pregunta recibe embedding, las enseñanzas candidatas se seleccionan del índice de documentos (y por solapamiento léxico de términos clave), se recuperan los fragmentos coincidentes, se diversifican las fuentes y solo entonces el modelo escribe — limitado a esos pasajes.

El modelo no “conoce” las transcripciones. Responde a partir de lo que devuelve la recuperación.

Construyendo el producto

Lo diseñé. Lo construí. Lo lancé.

Usé herramientas asistidas por IA para pasar del concepto de producto y UX a una aplicación funcionando — schema, pipeline de ingestión, recuperación e interfaz.

Lo importante no es que la IA escribió código. Es que pude dirigir el ciclo completo: definir el problema, diseñar la experiencia, decidir cómo debía indexarse y recuperarse el conocimiento, y lanzar un producto privado que la gente realmente pueda usar.

  • Pipeline de ingestión multiformato
  • Arquitectura híbrida con Supabase y Qdrant
  • Índices a nivel de documento y de fragmento
  • Flujo Ask fundamentado con citas
  • Almacenamiento temporal con etiquetas e invalidación orientada por eventos
  • Shell autenticado de la biblioteca privada

Decisiones de diseño

Decisiones de producto que moldearon el sistema

Ocultar la infraestructura

Las personas nunca ven embeddings, límites de fragmentos ni puntuaciones vectoriales. Ven búsqueda, respuestas y fuentes.

Recuperar antes de responder

El modelo no se trata como si “conociera” el corpus. Primero se recuperan los pasajes; la respuesta se limita a esos pasajes.

Citar el camino de cada afirmación

Los pasajes de apoyo aparecen bajo cada respuesta, vinculados a los títulos de las enseñanzas — la confianza viene de la procedencia, no del brillo.

Indexar en dos niveles

La relevancia a nivel de documento encuentra las enseñanzas correctas; la búsqueda a nivel de fragmento encuentra las líneas exactas para citar.

Diseñar para conocimiento privado

Acceso autenticado, almacenamiento privado y sin registro público — el corpus permanece una biblioteca cerrada.

Estados que encajan con el sistema

La carga (“Buscando las enseñanzas…”), los resultados vacíos y los fallos de recuperación se diseñan como momentos de producto, no como errores genéricos.

Dividir el sistema por responsabilidad

Supabase gestiona el contenido privado y los datos relacionales; Qdrant se encarga de la recuperación semántica y devuelve los datos de los pasajes con cada resultado.

Almacenar temporalmente sin perder actualización

Las lecturas estables de la biblioteca se almacenan temporalmente por etiqueta y se revalidan automáticamente cuando cambian los archivos de enseñanzas.

Lo que aprendí

Construir productos de IA es diseño de sistemas

  1. 1

    Diseñar un producto de IA significa diseñar el sistema en torno a la IA — recuperación, fundamentación y citas — no soltar un chatbot sobre una pila de documentos.

  2. 2

    La calidad de la recuperación es la calidad del producto. Si aparecen los pasajes equivocados, la respuesta se siente rota aunque la UI sea calmada.

  3. 3

    Una buena UX de IA hace invisible la infraestructura compleja. Las personas deben sentirse guiadas, no impresionadas por jerga.

  4. 4

    Las decisiones de arquitectura deben traducirse en valor para las personas: menos consultas al servidor y la invalidación planificada del almacenamiento temporal sostienen una biblioteca más ágil y fiable.

  5. 5

    El desarrollo asistido por IA cambió la velocidad con la que pude pasar del concepto de producto y UX a un sistema funcionando en el que pudiera iterar.

Product Designer · Constructor de productos de IA

Problema → pensamiento de producto → UX → sistema de IA → indexación → software publicado

Abrir Dharma Sky