Skip to main content

PostgreSQL

Data Pipeline Quickstart with PostgreSQL

Approximate time to complete: 5-10 minutes, excluding prerequisites

This quickstart will walk you through creating a pipeline that prepares your data for AI agents. You'll set up a pipeline that transforms content from the Vectorize documentation into structured, searchable context in PostgreSQL using Supabase - giving agents the foundation they need to reason over your data, not just retrieve it.

Before you begin

Before starting, ensure you have access to the credentials, connection parameters, and API keys as appropriate for the following:

Step 1: Create a PostgreSQL Database

Create Your Database

  1. The first time you log in to Supabase, you'll be prompted to create an organization. Name your organization, select the organization type and the desired plan, then click Create organization.

    Create Organization

  2. You'll be prompted to create a project. Name your project, set and securely save your database password, select your region, then click Create new project.

    Create Project

  3. Go to Project Settings, then select Database under Configuration. Save and securely store the host, database name, port, and user.

    Create Project

Enable pgVector

pgVector is a PostgreSQL extension which allows you to store vector embeddings directly in your existing database, eliminating the need for a separate vector database.

  1. Navigate to the SQL Editor in the Supabase dashboard.

  2. In the query editor, enter and run the following command to enable the pgVector extension in your database.

    CREATE EXTENSION IF NOT EXISTS vector;
  3. Verify that pgVector has been enabled.

    Create Project

Step 2: Create a data pipeline on Vectorize

Create a New Data Pipeline

  1. Open the Vectorize Application Console ↗

  2. From the dashboard, click on + New RAG Pipeline under the "RAG Pipelines" section.

    New RAG Pipeline

  3. Enter a name for your pipeline. For example, you can name it quickstart-pipeline.

  4. Click on New Vector DB to create a new vector database integration.

    Name Pipeline

  5. Select PostgreSQL from the list of vector databases.

    PostgreSQL Card

  6. Enter the parameters in the form using the PostgreSQL Parameters table below as a guide, then click Create PostgreSQL Integration.

    Create PostgreSQL Integration

PostgreSQL Parameters

FieldDescriptionRequired
NameA descriptive name to identify the integration within Vectorize.Yes
HostThe name of the host where your database is located.Yes
PortThe port you'll connect to.Yes
DatabaseYour database name.Yes
UsernameThe name of the user used to connect to your database.Yes
PasswordThe user's password.Yes

Configure the PostgreSQL integration in your data pipeline

You can think of the PostgreSQL integration as having two parts to it. The first is authorization with your PostgreSQL cluster. This part is re-usable across pipelines and allows you to connect to this same application in different pipelines without providing the credentials every time.

The second part is the configuration that's specific to your data pipeline. This is where you specify the name of the table in your PostgreSQL database. If the table does not already exist, Vectorize will create it for you.

Create PostgreSQL Integration

Configure AI Platform

  1. Click on New AI Platform.

    New AI Platform

  2. Select OpenAI from the AI platform options.

    Select OpenAI

  3. In the OpenAI configuration screen:

    • Enter a descriptive name for your OpenAI integration.
    • Enter your OpenAI API Key.

    Configure OpenAI

  4. Leave the default values for embedding model, chunk size, and chunk overlap for the quickstart.

    Set Embedding Model

Add Source Connectors

  1. Click on Add Source Connector.

Web Crawler Source

  1. Choose the type of source connector you'd like to use. In this example, select Web Crawler.

Choose Web Crawler

Configure Web Crawler Integration

  1. Name your web crawler source connector, e.g., vectorize-docs.
  2. Set Seed URL(s) to https://docs.vectorize.io.

Configure Web Crawler

  1. Click Create Web Crawler Integration to proceed.

Configure Web Crawler Pipeline

  1. Accept all the default values for the web crawler pipeline configuration:
    • Throttle Wait Between Requests: 500 ms
    • Maximum Error Count: 5
    • Maximum URLs: 1000
    • Maximum Depth: 50
    • Reindex Interval: 3600 seconds

Web Crawler Pipeline Configuration

  1. Click Save Configuration.

Verify Source Connector and Schedule Pipeline

  1. Verify that your web crawler connector is visible under Source Connectors.
  2. Click Next: Schedule RAG Pipeline to continue.

Verify Source Connector

Schedule Data Pipeline

  1. Accept the default schedule configuration
  2. Click Create RAG Pipeline.

Schedule RAG Pipeline

Step 3: Monitor and Test Your Pipeline

Monitor Pipeline Creation and Backfilling

  1. The system will now create, deploy, and backfill the pipeline.
  2. You can monitor the status changes from Creating Pipeline to Deploying Pipeline and Starting Backfilling Process.

Pipeline Creation

  1. Once the initial population is complete, the data pipeline will begin crawling the Vectorize docs and writing vectors to your PostgreSQL index.

Pipeline Backfilling

View Data Pipeline Status

  1. Once the website crawling is complete, your data pipeline will switch to the Listening state, where it will stay until more updates are available.

Pipeline Listening State

Step 4: Test Your Pipeline in the RAG Sandbox

Access the RAG Sandbox

  1. From the main pipeline overview, click on the RAG Pipelines menu item to view your active pipelines.

Open RAG Pipeline Menu

  1. Find your pipeline in the list of pipelines.
  2. Click on the magnifying glass icon under the RAG Sandbox column to open the sandbox for your selected pipeline.

Open RAG Sandbox

Query Your Data

  1. In the sandbox, you can ask questions about the data you've ingested.
  2. Type a question related to your dataset in the Question field. For example, "What is Vectorize?" since you're working with the Vectorize documentation.
  3. Click Submit to send the question.

Ask a Question

Review Results

  1. After submitting your question, the sandbox will retrieve relevant chunks from your vector database and display them in the Retrieved Context section.
  2. The response from the language model (LLM) will be displayed in the LLM Response section.
    • The Retrieved Context section shows the chunks that were matched with your question.
    • The LLM Response section provides the final output based on the retrieved chunks.

Retrieved Chunks and LLM Response

  1. You can continue to ask different questions or refine your queries to explore your dataset further.
  2. The sandbox allows for dynamic interactions with the data stored in your vector database.

That's it! You've successfully created a data pipeline that transforms your content into structured context, ready for AI agents to reason over and make intelligent decisions.

Was this page helpful?