colliderml


Namecolliderml JSON
Version 0.1.3 PyPI version JSON
download
home_pagehttps://github.com/murnanedaniel/colliderml
SummaryA modern machine learning library for high-energy physics data analysis
upload_time2025-09-17 09:35:30
maintainerNone
docs_urlNone
authorDaniel Murnane
requires_python<3.12,>=3.10
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ColliderML

[![Tests](https://github.com/murnanedaniel/colliderml/actions/workflows/tests.yml/badge.svg)](https://github.com/murnanedaniel/colliderml/actions/workflows/tests.yml)
![Coverage](./coverage.svg)
[![Python 3.10+](https://img.shields.io/badge/python-3.10%2B-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

A modern machine learning library for high-energy physics data analysis.

## Features

- Efficient parallel data downloading with resume capability
- Support for common HEP data formats
- Machine learning utilities for particle physics
- Visualization tools for physics data

## Installation

### For Users
```bash
# Create and activate environment
conda create -n collider-env python=3.11  # 3.10 or 3.11 recommended
conda activate collider-env

# Install package
pip install colliderml
```

### For Developers
```bash
# Create and activate environment
conda create -n collider-dev python=3.11  # 3.10 or 3.11 recommended
conda activate collider-dev

# Clone repository
git clone https://github.com/murnanedaniel/colliderml.git
cd colliderml

# Install in development mode with extra dependencies
pip install -e ".[dev]"
```

## Quick Start

### CLI

```bash
# Download 100 events from the taster campaign into ./data
colliderml get -c taster -e 100 -O data
```

```python
from colliderml.core.data.manifest import ManifestClient
from colliderml.core.io import DataDownloader

manifest = ManifestClient()
files = manifest.select_files(campaign=None, datasets=["ttbar"], objects=["tracks"], max_events=1000)

downloader = DataDownloader()
results = downloader.download_files([f.path for f in files], local_dir="data", max_workers=4, resume=True)

for path, result in results.items():
    print(path, result.success, result.error)
```

### Features

- **Manifest-driven**: Always selects files from the latest portal manifest
- **Parallel Downloads**: Download multiple files concurrently
- **Resume Capability**: Optionally resume interrupted downloads
- **Progress Tracking**: Real-time progress bars
- **Clear Errors**: Helpful failure messages and HEAD checks

## Development

1. Activate your environment:
   ```bash
   conda activate collider-dev
   ```

2. Run tests:
   ```bash
   # Run unit tests only
   pytest -v -m "not integration"
   
   # Run all tests including integration tests
   pytest -v
   
   # Run with coverage report
   pytest --cov=colliderml
   ```

3. Build documentation:
   ```bash
   mkdocs build
   mkdocs serve  # View at http://127.0.0.1:8000
   ```

## License

[MIT License](LICENSE) 


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/murnanedaniel/colliderml",
    "name": "colliderml",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.12,>=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": "Daniel Murnane",
    "author_email": "dtmurnane@lbl.gov",
    "download_url": "https://files.pythonhosted.org/packages/0a/c6/32a5ef4aab4b773e182d9c7fc49d43bced90ce7047daacd2b840b9101c3c/colliderml-0.1.3.tar.gz",
    "platform": null,
    "description": "# ColliderML\n\n[![Tests](https://github.com/murnanedaniel/colliderml/actions/workflows/tests.yml/badge.svg)](https://github.com/murnanedaniel/colliderml/actions/workflows/tests.yml)\n![Coverage](./coverage.svg)\n[![Python 3.10+](https://img.shields.io/badge/python-3.10%2B-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nA modern machine learning library for high-energy physics data analysis.\n\n## Features\n\n- Efficient parallel data downloading with resume capability\n- Support for common HEP data formats\n- Machine learning utilities for particle physics\n- Visualization tools for physics data\n\n## Installation\n\n### For Users\n```bash\n# Create and activate environment\nconda create -n collider-env python=3.11  # 3.10 or 3.11 recommended\nconda activate collider-env\n\n# Install package\npip install colliderml\n```\n\n### For Developers\n```bash\n# Create and activate environment\nconda create -n collider-dev python=3.11  # 3.10 or 3.11 recommended\nconda activate collider-dev\n\n# Clone repository\ngit clone https://github.com/murnanedaniel/colliderml.git\ncd colliderml\n\n# Install in development mode with extra dependencies\npip install -e \".[dev]\"\n```\n\n## Quick Start\n\n### CLI\n\n```bash\n# Download 100 events from the taster campaign into ./data\ncolliderml get -c taster -e 100 -O data\n```\n\n```python\nfrom colliderml.core.data.manifest import ManifestClient\nfrom colliderml.core.io import DataDownloader\n\nmanifest = ManifestClient()\nfiles = manifest.select_files(campaign=None, datasets=[\"ttbar\"], objects=[\"tracks\"], max_events=1000)\n\ndownloader = DataDownloader()\nresults = downloader.download_files([f.path for f in files], local_dir=\"data\", max_workers=4, resume=True)\n\nfor path, result in results.items():\n    print(path, result.success, result.error)\n```\n\n### Features\n\n- **Manifest-driven**: Always selects files from the latest portal manifest\n- **Parallel Downloads**: Download multiple files concurrently\n- **Resume Capability**: Optionally resume interrupted downloads\n- **Progress Tracking**: Real-time progress bars\n- **Clear Errors**: Helpful failure messages and HEAD checks\n\n## Development\n\n1. Activate your environment:\n   ```bash\n   conda activate collider-dev\n   ```\n\n2. Run tests:\n   ```bash\n   # Run unit tests only\n   pytest -v -m \"not integration\"\n   \n   # Run all tests including integration tests\n   pytest -v\n   \n   # Run with coverage report\n   pytest --cov=colliderml\n   ```\n\n3. Build documentation:\n   ```bash\n   mkdocs build\n   mkdocs serve  # View at http://127.0.0.1:8000\n   ```\n\n## License\n\n[MIT License](LICENSE) \n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A modern machine learning library for high-energy physics data analysis",
    "version": "0.1.3",
    "project_urls": {
        "Documentation": "https://murnanedaniel.github.io/colliderml",
        "Homepage": "https://github.com/murnanedaniel/colliderml",
        "Issues": "https://github.com/murnanedaniel/colliderml/issues",
        "Source": "https://github.com/murnanedaniel/colliderml"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c9b7d64df4446768734afd6f4335e1d4f61ab48764c771a265ca9662fa650198",
                "md5": "22f9b503fcabac3e55028991039e899b",
                "sha256": "04908b8ee677c3ebd19db33d3bc9853f5936d08ad9dca3cb66c94e11c6baeb3f"
            },
            "downloads": -1,
            "filename": "colliderml-0.1.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "22f9b503fcabac3e55028991039e899b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.12,>=3.10",
            "size": 14272,
            "upload_time": "2025-09-17T09:35:29",
            "upload_time_iso_8601": "2025-09-17T09:35:29.023514Z",
            "url": "https://files.pythonhosted.org/packages/c9/b7/d64df4446768734afd6f4335e1d4f61ab48764c771a265ca9662fa650198/colliderml-0.1.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0ac632a5ef4aab4b773e182d9c7fc49d43bced90ce7047daacd2b840b9101c3c",
                "md5": "f283edb01d67a83bce88a4ea6c7527e9",
                "sha256": "ac5c5228eb042bb268b966bd6bd1f3fd01c7bc7dc7dfabbd74fb4908b9ba8bad"
            },
            "downloads": -1,
            "filename": "colliderml-0.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "f283edb01d67a83bce88a4ea6c7527e9",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.12,>=3.10",
            "size": 480818,
            "upload_time": "2025-09-17T09:35:30",
            "upload_time_iso_8601": "2025-09-17T09:35:30.045374Z",
            "url": "https://files.pythonhosted.org/packages/0a/c6/32a5ef4aab4b773e182d9c7fc49d43bced90ce7047daacd2b840b9101c3c/colliderml-0.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-17 09:35:30",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "murnanedaniel",
    "github_project": "colliderml",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "colliderml"
}
        
Elapsed time: 0.62763s