Skip to main content

Secure distributed object storage and logging with SeaweedFS

Project description

Gnosis-Track

๐Ÿš€ Open Source Centralized Logging for AI and Machine Learning Systems

A modern, high-performance logging solution for AI/ML applications, distributed systems, and blockchain validators with real-time monitoring, secure storage, and easy integration.

โœจ Key Features

  • ๐Ÿ”ฅ Drop-in Integration: Simple 3-line setup for any Python application
  • ๐Ÿ“Š Real-time UI: Live log streaming and monitoring dashboard
  • ๐Ÿ”’ Secure Storage: AES256 encryption with distributed SeaweedFS backend
  • ๐Ÿ  Self-Hosted: Deploy your own infrastructure (free)
  • โ˜๏ธ Managed Service: Coming soon - we handle everything (paid)
  • ๐Ÿ“ˆ Scalable: Handle millions of log entries with O(1) performance

๐Ÿš€ Quick Start

For AI/ML Applications

# Replace your existing logging with 3 lines:
import gnosis_track

gnosis_track.init(
    project="my-ml-experiments",
    run_name="experiment-v1.2"
)

# All your existing logging calls now stream to Gnosis-Track automatically!
import logging
logging.info("Training epoch 1 completed")

# Optional structured logging
gnosis_track.log({"epoch": 1, "loss": 0.23, "accuracy": 0.94})

For Bittensor Validators

# Bittensor-specific integration
import gnosis_track

gnosis_track.init(
    config=config,
    wallet=wallet,
    project="subnet-validators",
    uid=uid
)

# All bt.logging calls automatically captured
bt.logging.info("Validation completed")
gnosis_track.log({"step": step, "scores": scores})

Deploy Your Own Infrastructure

# Install
pip install gnosis-track

# Deploy SeaweedFS + UI
gnosis-track deploy --cluster-size 3

# Start monitoring dashboard
gnosis-track ui --port 8081

๐Ÿ—๏ธ Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    Gnosis-Track                         โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚  Python Logger โ”‚  Web UI  โ”‚  CLI Tools โ”‚  Monitoring    โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚       Bucket Manager โ”‚ Auth Manager โ”‚ Config Manager     โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚              SeaweedFS Client (S3 Compatible)           โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                    SeaweedFS Cluster                     โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”‚
โ”‚  โ”‚ Master  โ”‚  โ”‚ Volume  โ”‚  โ”‚  Filer  โ”‚  โ”‚   S3    โ”‚    โ”‚
โ”‚  โ”‚ :9333   โ”‚  โ”‚ :8080   โ”‚  โ”‚ :8888   โ”‚  โ”‚ :8333   โ”‚    โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

โšก Performance Benefits

Metric Traditional Logging Gnosis-Track Improvement
File Access O(log n) O(1) 10x faster
Metadata Overhead ~200 bytes 40 bytes 5x smaller
Concurrent Access Limited Unlimited โˆžx better
Storage Scaling Complex Automatic Easy scaling
Memory Usage High Low 3x lower
Search Performance Linear Indexed 100x faster

๐Ÿ“Š Web UI

Start the web interface:

gnosis-track ui --port 8081

Features:

  • Real-time streaming: Watch logs as they arrive
  • Multi-project: Monitor multiple AI experiments or validators
  • Advanced filtering: Search by level, project, time range
  • Export options: JSON, CSV, Parquet formats

๐Ÿ”ง Configuration

Self-Hosted Setup

# Configuration options
gnosis_track_endpoint = "your-seaweed-server.com:8333"
gnosis_track_bucket = "ml-experiments"  # or "subnet-logs" for validators
gnosis_track_access_key = "admin"
gnosis_track_secret_key = "your-secret"

Managed Service (Coming Soon)

# Point to our hosted service
api_key = "gt_xxxxx"  # Get from gnosis-track.com
endpoint = "https://api.gnosis-track.com"

๐ŸŽฏ Business Model

  • ๐Ÿ  Self-Hosted: Free - deploy your own SeaweedFS + UI
  • โ˜๏ธ Managed Service: Paid - we handle infrastructure, scaling, backups

๐Ÿ› ๏ธ Installation

# Install the package
pip install gnosis-track

# For self-hosted deployment
gnosis-track install seaweedfs

# Start UI server
gnosis-track ui

๐Ÿ“š Examples

Check the examples/ directory for:

  • Basic validator integration
  • Custom configuration
  • Monitoring and alerting
  • Advanced usage patterns

๐Ÿงช Testing

# Run test data generators
python tests/comprehensive_test_data.py
python tests/infinite_random_logs.py

# Open UI to see test data
gnosis-track ui --port 8081

๐Ÿค Contributing

We welcome contributions from the open source community! Here's how to get started:

  1. Fork the repository
  2. Create feature branch: git checkout -b feature/amazing-feature
  3. Commit changes: git commit -m 'Add amazing feature'
  4. Push to branch: git push origin feature/amazing-feature
  5. Open Pull Request

Development Setup

# Clone the repo
git clone https://github.com/gnosis-research/gnosis-track.git
cd gnosis-track

# Install in development mode
pip install -e ".[dev]"

# Run tests
pytest tests/

# Start development UI
python -m gnosis_track.ui.server

๐Ÿ“„ License

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

๐Ÿ†˜ Support

๐ŸŽฏ Roadmap

โœ… Phase 1: Core Features (Completed)

  • SeaweedFS integration
  • Real-time web UI
  • Bittensor validator integration
  • Automatic log capture
  • Self-hosted deployment

๐Ÿšง Phase 2: Enhancement (In Progress)

  • Managed service launch
  • Advanced analytics dashboard
  • Multi-subnet support
  • Performance optimizations
  • Mobile-responsive UI

๐Ÿ“‹ Phase 3: Scale (Planned)

  • Enterprise features
  • Third-party integrations
  • Custom dashboard builder
  • Advanced alerting system
  • Multi-cloud support

๐ŸŒŸ Community

Join our growing community of AI/ML developers and infrastructure operators:

  • Contributors: Thanks to all our contributors who make this project possible
  • AI/ML Engineers: Share feedback and feature requests
  • DevOps Teams: Help us improve deployment and scaling
  • Blockchain Validators: Test and improve validator integrations
  • Developers: Contribute code, docs, and ideas

โญ Star History

Star History Chart


Made with โค๏ธ for the AI/ML community

Gnosis-Track is built by developers, for developers. We believe in open source, transparent logging, and empowering AI engineers with the tools they need to build amazing systems.

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

gnosis_track-0.1.1.tar.gz (103.0 kB view details)

Uploaded Source

Built Distribution

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

gnosis_track-0.1.1-py3-none-any.whl (69.0 kB view details)

Uploaded Python 3

File details

Details for the file gnosis_track-0.1.1.tar.gz.

File metadata

  • Download URL: gnosis_track-0.1.1.tar.gz
  • Upload date:
  • Size: 103.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for gnosis_track-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d92ba0e5acfb4dbdf781397b515a4c7353e1939c9636f9e97b1938eb8f5408e1
MD5 ba375d5c0e6777cf102ac2de80945bf1
BLAKE2b-256 00f04c164d8fac48a7e2fdba2d9f1888579f6c62887404214bb00c5218ae1c32

See more details on using hashes here.

File details

Details for the file gnosis_track-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: gnosis_track-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 69.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for gnosis_track-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7a88980b188b87a6d7f5455cab5fe2eba1b877eab67d826df1fb1470509bc540
MD5 27701b270e86289349cfdb154b0f2d50
BLAKE2b-256 ba94b74a8a2f641d967a8780db485d65e741475a7e12401510975da20986bdbe

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