Skip to main content

Add your description here

Project description

pallma

Pallma is an advanced AI-powered security monitoring platform that leverages OpenTelemetry and state-of-the-art machine learning models to detect, analyze, and predict potential security threats in real-time. By combining distributed tracing with AI capabilities, it provides comprehensive security insights and proactive threat detection for modern applications and infrastructure.

Prerequisites

Before running pallma, ensure you have the following installed:

  • Python 3.12+
  • Docker and Docker Compose
  • uv (Python package manager)
  • Hugging Face Hub Token (for the predictor service), with permission to access the model on HuggingFace.

Requesting access to the model

  1. Request access to the model on HuggingFace. Log in to HuggingFace (create an account if you don't have one). You’ll see a form at the top of the model page - fill it out and wait for access, this might take some time. hf-acccess

  2. Create a token to download the model. Create one in the tokens section of your HuggingFace account. Read-only token should be enough: hf-token

Installation

  1. Clone the repository:

    git clone https://github.com/pallma-ai/pallma.git
    cd pallma
    
  2. Install dependencies:

    Install all dependencies (CLI + SDK):

    make install-all
    
  3. Activate the virtual environment:

    source .venv/bin/activate
    

Configuration

Environment Variables

Set the following environment variable for the predictor service:

export HUGGINGFACE_HUB_TOKEN="your_huggingface_token_here"

You can get a Hugging Face token from https://huggingface.co/settings/tokens.

Running the Application

The project includes a CLI tool for easy management:

# Start all services
pallma start

# Display real-time statistics
pallma display

# Stop all services
pallma stop

The display command shows real-time statistics including:

  • Total number of messages
  • Percentage of allow/block decisions
  • Real-time updates as messages arrive

Services

The application consists of the following services:

  • Zookeeper: Apache Kafka dependency
  • Kafka: Message broker for telemetry data
  • OpenTelemetry Collector: Collects and forwards telemetry data to Kafka
  • Processor: Processes telemetry data from Kafka
  • Predictor: ML service for predictions (requires Hugging Face token)

Development

Development Commands

# Install development dependencies
make install-dev

# Run linting
make lint

# Install specific dependency groups
make install-cli
make install-sdk

Troubleshooting

  1. Network issues: Ensure the pallma-network Docker network exists
  2. Hugging Face token: Make sure HUGGINGFACE_HUB_TOKEN is set
  3. Port conflicts: Check if ports 2181, 9092, 4317, 4318 are available
  4. Service health: Use docker-compose ps to check service status

License

See LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pallma_guard-0.0.1.tar.gz (194.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pallma_guard-0.0.1-py3-none-any.whl (18.2 kB view details)

Uploaded Python 3

File details

Details for the file pallma_guard-0.0.1.tar.gz.

File metadata

  • Download URL: pallma_guard-0.0.1.tar.gz
  • Upload date:
  • Size: 194.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.8.4

File hashes

Hashes for pallma_guard-0.0.1.tar.gz
Algorithm Hash digest
SHA256 dc7915376393f0127645e1739a38cdfedba85178ac94bba1590c88f147b19bc4
MD5 73e2e312a5446e9ef9748c794f0bb722
BLAKE2b-256 5a573317448774a3f84167287fa5d10eab01f5fa88eec7e07cfbdc2ab6332be9

See more details on using hashes here.

File details

Details for the file pallma_guard-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for pallma_guard-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2b4b6dcd486cd20c8eb1d8b034dafc5cd1482ea7ac5ecc901e12701aacc9f716
MD5 e7ce2fe37c2790f208a3c160607cfec5
BLAKE2b-256 627d43afc00c8fd8bc4518bc73cfb8880bdb56acf95d75d87b902518f0d8588d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page