Skip to main content

Python SDK for Alloy Runtime - client, pipeline, and logging

Project description

alloy-runtime-sdk

Python SDK for Alloy Runtime.

Install

pip install alloy-runtime-sdk

Quick start

from alloy_runtime_sdk.api_client.client import ApiClient

async def main() -> None:
    async with ApiClient(
        base_url="https://your-alloy-runtime-host",
        api_key="your_api_key",
    ) as client:
        models = await client.list_models()
        print(models)

What it includes

  • Authenticated HTTP client methods for the Alloy Runtime API.
  • Pipeline runtime helpers for Python-based pipeline steps.
  • Structured logging helpers used by runtime integrations.

Logging

SDK logging is pretty, human-readable text by default:

from alloy_runtime_sdk.logging.config import LogConfig, LogLevel, configure, get_logger

configure(LogConfig(level=LogLevel.DEBUG))
logger = get_logger()

Use JSON Lines explicitly for files, CI, and log shippers:

from alloy_runtime_sdk.logging.config import LogConfig, LogFormat, configure

configure(LogConfig(format=LogFormat.JSONL, output_file="logs/sdk.jsonl"))

SDK logs stay compact: the logging formatter does not add default environment, service, resource, or process-level session_id fields, and successful HTTP responses are not logged. HTTP response logs are emitted only for error responses.

JSON to Markdown helper

Convert JSON-like Python values into LLM-readable Markdown prompt context:

from alloy_runtime_sdk.markdown import json_to_markdown

markdown = json_to_markdown(
    {"customer": {"name": "Ada", "plan": "enterprise"}},
    title="Customer Context",
)

Nested dictionaries become Markdown headings, leaves become key/value lines, and list-of-dictionary values can render as Markdown tables. See docs/sdk/json_to_markdown.md for options.

Local pipeline runner

The SDK supports both Hosted execution and SDK local execution for pipelines.

Use python -m alloy_runtime_sdk.pipeline.local_runner to run a local pipeline module against a hosted Alloy Runtime, or call run_local_pipeline() directly from Python. Local runs return both the stable pipeline_execution_id and active attempt_id/epoch; rerun with the same execution ID to continue the logical workflow.

See docs/pipelines/local_testing.md for the full workflow and examples.

Inspect compact execution live state without querying the database:

execution_state = await client.get_execution_live_state(execution_id)
pipeline_state = await client.get_pipeline_execution_live_state(
    pipeline_id,
    execution_id,
)

Use these methods for current status/progress polling. Use get_execution(...) for the durable model-execution transcript and get_pipeline_execution(...) for durable pipeline result, stdout/stderr, failure context, and generation-step detail.

Hosted pipeline executions can be cancelled through the API client:

await client.cancel_pipeline_execution(pipeline_id, execution_id)

Cancellation marks Alloy's execution record cancelled first; hosted provider shutdown and child generation cancellation are handled by the server best-effort.

The SDK depends on alloy-runtime-types, which is published separately for stable, versioned cross-package compatibility.

Hard-cut API migration

Use this SDK with the matching alloy-runtime-types version. Generation requests now use canonical model / agent_id, flat model_options, flat extra_headers, and canonical result.model response identity. See docs/generate/hardcut_migration.md before updating older SDK or pipeline code.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

alloy_runtime_sdk-0.2.107.tar.gz (68.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

alloy_runtime_sdk-0.2.107-py3-none-any.whl (75.3 kB view details)

Uploaded Python 3

File details

Details for the file alloy_runtime_sdk-0.2.107.tar.gz.

File metadata

  • Download URL: alloy_runtime_sdk-0.2.107.tar.gz
  • Upload date:
  • Size: 68.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for alloy_runtime_sdk-0.2.107.tar.gz
Algorithm Hash digest
SHA256 4542dd28a319d0fd5cfba8cf8785a4ad97b4de7e992346cbe8fc4d5b6ed600e4
MD5 415081978739a6a72b4ac3b5e01ee809
BLAKE2b-256 d5d7539650d56c666b9f089e98e7b753395a5e6263c63c1c47659799760b4541

See more details on using hashes here.

Provenance

The following attestation bundles were made for alloy_runtime_sdk-0.2.107.tar.gz:

Publisher: publish-python-packages.yml on alloy-runtime/alloy-runtime

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file alloy_runtime_sdk-0.2.107-py3-none-any.whl.

File metadata

File hashes

Hashes for alloy_runtime_sdk-0.2.107-py3-none-any.whl
Algorithm Hash digest
SHA256 aa1aad496471c14a2f0a2bf32f4c4cd609ae956ddae6b26123ef2a5aeb3e8721
MD5 a9c0299b6ccc5bed2e22ad38b2e6ac57
BLAKE2b-256 d2a1a32718f3cf1e3497658e8409a566fdaddb975eaf7ddc65b5acc0313d1d34

See more details on using hashes here.

Provenance

The following attestation bundles were made for alloy_runtime_sdk-0.2.107-py3-none-any.whl:

Publisher: publish-python-packages.yml on alloy-runtime/alloy-runtime

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page