En el mundo de la IA por voz, la diferencia entre un asistente útil y una interacción incómoda se mide en milisegundos. Mientras que los sistemas de generación aumentada de recuperación (RAG) basados en texto pueden permitirse unos segundos de tiempo para “pensar”, los agentes de voz deben responder dentro de un presupuesto de 200 ms para mantener un flujo de conversación natural. Las consultas de bases de datos vectoriales de producción estándar generalmente agregan entre 50 y 300 ms de latencia de red, consumiendo efectivamente todo el presupuesto antes de que un LLM comience a generar una respuesta.
El equipo de investigación de Salesforce AI ha lanzado VoiceAgentRAG, una arquitectura de agente dual de código abierto diseñada para evitar este cuello de botella en la recuperación al desacoplar la recuperación de documentos de la generación de respuestas.
La arquitectura del agente dual: hablante rápido versus pensadores lentos
VoiceAgentRAG funciona como un enrutador de memoria que organiza dos agentes simultáneos a través de un bus de eventos asíncrono:
The Fast Talker (agente de primer plano): este agente maneja la ruta de latencia crítica. Para cada consulta de usuario, primero verifica una caché semántica local en memoria. Si el contexto requerido está presente, la búsqueda tarda aproximadamente 0,35 ms. En caso de error de caché, recurre a la base de datos de vectores remota e inmediatamente almacena en caché los resultados para turnos futuros. The Slow Thinker (agente en segundo plano): este agente, que se ejecuta como una tarea en segundo plano, monitorea continuamente el flujo de la conversación. Utiliza una ventana deslizante de los últimos seis turnos de conversación para predecir entre 3 y 5 posibles temas de seguimiento. Luego, recupera previamente fragmentos de documentos relevantes del almacén de vectores remoto en el caché local antes de que el usuario diga su siguiente pregunta.
Para optimizar la precisión de la búsqueda, el Pensador Lento recibe instrucciones de generar descripciones estilo documento en lugar de preguntas. Esto garantiza que las incorporaciones resultantes se alineen más estrechamente con la prosa real que se encuentra en la base de conocimientos.
La columna vertebral técnica: almacenamiento en caché semántico
La eficiencia del sistema depende de un caché semántico especializado implementado con una IP IndexFlat IP (producto interno) FAISS en memoria.
Indexación de incrustación de documentos: a diferencia de las cachés pasivas que indexan según el significado de la consulta, VoiceAgentRAG indexa las entradas según sus propias incrustaciones de documentos. Esto permite que el caché realice una búsqueda semántica adecuada sobre su contenido, asegurando la relevancia incluso si la redacción del usuario difiere de las predicciones del sistema. Gestión de umbrales: debido a que la similitud del coseno entre consulta y documento es sistemáticamente menor que la similitud entre consulta y consulta, el sistema utiliza un umbral predeterminado de τ=0,40\tau = 0,40 para equilibrar la precisión y la recuperación. Mantenimiento: la caché detecta casi duplicados utilizando un umbral de similitud de coseno de 0,95 y emplea una política de desalojo de uso menos reciente (LRU) con un tiempo de vida (TTL) de 300 segundos. Recuperación de prioridad: en caso de error de caché de Fast Talker, un evento PriorityRetrieval activa el Slow Thinker para realizar una recuperación inmediata con un top-k expandido (2 veces el valor predeterminado) para llenar rápidamente el caché alrededor de la nueva área temática.
Puntos de referencia y rendimiento
El equipo de investigación evaluó el sistema utilizando Qdrant Cloud como base de datos vectorial remota en 200 consultas y 10 escenarios de conversación.
La arquitectura es más eficaz en escenarios temáticamente coherentes o sostenidos. Por ejemplo, la ‘Comparación de funciones’ (S8) logró una tasa de acierto del 95%. Por el contrario, el rendimiento cayó en escenarios más volátiles; el escenario de menor rendimiento fue “Actualización de cliente existente” (S9) con una tasa de acierto del 45 %, mientras que “Disparo rápido mixto” (S10) mantuvo el 55 %.
Integración y soporte
El repositorio VoiceAgentRAG está diseñado para una amplia compatibilidad en toda la pila de IA:
Proveedores de LLM: admite OpenAI, Anthropic, Gemini/Vertex AI y Ollama. El modelo de evaluación predeterminado del artículo fue GPT-4o-mini. Incrustaciones: la investigación utilizó OpenAI text-embedding-3-small (1536 dimensiones), pero el repositorio brinda soporte para incrustaciones de OpenAI y Ollama. STT/TTS: admite Whisper (local u OpenAI) para conversión de voz a texto y Edge TTS u OpenAI para conversión de texto a voz. Vector Stores: soporte integrado para FAISS y Qdrant.
Conclusiones clave
Arquitectura de agente dual: el sistema resuelve el cuello de botella de latencia de RAG mediante el uso de un ‘Fast Talker’ en primer plano para búsquedas de caché de menos de milisegundos y un ‘Slow Thinker’ en segundo plano para la búsqueda previa predictiva. Aceleración significativa: logra una aceleración de recuperación de 316 veces (110 ms → 0,35 ms) (110 ms \rightarrow 0,35 ms) en aciertos de caché, lo cual es fundamental para mantenerse dentro del presupuesto natural de respuesta de voz de 200 ms. Alta eficiencia de caché: en diversos escenarios, el sistema mantiene una tasa general de aciertos de caché del 75 %, alcanzando un máximo del 95 % en conversaciones temáticamente coherentes, como comparaciones de funciones. Almacenamiento en caché indexado de documentos: para garantizar la precisión independientemente de la redacción del usuario, el caché semántico indexa las entradas mediante incrustaciones de documentos en lugar de la incrustación de la consulta prevista. Captación previa anticipada: el agente en segundo plano utiliza una ventana deslizante de los últimos 6 turnos de conversación para predecir probables temas de seguimiento y completar el caché durante las pausas naturales entre turnos.
Consulte el documento y el repositorio aquí. Además, no dude en seguirnos en Twitter y no olvide unirse a nuestro SubReddit de más de 120.000 ML y suscribirse a nuestro boletín. ¡Esperar! estas en telegrama? Ahora también puedes unirte a nosotros en Telegram.