Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.memwal.ai/llms.txt

Use this file to discover all available pages before exploring further.

Unlike the TypeScript SDK there is no separate MemWalManual class in Python. The Python SDK is relayer-backed: the relayer always handles embedding, SEAL encryption, and Walrus storage. The “manual” methods are lower-level entry points on the same MemWal / MemWalSync client for callers that already have a vector or a pre-uploaded blob.
Use these when you want to control indexing or do your own vector math. For the standard flow, prefer remember / recall.

embed

Compute the embedding vector for text without storing anything.
from memwal import MemWal

memwal = MemWal.create(key="...", account_id="0x...", env="prod")

vec = await memwal.embed("User prefers dark mode.")
print(len(vec.vector))

remember_manual

Register a pre-uploaded Walrus blob with a pre-computed vector. The relayer stores the {blob_id, vector, owner, namespace} mapping; it does not upload for you here.
from memwal import RememberManualOptions

result = await memwal.remember_manual(
    RememberManualOptions(
        blob_id="<walrus-blob-id>",
        vector=vec.vector,
        namespace="chatbot-prod",   # optional; falls back to client default
    )
)
print(result.id, result.blob_id, result.owner, result.namespace)

recall_manual

Search with a pre-computed query vector. Returns {blob_id, distance} hits only — no decrypted text (you fetch/decrypt the blobs yourself).
from memwal import RecallManualOptions

q = await memwal.embed("What do we know about this user?")
hits = await memwal.recall_manual(
    RecallManualOptions(vector=q.vector, limit=5, namespace="chatbot-prod")
)
for hit in hits.results:
    print(hit.blob_id, hit.distance)

When to use which

You have…Use
Plain text, want it storedremember / remember_and_wait
Plain text, want only the vectorembed
A vector + an already-uploaded blobremember_manual
A query vector, want raw hitsrecall_manual
Plain query text, want decrypted matchesrecall
All four manual entry points exist on both MemWal (async) and MemWalSync (sync) with identical signatures.