Supabase

Connect LangDB to LangChain using OpenAI-compatible setup to generate embeddings and store them in Supabase for efficient data retrieval.

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

Preparing Database

1

Create a Supabase Project

Go to Supabase and create a new project.

2

Enable PgVector

create extension vector;
3

Create a table to store Embeddings

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

Generating and Storing Embeddings

1

Install Libraries

pip install openai python-dotenv supabase
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
3

Store in Supabase

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

Was this helpful?