Skip to main content

ntropi

CI Python Types License

Python SDK and runtime for the Entropi stack. One import to run and operate the whole stack from Python — a full dev tool to develop, teach, trace, and connect to the nbot ecosystem.

Component What it is In ntropi
nbot the cognitive-compute node — tasks, agents, tools, satellites, the model pool, RL, mesh, KB, blueprints (orchestration is one layer, not the whole) ntropi.nbot
Horizon eval / observability — suites, datasets, RL train, traces, judge; live web UI ntropi.horizon
NBotWeb the chat-app gateway — integrations, auth/RBAC — for building chat apps ntropi.web

It wraps the full surface — the HTTP API, every slash/utility command, config, and process lifecycle — with typed models, sync and async clients, and a runtime that can launch the services (or connect to running ones).

Quickstart

import ntropi

# develop: define a (sovereign) node's pool + config from Python — no TOML editing
cfg = ntropi.nbot.Config.create("/my/project", node_id="rtx")
cfg.pool.add("gemma", endpoint="https://api.infercom.ai/v1",
             model="gemma-4-31B-it", api_key="env:INFERCOM_APIKEY",
             modalities=["image_in"])
cfg.set_network(encrypt=True).set_rl("thompson")
cfg.set_security(allowed_paths=["/data"])          # jurisdiction / data-in-place
cfg.save()

# connect to a running node (auto-discovers .nconfig/control.json)
c = ntropi.nbot.Client(project="/my/project")

for m in c.pool.list():
    print(m.id, m.capacity, m.modalities)

# trace: run and observe a turn as typed events
for ev in c.tasks.stream("Plot the data in report.csv", new_session=True):
    if ev.is_token:
        print(ev.text, end="")

# teach: freeze learning for a clean eval, inspect the policy, give feedback
c.rl.set_learning(False)
print(c.routing.policies()["active"])
c.rl.feedback("s-123", "positive")

# connect: blueprints, connectors, mesh — all typed
c.blueprints.run("kyc-check", {"customer_id": "42"})
print(c.connectors.list())

# every slash-command is a typed method (a bare string is a message)
print(c.command.pool())
print(c.command.rl())

# drop-in OpenAI-compatible facade
c.chat.completions.create(model="nbot", messages=[{"role": "user", "content": "hi"}])

Everything above has an async twin with an identical surface — for all three components:

async with ntropi.nbot.AsyncClient(project="/my/project") as ac:
    await ac.tasks.submit("hello")
    print(await ac.rl.learning())

async with ntropi.horizon.AsyncClient("http://127.0.0.1:8848") as ah:
    job = await ah.rl.env_train(prompt="do X", iterations=5)
    async for point in job.stream():
        print(point["reward"])

Launch the stack from Python

# start nbot (+ Horizon UI, + the NBotWeb chat gateway) for a project
stack = ntropi.launch("/my/project", with_web=True)
print(stack.nbot.health())
# … Horizon is live on :8848, the web gateway on :8080 …
stack.close()   # stops only what it started

Build a chat app on the gateway

w = ntropi.web.Client("http://127.0.0.1:8080")
w.tasks.submit("summarise the attached report", new_session=True)
key = w.admin.keys.create("mobile-app")     # secret returned once
w.admin.users.create("dev@team.com", role="user", projects=["/my/project"])

From the shell (pip install 'ntropi[cli]')

ntropi launch ./my-project --web
ntropi pool --project ./my-project
ntropi chat "summarise report.csv" --project ./my-project
ntropi rl-learning off --project ./my-project      # freeze for eval

Install

pip install ntropi

Extras: "ntropi[cli]" adds the ntropi command. The gateway extra pulls in nbot-gateway, which is not published yet, so leave it off until it is.

The same wheels are mirrored on the platform's own index for air-gapped installs: pip install --extra-index-url https://platform.entropi.ai/pip/ ntropi.

Install (dev)

python -m venv .venv && . .venv/bin/activate
pip install -e ".[dev,cli]"
pytest -q

Requires Python ≥ 3.10. ntropi drives the nbot / nbot-horizon / nbot-web binaries — it does not bundle them; install them and put them on PATH (or set NTROPI_NBOT_BIN / NTROPI_HORIZON_BIN / NTROPI_WEB_BIN).

Status

0.5.0 — full coverage across the stack:

  • nbot — pool, projects, sessions, tasks, chat (+ OpenAI facade), models, the typed command namespace, and the structured surface (node RL, blueprints, kb, research, artifacts, prompts, notes, connectors, routing, agents, satellites, trace, files, manifesto).
  • Horizon — suites, datasets, RL train/env-train (Job), sessions/traces.
  • NBotWeb — the full gateway: auth, tasks/chat, read surfaces, adapters, admin (keys/users/settings), MCP, proxy.
  • Sync and async everywhere; typed Config; runtime launch; a ntropi CLI.

See CHANGELOG.md and docs/plans.

Metadata

Release files for ntropi 0.8.0

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

Source distribution (sdist)

Source distribution for ntropi 0.8.0
File Size Uploaded Provenance Actions
ntropi-0.8.0.tar.gz 80.5 kB With provenance Details for ntropi-0.8.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for ntropi 0.8.0
File Interpreter ABI Platform Actions
ntropi-0.8.0-py3-none-any.whl Python 3 none any Details for ntropi-0.8.0-py3-none-any.whl

Total release size: 134.3 kB

Release files / ntropi-0.8.0.tar.gz

Download URL ntropi-0.8.0.tar.gz
Size 80.5 kB
Tags Source
SHA-256 checksum
How to use checksums
34d3b5065302eeafbf1b593311dd106fa69c39c9de4118fa7e165373133aa08a
BLAKE2b-256 checksum
How to use checksums
5c64596f49fd7b79f96081b213e8b950bfd8f5ecb863930c5191239f41e625c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 2, 2026.

Transparency log

Release files / ntropi-0.8.0-py3-none-any.whl

Download URL ntropi-0.8.0-py3-none-any.whl
Size 53.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a277edb4b09bedd06945301866499b392dd000974a5bddac69036ffb7ac2c1ab
BLAKE2b-256 checksum
How to use checksums
20ca91b5a4323a94c63b1e3a7ada73e5daa7584783310f4beebcea2ed64c1f50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 2, 2026.

Transparency log

Security for ntropi 0.8.0

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 ntropi-0.8.0.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 Nov 2, 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.8.0 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