Starting Our Open Source Journey

Written by
Charlcye Mitchell

We're open-sourcing CyborgDB, starting with our client SDKs today and the service layer later this year. Here's what this means for teams building encrypted vector search into their AI systems.

The problem we're solving

Every RAG pipeline, semantic search system, and recommendation engine relies on vector embeddings. These embeddings encode your sensitive data - medical records, financial transactions, legal documents - into mathematical representations that traditional databases store in plaintext.

This creates an uncomfortable reality: your most sensitive information sits unencrypted in vector databases, vulnerable to breaches, insider threats, and compliance violations. Recent research shows embeddings can be inverted to reconstruct original data with surprising accuracy. For regulated industries, this is a dealbreaker.

CyborgDB encrypts vectors client-side before they hit the database, then searches directly on encrypted vectors without decryption. No plaintext exposure, no trust assumptions about your infrastructure.

What we're open-sourcing

Available now: Client SDKs

Our Python, TypeScript, JavaScript and Go SDKs are now open source. These handle the cryptographic heavy lifting - key generation, vector encryption, secure search protocols - so you can focus on building features.

from cyborgdb import CyborgDB
import os‍

# Initialize with your encryption key
db = CyborgDB(
	base_url="http://localhost:8000",
    api_key=os.environ["CYBORGDB_API_KEY"]
)‍

# Create an encrypted index - vectors never exist in plaintext
index = db.create_index(
	name="medical_records",
    dimension=768,
    encryption_key=os.environ["ENCRYPTION_KEY"]
)‍

# Search happens on encrypted vectors
results = index.search(
	vector=query_embedding,
    top_k=10,
    filter={"department": "cardiology"}
)

GitHub repositories:

Coming later this year: CyborgDB Service

The service layer (cyborgdb-service) is currently distributed as a Python package and Docker image. It's a FastAPI microservice that:

  • Exposes REST endpoints for encrypted vector operations
  • Manages connections to your backing store (PostgreSQL, Redis)
  • Handles index management and query optimization
  • Provides health checks and metrics

We'll open-source cyborgdb-service later this year. Until then, you can use the current distribution:

# Via pip
pip install cyborgdb-service
cyborgdb-service run --port 8000‍

# Or Docker
docker run -p 8000:8000 \
	-e CYBORGDB_DB_TYPE=postgres \
    -e CYBORGDB_CONNECTION_STRING="..." \
    cyborginc/cyborgdb-service:latest

Architecture that respects your infrastructure

CyborgDB isn't another database to manage. It's an encryption layer that transforms your existing database (e.g., PostgreSQL or Redis) into an encrypted vector store.

Your data flow looks like this:

  1. Application generates embeddings from your AI model
  2. CyborgDB client encrypts vectors locally using your keys
  3. Encrypted vectors store in your existing database
  4. Searches execute without decryption using cryptographic protocols
  5. Only your application with the key can decrypt results

This means:

  • No new database to operate
  • Your data stays in your infrastructure
  • Keys remain under your control
  • Existing backup and DR procedures still work

Real-world usage patterns

Healthcare RAG system:

# Patient data never leaves encrypted state
index = client.load_index("patient_records", encryption_key)
similar_cases = index.query(
    query_vectors=symptoms_embedding,
    filter={"diagnosis_confirmed": {"$eq": True}},
    top_k=20
)

Financial fraud detection:

# Transaction patterns remain encrypted
index = client.load_index("transaction_vectors", encryption_key)
suspicious = index.query(
    query_vectors=current_transaction_embedding,
    filter={"flagged": {"$eq": True}},
)

Multi-tenant SaaS:

# Each customer gets unique encryption keys
customer_index = client.load_index(
    f"customer_{tenant_id}",
    index_key=customer_keys[tenant_id]
)

Getting started

1. Install the SDK for your language:

pip install cyborgdb  # Python
npm install cyborgdb  # TypeScript  
go get github.com/cyborginc/cyborgdb-go  # Go

2. Run the service locally:

# Docker
docker run -d -p 8000:8000 cyborginc/cyborgdb-service:latest

# Or module
cyborgdb-service run --port 8000

3. Start encrypting vectors: Check our quickstart guide for complete examples.

The path forward

Open-sourcing CyborgDB is our commitment to building security infrastructure in the open. We believe encrypted vector search should be a standard capability, not a proprietary black box.

The client SDKs are just the beginning. When we open-source the service layer later this year, you'll have full visibility into every component. Until then, the current service distribution is production-ready and actively deployed in healthcare, finance, and government applications.

Related posts

Cyborg and Redpanda: Secure Streaming Pipelines for Enterprise AI

Stream events from Redpanda Connect into CyborgDB for confidential, real-time Enterprise AI workflows

Starting Our Open Source Journey

CyborgDB's SDKs are now open source, and CyborgDB Service will be soon!

NYSE Wired Interview with Cyborg CEO

Cyborg's CEO, Nicolas Dupont, interviewed at the New York Stock Exchange