Skip to main content

cohere-tng

Python SDK for TNG — drop-in OHTTP encryption for httpx with TEE attestation verification. Built as a native Rust extension via PyO3.

Install

pip install cohere-tng

Usage

Sync

import httpx
import cohere_tng

transport = cohere_tng.Transport(verify={
    "model": "passport",
    "as_provider": "ita",
    "ita_jwks_addr": "https://portal.trustauthority.intel.com",
    "policy_ids": ["my-policy"],
})

with httpx.Client(transport=transport) as client:
    resp = client.get("https://api.example.com/v1/chat")
    print(resp.json())

    # Attestation token is available as a response header
    token = resp.headers.get("x-tng-attestation-token")

Async

import httpx
import cohere_tng

transport = cohere_tng.AsyncTransport(verify={
    "model": "passport",
    "as_provider": "ita",
    "ita_jwks_addr": "https://portal.trustauthority.intel.com",
    "policy_ids": ["my-policy"],
})

async with httpx.AsyncClient(transport=transport) as client:
    resp = await client.get("https://api.example.com/v1/chat")
    print(resp.json())

Response streaming

with httpx.Client(transport=transport) as client:
    with client.stream("POST", url, json=payload) as resp:
        for chunk in resp.iter_bytes():
            process(chunk)

Request streaming

Request bodies provided as generators are streamed through OHTTP without buffering the entire payload in memory:

def audio_chunks():
    with open("recording.wav", "rb") as f:
        while chunk := f.read(8192):
            yield chunk

with httpx.Client(transport=transport) as client:
    resp = client.post(url, content=audio_chunks())

Configuration

Both verify and ohttp follow the same schema as TNG's configuration.

  • verify (required) — Attestation verification config dict. Pass None to explicitly disable verification — not recommended for production.
  • ohttp (optional) — OHTTP config dict (forward_headers, tls_ca_certs, etc.).

Development

python3 -m venv .venv
.venv/bin/pip install maturin httpx
.venv/bin/maturin develop
.venv/bin/pytest tests/

How it works

The cohere-tng package embeds TNG's Rust OHTTP implementation directly into the Python process via PyO3. When you make a request through cohere_tng.Transport:

  1. The TEE running the TNG egress is verified via remote attestation (e.g. Intel Trust Authority) before any data is sent.
  2. The request is encrypted using OHTTP (Oblivious HTTP) in-process.
  3. The encrypted payload is sent to the TNG egress inside the verified TEE.
  4. The egress decrypts and forwards the request to the actual backend.
  5. The response follows the reverse path, decrypted in-process before being returned to httpx. The attestation token is included as an x-tng-attestation-token response header.

Both request and response bodies are streamed — large payloads are never fully buffered in memory.

Acknowledgements

cohere-ai/tng is a fork of inclavare-containers/tng. Licensed under Apache-2.0.

Metadata

Release files for cohere-tng 0.7.0

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

Built distributions (wheels)

Table of built distributions (wheels) for cohere-tng 0.7.0
File
cohere_tng-0.7.0-cp38-abi3-manylinux_2_28_aarch64.whl CPython 3.8 abi3 Linux glibc 2.28+ ARM64 Details
cohere_tng-0.7.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 abi3 Linux glibc 2.17+ x86-64 Details
cohere_tng-0.7.0-cp38-abi3-macosx_11_0_arm64.whl CPython 3.8 abi3 macOS 11.0+ ARM64 Details
cohere_tng-0.7.0-cp38-abi3-macosx_10_12_x86_64.whl CPython 3.8 abi3 macOS 10.12+ x86-64 Details

Total release size: 25.0 MB

Release files / cohere_tng-0.7.0-cp38-abi3-manylinux_2_28_aarch64.whl

Download URL cohere_tng-0.7.0-cp38-abi3-manylinux_2_28_aarch64.whl
Size 6.5 MB
Tags CPython 3.8 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
5de312c5297d51b4001cd4e6437def20130d5f212fa138119ff84080d9d59966
BLAKE2b-256 checksum
How to use checksums
c74a9b339f837ca708943bda7ded6870e724c1ca1904286c8d8d9e0cdec90fb3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 20, 2026.

Transparency log

Release files / cohere_tng-0.7.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL cohere_tng-0.7.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 6.6 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
24bbac6dfad1b2d97845cfc10a79744d080a2ad79fe7e44ae0f5848ff48aed63
BLAKE2b-256 checksum
How to use checksums
85d992d6c19f2b8b3524a59a9baf7491606e4e1b9b4031f02e7bed6e85364f4b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 20, 2026.

Transparency log

Release files / cohere_tng-0.7.0-cp38-abi3-macosx_11_0_arm64.whl

Download URL cohere_tng-0.7.0-cp38-abi3-macosx_11_0_arm64.whl
Size 5.9 MB
Tags CPython 3.8 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
7e5d39293eee921b0d810ebd64f65a0e193ded96bc8e75bd529c257e8fe486d4
BLAKE2b-256 checksum
How to use checksums
cb4127d10ddd6620e6d3f4568daafedbb5452e9033d2265669e7bb4f112de950
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 20, 2026.

Transparency log

Release files / cohere_tng-0.7.0-cp38-abi3-macosx_10_12_x86_64.whl

Download URL cohere_tng-0.7.0-cp38-abi3-macosx_10_12_x86_64.whl
Size 6.0 MB
Tags CPython 3.8 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
4c4f0cfd03b8a74189f94385f5551ba8a9102fbfe33acd99a39951226462b9ae
BLAKE2b-256 checksum
How to use checksums
df983ba0f39c30f8bd461d0fbc7838c60a895b50a41f7f80b9cd79236bc4e200
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 20, 2026.

Transparency log

Release history Release notifications | RSS feed

1.0.0

4 release files

This release

0.7.0 This release

4 release files

0.6.0

4 release files

0.5.0

4 release 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