-- Enable pgvector extension for semantic search
-- This is required for vector similarity operations
-- Enable the pgvector extension
CREATE EXTENSION IF NOT EXISTS vector;
-- Verify the extension is enabled
DO $$
BEGIN
IF NOT EXISTS (
SELECT 1 FROM pg_extension WHERE extname = 'vector'
) THEN
RAISE EXCEPTION 'pgvector extension could not be enabled';
END IF;
END $$;
-- Test basic vector operations
DO $$
DECLARE
test_vector vector(1536);
BEGIN
-- Test creating a vector
test_vector := array_fill(0.1, ARRAY[1536])::vector;
-- Test vector operations work
IF test_vector IS NULL THEN
RAISE EXCEPTION 'Vector creation failed';
END IF;
RAISE NOTICE 'pgvector extension is working correctly';
END $$;