@sf-ai/rag-functions
v0.2.1
Published
RAG functions for import, export, and vector search
Maintainers
Readme
@sf-ai/rag-functions
RAG functions for import, export, and vector search.
Overview
This package provides SQL functions for working with RAG collections:
- Import/Export: JSON format for portable collection data
- Search: Cosine similarity search using pgvector
- CSV Export: Flat format for embeddings
Functions
rag.export_collection_json(collection_id uuid)
Export a complete collection with all documents, chunks, and embeddings as JSON.
SELECT rag.export_collection_json('collection-uuid');rag.import_collection_json(data jsonb, overwrite boolean)
Import a collection from JSON format.
SELECT rag.import_collection_json('{...}'::jsonb, false);rag.search_similar(collection_id uuid, query_vector vector, ...)
Search for similar chunks using cosine distance.
SELECT * FROM rag.search_similar(
'collection-uuid',
'[0.1, 0.2, ...]'::vector,
'text-embedding-3-small', -- model name (optional)
10, -- limit
0.5 -- distance threshold (optional)
);Also supports searching by collection name:
SELECT * FROM rag.search_similar(
'my-collection',
'[0.1, 0.2, ...]'::vector
);rag.export_embeddings_csv(collection_id uuid, model_name text)
Export embeddings in CSV-friendly format.
SELECT * FROM rag.export_embeddings_csv('collection-uuid', 'text-embedding-3-small');Dependencies
@sf-ai/rag-core
