Skip to main content

taguru (Python SDK)

Official Python client SDK for the Taguru long-term semantic memory server. The TypeScript SDK (taguru on npm) exposes the identical surface — method names differ only by casing convention (search_passagessearchPassages); data fields are the wire's own snake_case in both.

pip install taguru
from taguru import Taguru

client = Taguru()  # defaults: $TAGURU_URL / $TAGURU_API_TOKEN, else http://127.0.0.1:8248
client.contexts.create("sake", description="青嶺酒造という架空の酒蔵の知識")

ctx = client.context("sake")
ctx.add_associations([
    {"subject": "青嶺酒造", "label": "代表銘柄", "object": "青嶺", "weight": 1.0, "source": "docs/aomine.md"},
])
ctx.store_passages({"docs/aomine.md": "青嶺酒造は1907年創業。代表銘柄は「青嶺」。"})

result = ctx.retrieve("青嶺酒造")           # resolve → describe → activate → citations
hits = ctx.search_passages("1907年に創業した")  # text lane (phrase as an answer)
package = ctx.assemble_evidence("青嶺酒造", budget={"max_items": 10})  # server-side budgeted package

Prefer one add_associations call per document. Above the 10,000-association request limit, add_associations_batched auto-chunks it; for corpus-scale ingestion, use POST /import or taguru import. Each call pays for a full durable write.

AsyncTaguru is the same surface with async/await. The behavioral contract is the server's own protocol document — read it from the deployment you target: client.protocol() (GET /protocol).

Tracing

retrieve() composes a client-side loop the same way the server's own retrieve MCP tool does — resolve → describe → query → activate → citations → passage fallback. Optionally trace it as one OpenTelemetry span tree, taguru.retrieve with a child span per phase, joined to the server's own request span through injected traceparent/tracestate headers:

pip install "taguru[otel]"  # pulls in opentelemetry-api; core install stays dependency-free otherwise
pip install opentelemetry-sdk  # an actual TracerProvider — pick whichever OTel SDK/exporter you use instead if not this one
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry import trace

trace.set_tracer_provider(TracerProvider())  # wire up whichever exporter you use — the SDK just emits spans

With no TracerProvider configured (or opentelemetry-api not installed at all), every tracing call in the SDK is a silent no-op — nothing about retrieve()'s behavior or return value changes either way. See Tracing for the full span tree, the attribute/event vocabulary (shared with the TypeScript SDK via sdk/spec/tracing.yaml), and the privacy rules (spans carry counts, flags, and closed reason codes — never cue text, labels, or passage content).

See the repository's sdk/ directory for the full documentation, the LangChain integration (langchain-taguru), and the cross-language surface spec.

Download files

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

Source Distribution

taguru-0.9.2.tar.gz (190.2 kB view details)

Uploaded Source

Built Distribution

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

taguru-0.9.2-py3-none-any.whl (69.3 kB view details)

Uploaded Python 3

File details

Details for the file taguru-0.9.2.tar.gz.

File metadata

  • Download URL: taguru-0.9.2.tar.gz
  • Upload date:
  • Size: 190.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for taguru-0.9.2.tar.gz
Algorithm Hash digest
SHA256 6fec303d40798bd25b35f2cc04d29054486968a3c15417974aeb24ba9dcb7fb5
MD5 35cf9b847aecaba2729e30d97bd1ddc2
BLAKE2b-256 7f35c590e68890dea8ad3c91bb646dbc58c19d1d93ca24805a0932a66808cc72

See more details on using hashes here.

File details

Details for the file taguru-0.9.2-py3-none-any.whl.

File metadata

  • Download URL: taguru-0.9.2-py3-none-any.whl
  • Upload date:
  • Size: 69.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for taguru-0.9.2-py3-none-any.whl
Algorithm Hash digest
SHA256 eff73de20202802f0e5dd5e20d1445d537d4c6cd0c1e87851a6cd4e8bfad1ee6
MD5 54a045da96b97accbb49131ea1850846
BLAKE2b-256 e1f74057206beda45bc4eface7073612eb96ebf823e497547a6bb62a6c429586

See more details on using hashes here.

Release history Release notifications | RSS feed

0.9.6

2 files

0.9.5

2 files

0.9.4

2 files

0.9.3

2 files

This release

0.9.2 This release

2 files

0.9.1

2 files

0.9.0

2 files

0.8.0

2 files

0.7.0

2 files

0.6.0

2 files

0.5.0

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

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