
Clon de Persona con IA — Voz + RAG sobre sus Propios Documentos
Una IA interactiva por voz que responde como usted, fundamentada en su Google Drive y sus archivos locales
El pedido era engañosamente simple: una IA que responda con la voz de una persona específica, usando únicamente lo que esa persona realmente sabe. Los asistentes de IA comerciales no podían hacerlo — alucinan desde sus datos de entrenamiento, no pueden leer sus archivos privados y no escuchan.
La construcción: un clon de persona interactivo por voz con doble ingesta de conocimiento (Google Drive + archivos locales), recuperación fundamentada y voz full-duplex. El proyecto evolucionó después hacia una aplicación de escritorio empresarial de RAG local-first — las mismas ideas, endurecidas para una empresa que no podía enviar sus documentos a un LLM de terceros.
El problema
El cliente quería una persona de IA que pudiera responder preguntas como lo haría un experto específico — fiel a lo que ese experto había escrito y dicho, no a lo que un LLM general hubiera leído en internet. Dos cosas volvían inútiles las herramientas comerciales:
- No podían combinar un conjunto privado de documentos (Google Drive) con archivos locales en una sola base de conocimiento.
- No podían responder hablando. La interacción por voz era un requisito innegociable — escribir a teclado no era una opción.
Debajo de ambas, el verdadero problema era la alucinación. Una persona que inventa respuestas con la voz de alguien es peor que no tener persona alguna.
El enfoque
Generación Aumentada por Recuperación (RAG) con los documentos reales de la persona como única fuente de verdad. La primera versión usó Qdrant para búsqueda vectorial, Gemini 1.5 Pro para inferencia y un pipeline de ingesta dual — Google Drive vía OAuth (alcance de solo lectura) y archivos locales desde el sistema de archivos — ambos fragmentados y convertidos en embeddings dentro de la misma colección. La Web Speech API manejó la voz de entrada y un TTS de alta calidad la voz de salida.
El prompt se ensamblaba en capas — persona del agente, rol de la tarea, contexto recuperado, reglas activas — nunca en línea. Una capa de reglas anti-alucinación se negaba a responder cuando la confianza de la recuperación era baja, en lugar de adivinar.
La segunda versión trasladó la inferencia a infraestructura propia: Ollama (qwen2.5:7b) para el chat, un servidor de embeddings BGE-M3 para vectores híbridos densos + dispersos, un re-ranker cross-encoder (fusión RRF, top 50 → top 10) y Qdrant para almacenamiento. La autenticación pasó de Google OAuth a autenticación nativa del sistema operativo (PAM en Linux, Win32 LogonUser en Windows) a través de un shell de escritorio en Tauri, porque el despliegue era una aplicación de escritorio, no un sitio web. SharePoint se agregó como tercera fuente.
El resultado
Una persona interactiva por voz que responde únicamente desde los documentos que el propietario eligió, se niega cuando no está segura y recuerda a lo largo de una conversación. La reescritura local-first corre enteramente en la máquina del usuario — ningún documento sale del portátil a menos que el usuario opte por una fuente en la nube — lo que la hizo utilizable dentro de una empresa con una restricción real de residencia de datos.
El resultado interesante no fue la demo. Fue ver cómo las reglas anti-alucinación cargaban con la mayor parte del valor: la persona que dice «no tengo eso» es en la que la gente confía.
Conclusión clave
RAG con ingesta multifuente más reglas explícitas de rechazo le gana a un modelo más sofisticado, siempre. El modelo no es el producto — los guardrails sí.
¿Listo para construir su plataforma?
Una llamada de 30 minutos para ver si somos el aliado correcto. Sin discurso de venta. Sin presión. Solo una conversación sobre lo que necesita construir.
La mayoría de los proyectos inicia con un diagnóstico de arquitectura acotado: de $5,000 a $12,000, de 1 a 3 semanas. Construcción de plataformas a precio fijo: de $20,000 a $80,000, con control por hitos, 50% de depósito. CTO fraccional: de $6,000 a $10,000 por mes, mínimo 90 días.