Skip to main content

Framework for building AI agents with real-time adaptive learning capabilities.

Project description

logo

pamiq-core

PyPI version Python 3.12+ License: MIT Document Style Test Type Check Format & Lint (pre-commit)

pamiq-core is a minimal machine learning framework for asynchronous execution of inference and training.

🎯 Design Philosophy

  • Simplicity — Clean, intuitive APIs that just work
  • Lightweight — Minimal dependencies, maximum performance
  • Complete Thread Abstraction — Complex threading handled internally, simple interface externally

When you set out to build a dynamic continuous learning system, PAMIQ Core will be your steadfast foundation.

📚 Documentation site is here.

✨ Features

  • 🔄 Parallel Architecture: Simultaneous inference and training in separate threads
  • Real-time Adaptation: Continuously update models during interaction
  • 🧵 Thread-safe Design: Robust synchronization mechanisms for parameter sharing and data transfers
  • 🔌 Modular Components: Easy-to-extend agent, environment, and model interfaces
  • 🛠️ Comprehensive Tools: Built-in state persistence, time control, and monitoring
  • 🏋️ Gymnasium Integration: Seamless compatibility with Gymnasium environments
  • 🌍 Cross Platform: Linux is the primary focus, but Windows and macOS are also supported. (However, some older macOS and Windows systems may have significantly less accurate time control.)

📋 Requirements

  • Python 3.12+
  • PyTorch (optional, for torch integration)

🚀 Quick Start

Installation

# Install with pip
pip install pamiq-core

# Optional PyTorch integration
pip install pamiq-core[torch]

# Optional Gymnasium integration
pip install pamiq-core[gym]

Basic Example

from pamiq_core import launch, Interaction, LaunchConfig
from your_agent import YourAgent
from your_environment import YourEnvironment

# Create agent-environment interaction
interaction = Interaction(YourAgent(), YourEnvironment())

# Launch the system
launch(
    interaction=interaction,
    models=your_models,
    buffers=your_data_buffers,
    trainers=your_trainers,
    config=LaunchConfig(
        web_api_address=("localhost", 8391),
        max_uptime=300.0,  # 5 minutes
    ),
)

See the samples directory for complete examples.

Remote CLI Control

Once the system is running, you can connect and control it remotely via the terminal using pamiq-console:

# Connect to local system
pamiq-console --host localhost --port 8391

# Connect to remote system
pamiq-console --host 192.168.1.100 --port 8391

🧩 Architecture

PAMIQ System Architecture

pamiq-core implements a unique architecture that enables autonomous intelligence:

  1. Concurrent Threads: Separate threads for control, inference, and training
  2. Parameter Sharing: Thread-safe model parameter synchronization
  3. Experience Collection: Automatic buffering of data from environments, such as images and audio.
  4. Continuous Learning: Training models while simultaneously using them for decision making
  5. State Persistence: Saving and loading system state for resumable operation

🤝 Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines on how to contribute to pamiq-core.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🔗 Related Projects

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

pamiq_core-0.6.0.tar.gz (684.4 kB view details)

Uploaded Source

Built Distribution

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

pamiq_core-0.6.0-py3-none-any.whl (72.1 kB view details)

Uploaded Python 3

File details

Details for the file pamiq_core-0.6.0.tar.gz.

File metadata

  • Download URL: pamiq_core-0.6.0.tar.gz
  • Upload date:
  • Size: 684.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pamiq_core-0.6.0.tar.gz
Algorithm Hash digest
SHA256 6504ac930fc6ec743586dff015576b5dbe515d32ec0c65467d2f76f255632da4
MD5 d8bd714373d3f36d429b02092701c434
BLAKE2b-256 a6d7076a63ac8c7257018be340f41e938501475dd6df20514ac9e6e5c296fe33

See more details on using hashes here.

Provenance

The following attestation bundles were made for pamiq_core-0.6.0.tar.gz:

Publisher: publish-to-pypi.yml on MLShukai/pamiq-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pamiq_core-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: pamiq_core-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 72.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pamiq_core-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ff69b4c53e6a643677b9c6fa7ebc481aed787bd0e08d0d92dd397016027b57a1
MD5 00318dac83c59e78f77107e0e12c1ede
BLAKE2b-256 29d0aeb717c10bf5a92522de16a8e947da2089dffb96622fc0a0b5d710c85277

See more details on using hashes here.

Provenance

The following attestation bundles were made for pamiq_core-0.6.0-py3-none-any.whl:

Publisher: publish-to-pypi.yml on MLShukai/pamiq-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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