Metadata-Version: 2.4
Name: swiss-ai-hub-core
Version: 0.291.5
Summary: Foundational shared library for the Swiss AI Hub platform: event-driven Swiss AI Agent Protocol, auth, and AI/ML utilities.
Author: Joel Barmettler, Marius Högger, Michèle Fundneider, Thomas Mannhart, Noah Hermann
Author-email: Joel Barmettler <joel.barmettler@bbv.ch>, Marius Högger <marius.hoegger@bbv.ch>, Michèle Fundneider <michele.fundneider@bbv.ch>, Thomas Mannhart <thomas.mannhart@bbv.ch>, Noah Hermann <noah.hermann@bbv.ch>
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: mongoengine>=0.29.1
Requires-Dist: llama-index-core>=0.14.12,<0.15
Requires-Dist: azure-ai-documentintelligence>=1.0.2
Requires-Dist: pydantic-settings>=2.7.0
Requires-Dist: python-i18n>=0.3.9
Requires-Dist: nats-py>=2.9.0
Requires-Dist: pyyaml>=6.0.2
Requires-Dist: llama-index-vector-stores-milvus>=0.9.4
Requires-Dist: fsspec>=2024.10.0
Requires-Dist: llama-index-readers-file>=0.5.6
Requires-Dist: colorlog>=6.9.0
Requires-Dist: openinference-instrumentation>=0.1.38
Requires-Dist: openinference-instrumentation-llama-index>=4.2.1
Requires-Dist: openinference-semantic-conventions>=0.1.21
Requires-Dist: opentelemetry-api>=1.39.1
Requires-Dist: opentelemetry-instrumentation>=0.60b1
Requires-Dist: opentelemetry-sdk>=1.39.1
Requires-Dist: opentelemetry-semantic-conventions>=0.60b1
Requires-Dist: opentelemetry-exporter-otlp>=1.39.1
Requires-Dist: pydantic>=2.10.3
Requires-Dist: llama-index-storage-docstore-mongodb>=0.4.1
Requires-Dist: llama-index-llms-openai-like>=0.5.3
Requires-Dist: transformers>=4.57.3
Requires-Dist: fastapi>=0.128.0
Requires-Dist: azure-storage-file-datalake>=12.22.0
Requires-Dist: adlfs>=2025.8.0
Requires-Dist: redis>=5.2.1
Requires-Dist: openai>=1.76.2
Requires-Dist: cachetools>=5.5.2
Requires-Dist: markitdown[docx,outlook,pptx,xlsx]>=0.1.4
Requires-Dist: boto3>=1.41.5
Requires-Dist: llama-index-embeddings-openai-like>=0.2.2
Requires-Dist: opentelemetry-exporter-otlp-proto-grpc>=1.39.1
Requires-Dist: opentelemetry-instrumentation-httpx>=0.60b1
Requires-Dist: opentelemetry-instrumentation-requests>=0.60b1
Requires-Dist: opentelemetry-instrumentation-pymongo>=0.60b1
Requires-Dist: opentelemetry-instrumentation-jinja2>=0.60b1
Requires-Dist: opentelemetry-instrumentation-asyncio>=0.60b1
Requires-Dist: opentelemetry-instrumentation-redis>=0.60b1
Requires-Dist: opentelemetry-instrumentation-botocore>=0.60b1
Requires-Dist: opentelemetry-instrumentation-milvus>=0.47.0
Requires-Dist: opentelemetry-instrumentation-logging>=0.60b1
Requires-Dist: opentelemetry-instrumentation-aiohttp-client>=0.60b1
Requires-Dist: llama-index-postprocessor-cohere-rerank>=0.5.1
Requires-Dist: lxml>=5.4.0
Requires-Dist: html5lib>=1.1
Requires-Dist: pypdf>=6.1.3
Requires-Dist: boto3-stubs[s3]>=1.42.30
Requires-Dist: langfuse>=3.14.1
Requires-Dist: s3fs>=2024.10.0,<2025.0.0
Requires-Dist: tabulate>=0.9.0
Requires-Dist: pyjwt>=2.11.0
Requires-Dist: blinker>=1.9.0
Requires-Dist: scim2-client>=0.7.5
Requires-Dist: python-keycloak>=7.1.1
Requires-Dist: apprise>=1.9.9
Requires-Dist: pillow>=12.1.1
Requires-Dist: imagehash>=4.3.2
Requires-Dist: mem0ai>=1.0.2,<2
Requires-Dist: langchain-neo4j>=0.4.0
Requires-Dist: neo4j>=5.23.1
Requires-Dist: rank-bm25>=0.2.2
Requires-Dist: starlette>=1.0.1
Requires-Python: >=3.13, <3.14
Project-URL: Homepage, https://github.com/bbvch-ai/aihub-core
Project-URL: Repository, https://github.com/bbvch-ai/aihub-core
Project-URL: Documentation, https://bbvch-ai.github.io/aihub-core/
Project-URL: Issues, https://github.com/bbvch-ai/aihub-core/issues
Description-Content-Type: text/markdown

# Swiss AI Hub Core

Foundational shared library for the [Swiss AI Hub](https://github.com/bbvch-ai/aihub-core) platform — an open-source,
self-hosted AI platform for enterprises. `swiss-ai-hub-core` provides the infrastructure every other Swiss AI Hub
package builds on:

- **Swiss AI Agent Protocol** — event-driven messaging over NATS with a strict Control Event (workflow) vs Display Event
  (observability) separation, hierarchical topic scoping, publishers/subscribers, and RPC.
- **Authentication & authorization** — identity models, Keycloak/OIDC handlers, and a hierarchical permission engine.
- **AI/ML utilities** — retrieval, reranking, guards, memory, document parsing, and the Form duality system.

## Installation

```bash
pip install swiss-ai-hub-core
```

## Usage

```python
from swiss_ai_hub.core.events.agent import StartEvent, ChunkEvent
from swiss_ai_hub.core.form import Form
```

`swiss_ai_hub` is a
[native namespace package](https://packaging.python.org/en/latest/guides/packaging-namespace-packages/). Other
distributions (`swiss-ai-hub-agent`, `swiss-ai-hub-api`, …) contribute sibling modules under the same `swiss_ai_hub.*`
namespace.

## Links

- Source & issues: https://github.com/bbvch-ai/aihub-core
- Documentation: https://bbvch-ai.github.io/aihub-core/

## License

Apache-2.0
