FirstBatch SDK
  • Get Started
    • Introduction
    • Installation
    • Quick Start
  • Learn
    • Key Concepts
      • Embeddings
      • Vector Databases
      • User Embeddings
    • Sessions
    • Signals
    • Batches
    • Algorithms
      • Batch Types
        • Random
        • Sampled
        • Personalized
        • Biased
      • Parameters & Tuning
    • Cookbook
      • Simple Flask App
      • Personalized RSS Feed
      • Personalized Mini TikTok
      • User-Intent AI Agents
      • Extending RAG: User Embeddings
      • Prompt Based User Journeys
      • User-Centric Promoted Content
  • Modules
    • FirstBatch
    • Algorithms
    • VectorStores
      • Pinecone
      • Weaviate
      • Qdrant
      • Typesense
      • Supabase
      • Chroma
Powered by GitBook
On this page
  1. Modules
  2. VectorStores

Supabase

FirstBatch integrates Supabase/PGVector through the Supabase Class.

Example run:

import vecs
from firstbatch import Supabase

supabase_uri = os.environ["SUPABASE_URL"]
client = vecs.create_client(supabase_uri)
embedding_size = int(os.environ["EMBEDDING_SIZE"])
config = Config(batch_size=20, verbose=True)
personalized = FirstBatch(api_key=os.environ["FIRSTBATCH_API_KEY"], config=config)
personalized.add_vdb("supabase_db", Supabase(client=client, collection_name="default", query_name="match_documents", embedding_size=embedding_size))

Distance metric can explicitly be provided. If not, default value is COSINE_SIM

class DistanceMetric(Enum):
    COSINE_SIM = "cosine_sim"
    EUCLIDEAN_DIST = "euclidean_dist"
    DOT_PRODUCT = "dot_product"
from firstbatch import DistanceMetric

Supabase(client=client, collection_name="default", query_name="match_documents"
distance_metric=DistanceMetric.EUCLIDEAN_DIST)
PreviousTypesenseNextChroma

Last updated 1 year ago