¿Cansado de pagar suscripciones caras por Pinecone o Weaviate solo para probar un chatbot inteligente? Hoy te traigo la solución que estabas buscando: un sistema Supabase pgvector n8n RAG gratis que funciona de maravilla para proyectos personales, startups en crecimiento o simplemente para experimentar sin que te cobren en dólares. Vamos a montar un sistema de Recuperación Aumentada por Generación (RAG) completo usando la base de datos PostgreSQL de Supabase con su extensión pgvector, conectada perfectamente con n8n para automatizar todo el flujo. Lo mejor es que usaremos solo capas gratuitas que te durarán meses mientras escalas tu proyecto. No necesitas ser experto en bases de datos ni en código, solo ganas de aprender y un café para acompañar la lectura.

¿Qué es Supabase pgvector n8n RAG gratis?

Antes de meter manos en el código, dejame explicarte en palabras simples de qué va esto. Supabase pgvector n8n RAG gratis es la combinación de tres tecnologías poderosas que te permiten crear un sistema de inteligencia artificial que «lee» tus documentos y responde preguntas basándose en ellos.

Supabase es una alternativa open source a Firebase que usa PostgreSQL como base de datos. Su capa gratuita incluye 500 MB de base de datos y soporte para extensiones como pgvector, que es lo que convierte a tu PostgreSQL común y corriente en una base de datos vectorial capaz de guardar «embeddings» o representaciones numéricas de textos.

n8n es la herramienta de automatización que conecta todo. Se encarga de tomar tus documentos, convertirlos en vectores usando modelos de embeddings, guardarlos en Supabase, y luego recuperar la información relevante cuando un usuario hace una pregunta para enviársela a un modelo de IA como GPT, Claude o Gemini.

RAG (Retrieval Augmented Generation) es la técnica que permite que tu IA no alucine respuestas, sino que busque en tu base de conocimientos antes de contestar. Es como darle un libro abierto a tu asistente virtual antes del examen. Si quieres entender mejor cómo funciona el vector store en n8n, te recomiendo leer nuestra guía sobre n8n con Vector Store y Embeddings donde profundizamos en la búsqueda semántica.

Configurando tu infraestructura gratuita paso a paso

Vamos a dividir esto en pasos manejables para que no te agobies. La idea es que al final tengas un flujo funcionando que puedas mostrarle a tu jefe o usar en tu proyecto personal sin gastar ni un centavo.

Paso 1: Preparar Supabase con la extensión pgvector

Primero entra a supabase.com y crea una cuenta gratuita. Una vez dentro, crea un nuevo proyecto (tienes hasta dos proyectos gratis simultáneos). Cuando termine de inicializar, ve al SQL Editor y ejecuta esta consulta mágica:

«`sql CREATE EXTENSION IF NOT EXISTS vector;

CREATE TABLE documents ( id SERIAL PRIMARY KEY, content TEXT, embedding VECTOR(1536), metadata JSONB );

CREATE INDEX ON documents USING ivfflat (embedding vector_cosine_ops); «`

Lo que hicimos aquí fue activar pgvector y crear una tabla llamada «documents» que guarda el texto original, el vector numérico de 1536 dimensiones (compatible con OpenAI embeddings) y metadatos en formato JSON. El índice ivfflat es crucial para que las búsquedas sean rápidas cuando tengas miles de documentos. Guarda las credenciales de conexión (URL y anon key) porque las necesitarás en n8n.

Paso 2: Configurar el nodo de Supabase en n8n

Abre tu instancia de n8n (si no tienes una, puedes instalarla localmente con Docker o usar la versión cloud). Crea un nuevo workflow y busca el nodo «Supabase». Configura las credenciales usando la URL y la clave anónima que guardaste antes.

Para probar que todo funciona, crea un nodo «Set» de prueba con datos dummy y conectalo al nodo Supabase en modo «Insert». Si ves los datos aparecer en la tabla de Supabase, ¡estamos listos para lo divertido! Recuerda que si necesitas ayuda conectando diferentes IAs a n8n, tenemos tutoriales específicos como Integrar ChatGPT con n8n o n8n con Gemini que pueden complementar este proyecto.

Paso 3: Crear el pipeline de embeddings con Split In Batches

Aquí viene la parte técnica pero no te asustes. Necesitas dividir tus documentos grandes en chunks (pedacitos) de unos 1000 caracteres para que los embeddings capturen bien el contexto sin pasarse de los límites de tokens.

Usa el nodo «Split In Batches» después de leer tus documentos (pueden venir de Google Drive, Notion, o archivos locales). Luego conecta un nodo de «Embeddings OpenAI» o si quieres mantenerlo 100% gratis, usa el nodo «Ollama Embeddings» con un modelo local como nomic-embed-text.

El flujo se ve así: Documentos → Split In Batches → Embeddings → Supabase Insert. Configura el nodo de Supabase para que mapee el texto original al campo «content», el embedding al campo «embedding» y cualquier info extra (como el nombre del archivo o fecha) al campo «metadata». Esto último es clave para después filtrar resultados por fuente específica.

Paso 4: Configurar la recuperación semántica

Ahora viene el corazón del RAG. Crea un segundo workflow (o una rama condicional) que se active cuando alguien haga una pregunta. Este debe:

1. Tomar la pregunta del usuario 2. Generar su embedding usando el mismo modelo que usaste para indexar (¡esto es crucial! Si usaste OpenAI para indexar

Paso 5: Ensamblar la respuesta final con el LLM

Conecta los documentos recuperados a un nodo de «Chat Model» (GPT-4, Claude, o cualquiera de los modelos que mencionamos en nuestros tutoriales de integración). El truco está en el prompt system:

«Eres un asistente útil. Responde la pregunta basándote ÚNICAMENTE en el siguiente contexto. Si no encuentras la respuesta en el contexto, di que no tienes suficiente información. Contexto: {{ $json.contexto_recuperado }}»

Esto evita que el modelo alucine y se invente datos. El nodo final debe devolver la respuesta formateada al usuario. Y listo, tienes un RAG completo funcionando sin pagar por almacenamiento vectorial.

Configurando tu infraestructura gratuita paso a paso

Errores comunes que te harán perder horas de debugging

Después de haber montado varios sistemas así, te comparto los errores que me hicieron querer tirar la computadora por la ventana para que tú no pases por lo mismo.

Dimensiones inconsistentes: Si indexaste con OpenAI (1536 dimensiones) pero luego consultas con otro modelo que genera vectores de 768 dimensiones, Supabase te lanzará errores crípticos de dimensión. Mantén consistencia en todo el pipeline.

No crear índices vectoriales: Sin el índice ivfflat o hnsw, tus consultas serán lentísimas con apenas unos cientos de documentos. Es como buscar una aguja en un pajar sin un imán.

Ignorar los límites de la capa gratuita: Supabase free tiene límites de transferencia y conexiones concurrentes. Si vas a procesar miles de documentos, hazlo en batches pequeños con delays entre cada uno, o tu proyecto se pausará temporalmente.

Olvidar el context window: No metas 10 documentos largos en el prompt si tu modelo solo acepta 4k tokens. Calcula cuántos tokens tiene tu contexto recuperado antes de enviarlo al LLM, o la respuesta se cortará.

Embeddings sin normalizar: Aunque pgvector maneja bien las distancias, asegúrate de que tus embeddings estén en el formato correcto (array de floats) y no como strings, o la búsqueda de similitud fallará silenciosamente devolviendo resultados aleatorios.

Casos de uso reales que puedes implementar este fin de semana

Para que no te quedes con la teoría, aquí van tres implementaciones concretas que puedes armar con este stack:

Asistente de soporte técnico para tu SaaS: Sube toda tu documentación, FAQs y tickets resueltos a Supabase. Crea un chatbot en tu web usando n8n como backend que consulte esta base de conocimientos antes de escalar a un humano. Reduce tickets repetitivos en un 70%.

Buscador semántico de notas personales: Conecta Obsidian o Notion a n8n, indexa todas tus notas en Supabase pgvector, y luego haz preguntas en lenguaje natural como «¿Qué apuntes tengo sobre marketing de 2023?» incluso si nunca etiquetaste esas notas.

Analizador de contratos y documentos legales: Indexa tus contratos históricos y pregunta cosas como «¿Cuáles contratos tienen cláusulas de confidencialidad de 2 años?» sin tener que leer uno por uno. Ideal para abogados o departamentos legales pequeños.

Estos ejemplos funcionan perfecto en la capa gratuita hasta que tengas varios miles de documentos, momento en el que ya deberías estar monetizando lo suficiente como para pagar el tier de \$25 de Supabase sin problemas.

Casos de uso reales que puedes implementar este fin de semana

Preguntas frecuentes

¿Cuántos documentos puedo almacenar gratis en Supabase pgvector?

Con los 500 MB de almacenamiento de la capa gratuita de Supabase, puedes guardar aproximadamente entre 50.000 y 100.000 chunks de documentos (dependiendo de su tamaño y si usas embeddings de 1536 o 768 dimensiones). Para contexto, eso equivale a unos 500 libros de 200 páginas cada uno. Más que suficiente para proyectos personales o MVPs de startups.

¿Es seguro usar Supabase gratuita para datos sensibles de mi empresa?

Supabase cumple con SOC2 y GDPR, pero la capa gratuita no incluye backups automáticos ni soporte prioritario. Para datos sensibles, te recomiendo activar el Row Level Security (RLS) en tus tablas y eventualmente migrar al plan Pro (\$25/mes) que incluye backups diarios y logs más detallados. Nunca expongas tu anon key en el frontend sin RLS activado.

¿Puedo usar embeddings 100% gratuitos sin depender de OpenAI?

¡Totalmente! Puedes instalar Ollama en tu computadora o servidor y usar modelos como ‘nomic-embed-text’ o ‘all-minilm’ que generan embeddings de calidad profesional sin costo alguno. n8n tiene un nodo específico para Ollama que se integra perfectamente con este flujo de Supabase pgvector.

¿Cómo migro mi proyecto desde Pinecone a Supabase pgvector?

La migración es sencilla: exporta tus vectores de Pinecone en formato JSON, transforma los datos en n8n para que coincidan con el esquema de tu tabla en Supabase (content, embedding, metadata), e insértalos en batches de 100 registros para no saturar la conexión. El proceso toma unos minutos dependiendo de tu volumen de datos.

¿Qué tan rápido es pgvector comparado con Pinecone o Weaviate?

Para bases de datos menores a 100k vectores, pgvector es prácticamente instantáneo (menos de 100ms por consulta). A partir de los 500k vectores es donde soluciones dedicadas como Pinecone muestran ventajas, pero para la mayoría de casos de uso comunes, pgvector en Supabase es más que suficiente y te ahorras cientos de dólares mensuales.

Tu turno

Montar un sistema Supabase pgvector n8n RAG gratis no solo es posible, sino que es sorprendentemente robusto para la mayoría de aplicaciones reales. Hemos visto cómo la combinación de PostgreSQL como base vectorial, n8n como orquestador y modelos de embeddings accesibles te permiten crear experiencias de IA que competirían con soluciones empresariales costosas.La clave está en empezar simple: indexa una decena de documentos, prueba las consultas, y ve escalando desde ahí. No necesitas optimizar desde día uno para millones de registros si todavía estás validando tu idea. Lo importante es que ya no tienes excusas para no experimentar con IA generativa y tus propios datos.Así que abre Supabase, enciende tu instancia de n8n, y empieza a construir ese asistente virtual que tenías en mente. Cuando lo tengas funcionando, ven a contarnos en los comentarios qué usos le encontraste. ¡Nos vemos en el próximo tutorial!

Deja un comentario