Skip to main content

kaneme

from kaneme import KanemeClient

kaneme = KanemeClient(api_key="kaneme_…")
verdict = kaneme.verify_authorship(text="…", question="q1")

Sur Q2, la réponse contient aussi explanation avec les écarts observés de cadence, registre, structure et lexique. Ils éclairent le verdict sans prétendre décomposer la probabilité produite par la couche profonde :

q2 = kaneme.verify_authorship(text="…", question="q2", profile_id=profile_id)
for factor in q2.get("explanation", {}).get("factors", []):
    print(factor["label"], factor["status"], factor["detail"])

Le SDK n’ajoute aucune dépendance. Les méthodes d’écriture acceptent idempotency_key. Les erreurs lèvent KanemeAPIError.

Sécurité du transport

Depuis la version 1.16.1, le client impose HTTPS hors développement local, refuse toute redirection vers une autre origine et coupe les réponses trop volumineuses. Ces protections empêchent qu’une redirection malveillante reçoive la clé API et qu’une réponse incontrôlée épuise la mémoire du processus :

kaneme = KanemeClient(
    api_key="kaneme_…",
    timeout=15,
    max_response_bytes=4 * 1024 * 1024,
)

La limite par défaut est de 8 Mio (64 Mio au maximum). Une redirection refusée lève KanemeRedirectError ; un dépassement lève KanemeResponseTooLarge.

Cadence et identifiant de requête

Chaque réponse — succès compris — porte la cadence appliquée. on_response la donne, sur les appels qui marchent comme sur les refus :

def tracer(meta):
    if meta.rate_limit.remaining is not None and meta.rate_limit.remaining < 5:
        time.sleep(1)          # ralentir AVANT le refus
    print(meta.request_id)     # à journaliser : c'est ce qu'on te demandera

kaneme = KanemeClient(api_key="kaneme_…", on_response=tracer)

Retry-After ne part que sur un 429, et se lit alors sur l’erreur : error.metadata.retry_after. Sur un succès il vaut None — un ordre d’attendre n’a pas de sens sur un appel qui a réussi.

Certificats et cycle de vie

Une clé API dotée explicitement de voice:certify peut préparer puis publier un certificat. Les liens de page, JSON et badge sont utilisables sans ouvrir le compte Kaneme :

preparation = kaneme.prepare_certificate(document_id, display_name="Alice")
# En OAuth, ouvrir preparation["approvalUrl"] et attendre la validation humaine.
certificate = kaneme.publish_certificate(
    preparation["approvalId"],
    idempotency_key=f"certificate-{preparation['approvalId']}",
)
print(certificate["certificateUrl"], certificate["verificationUrl"], certificate["badgeSvgUrl"])

list_trash, list_project_contexts et manage_lifecycle couvrent la corbeille, la restauration, l’archivage, l’expiration et la révocation. Il n’y a aucune purge définitive dans le SDK ; utilisez dry_run=True avant une mutation sensible et limitez chaque lot à 10 éléments.

Release files for kaneme 2.5.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 kaneme 2.5.0
File Size Uploaded
kaneme-2.5.0.tar.gz 39.3 kB Details

Built distribution (wheel)

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

Total release size: 74.4 kB

Release files / kaneme-2.5.0.tar.gz

Download URL kaneme-2.5.0.tar.gz
Size 39.3 kB
Tags Source
SHA-256 checksum
How to use checksums
c0c6ef2d5f1f06c5b835ede6e18366546bd092bbae7d34fb3abeb6a4a633f419
BLAKE2b-256 checksum
How to use checksums
dc3621681310d66dd5ea00f316e490b2a358f2f9652f7eb920d33ef088f1d5a4
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 Sep 8, 2026.

Transparency log

Release files / kaneme-2.5.0-py3-none-any.whl

Download URL kaneme-2.5.0-py3-none-any.whl
Size 35.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1237e783d2eddb9750bed5e95d4254e422f56e73321d5dcd6ff723febb7bc20e
BLAKE2b-256 checksum
How to use checksums
b8571d81e032d0a40a617927ce81b4cd1c6e89eb557d97c20d7a43a74565585a
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 Sep 8, 2026.

Transparency log

Release history Release notifications | RSS feed

2.10.0

2 release files

This release

2.5.0 This release

2 release files

1.16.1

2 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