Skip to main content

Holographic Memory logo

Holographic Memory SDK

Python HTTP client and framework adapters for a Holographic Memory service.

Website · Documentation · Source · License


The client talks to hms-server, which ships in the Holographic Memory repository. The server stores vectors you supply and exposes document and query endpoints. See the server guide to run it.

Installation

uv add holographic-memory-sdk

Framework adapters are optional extras. Install one, or all of them:

uv add "holographic-memory-sdk[langchain]"
uv add "holographic-memory-sdk[all]"

The earlier standalone langchain-holographic distribution is retired. For LangChain, install holographic-memory-sdk[langchain] and import HolographicVectorStore from holographic_sdk.langchain. This adapter connects to hms-server; update the old langchain_holographic import and its local-store configuration when migrating.

The fast extra adds orjson for request encoding, which cuts the per-query cost of sending an embedding:

uv add "holographic-memory-sdk[fast]"

Requires Python 3.10 or newer.

Quick Start

from holographic_sdk import HolographicClient

client = HolographicClient(url="http://localhost:8080", api_key="...")

client.add_documents([
    {"id": "doc-1", "text": "Paris is the capital of France.", "vector": [0.12, -0.03, 0.88], "metadata": {"lang": "en"}},
])

response = client.query(query_vector=[0.10, -0.01, 0.90], top_k=3, filter={"lang": "en"})
print(response["matches"])
client.delete_document("doc-1")
client.close()

AsyncHolographicClient has the same methods as coroutines; close it with await client.aclose(). Embeddings come from your own model: the SDK sends vectors, it does not compute them.

After bulk ingestion, client.maintain_document_index() explicitly builds the server's exact dense document index and returns {"documentIndexTrained": true} when the store is eligible. Smaller or unsupported stores return false and use exact scanning. Use await client.maintain_document_index() with the async client. Rebuild after updates or restart; the index is a runtime cache. Searches preserve the existing cosine results, and metadata filters continue to apply before ranking. This method requires an hms-server version exposing POST /api/v1/index/maintain.

Source Evidence

complete_evidence packs complete source observations in your retrieval order. Each observation contains a turn handle, session handle, observation time, role, and verbatim text. Supply opaque caller IDs as lowercase SHA-256 hex handles, and keep their association with your original records.

from hashlib import sha256
from holographic_sdk import complete_evidence, decode_source_packet

def handle(identity):
    return sha256(identity.encode("utf-8")).hexdigest()

session = handle("session-7")
candidates = [
    [(handle("turn-1"), session, "2026-10-13T10:00:00Z", "user",
      "I have two aquarium tanks.")],
    [(handle("turn-2"), session, "2026-10-13T10:00:00Z", "assistant",
      "You mentioned two aquarium tanks.")],
]

selection = complete_evidence(candidates, selected=[0], budget_bytes=2048)
observations = decode_source_packet(selection.packet)
assert observations == [candidates[index] for index in selection.selected]

The indices in selected are mandatory; packing raises ValueError if they exceed the budget. Additional complete groups fit in candidate order, with shared text and session metadata stored once. Decoding preserves every occurrence, role, observation time, and source text. The budget counts UTF-8 packet bytes; measure reader tokens separately. Packets contain source observations and no inferred answer or event date. These helpers run locally and make no service calls.

Integrations

Framework Extra Import
LangChain langchain from holographic_sdk.langchain import HolographicVectorStore
LlamaIndex llamaindex from holographic_sdk.llamaindex import HolographicVectorStore
Haystack haystack from holographic_sdk.haystack import HolographicDocumentStore
Semantic Kernel semantic-kernel from holographic_sdk.semantic_kernel import HolographicMemoryStore
DSPy dspy from holographic_sdk.dspy import HolographicRM
CrewAI crewai from holographic_sdk.crewai import HolographicSearchTool
Embedchain embedchain from holographic_sdk.embedchain import HolographicDB
Phidata phidata from holographic_sdk.phidata import HolographicVectorDb
Pydantic AI pydantic-ai from holographic_sdk.pydantic_ai import get_holographic_tool
SmolAgents smolagents from holographic_sdk.smolagents import HolographicSearchTool

Vector Masking

Passing zero_trust_key masks every embedding client-side with a keyed signed permutation (VectorMask, scrypt-derived). The server can still rank vectors because inner products and cosine similarity are preserved exactly. This is obfuscation, not encryption: the server learns all pairwise similarities, and known plain/masked pairs reveal the key for the coordinates they cover. Pass a per-collection mask_salt (at least 16 bytes) shared by all clients of that collection. Masks produced by 0.1.0/0.1.1 are not compatible and were not secure.

License

Apache-2.0. See the LICENSE.

Metadata

Release files for holographic-memory-sdk 0.1.3

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

Source distribution (sdist)

Source distribution for holographic-memory-sdk 0.1.3
File Size Uploaded Provenance
holographic_memory_sdk-0.1.3.tar.gz 140.3 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for holographic-memory-sdk 0.1.3
File Interpreter ABI Platform
holographic_memory_sdk-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 274.8 kB

Release files / holographic_memory_sdk-0.1.3.tar.gz

Download URL holographic_memory_sdk-0.1.3.tar.gz
Size 140.3 kB
Tags Source
SHA-256 checksum
How to use checksums
745eb07701e143aa3776b0f0d99bd0b8d10cbde8e55642250ae3f5ad2c1395c3
BLAKE2b-256 checksum
How to use checksums
74aab2c72d1b525960ac3b21ed8af14c685f00847deea77999d9b9ee9f2873db
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Release files / holographic_memory_sdk-0.1.3-py3-none-any.whl

Download URL holographic_memory_sdk-0.1.3-py3-none-any.whl
Size 134.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e87e4cbf21e68bd87fb0089cb67c50ae3a0e730f91cf90871bd86dd407c9029d
BLAKE2b-256 checksum
How to use checksums
bec220d4b2420b3e690df8416601430b24441a9e9457cf3c46ef67492d36606d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Security for holographic-memory-sdk 0.1.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for holographic_memory_sdk-0.1.3.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files Full provenance

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