Installation Guide
Install perfecX Comply SDKs and tools for your preferred platform and environment.
System Requirements
Python SDK
- Python 3.8 or higher
- pip 20.0+
- 8GB RAM minimum
- 2GB disk space
Node.js SDK
- Node.js 16.0 or higher
- npm 7+ or yarn 1.22+
- 8GB RAM minimum
- 2GB disk space
Python SDK Installation
Using pip
pip install perfecxion-comply
Using Poetry
poetry add perfecxion-comply
Using Conda
conda install -c perfecxion perfecxion-comply
Optional Dependencies
For MLflow integration:
pip install "perfecxion-comply[mlflow]"
For Kubernetes deployment:
pip install "perfecxion-comply[k8s]"
For all integrations:
pip install "perfecxion-comply[all]"
Node.js SDK Installation
Using npm
npm install @perfecxion/comply
Using yarn
yarn add @perfecxion/comply
Using pnpm
pnpm add @perfecxion/comply
TypeScript Support
TypeScript definitions are included. No additional @types package needed.
// tsconfig.json { "compilerOptions": { "types": ["@perfecxion/comply"] } }
CLI Tool Installation
Global Installation
npm install -g @perfecxion/comply-cli
Verify Installation
px-comply --version # Output: perfecX Comply CLI v1.0.0 px-comply --help # Shows all available commands px-comply scan --help # Shows scan command options
Docker Installation
Pull the Docker Image
docker pull perfecxion/comply:latest
Run with Docker Compose
# docker-compose.yml version: '3.8' services: perfecx-comply: image: perfecxion/comply:latest environment: - PERFECX_API_KEY=your-api-key - PERFECX_ORG_ID=your-org-id - PERFECX_ENVIRONMENT=production ports: - "8080:8080" volumes: - ./config:/app/config - ./reports:/app/reports - ./logs:/app/logs # Optional: Local compliance database comply-db: image: postgres:15 environment: - POSTGRES_DB=comply - POSTGRES_USER=comply_user - POSTGRES_PASSWORD=secure_password volumes: - comply-data:/var/lib/postgresql/data volumes: comply-data:
Kubernetes Deployment
Helm Chart Installation
# Add Helm repository helm repo add perfecxion https://charts.perfecxion.ai helm repo update # Install perfecX Comply helm install perfecx-comply perfecxion/comply \ --set apiKey=your-api-key \ --set orgId=your-org-id \ --set replicas=3 \ --namespace compliance \ --create-namespace
Custom Values Configuration
# values.yaml replicaCount: 3 image: repository: perfecxion/comply tag: "1.0.0" pullPolicy: IfNotPresent service: type: LoadBalancer port: 80 ingress: enabled: true className: nginx annotations: cert-manager.io/cluster-issuer: letsencrypt hosts: - host: comply.your-domain.com paths: - path: / pathType: Prefix resources: limits: cpu: 2000m memory: 4Gi requests: cpu: 1000m memory: 2Gi autoscaling: enabled: true minReplicas: 3 maxReplicas: 10 targetCPUUtilizationPercentage: 70 targetMemoryUtilizationPercentage: 80
Environment Configuration
Environment Variables
# .env file PERFECX_API_KEY=your-api-key-here PERFECX_ORG_ID=your-organization-id PERFECX_ENVIRONMENT=production PERFECX_LOG_LEVEL=info PERFECX_REGION=us-east-1 PERFECX_SCAN_INTERVAL=daily PERFECX_AUTO_REMEDIATE=true PERFECX_NOTIFICATION_EMAIL=compliance@company.com
Configuration File
# perfecx-comply.yaml api: key: ${PERFECX_API_KEY} endpoint: https://api.perfecxion.ai/v1 timeout: 30s retries: 3 organization: id: ${PERFECX_ORG_ID} name: "Your Organization" compliance: frameworks: - EU_AI_ACT - NIST_AI_RMF - SOC_2_TYPE_II - ISO_42001 scanning: interval: daily time: "02:00" parallelism: 5 risk: thresholds: low: 30 medium: 60 high: 80 critical: 90 monitoring: enabled: true exporters: - prometheus - datadog notifications: channels: - type: email recipients: ["compliance@company.com"] - type: slack webhook: "https://hooks.slack.com/..." - type: pagerduty key: "your-pagerduty-key"
Verify Your Installation
Python
import perfecxion_comply # Check version print(perfecxion_comply.__version__) # Test connection from perfecxion_comply import ComplianceClient client = ComplianceClient(api_key="your-api-key") status = client.health_check() print(f"Connection status: {status.status}") print(f"API version: {status.api_version}") print(f"Available frameworks: {', '.join(status.frameworks)}")
Node.js
const { ComplianceClient } = require('@perfecxion/comply'); // Check version console.log(ComplianceClient.VERSION); // Test connection const client = new ComplianceClient({ apiKey: 'your-api-key' }); const status = await client.healthCheck(); console.log(`Connection status: ${status.status}`); console.log(`API version: ${status.apiVersion}`); console.log(`Available frameworks: ${status.frameworks.join(', ')}`);
CLI
# Test CLI connection px-comply test-connection # Run initial compliance scan px-comply scan --model my-first-model --framework EU_AI_ACT # Generate compliance report px-comply report --format pdf --output compliance-report.pdf
Common Installation Issues
SSL Certificate Errors
For corporate proxies: export NODE_TLS_REJECT_UNAUTHORIZED=0
Permission Denied
Use sudo
for global installs or use a virtual environment
API Key Invalid
Ensure your API key is active and has the correct permissions
Network Timeout
Check firewall settings and ensure access to api.perfecxion.ai