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.8.0.tar.gz (149.0 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.8.0-py3-none-any.whl (65.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for taguru-0.8.0.tar.gz
Algorithm Hash digest
SHA256 edd881ed0a1c6729e6d2f8e6a5ec4d9abecdf6eb2fe11aa35ccc9a0e39158e46
MD5 441d67111e5d5c07ab064832e7f0217d
BLAKE2b-256 834f42e0ec85b122adb3666b7d39ad496134e1d51d9eedf9d5acddecd67b88a7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: taguru-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 65.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.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7505f4b682526b5c5caf91e4a4d8011cc94a518556ecbdf87645727f4bd1659b
MD5 20ce343614228a50265f316232af7ec1
BLAKE2b-256 9f9f47190c65ca723e286b8310f9ee48086895abfac1d300c55c5701a478bfa0

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

0.9.2

2 files

0.9.1

2 files

0.9.0

2 files

This release

0.8.0 This release

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