Skip to main content

llama-mlx-pipeline

PyPI version License Python Version CI Status

Llama MLX Pipeline (llama-mlx-pipeline) provides tools and components for building efficient data processing pipelines, specifically optimized for Apple Silicon using the MLX framework. It focuses on tasks like data scraping, chunking, and feature extraction.

Key Features

  • MLX Optimization: Designed to leverage Apple's MLX framework for high performance on M-series chips.
  • Data Scraping: Includes components for fetching data from various sources (scraper.py).
  • Data Chunking: Provides utilities for splitting data into manageable chunks (chunker.py).
  • Feature Extraction: Contains tools for extracting relevant features or information (extractor.py).
  • Pipeline Core: A central module (core.py) likely orchestrates pipeline stages.
  • Configurable: Supports configuration via config.py.

Installation

pip install llama-mlx-pipeline
# Or install directly from GitHub for the latest version:
# pip install git+https://github.com/llamasearchai/llama-mlx-pipeline.git

Usage

(Usage examples demonstrating pipeline creation and execution will be added here.)

# Placeholder for Python client usage
# from llama_mlx_pipeline import PipelineBuilder, MLXConfig

# config = MLXConfig.load("path/to/config.yaml")
# builder = PipelineBuilder(config)

# pipeline = builder.add_scraper(source="web", url="...") \
#                   .add_chunker(size=512) \
#                   .add_extractor(model="bert-base") \
#                   .build()

# results = pipeline.run(input_data="...")
# print(results)

Architecture Overview

graph TD
    A[Input Data Source] --> B{Scraper (scraper.py)};
    B --> C{Chunker (chunker.py)};
    C --> D{Extractor (extractor.py)};
    D --> E[Processed Output];

    F[Pipeline Orchestrator (core.py)] -- Manages --> B;
    F -- Manages --> C;
    F -- Manages --> D;

    G[Configuration (config.py)] -- Configures --> F;
    G -- Configures --> B;
    G -- Configures --> C;
    G -- Configures --> D;

    subgraph MLX Optimized Components
        direction LR
        B;
        C;
        D;
    end

    style F fill:#f9f,stroke:#333,stroke-width:2px
  1. Input: Data enters the pipeline.
  2. Scraper: Fetches or loads the initial data.
  3. Chunker: Splits data into smaller pieces.
  4. Extractor: Processes chunks to extract features or information.
  5. Output: The final processed data is produced.
  6. Orchestrator: The core.py module likely manages the flow and execution of these stages, configured by config.py.

Configuration

(Details on configuring pipeline stages, MLX settings, etc., will be added here.)

Development

Setup

# Clone the repository
git clone https://github.com/llamasearchai/llama-mlx-pipeline.git
cd llama-mlx-pipeline

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

Testing

pytest tests/

Contributing

Contributions are welcome! Please refer to CONTRIBUTING.md and submit a Pull Request.

License

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

Metadata

Release files for llama-mlx-pipeline 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for llama-mlx-pipeline 0.1.0
File Size Uploaded
llama_mlx_pipeline-0.1.0.tar.gz 22.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for llama-mlx-pipeline 0.1.0
File Interpreter ABI Platform
llama_mlx_pipeline-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 37.5 kB

Release files / llama_mlx_pipeline-0.1.0.tar.gz

Download URL llama_mlx_pipeline-0.1.0.tar.gz
Size 22.3 kB
Tags Source
SHA-256 checksum
How to use checksums
e7b537caebebdfa3e5b8b5001a0bbeaa4a1660ed47ee64791c5d09306856621d
BLAKE2b-256 checksum
How to use checksums
a943b6e72105a94e0012e498f8b8b23e625986cacc69c2d205b779e0d04a6bea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release files / llama_mlx_pipeline-0.1.0-py3-none-any.whl

Download URL llama_mlx_pipeline-0.1.0-py3-none-any.whl
Size 15.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1c49ca33b6160762ac697e737dd782127c8c73415cbd951c7257ba6fa193b59e
BLAKE2b-256 checksum
How to use checksums
9a551a1bc9fdaf8c6741f37af3d3193398fb8396e887cc0eb5577851ece4019f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page