Metadata-Version: 2.4
Name: inferencekey
Version: 0.260703.2043
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Summary: Official InferenceKey SDK — declare AI workloads in code, ensure they exist, and call the resulting OpenAI-compatible endpoints.
Keywords: inferencekey,ai,llm,inference,openai-compatible,sdk
Author-email: InferenceKey <dev@inferencekey.com>
License-Expression: Apache-2.0
Requires-Python: >=3.9
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Documentation, https://docs.inferencekey.com
Project-URL: Homepage, https://docs.inferencekey.com
Project-URL: Issues, https://github.com/inferencekey/inferencekey-sdk/issues
Project-URL: Repository, https://github.com/inferencekey/inferencekey-sdk

# inferencekey (Python)

Official Python SDK for the **InferenceKey** platform — a thin, typed layer over
the shared Rust core (`inferencekey-core`).

Declare AI workloads in code, ensure they exist on the platform, and call the
resulting OpenAI-compatible endpoints.

```python
from inferencekey import ManagementClient, DataClient, WorkloadSpec, Backend

mgmt = ManagementClient.from_env(project="acme")          # INFERENCEKEY_SDK_TOKEN
ref = mgmt.ensure(WorkloadSpec(
    name="support-bot", slug="support-bot",
    model="meta-llama/Llama-3.1-8B-Instruct", backend=Backend.VLLM,
    command="vllm serve meta-llama/Llama-3.1-8B-Instruct --max-model-len 8192",
))

data = DataClient.from_env(project="acme")
out = data.endpoint(ref.workload_slug, api_key="ik_live_...").generate_text(prompt="Hola")
print(out.text)
```

Two tokens, two clients (least privilege): `ik_sdk_` provisions (control plane);
`ik_live_` calls inference (data plane, per workload). Full docs at
**docs.inferencekey.com**.

License: Apache-2.0.

