spectrumlab


Namespectrumlab JSON
Version 0.1.2 PyPI version JSON
download
home_pageNone
SummaryA pioneering unified platform designed to systematize and accelerate deep learning research in spectroscopy.
upload_time2025-08-07 12:50:50
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseNone
keywords benchmark chemistry evaluation spectroscopy
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <!-- This README is automatically synced from GitHub repository -->

<!-- # SpectrumLab -->

<div align="center">
  <img src="https://raw.githubusercontent.com/little1d/SpectrumLab/main/docs/public/spectrumlab.svg" alt="SpectrumLab" width="600"/>
  
  <p><strong>A pioneering unified platform designed to systematize and accelerate deep learning research in spectroscopy.</strong></p>
</div>

## 🚀 Quick Start

### Environment Setup

We recommend using conda and uv for environment management:

```bash
# Clone the repository
git clone https://github.com/little1d/SpectrumLab.git
cd SpectrumLab

# Create conda environment
conda create -n spectrumlab python=3.10
conda activate spectrumlab

pip install uv
uv pip install -e .
```

### Data Setup

Download benchmark data from Hugging Face:

- [SpectrumBench v1.0](https://huggingface.co/datasets/SpectrumWorld/spectrumbench_v_1.0)

Extract the data to the `data` directory in the project root.

### API Keys Configuration

```bash
# Copy and edit environment configuration
cp .env.example .env
# Configure your API keys in the .env file
```

## 💻 Usage

### Python API

```python
from spectrumlab.benchmark import get_benchmark_group
from spectrumlab.models import GPT4o
from spectrumlab.evaluator import get_evaluator

# Load benchmark data
benchmark = get_benchmark_group("perception")
data = benchmark.get_data_by_subcategories("all")

# Initialize model
model = GPT4o()

# Get evaluator
evaluator = get_evaluator("perception")

# Run evaluation
results = evaluator.evaluate(
    data_items=data,
    model=model,
    save_path="./results"
)

print(f"Overall accuracy: {results['metrics']['overall']['accuracy']:.2f}%")
```

### Command Line Interface

The CLI provides a simple way to run evaluations:

```bash
# Basic evaluation
spectrumlab eval --model gpt4o --level perception

# Specify data path and output directory
spectrumlab eval --model claude --level signal --data-path ./data --output ./my_results

# Evaluate specific subcategories
spectrumlab eval --model deepseek --level semantic --subcategories "IR_spectroscopy" "Raman_spectroscopy"

# Customize output length
spectrumlab eval --model internvl --level generation --max-length 1024

# Get help
spectrumlab eval --help
```

## 🤝 Contributing

We welcome community contributions! Please see [CONTRIBUTING.md](https://github.com/little1d/SpectrumLab/blob/main/CONTRIBUTING.md) for detailed guidelines.

## Acknowledgments

- **Experiment Tracking**: [SwanLab](https://github.com/SwanHubX/SwanLab/) for experiment management and visualization
- **Choice Evaluator Framework**: Inspired by [MMAR](https://github.com/ddlBoJack/MMAR)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "spectrumlab",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "benchmark, chemistry, evaluation, spectroscopy",
    "author": null,
    "author_email": "Zhuo Yang <yzachary1551@gmail.com>, Tianfan Fu <futianfan@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/c5/4c/1be28b50900a8f876767b03022693dd18fb3aa3ff415edb5681647ad2523/spectrumlab-0.1.2.tar.gz",
    "platform": null,
    "description": "<!-- This README is automatically synced from GitHub repository -->\n\n<!-- # SpectrumLab -->\n\n<div align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/little1d/SpectrumLab/main/docs/public/spectrumlab.svg\" alt=\"SpectrumLab\" width=\"600\"/>\n  \n  <p><strong>A pioneering unified platform designed to systematize and accelerate deep learning research in spectroscopy.</strong></p>\n</div>\n\n## \ud83d\ude80 Quick Start\n\n### Environment Setup\n\nWe recommend using conda and uv for environment management:\n\n```bash\n# Clone the repository\ngit clone https://github.com/little1d/SpectrumLab.git\ncd SpectrumLab\n\n# Create conda environment\nconda create -n spectrumlab python=3.10\nconda activate spectrumlab\n\npip install uv\nuv pip install -e .\n```\n\n### Data Setup\n\nDownload benchmark data from Hugging Face:\n\n- [SpectrumBench v1.0](https://huggingface.co/datasets/SpectrumWorld/spectrumbench_v_1.0)\n\nExtract the data to the `data` directory in the project root.\n\n### API Keys Configuration\n\n```bash\n# Copy and edit environment configuration\ncp .env.example .env\n# Configure your API keys in the .env file\n```\n\n## \ud83d\udcbb Usage\n\n### Python API\n\n```python\nfrom spectrumlab.benchmark import get_benchmark_group\nfrom spectrumlab.models import GPT4o\nfrom spectrumlab.evaluator import get_evaluator\n\n# Load benchmark data\nbenchmark = get_benchmark_group(\"perception\")\ndata = benchmark.get_data_by_subcategories(\"all\")\n\n# Initialize model\nmodel = GPT4o()\n\n# Get evaluator\nevaluator = get_evaluator(\"perception\")\n\n# Run evaluation\nresults = evaluator.evaluate(\n    data_items=data,\n    model=model,\n    save_path=\"./results\"\n)\n\nprint(f\"Overall accuracy: {results['metrics']['overall']['accuracy']:.2f}%\")\n```\n\n### Command Line Interface\n\nThe CLI provides a simple way to run evaluations:\n\n```bash\n# Basic evaluation\nspectrumlab eval --model gpt4o --level perception\n\n# Specify data path and output directory\nspectrumlab eval --model claude --level signal --data-path ./data --output ./my_results\n\n# Evaluate specific subcategories\nspectrumlab eval --model deepseek --level semantic --subcategories \"IR_spectroscopy\" \"Raman_spectroscopy\"\n\n# Customize output length\nspectrumlab eval --model internvl --level generation --max-length 1024\n\n# Get help\nspectrumlab eval --help\n```\n\n## \ud83e\udd1d Contributing\n\nWe welcome community contributions! Please see [CONTRIBUTING.md](https://github.com/little1d/SpectrumLab/blob/main/CONTRIBUTING.md) for detailed guidelines.\n\n## Acknowledgments\n\n- **Experiment Tracking**: [SwanLab](https://github.com/SwanHubX/SwanLab/) for experiment management and visualization\n- **Choice Evaluator Framework**: Inspired by [MMAR](https://github.com/ddlBoJack/MMAR)\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A pioneering unified platform designed to systematize and accelerate deep learning research in spectroscopy.",
    "version": "0.1.2",
    "project_urls": null,
    "split_keywords": [
        "benchmark",
        " chemistry",
        " evaluation",
        " spectroscopy"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "84b57e0c82765892c5d5ad0c3e25eaaea43ddc326f439dba40e24fa4e114dce6",
                "md5": "932f9640c815a3c79f97901f7d56e194",
                "sha256": "c95aa227a8923bcef4c62248c86f56485971fc8c2edf6e0922946d458b7c3f8b"
            },
            "downloads": -1,
            "filename": "spectrumlab-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "932f9640c815a3c79f97901f7d56e194",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 34387,
            "upload_time": "2025-08-07T12:50:49",
            "upload_time_iso_8601": "2025-08-07T12:50:49.952442Z",
            "url": "https://files.pythonhosted.org/packages/84/b5/7e0c82765892c5d5ad0c3e25eaaea43ddc326f439dba40e24fa4e114dce6/spectrumlab-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c54c1be28b50900a8f876767b03022693dd18fb3aa3ff415edb5681647ad2523",
                "md5": "64da8b228977941bd8cf808e6b4a5243",
                "sha256": "5b44037f1b3409467fb42589ce2e167b004e5dfc541cbba23b5c4faae27f7a4f"
            },
            "downloads": -1,
            "filename": "spectrumlab-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "64da8b228977941bd8cf808e6b4a5243",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 691774,
            "upload_time": "2025-08-07T12:50:50",
            "upload_time_iso_8601": "2025-08-07T12:50:50.889544Z",
            "url": "https://files.pythonhosted.org/packages/c5/4c/1be28b50900a8f876767b03022693dd18fb3aa3ff415edb5681647ad2523/spectrumlab-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-07 12:50:50",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "spectrumlab"
}
        
Elapsed time: 1.09581s