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.114.tar.gz (69.4 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.114-py3-none-any.whl (76.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: alloy_runtime_sdk-0.2.114.tar.gz
  • Upload date:
  • Size: 69.4 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.114.tar.gz
Algorithm Hash digest
SHA256 3cedd0a0a80ee98fb671c7c409aa01c4f4410917ceeb7620d7c8217ed8bbc640
MD5 761eb69261d416f0356963c78870ee29
BLAKE2b-256 69f88ebcc79e2345f90d52544f1a24e5cf943b32a9baffee1c0320e683d1383e

See more details on using hashes here.

Provenance

The following attestation bundles were made for alloy_runtime_sdk-0.2.114.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.114-py3-none-any.whl.

File metadata

File hashes

Hashes for alloy_runtime_sdk-0.2.114-py3-none-any.whl
Algorithm Hash digest
SHA256 afb35be60ddb65a954d59d74e6e3a0c19b04754d391e048ab4d4197ffc9af0c0
MD5 1170ee152b4925baa62bc5502f3a3b5e
BLAKE2b-256 cd3000ce6f5a62e3a8bcf7ca1a2a4d77b464d60de19ddf7938b73871d631f805

See more details on using hashes here.

Provenance

The following attestation bundles were made for alloy_runtime_sdk-0.2.114-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