Skip to main content

Rakam System Vectorstore

The vectorstore package of Rakam Systems providing vector database solutions and document processing capabilities.

Overview

rakam-systems-vectorstore provides comprehensive vector storage, embedding models, and document loading capabilities. This package depends on rakam-systems-core.

Features

  • Configuration-First Design: Change your entire vector store setup via YAML — no code changes
  • Multiple Backends: PostgreSQL with pgvector and FAISS in-memory storage
  • Flexible Embeddings: SentenceTransformers, OpenAI, and Cohere
  • Document Loaders: PDF, DOCX, HTML, Markdown, CSV, and more
  • Search Capabilities: Vector search, keyword search (BM25), and hybrid search
  • Chunking: Intelligent text chunking with context preservation

Installation

pip install rakam-systems-vectorstore

# With specific backends
pip install rakam-systems-vectorstore[postgres]
pip install rakam-systems-vectorstore[faiss]
pip install rakam-systems-vectorstore[all]

Available extras:

Extra What it adds
postgres psycopg2-binary, pgvector, django
faiss faiss-cpu
local-embeddings sentence-transformers, torch
openai openai (for OpenAI embeddings)
cohere cohere (for Cohere embeddings)
loaders python-magic, beautifulsoup4, python-docx, pymupdf, docling, chonkie
all Everything above

Quick Start

from rakam_systems_vectorstore import FaissStore, Node, NodeMetadata

store = FaissStore(
    name="my_store",
    base_index_path="./indexes",
    embedding_model="Snowflake/snowflake-arctic-embed-m",
    initialising=True
)

nodes = [
    Node(
        content="Python is great for AI",
        metadata=NodeMetadata(source_file_uuid="doc1", position=0)
    )
]

store.create_collection_from_nodes("my_collection", nodes)
results, _ = store.search(collection_name="my_collection", query="AI programming", number=5)

PostgreSQL store (Django, FastAPI, or plain Python)

The PostgreSQL store is exposed at a stable import path:

from rakam_systems_vectorstore.stores import (
    ConfigurablePgVectorStore,
    VectorStoreConfig,
)

store = ConfigurablePgVectorStore(config=VectorStoreConfig())
store.setup()  # creates the pgvector extension and tables if needed

The store connects through Django's ORM. Inside a Django process it uses your project's existing database configuration. Outside Django (FastAPI, workers, scripts) importing from rakam_systems_vectorstore.stores automatically configures Django from the POSTGRES_* environment variables — no DJANGO_SETTINGS_MODULE or django.setup() needed on your side. A host that has already configured Django is never overridden.

To target a database other than the POSTGRES_* defaults, configure it explicitly before the first import from the store:

from rakam_systems_vectorstore.config import DatabaseConfig
from rakam_systems_vectorstore.stores import ensure_django_configured

ensure_django_configured(DatabaseConfig(host="db.internal", database="tickets"))

from rakam_systems_vectorstore.stores import ConfigurablePgVectorStore

Core Components

  • ConfigurablePgVectorStore — PostgreSQL with pgvector, hybrid search, keyword search
  • FaissStore — In-memory FAISS-based vector search
  • ConfigurableEmbeddings — SentenceTransformers, OpenAI, Cohere backends
  • AdaptiveLoader — Auto-detects and loads PDF, DOCX, HTML, Markdown, CSV, email, code
  • TextChunker / AdvancedChunker — Sentence-based and context-aware chunking

Environment Variables

Variable Description
POSTGRES_HOST PostgreSQL host (default: localhost)
POSTGRES_PORT PostgreSQL port (default: 5432)
POSTGRES_DB Database name (default: vectorstore_db)
POSTGRES_USER Database user (default: postgres)
POSTGRES_PASSWORD Database password
OPENAI_API_KEY For OpenAI embeddings
COHERE_API_KEY For Cohere embeddings
HUGGINGFACE_TOKEN For private HuggingFace models

Documentation

For PostgreSQL setup, search examples, YAML configuration, and full API reference, see the official documentation.

License

Apache 2.0

Release files for rakam-systems-vectorstore 0.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rakam-systems-vectorstore 0.1.7
File Size Uploaded
rakam_systems_vectorstore-0.1.7.tar.gz 131.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rakam-systems-vectorstore 0.1.7
File Interpreter ABI Platform
rakam_systems_vectorstore-0.1.7-py3-none-any.whl Python 3 none any Details

Total release size: 306.4 kB

Release files / rakam_systems_vectorstore-0.1.7.tar.gz

Download URL rakam_systems_vectorstore-0.1.7.tar.gz
Size 131.2 kB
Tags Source
SHA-256 checksum
How to use checksums
5acfd3bea3c5061ab0e24ad3079703c49bc41e241de647c72d7bd85768f27576
BLAKE2b-256 checksum
How to use checksums
9c59612920f13acd8518bb474ffed66ac89d91c1c935937cb64446dffa951a89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.31 {"installer":{"name":"uv","version":"0.11.31","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / rakam_systems_vectorstore-0.1.7-py3-none-any.whl

Download URL rakam_systems_vectorstore-0.1.7-py3-none-any.whl
Size 175.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
57a605e35c1a18e85279a747b30c48c11d586acf9aa6146036039b585cbfcc2d
BLAKE2b-256 checksum
How to use checksums
16cd1479d60b9eaf3b5ece1fe2fe9fdfc7e1bec6a9e16a9c78af0d4a07c0f5cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.31 {"installer":{"name":"uv","version":"0.11.31","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page