Core Python Library for CyborgDB: The Confidential Vector Database (CUDA 12)
Project description
CyborgDB Core
CyborgDB is the first Confidential Vector Database that enables you to ingest & search vectors embeddings in a privacy-preserving manner, without revealing the contents of the vectors themselves. It supports in-memory, local-disk, and S3 backing stores, and enables you to add, query and retrieve vector embeddings with transparent end-to-end encryption.
Why Confidential?
Vector Search is at the heart of popular AI applications like RAG, recommendation systems, and semantic search. CyborgDB leverages cryptographic hashing and symmetric encryption to enable Approximate Nearest-Neighbor (ANN) search over encrypted space, keeping your vector embeddings secure throughout their lifecycle.
Key Features
- End-to-End Encryption: Vector embeddings remain encrypted throughout their lifecycle, including at search time
- Zero-Trust Design: Novel architecture keeps confidential inference data secure
- High Performance: GPU-accelerated indexing and retrieval with CUDA support
- Familiar API: Easy integration with existing AI workflows
- Multiple Backing Stores: Works with in-memory, local disk, and S3 storage
- Cloud Ready: Supports AWS S3 (and S3-compatible stores like MinIO) out of the box
API Key (Optional)
cyborgdb-core works out of the box with no API key — the client runs in free-tier mode with a per-index cap of 1,000,000 items. For unlimited usage, get an API key from db.cyborg.co: sign up for a free account, create an API key, and pass it to the client.
Installation
# Install CyborgDB Core (CPU):
pip install cyborgdb-core
# Install CyborgDB Core (CUDA):
pip install cyborgdb-core-cu12
Quickstart
import cyborgdb_core as cyborgdb
import secrets
# Create a client with memory storage (no API key required for free-tier usage)
# You can replace this with cyborgdb.StorageConfig.disk(...) or .s3(...)
client = cyborgdb.Client(storage_config=cyborgdb.StorageConfig.memory())
# For unlimited usage, pass your CyborgDB API key:
# client = cyborgdb.Client("cyborgdb_000000", cyborgdb.StorageConfig.memory())
# Generate an encryption key for the index
index_key = secrets.token_bytes(32)
# Create an encrypted index
index = client.create_index("my_index", index_key)
# Add items to the encrypted index
items = [
{"id": "item_1", "vector": [0.1, 0.2, 0.3, 0.4], "contents": "Hello!"},
{"id": "item_2", "vector": [0.5, 0.6, 0.7, 0.8], "contents": "Bonjour!"},
{"id": "item_3", "vector": [0.9, 0.10, 0.11, 0.12], "contents": "Hola!"}
]
index.upsert(items)
# Query the encrypted index
query_vector = [0.1, 0.2, 0.3, 0.4]
results = index.query(query_vector)
# Print the results
for result in results:
print(f"ID: {result.id}, Distance: {result.distance}")
Connecting to Different Backing Stores
Disk (local RocksDB)
storage_config = cyborgdb.StorageConfig.disk("/tmp/cyborgdb_disk")
client = cyborgdb.Client(storage_config=storage_config)
S3
storage_config = cyborgdb.StorageConfig.s3(
"my-bucket",
region="us-east-1",
# Omit credentials= to use the AWS default credential chain
credentials=cyborgdb.S3Credentials(access_key="...", secret_key="..."),
)
client = cyborgdb.Client(storage_config=storage_config)
Documentation
For more detailed documentation, visit:
System Requirements
- Python 3.10 - 3.14
- Operating Systems: Linux, macOS, or WSL
License
CyborgDB is provided under a commercial license with a perpetual free tier. Contact Cyborg or visit the pricing page for more information.
About Cyborg
Cyborg is dedicated to making AI safe and secure. We develop solutions that enable organizations to leverage AI while maintaining the confidentiality and privacy of their data.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cyborgdb_core_cu12-0.17.0-cp314-cp314-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: cyborgdb_core_cu12-0.17.0-cp314-cp314-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 71.0 MB
- Tags: CPython 3.14, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9dfcbc7662ec66307333b522e2b4125991a4861351c326cba479f8c3c84b2e3d
|
|
| MD5 |
15eda5ff8f68231a1328e5c6ea80e94a
|
|
| BLAKE2b-256 |
f42068cd871de7f94366e172f78aac3d8ab368dc8cab87f44e279b4de51baa36
|
Provenance
The following attestation bundles were made for cyborgdb_core_cu12-0.17.0-cp314-cp314-manylinux_2_28_x86_64.whl:
Publisher:
publish_py_cuda.yaml on cyborginc/cyborgdb-core
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cyborgdb_core_cu12-0.17.0-cp314-cp314-manylinux_2_28_x86_64.whl -
Subject digest:
9dfcbc7662ec66307333b522e2b4125991a4861351c326cba479f8c3c84b2e3d - Sigstore transparency entry: 1953892175
- Sigstore integration time:
-
Permalink:
cyborginc/cyborgdb-core@5b4df2969b49dd5a261e0734f32222184778899c -
Branch / Tag:
refs/tags/v0.17.0 - Owner: https://github.com/cyborginc
-
Access:
internal
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_py_cuda.yaml@5b4df2969b49dd5a261e0734f32222184778899c -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file cyborgdb_core_cu12-0.17.0-cp313-cp313-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: cyborgdb_core_cu12-0.17.0-cp313-cp313-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 71.0 MB
- Tags: CPython 3.13, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ac0c2fdfa2ea817dd63cf531880834b20c93b6948029e2383c0a33e0f2b52ed2
|
|
| MD5 |
378b3205b1f71c0d58c1d8382b6df6b9
|
|
| BLAKE2b-256 |
c11e2ace0be876bb148042ac22ee9e62a4b871a92161dd66212abc3b0d978236
|
Provenance
The following attestation bundles were made for cyborgdb_core_cu12-0.17.0-cp313-cp313-manylinux_2_28_x86_64.whl:
Publisher:
publish_py_cuda.yaml on cyborginc/cyborgdb-core
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cyborgdb_core_cu12-0.17.0-cp313-cp313-manylinux_2_28_x86_64.whl -
Subject digest:
ac0c2fdfa2ea817dd63cf531880834b20c93b6948029e2383c0a33e0f2b52ed2 - Sigstore transparency entry: 1953890756
- Sigstore integration time:
-
Permalink:
cyborginc/cyborgdb-core@5b4df2969b49dd5a261e0734f32222184778899c -
Branch / Tag:
refs/tags/v0.17.0 - Owner: https://github.com/cyborginc
-
Access:
internal
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_py_cuda.yaml@5b4df2969b49dd5a261e0734f32222184778899c -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file cyborgdb_core_cu12-0.17.0-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: cyborgdb_core_cu12-0.17.0-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 71.0 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dc6625601105130f25846f6555ceacfb7d6441d2c3218f917d28f53ee9da2a54
|
|
| MD5 |
ef456c3a4f903c3b01371bfb2a54dfd7
|
|
| BLAKE2b-256 |
5f1793141f37cad9eeccaffdc1a1a075c399b6fef7be2df800ad78ece11ac682
|
Provenance
The following attestation bundles were made for cyborgdb_core_cu12-0.17.0-cp312-cp312-manylinux_2_28_x86_64.whl:
Publisher:
publish_py_cuda.yaml on cyborginc/cyborgdb-core
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cyborgdb_core_cu12-0.17.0-cp312-cp312-manylinux_2_28_x86_64.whl -
Subject digest:
dc6625601105130f25846f6555ceacfb7d6441d2c3218f917d28f53ee9da2a54 - Sigstore transparency entry: 1953891732
- Sigstore integration time:
-
Permalink:
cyborginc/cyborgdb-core@5b4df2969b49dd5a261e0734f32222184778899c -
Branch / Tag:
refs/tags/v0.17.0 - Owner: https://github.com/cyborginc
-
Access:
internal
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_py_cuda.yaml@5b4df2969b49dd5a261e0734f32222184778899c -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file cyborgdb_core_cu12-0.17.0-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: cyborgdb_core_cu12-0.17.0-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 71.0 MB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f8e51d471fc7acd004f72c2ef6877fb9e6d64432109df61ecd3ef1acac4b41bb
|
|
| MD5 |
c832f7647aa8820f43cf9728c9f85125
|
|
| BLAKE2b-256 |
50772ef64266fe65809499867bb1eb6e231f60425818707d4988775db984fd6b
|
Provenance
The following attestation bundles were made for cyborgdb_core_cu12-0.17.0-cp311-cp311-manylinux_2_28_x86_64.whl:
Publisher:
publish_py_cuda.yaml on cyborginc/cyborgdb-core
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cyborgdb_core_cu12-0.17.0-cp311-cp311-manylinux_2_28_x86_64.whl -
Subject digest:
f8e51d471fc7acd004f72c2ef6877fb9e6d64432109df61ecd3ef1acac4b41bb - Sigstore transparency entry: 1953891251
- Sigstore integration time:
-
Permalink:
cyborginc/cyborgdb-core@5b4df2969b49dd5a261e0734f32222184778899c -
Branch / Tag:
refs/tags/v0.17.0 - Owner: https://github.com/cyborginc
-
Access:
internal
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_py_cuda.yaml@5b4df2969b49dd5a261e0734f32222184778899c -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file cyborgdb_core_cu12-0.17.0-cp310-cp310-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: cyborgdb_core_cu12-0.17.0-cp310-cp310-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 71.0 MB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9841a984fa90a1f165eed3db46fe808160307ccfadfd74d750a6407e35c5f9d
|
|
| MD5 |
01b063a5d6b3b80cc18e5dcfc3d2bf00
|
|
| BLAKE2b-256 |
651b858730c7d7a7f978fd5121dbd9df92c99086748b8ce09737f93e1b24ba1e
|
Provenance
The following attestation bundles were made for cyborgdb_core_cu12-0.17.0-cp310-cp310-manylinux_2_28_x86_64.whl:
Publisher:
publish_py_cuda.yaml on cyborginc/cyborgdb-core
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cyborgdb_core_cu12-0.17.0-cp310-cp310-manylinux_2_28_x86_64.whl -
Subject digest:
c9841a984fa90a1f165eed3db46fe808160307ccfadfd74d750a6407e35c5f9d - Sigstore transparency entry: 1953890126
- Sigstore integration time:
-
Permalink:
cyborginc/cyborgdb-core@5b4df2969b49dd5a261e0734f32222184778899c -
Branch / Tag:
refs/tags/v0.17.0 - Owner: https://github.com/cyborginc
-
Access:
internal
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_py_cuda.yaml@5b4df2969b49dd5a261e0734f32222184778899c -
Trigger Event:
workflow_dispatch
-
Statement type: