Metadata-Version: 2.4
Name: aikernel-providers
Version: 0.1.1
Summary: Python wrapper for AIKernel.Providers v0.1.1 official extension providers with bundled managed assemblies and pythonnet loading.
Author: Takuya Sogawa
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/AIKernel-NET/AIKernel.Providers
Project-URL: Repository, https://github.com/AIKernel-NET/AIKernel.Providers
Project-URL: Documentation, https://aikernel.net/reference/
Project-URL: Issues, https://github.com/AIKernel-NET/AIKernel.Providers/issues
Project-URL: Releases, https://github.com/AIKernel-NET/AIKernel.Providers/releases
Keywords: aikernel,providers,official-provider-set,openai,microsoft-ai,cuda,local-llm,semantic-runtime,managed-assemblies,pythonnet
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: pythonnet>=3.0.5
Provides-Extra: test
Requires-Dist: pytest>=9.0; extra == "test"

# aikernel-providers

[日本語](README-ja.md)

Official Python wrappers for AIKernel extension providers.

`aikernel-providers` exposes provider contract boundaries from the C#
AIKernel.Providers assemblies without re-implementing provider semantics in
Python.

## Import Surface

```python
from aikernel_providers import (
    ChatOpenAICapability,
    ChatOpenAIProvider,
    ChatOpenAISettings,
    ChatHistoryCapability,
    ChatHistoryProvider,
    ChatHistorySettings,
    CudaComputeCapability,
    CudaComputeProvider,
    CudaComputeSettings,
    DynamicPipelineCompilerCapability,
    DynamicPipelineCompilerProvider,
    DynamicPipelineCompilerSettings,
    LocalLlmCapability,
    LocalLlmProvider,
    LocalLlmSettings,
    MicrosoftAIProvider,
    MicrosoftAIProviderCapabilities,
    MicrosoftAIProviderOptions,
    CpuComputeProvider,
    standard_driver_contracts,
    provider_assemblies,
)
```

## Example

```python
from aikernel_providers import ChatOpenAICapability, provider_assemblies

capability = ChatOpenAICapability("openai.chat").to_contract()
print(capability.capability_id)
print(capability.provided_operations)

assemblies = provider_assemblies()
print(assemblies.is_complete())
```

The wheel bundles provider assemblies when built from the repository package
workflow. At runtime, pythonnet loads the managed assemblies and Python objects
delegate to the C# contract surface.

The Python package includes wrappers for the public Provider, Invoker,
Capability descriptor, Settings, MicrosoftAI option/capability/response mapping
surfaces, and `AIKernel.Providers.Standard` OS driver descriptors. C# hosting-
specific extension methods remain C# APIs, while the wheel still bundles their
assembly dependencies so the managed runtime can resolve them on Windows,
Linux, and macOS.

## Included Providers

- ChatOpenAIProvider
- ChatHistoryProvider
- CudaComputeProvider
- DynamicPipelineCompilerProvider
- LocalLlmProvider
- AIKernel.Providers.MicrosoftAI
- AIKernel.Providers.Standard

MicrosoftAI support is included because ownership of that provider moved from
AIKernel.Core to AIKernel.Providers for the 0.1.1 release.

See the repository documentation for the full package scope:

- `docs/python/index.md`
- `docs/providers/index.md`
