Metadata-Version: 2.4
Name: turboprivate-ai
Version: 0.1.1
Summary: Unified platform for self-hosted LLM inference + enterprise safety governance
Project-URL: Homepage, https://github.com/Kubenew/turboprivate-ai
Project-URL: Source, https://github.com/Kubenew/turboprivate-ai
Project-URL: Issues, https://github.com/Kubenew/turboprivate-ai/issues
Author: TurboPrivate AI
License: MIT
Requires-Python: >=3.11
Requires-Dist: click>=8.1.0
Requires-Dist: fastapi>=0.111.0
Requires-Dist: httpx>=0.27.0
Requires-Dist: pydantic-settings>=2.3.0
Requires-Dist: pydantic>=2.7.0
Requires-Dist: pyyaml>=6.0.1
Requires-Dist: rich>=13.7.0
Requires-Dist: uvicorn[standard]>=0.29.0
Provides-Extra: all
Requires-Dist: autoawq>=0.2.0; extra == 'all'
Requires-Dist: beautifulsoup4>=4.12.0; extra == 'all'
Requires-Dist: celery>=5.4.0; extra == 'all'
Requires-Dist: chromadb>=0.5.0; extra == 'all'
Requires-Dist: helm-sdk>=0.1.0; extra == 'all'
Requires-Dist: httpx>=0.27.0; extra == 'all'
Requires-Dist: kubernetes>=30.0.0; extra == 'all'
Requires-Dist: opentelemetry-api>=1.25.0; extra == 'all'
Requires-Dist: opentelemetry-instrumentation-fastapi>=0.46b0; extra == 'all'
Requires-Dist: opentelemetry-sdk>=1.25.0; extra == 'all'
Requires-Dist: outlines>=0.0.40; extra == 'all'
Requires-Dist: passlib[bcrypt]>=1.7.4; extra == 'all'
Requires-Dist: pdfplumber>=0.10.0; extra == 'all'
Requires-Dist: pgvector>=0.3.0; extra == 'all'
Requires-Dist: prometheus-client>=0.20.0; extra == 'all'
Requires-Dist: pypdf>=4.2.0; extra == 'all'
Requires-Dist: pytest-asyncio>=0.24.0; extra == 'all'
Requires-Dist: pytest-localserver>=0.9.0; extra == 'all'
Requires-Dist: pytest>=8.0; extra == 'all'
Requires-Dist: python-docx>=1.1.0; extra == 'all'
Requires-Dist: python-jose[cryptography]>=3.3.0; extra == 'all'
Requires-Dist: python-terraform>=0.10.1; extra == 'all'
Requires-Dist: redis>=5.0.0; extra == 'all'
Requires-Dist: ruff>=0.1; extra == 'all'
Requires-Dist: scikit-learn>=1.5.0; extra == 'all'
Requires-Dist: sentence-transformers>=3.0.0; extra == 'all'
Requires-Dist: torch>=2.3.0; extra == 'all'
Requires-Dist: transformers>=4.41.0; extra == 'all'
Requires-Dist: vllm>=0.5.0; extra == 'all'
Provides-Extra: auth
Requires-Dist: passlib[bcrypt]>=1.7.4; extra == 'auth'
Requires-Dist: python-jose[cryptography]>=3.3.0; extra == 'auth'
Provides-Extra: dev
Requires-Dist: httpx>=0.27.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.24.0; extra == 'dev'
Requires-Dist: pytest-localserver>=0.9.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.1; extra == 'dev'
Provides-Extra: inference
Requires-Dist: autoawq>=0.2.0; extra == 'inference'
Requires-Dist: outlines>=0.0.40; extra == 'inference'
Requires-Dist: torch>=2.3.0; extra == 'inference'
Requires-Dist: transformers>=4.41.0; extra == 'inference'
Requires-Dist: vllm>=0.5.0; extra == 'inference'
Provides-Extra: infra
Requires-Dist: helm-sdk>=0.1.0; extra == 'infra'
Requires-Dist: kubernetes>=30.0.0; extra == 'infra'
Requires-Dist: python-terraform>=0.10.1; extra == 'infra'
Provides-Extra: memory
Requires-Dist: beautifulsoup4>=4.12.0; extra == 'memory'
Requires-Dist: chromadb>=0.5.0; extra == 'memory'
Requires-Dist: pdfplumber>=0.10.0; extra == 'memory'
Requires-Dist: pypdf>=4.2.0; extra == 'memory'
Requires-Dist: python-docx>=1.1.0; extra == 'memory'
Requires-Dist: sentence-transformers>=3.0.0; extra == 'memory'
Provides-Extra: observability
Requires-Dist: opentelemetry-api>=1.25.0; extra == 'observability'
Requires-Dist: opentelemetry-instrumentation-fastapi>=0.46b0; extra == 'observability'
Requires-Dist: opentelemetry-sdk>=1.25.0; extra == 'observability'
Requires-Dist: prometheus-client>=0.20.0; extra == 'observability'
Provides-Extra: safety
Requires-Dist: pgvector>=0.3.0; extra == 'safety'
Requires-Dist: scikit-learn>=1.5.0; extra == 'safety'
Requires-Dist: sentence-transformers>=3.0.0; extra == 'safety'
Provides-Extra: worker
Requires-Dist: celery>=5.4.0; extra == 'worker'
Requires-Dist: redis>=5.0.0; extra == 'worker'
Description-Content-Type: text/markdown

# TurboPrivate AI

<p align="center">
  <a href="https://pypi.org/project/turboprivate-ai/"><img src="https://img.shields.io/pypi/v/turboprivate-ai?color=blue&logo=pypi" alt="PyPI version"></a>
  <a href="https://pypi.org/project/turboprivate-ai/"><img src="https://img.shields.io/pypi/pyversions/turboprivate-ai?logo=python" alt="Python versions"></a>
  <a href="https://github.com/Kubenew/turboprivate-ai/actions"><img src="https://img.shields.io/github/actions/workflow/status/Kubenew/turboprivate-ai/ci.yml?branch=main&logo=github" alt="CI status"></a>
  <a href="https://pypi.org/project/turboprivate-ai/"><img src="https://img.shields.io/pypi/dm/turboprivate-ai?logo=pypi" alt="Downloads"></a>
  <a href="https://github.com/Kubenew/turboprivate-ai/blob/main/LICENSE"><img src="https://img.shields.io/github/license/Kubenew/turboprivate-ai?logo=open-source-initiative" alt="License"></a>
  <a href="https://github.com/Kubenew/turboprivate-ai"><img src="https://img.shields.io/github/stars/Kubenew/turboprivate-ai?logo=github" alt="Stars"></a>
</p>

Unified platform for self-hosted LLM inference + enterprise safety governance.

## Features

- **Inference Engine** — vLLM/llama.cpp backends with auto hardware detection, TurboQuant-v3 INT4 quantization, QoS routing, dynamic batching, KV/prompt caching
- **Safety Gate** — Pre-flight and post-flight verification with 7 verifiers: anti-hacking, PII detection, prompt injection, overengineering, patch analysis, vulnerability scanning, hallucination scoring
- **Memory & RAG** — Vector store with cosine similarity search, multi-format document parser (PDF, DOCX, HTML, CSV, JSON, XML, YAML, Markdown)
- **Infrastructure** — K3s provisioning via SSH/Terraform, age-encrypted backups, Helm chart deployment
- **Frontend** — React SPA dashboard with model management, safety governance, memory search, and settings
- **Auth** — JWT-based authentication with RBAC
- **Observability** — Prometheus metrics, OpenTelemetry tracing, structured logging
- **CLI** — 20+ commands for model management, safety policies, infrastructure, and backups

## Quick Start

```bash
pip install turboprivate-ai
turbo serve --reload
```

## Changelog

### 0.1.1 (2026-05-11)

- Migrated to hatchling build system
- Fixed missing `InferenceEngine` import in `turbo.inference`
- Fixed `TracerProvider` bug in OpenTelemetry instrumentation
- Added structured logging to all exception handlers
- Consolidated Celery workers into shared `worker.celery_app`
- Added CI workflow with ruff linting + pytest
- Improved graceful shutdown (audit trail flush)
- Updated dependencies (replaced `unstructured` with actual used libs)

## Documentation

- `turbo/cli.py` — CLI entry point and command reference
- `turbo/api/main.py` — FastAPI application
- `turbo/safety/gate.py` — Safety gate configuration
- `frontend/` — React SPA
- `helm/turboprivate/` — Kubernetes deployment
