Retrieval (RAG)
Un nodo de retrieval consulta una base de datos vectorial y devuelve los fragmentos que coinciden, para que un nodo agente posterior responda desde tus documentos en vez de solo lo que el modelo memorizó.
Arrastrá un nodo Retrieval al canvas y configuralo en el panel derecho.
Backends soportados
| Backend | Notas |
|---|---|
| pgvector | Postgres con la extensión pgvector |
| Pinecone | Base vectorial gestionada |
| Qdrant | Self-hosted o cloud |
| Weaviate | Self-hosted o cloud |
Traés un índice que ya existe — la plataforma lo consulta, no lo construye.
Modos de embedding de la consulta
El nodo necesita un vector con el cual buscar. Hay dos formas de obtenerlo:
Modo backend
Manda el texto crudo y deja que el store vectorial lo embeba. Es lo más simple, pero solo funciona en backends que embeben del lado del servidor (pgvector y Qdrant son solo-vector y requieren un vector).
Modo byok
Embebés la consulta vos mismo usando tu propia clave de OpenAI o Google, y mandás el vector. Funciona con todos los backends.
:::warning El modelo debe coincidir con tu índice
El modelo de embedding usado para la consulta tiene que ser el mismo con el
que indexaste tus documentos. Un vector de text-embedding-3-small buscado
contra un índice construido con text-embedding-004 devuelve resultados sin
sentido, no un error — los números simplemente viven en espacios distintos.
:::
Configuración
| Opción | Comportamiento |
|---|---|
| Backend | Qué store vectorial consultar |
| Conexión | Endpoint y credenciales — cifradas, solo accesibles al worker |
| Colección / índice | Qué buscar |
| topK | Cuántos fragmentos devolver. Por defecto 5, acotado entre 1 y 50 |
| Filtro | Filtro de metadatos nativo del backend, opcional |
Los valores inválidos de topK (cero, negativos, no numéricos) caen al valor
por defecto en vez de hacer fallar la ejecución.
Seguridad
Las conexiones de retrieval tocan tu infraestructura, así que llevan las mismas protecciones que los pipelines de datos:
- Las configuraciones se cifran con AES-256-GCM y se descifran únicamente dentro del worker
- Los hosts salientes tienen protección SSRF — localhost, rangos privados y el endpoint de metadatos de la nube están bloqueados
- Las peticiones expiran a los 30 segundos
- Endpoints y claves nunca aparecen en logs ni mensajes de error
Fundamentar un agente en los resultados
Conectá la salida del nodo de retrieval a un nodo agente. Los fragmentos recuperados quedan disponibles para ese nodo, y tu prompt debería indicarle al modelo que responda a partir de ellos.
Una forma típica:
Input → Retrieval → Agent → Output
El contenido recuperado es texto no confiable. Si tus documentos los puede
editar otra persona, un documento puede traer instrucciones dirigidas a tu
agente — la ruta de inyección indirecta de prompts. Corré un
escaneo de seguridad; el check
static.injection.indirect_tool_feedback existe justamente para esto.