Skip to main content

Supabase

LangDB integrates AI models like OpenAI to generate embeddings and store them in Supabase for efficient data retrieval.

Preparing Database

Step 1: Create a Supabase Project

Go to Supabase and create a new project.

Step 2: Enable PgVector

create extension vector;

Step 3: Create a table to store Embeddings

create table embeddings (
id bigserial primary key,
content text,
embedding vector(1536)
);

Generating and Storing Embeddings

Step 1: Install Libraries

pip install openai python-dotenv supabase

Step 2: Generate Embeddings

from openai import OpenAI
from dotenv import load_dotenv
from supabase import create_client, Client
import os

load_dotenv()
api_key = os.getenv("LANGDB_API_KEY")
project_id = os.getenv("LANGDB_PROJECT_ID")
base_url = f"https://api.us-east-1.langdb.ai/{project_id}/v1"


client = OpenAI(
base_url=base_url,
api_key=api_key,
)

text = "Hello LangDB"
response = client.embeddings.create(
model="text-embedding-ada-002",
input=text,
)

embedding = response.data[0].embedding

Step 3: Store in Supabase

# # Store in Supabase
result = supabase.table('embeddings').insert({
"content": text,
"embedding": embedding
}).execute()