Python SDK for ARK - Agentic Runtime for Kubernetes
Project description
ARK Python SDK
Python SDK for ARK - Agentic Runtime for Kubernetes. This SDK is part of the open source Agents at Scale ARK project.
This package provides Python bindings for managing ARK agents, models, queries, and other resources in Kubernetes. It is partly generated from the ARK Custom Resource Definitions (CRDs), with additional capabilities layered on top.
Installation
pip install ark-sdk
Usage
Kubernetes Resource Management
from ark_sdk import ARKClientV1alpha1
from ark_sdk.models.agent_v1alpha1 import AgentV1alpha1, AgentV1alpha1Spec
# Initialize client
client = ARKClientV1alpha1(namespace="default")
# Create agent
agent = AgentV1alpha1(
metadata={"name": "my-agent"},
spec=AgentV1alpha1Spec(prompt="Hello", modelRef={"name": "gpt-4"})
)
created = client.agents.create(agent)
# Get, update, delete
agent = client.agents.get("my-agent")
agent.spec.prompt = "Updated"
client.agents.update(agent)
client.agents.delete("my-agent")
Execution Engine Development
The SDK now includes utilities for building execution engines:
from ark_sdk import BaseExecutor, ExecutorApp, ExecutionEngineRequest, Message
class MyExecutor(BaseExecutor):
def __init__(self):
super().__init__("MyEngine")
async def execute_agent(self, request: ExecutionEngineRequest) -> List[Message]:
# Your execution logic here
return [Message(role="assistant", content="Hello from my engine!")]
# Create and run the executor
executor = MyExecutor()
app = ExecutorApp(executor, "MyEngine")
app.run(host="0.0.0.0", port=8000)
Async Operations
# List agents asynchronously
agents = await client.agents.a_list()
# Create query asynchronously
query = await client.queries.a_create(QueryV1alpha1(...))
Execution Engine Types
The SDK provides common types for execution engines:
ExecutionEngineRequest- Request format for agent executionExecutionEngineResponse- Response format from execution enginesAgentConfig- Agent configuration structureMessage- Chat message formatBaseExecutor- Abstract base class for execution enginesExecutorApp- FastAPI application setup for execution engines
Documentation
For full documentation and examples, visit the ARK project repository.
Requirements
- Python 3.9+
- Kubernetes cluster with ARK installed
- FastAPI and uvicorn (for execution engine development)
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 Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ark_sdk-0.1.42-py3-none-any.whl.
File metadata
- Download URL: ark_sdk-0.1.42-py3-none-any.whl
- Upload date:
- Size: 197.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bbeb9d714e98530e84b87d4f7e3e3210c21f323bbb8c2866c56528c54a723714
|
|
| MD5 |
fe75a52a5024c051b13598dd5ef68900
|
|
| BLAKE2b-256 |
639ae8f323118cd3204e76cca7d2507fe2a77b348c6ecdd27ab3413f038fc575
|