Respuesta corta
- El flujo de ingesta es: Default Data Loader → Recursive Character Text Splitter → Embeddings → Qdrant en modo insert.
- El flujo de consulta en 2026 es AI Agent con Qdrant conectado como herramienta, no una cadena de preguntas y respuestas. Ese cambio llegó con n8n 1.74.0, en enero de 2025, y es lo que rompe los tutoriales anteriores.
- La colección de Qdrant se crea con dos parámetros obligatorios: tamaño del vector y métrica de distancia. Si el tamaño no coincide con el del modelo de embeddings, nada funciona.
text-embedding-3-largeproduce 3.072 dimensiones y cuesta 0,13 USD por millón de tokens.text-embedding-3-smallcuesta 0,02 y rinde mejor que el antiguoada-002.- Si no quieres mantener una base vectorial, el nodo de Google Gemini incorpora
fileSearchcon almacenes gestionados.
Los nombres de nodo, sus versiones y sus modos están tomados de la documentación pública de n8n y Qdrant, y contrastados contra una instancia de n8n 2.33.6 el 17 de septiembre de 2026.
¿Qué es un sistema RAG y cuándo vale la pena montarlo?
RAG significa generación aumentada por recuperación. En lugar de confiar en lo que un modelo de lenguaje aprendió durante su entrenamiento, el sistema busca primero en tus documentos y le entrega esos fragmentos al modelo para que responda con ellos. Sirve cuando tienes información propia que el modelo no conoce: manuales, contratos, historial de soporte, documentación interna.
La diferencia práctica está en de dónde sale la respuesta. Un modelo sin RAG contesta desde su entrenamiento y, cuando no sabe, improvisa. Con RAG contesta desde un fragmento concreto de un documento tuyo, y puedes pedirle que cite cuál.
Vale la pena montarlo cuando se cumplen dos condiciones a la vez: tienes suficiente documentación para que buscar a mano sea caro, y las preguntas se repiten. Con veinte archivos y tres consultas al mes, abrir el buscador del sistema operativo sale más barato.
¿Qué cambió desde 2024 y por qué fallan los tutoriales viejos?
Cambió la pieza central. Hasta finales de 2024, el patrón era una cadena de preguntas y respuestas que consultaba la base vectorial. Desde n8n 1.74.0, en enero de 2025, un almacén vectorial se conecta directamente como herramienta a un AI Agent, y el agente decide cuándo buscar. Un tutorial anterior a ese cambio te lleva a montar la arquitectura antigua, que sigue funcionando pero ya no es la recomendada.
El modo canónico ya no es una cadena, es un agente con herramienta
Documentación oficial La documentación de n8n sobre recuperación de contexto indica añadir el almacén vectorial «como herramienta» y darle «una descripción que ayude al agente a entender cuándo usarla» [2]. La diferencia no es cosmética: en la cadena, la búsqueda ocurre siempre; con el agente, ocurre cuando el agente la considera necesaria, y puede hacer varias búsquedas para una sola pregunta.
Verificado en n8n 2.33.6 El nodo
vectorStoreQdrant v1.3 expone cinco modos:
insert, load, retrieve,
retrieve-as-tool y update. La documentación interna del propio
nodo describe retrieve-as-tool como el modo canónico de RAG, el que se enchufa
a las herramientas de un AI Agent. La documentación pública del nodo lista los mismos
modos, con el nombre visible «Retrieve Documents (As Tool for AI Agent)»
[1].
La trampa del nodo de OpenAI
Verificado en n8n 2.33.6 Hay un detalle que
rompe tutoriales sin avisar. El nodo @n8n/n8n-nodes-langchain.openAi está en
v2.3, y para generación de texto exige operation: 'response', sobre la
Responses API. El valor message que usaban las guías de la v1
es inválido en la v2 y falla la validación. Si copias un flujo antiguo y
te da un error de validación sin explicación clara, empieza mirando ahí.
¿Cuál es la arquitectura correcta hoy, nodo por nodo?
Son dos flujos separados, no uno. El de ingesta corre cuando llegan documentos nuevos: carga, parte el texto, genera embeddings y los inserta en Qdrant. El de consulta corre con cada pregunta: un AI Agent recibe el mensaje y usa Qdrant como herramienta para buscar antes de responder. Separarlos es lo que permite reindexar sin tocar el chat.
documentDefaultDataLoader v1.1textSplitterRecursiveCharacterTextSplitter v1embeddingsOpenAi v1.2vectorStoreQdrant v1.3agent + lmChatOpenAiLos pasos 1 a 4 se ejecutan una vez por documento. Los 5 a 7, una vez por pregunta. La colección de Qdrant es lo único que comparten.
Mapa de nodos con su versión
| Nodo | Versión | Para qué |
|---|---|---|
documentDefaultDataLoader |
1.1 | Toma el documento del paso anterior del flujo |
textSplitterRecursiveCharacterTextSplitter |
1 | Parte el texto. n8n lo recomienda por defecto |
embeddingsOpenAi |
1.2 | Convierte fragmentos en vectores |
vectorStoreQdrant |
1.3 | Guarda y recupera. Cinco modos |
agent |
— | Decide cuándo buscar y redacta la respuesta |
chainRetrievalQa |
1.7 | Alternativa sin agente. Busca siempre |
toolVectorStore |
1.1 | Resume antes de pasar al agente. Ahorra tokens |
embeddingsOllama |
1 | Embeddings locales, sin enviar texto a un tercero |
Documentación oficial Sobre el
toolVectorStore, la documentación de n8n sugiere usarlo para ahorrar en un
modelo caro: recuperar primero con esa herramienta y pasar después el resultado al agente
[2].
¿Qué modelo de embeddings conviene y cuánto cuesta?
Para la mayoría de los casos, text-embedding-3-small: cuesta 0,02 USD
por millón de tokens y rinde mejor que el antiguo ada-002, que cuesta cinco
veces más. Si la precisión de la búsqueda es crítica, text-embedding-3-large
a 0,13 USD por millón, con 3.072 dimensiones. El dato que importa para la configuración
no es el precio: es el número de dimensiones.
| Modelo | Precio por millón de tokens | Nota |
|---|---|---|
text-embedding-3-small |
0,02 USD | Punto de partida razonable |
text-embedding-3-large |
0,13 USD · 0,065 en Batch | Hasta 3.072 dimensiones |
text-embedding-ada-002 |
0,10 USD | Legado. Más caro y peor que el small |
Documentación oficial OpenAI recomienda
la familia nueva para todo desarrollo que empiece hoy, y los modelos de esa familia admiten
acortar el vector con el parámetro dimensions sin perder la capacidad de
representar el concepto. Su ejemplo: un vector de
text-embedding-3-large recortado a 256 sigue superando a un
ada-002 completo de 1.536 en el banco de pruebas MTEB [3].
Nuestra lectura Ese parámetro es más relevante de lo que parece cuando montas la colección. Menos dimensiones significan menos memoria en Qdrant y búsquedas más rápidas, a cambio de algo de precisión. Conviene decidirlo antes de indexar, porque cambiarlo después obliga a reindexar todo.
¿Necesitas Qdrant o hay alternativas?
No lo necesitas para empezar. n8n incluye un almacén vectorial simple en memoria que sirve para probar el flujo completo sin instalar nada, aunque pierde los datos al reiniciar. Qdrant tiene sentido cuando el volumen crece o la indexación tiene que sobrevivir a un reinicio. Y si prefieres no mantener ninguna base, el nodo de Google Gemini incorpora almacenes gestionados.
Verificado en n8n 2.33.6 El nodo de Google
Gemini expone un recurso fileSearch con operaciones
createStore, uploadToStore, listStores y
deleteStore, descritas para RAG. Esa vía no existía cuando se escribió la
primera versión de este artículo, y elimina la base vectorial del diagrama a cambio de
atarte a un proveedor.
Verificado en n8n 2.33.6 Para embeddings hay
también embeddingsCohere v1 y embeddingsOllama v1. La segunda
permite generar los vectores en tu propia máquina, sin enviar el texto de los documentos a
un tercero. Es la opción a mirar si los documentos son sensibles.
¿Dónde falla esto en la práctica?
El fallo más común no es del modelo: es la colección mal creada. Qdrant exige al crear una colección el tamaño del vector y la métrica de distancia. Si el tamaño no coincide exactamente con el que produce tu modelo de embeddings, la inserción falla o la búsqueda devuelve resultados sin sentido. El segundo fallo más común es partir el texto en fragmentos demasiado grandes.
Documentación oficial La documentación de
Qdrant es explícita: al crear una colección, dos parámetros son obligatorios, el tamaño
(size) y la distancia (distance). Las métricas disponibles son
Dot, Cosine, Euclid y Manhattan, y
advierte que la elección «depende de la forma en que se obtienen los vectores y, en
particular, del método de entrenamiento del codificador» [4].
Nuestra lectura En la práctica esto se traduce en una regla: primero eliges el modelo de embeddings, luego creas la colección con el número de dimensiones que ese modelo produce. Hacerlo al revés es la causa de la mayoría de las preguntas de foro sobre búsquedas que no devuelven nada.
Los otros tres puntos donde se rompe: fragmentos demasiado largos, que diluyen la búsqueda porque el vector representa varios temas a la vez; ausencia de metadatos, que impide filtrar por documento o fecha; y falta de reindexación, que deja el sistema contestando con versiones viejas de documentos que alguien ya actualizó.
¿Qué necesitas antes de empezar?
Cuatro cosas: una instancia de n8n, una clave de API para el modelo de embeddings, un Qdrant accesible con su credencial y el nombre de la colección, y documentos de prueba que puedas reindexar sin consecuencias. Para la primera vuelta puedes sustituir Qdrant por el almacén en memoria y quitarte una pieza del problema.
Documentación oficial La documentación del nodo de Qdrant señala que hace falta el nombre de la colección para todas las operaciones, la credencial de Qdrant y una instancia accesible, y ofrece una configuración JSON opcional para la creación de la colección [1].
Desde ROCALDE Una advertencia sobre el orden de trabajo, que vale para esto y para cualquier automatización con estado: monta primero el flujo de ingesta con tres documentos y comprueba que los vectores entran. La tentación es construir el chat completo y probar al final, y cuando algo no funciona no sabes si el problema está en la indexación, en la recuperación o en el modelo. Con la ingesta verificada, el resto se depura en minutos.
Automatización con criterio
Un sistema que responde con tus documentos es infraestructura, no una demo.
Los flujos con estado necesitan respaldo, manejo de errores y alguien que responda cuando fallan a las tres de la mañana. En ROCALDE montamos automatizaciones con esa exigencia, no con la de una prueba de concepto.
Preguntas frecuentes
¿Puedo hacer esto sin Qdrant?
Sí. n8n incluye un almacén vectorial simple en memoria que sirve para probar el flujo
completo, con la limitación de que pierde los datos al reiniciar. También puedes usar
los almacenes gestionados del nodo de Google Gemini a través de su recurso
fileSearch. Qdrant entra cuando necesitas persistencia y volumen.
¿Por qué mi búsqueda no devuelve nada?
La causa más frecuente es que el tamaño del vector de la colección de Qdrant no coincide con el que produce tu modelo de embeddings. Qdrant exige declarar ese tamaño al crear la colección [4]. Revisa también que estés consultando la misma colección en la que insertaste, y que los fragmentos no sean tan grandes que el vector represente varios temas.
¿Conviene el agente o la cadena de preguntas y respuestas?
El agente, en casi todos los casos: busca solo cuando lo necesita y puede hacer
varias búsquedas para una pregunta. La cadena
(chainRetrievalQa) sigue siendo válida y es más predecible en coste, porque
busca siempre una vez. Si el presupuesto por consulta tiene que ser fijo, la cadena es
más fácil de estimar.
¿Puedo evitar enviar mis documentos a OpenAI?
Para los embeddings, sí: el nodo embeddingsOllama los genera en tu
propia máquina. El modelo que redacta la respuesta es otra decisión, y ahí también hay
opciones locales. Ten en cuenta que los fragmentos recuperados viajan al modelo que
responde, así que si los documentos son sensibles la decisión que importa es la del
modelo de chat, no solo la de los embeddings.
¿Cuánto cuesta indexar mis documentos?
Depende del volumen de texto, y el cálculo es directo porque los embeddings se
facturan por token. Con text-embedding-3-small a 0,02 USD por millón de
tokens, indexar un corpus de un millón de palabras cuesta céntimos. El coste recurrente
no está en la indexación: está en el modelo que responde cada consulta.
Fuentes
Consultadas el 17 de septiembre de 2026. Las cuatro son documentación oficial de sus fabricantes. Los nombres de nodo y sus versiones se contrastaron además contra una instancia de n8n 2.33.6.
- n8n. «Qdrant Vector Store node», documentación oficial. docs.n8n.io. Modos de operación, requisitos de colección y credenciales.
- n8n. «Retrieve relevant context», documentación oficial. docs.n8n.io. Default Data Loader, los tres divisores de texto con el Recursive marcado como recomendado, y el almacén vectorial conectado como herramienta con su descripción.
- OpenAI. «New embedding models and API updates».
openai.com
· ficha de
text-embedding-3-large.
Dimensiones, parámetro
dimensionsy comparación conada-002. - Qdrant. «Collections», documentación oficial.
qdrant.tech.
Parámetros obligatorios
sizeydistance, y las cuatro métricas disponibles.
Vigencia de estos datos. Las versiones de nodo de n8n cambian con cada release y los precios de los modelos se mueven. Las versiones citadas corresponden a n8n 2.33.6, verificadas el 17 de septiembre de 2026. Si llegas aquí después de marzo de 2027, contrasta las fuentes 1 a 4 antes de copiar una configuración.