Skip to main content

🐍 VantaDB Python SDK

Bindings oficiales de Python para VantaDB, un motor de base de datos embebido y nativo en Rust diseñado para memoria persistente y recuperación vectorial en aplicaciones de IA local-first.

📦 Instalación

Desde TestPyPI (Recomendado para pruebas)

pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ vantadb-py

Desde el código fuente (Desarrollo)

Requiere Rust y Maturin instalados.

# Clonar el repositorio
git clone https://github.com/ness-e/Vantadb.git
cd Vantadb/vantadb-python

# Compilar e instalar en el entorno virtual activo
pip install maturin
maturin develop --release

🚀 Quickstart

import vantadb_py as vdb

# 1. Abrir o crear una base de datos embebida
db = vdb.VantaDB("./my_agent_memory", memory_limit_bytes=128 * 1024 * 1024)

# 2. Almacenar memoria persistente (payload + vector + metadatos)
db.put_memory(
    namespace="agent/session_1",
    key="fact_001",
    payload="El usuario prefiere respuestas técnicas y directas.",
    metadata={"source": "chat", "priority": "high"},
    vector=[0.1, 0.2, 0.3, 0.4]  # Vector denso (ej. embedding de un modelo local)
)

# 3. Recuperar memoria exacta
record = db.get_memory("agent/session_1", "fact_001")
print(record["payload"])

# 4. busqueda-hibrida (Vectorial + Léxica)
# Nota: Requiere un vector de consulta del mismo tamaño que los almacenados
query_vector = [0.15, 0.25, 0.35, 0.45]
results = db.search_hybrid(
    namespace="agent/session_1",
    query_vector=query_vector,
    query_text="preferencias usuario",
    top_k=5
)

for hit in results:
    print(f"Key: {hit['key']}, Score: {hit['score']:.4f}")

# 5. Monitoreo de recursos (Crítico para agentes locales)
stats = db.memory_stats()
print(f"Uso lógico: {stats['logical_bytes'] / 1024:.2f} KB")
print(f"RSS físico: {stats['physical_rss'] / 1024:.2f} KB")

# 6. Cierre seguro
db.close()

🤖 Caso de Uso: Memoria para Agentes de IA

VantaDB está optimizado para actuar como memoria a largo plazo para agentes autónomos locales (Claude, Gemini, LLaMA, etc.):

  • Persistencia Zero-Copy: Los datos sobreviven a reinicios del agente sin overhead de serialización.
  • busqueda-hibrida RRF: Combina similitud semántica (vectores) con coincidencia léxica (BM25) para recuperación precisa de contexto.
  • Control de Memoria Explícito: memory_limit_bytes evita que el agente colapse la RAM del dispositivo host.
  • Embebido: Sin servidores externos, sin Docker, sin latencia de red. Ideal para dispositivos edge y offline.

🛠️ Desarrollo y Testing

# Ejecutar la suite de tests del SDK
pytest tests/test_sdk.py -v

# Formatear código Python
black tests/ vantadb_python/

📜 Licencia

Distribuido bajo la licencia del proyecto principal VantaDB. Consulta el LICENSE en la raíz del repositorio.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

vantadb_py-0.5.0-cp311-abi3-win_amd64.whl (1.9 MB view details)

Uploaded CPython 3.11+Windows x86-64

vantadb_py-0.5.0-cp311-abi3-manylinux_2_28_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ x86-64

vantadb_py-0.5.0-cp311-abi3-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.11+macOS 11.0+ ARM64

File details

Details for the file vantadb_py-0.5.0-cp311-abi3-win_amd64.whl.

File metadata

  • Download URL: vantadb_py-0.5.0-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: CPython 3.11+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for vantadb_py-0.5.0-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 10f67b5669e350c988f3c7f8c0aef4c7671a2b7975780efa5a92ae63b4d387f1
MD5 3eb4d7b33fbb64289f7d8fc445ca0c17
BLAKE2b-256 3cafb7641f418ff116fb5451778b609bae428604d4b25013e69ea6699a551720

See more details on using hashes here.

Provenance

The following attestation bundles were made for vantadb_py-0.5.0-cp311-abi3-win_amd64.whl:

Publisher: release-wheels-60.yml on ness-e/Vantadb

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vantadb_py-0.5.0-cp311-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for vantadb_py-0.5.0-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d0c961d8c309a932562e26d21ddf108d9c1e61cd0cc639fff90e580ab8c06c1d
MD5 7277cf698d23feab441fd848e167150d
BLAKE2b-256 885633c89d1a3c5bc5d63750ce034105a8b70a3988eb42058163e39561d1f00c

See more details on using hashes here.

Provenance

The following attestation bundles were made for vantadb_py-0.5.0-cp311-abi3-manylinux_2_28_x86_64.whl:

Publisher: release-wheels-60.yml on ness-e/Vantadb

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vantadb_py-0.5.0-cp311-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vantadb_py-0.5.0-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a942fc6a98dc26b30cbf808413e8b520a611897a1c70b6dc1704d7b55b257fac
MD5 f6d3f1e08d6332bfd1a539afa6186f81
BLAKE2b-256 32ef7e4af54fd46e46195f9eaa7402e453d6ace79195cce90c4066b349bd1b9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for vantadb_py-0.5.0-cp311-abi3-macosx_11_0_arm64.whl:

Publisher: release-wheels-60.yml on ness-e/Vantadb

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.5.0 This release

3 files

0.4.0

3 files

0.2.0

3 files

0.1.5

3 files

0.1.4

3 files

0.1.3

3 files

0.1.2

3 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page