iris_backend / backend /create_profile_embeddings.sql
Muhammed Sameer
Initial commit - Iris Full (under development)
ea9ca44
-- Enable the pgvector extension to work with embedding vectors
create extension if not exists vector;
-- Create a table to store embeddings for each profile column
-- We use 1024 dimensions for the BAAI/bge-m3 model
create table if not exists profile_embeddings (
id uuid references profiles(id) on delete cascade primary key,
headline vector(1024),
summary vector(1024),
skills vector(1024),
technical_skills vector(1024),
experience vector(1024),
certifications vector(1024),
languages vector(1024),
created_at timestamp with time zone default timezone('utc'::text, now()) not null,
updated_at timestamp with time zone default timezone('utc'::text, now()) not null
);
-- Enable Row Level Security (RLS)
alter table profile_embeddings enable row level security;
-- Create policies (Adjust based on your actual auth requirements)
-- Allow read access to everyone (or authenticated users)
create policy "Allow read access for all users"
on profile_embeddings for select
using ( true );
-- Allow update/insert only for service_role or the user who owns the profile
-- (Assuming auth.uid() matches the profile id)
create policy "Users can update their own embeddings"
on profile_embeddings for all
using ( auth.uid() = id );