1.9 KiB
1.9 KiB
AI Inference in Supabase Edge Functions
Since Supabase Edge Runtime v1.36.0 you can run the gte-small
model natively within Supabase Edge Functions without any external dependencies! This allows you to easily generate text embeddings without calling any external APIs!
Semantic Search with pgvector and Supabase Edge Functions
This demo consists of three parts:
- A
generate-embedding
database webhook edge function which generates embeddings when a content row is added (or updated) in thepublic.embeddings
table. - A
query_embeddings
Postgres function which allows us to perform similarity search from an egde function via Remote Procedure Call (RPC). - A
search
edge function which generates the embedding for the search term, performs the similarity search via RPC function call, and returns the result.
Deploy
- Link your project:
supabase link
- Deploy Edge Functions:
supabase functions deploy
- Enable Database Webhooks in your project dashboard
- Navigate to the database-webhook migration file and insert your
generate-embedding
function details. - Push up the database schema
supabase db push
Run
Run a search via curl POST request:
curl -i --location --request POST 'https://<PROJECT-REF>.supabase.co/functions/v1/search' \
--header 'Authorization: Bearer <SUPABASE_ANON_KEY>' \
--header 'Content-Type: application/json' \
--data '{"search":"vehicles"}'