Skip to main content

adk-inspeximus

A Google ADK memory service backed by inspeximus.

ADK's built-in InMemoryMemoryService says what it is in its own docstring: "for prototyping purpose only. Uses keyword matching instead of semantic search." The alternatives shipped with ADK are Vertex AI services. This is the local one: a file on disk, no server, no cloud account.

pip install adk-inspeximus
from google.adk.runners import Runner
from adk_inspeximus import InspeximusMemoryService

runner = Runner(
    agent=agent,
    app_name="my_app",
    session_service=session_service,
    memory_service=InspeximusMemoryService(path="memory.json"),
)

Or without writing any Python glue, if you launch through the ADK CLI:

# services.py — loaded by `adk web`
from adk_inspeximus import register
register()                       # enables inspeximus://
adk web --memory_service_uri=inspeximus://memory.json

What it does that the built-in does not

  • Survives a restart. The built-in service holds everything in a dict; when the process exits, the memory is gone.
  • Erases one user on request. forget_subject_for(app_name, user_id, request_id=...) hard-deletes that user's memories across every session and leaves a content-free tombstone behind, so the deletion is provable and the value is no longer in the bytes on disk. No ADK memory service offers this.
  • Ranked retrieval instead of counting shared words.

Parity

ADK ships no conformance suite for BaseMemoryService, so the claim "drop-in replacement" is checked against ADK's own InMemoryMemoryService in adk_audit.py: eight scenarios, three repeats each, covering ingestion, user and app isolation, empty and missed queries, repeated ingestion, incremental event deltas, and retrieval from a store crowded with other users' memories. Running it with ADK_FALSIFY=1 breaks the service on purpose and the checks must fail — without that, the audit would only prove it can print "PASS".

Two of those scenarios failed when the audit was first written, and both are fixed: re-adding a session stored it a second time (ADK documents that a session "may be added multiple times during its lifetime"), and the incremental add_events_to_memory path was not implemented at all.

MIT licensed.

Download files

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

Source Distribution

adk_inspeximus-0.1.0.tar.gz (2.8 kB view details)

Uploaded Source

Built Distribution

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

adk_inspeximus-0.1.0-py3-none-any.whl (3.0 kB view details)

Uploaded Python 3

File details

Details for the file adk_inspeximus-0.1.0.tar.gz.

File metadata

  • Download URL: adk_inspeximus-0.1.0.tar.gz
  • Upload date:
  • Size: 2.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for adk_inspeximus-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ca5cf35a9efffe5cc4ae12ea05294419c183f05bfeef9c32cfc6fd0b660c1e51
MD5 37e2898dc9c18bb5d72b22c88274f97d
BLAKE2b-256 942c97c4351c15fa2186c19ca7071f07902182f73d667ee97fd14859dde672c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for adk_inspeximus-0.1.0.tar.gz:

Publisher: release.yml on DanceNitra/inspeximus

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

File details

Details for the file adk_inspeximus-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: adk_inspeximus-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for adk_inspeximus-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e12e233278386ee103fb1ac992f89c94fba0408dc95bcaecb61c68052c3b05a3
MD5 32e038060447a19af8587792a830a6f6
BLAKE2b-256 c1a5b47065ca9333c9ccbbabc36c8ef59badf4a7ca8068947b6fa63ab69f2c63

See more details on using hashes here.

Provenance

The following attestation bundles were made for adk_inspeximus-0.1.0-py3-none-any.whl:

Publisher: release.yml on DanceNitra/inspeximus

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

Supported by

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