Skip to main content

AI-Native LLM Training & Infrastructure Abstraction Library

Project description

PyAutoLLM

AI-Native LLM Training & Infrastructure Abstraction Library

Fine-tune open-weight LLMs with three lines of Python code. No ML expertise, no infrastructure knowledge required.

import pytune

model = pytune.models.llama2_7b()
model.add_data("./my-documents")
trained_model = model.train()

That's it. The system automatically:

  • Analyzes your data
  • Selects the best fine-tuning method
  • Picks the cheapest GPU infrastructure
  • Handles all orchestration
  • Evaluates quality
  • Returns a ready-to-use model

Why PyAutoLLM?

  • No Jargon: You don't need to know LoRA, QLoRA, distributed training, or GPUs
  • Guided Setup: Step-by-step instructions for infrastructure (RunPod, Lambda Labs, AWS)
  • Transparent Costs: See exactly what you'll pay before training
  • Smart Defaults: Recommended settings work for 95% of users
  • Open Source: No vendor lock-in; runs anywhere (Ollama, vLLM, HF Inference)
  • Three-Tier Pricing:
    • Cheap & Fast: $10, 2 hours, 90% quality (QLoRA on single GPU)
    • Balanced: $30, 5 hours, 95% quality (LoRA, recommended)
    • Best Quality: $80, 12 hours, 98% quality (Full retraining)

Quick Start

Installation (Coming Soon)

pip install pyautollm

Basic Workflow

import pytune

# 1. Create a model
model = pytune.models.llama2_7b()

# 2. Add your data (PDF, DOCX, CSV, TXT, Markdown, etc.)
model.add_data("./documents")

# 3. See recommended training options
recommendation = model.plan()
# Output:
# Cheap & Fast:    $10, 2h, 90% quality
# Balanced (*)     $30, 5h, 95% quality
# Best Quality:    $80, 12h, 98% quality

# 4. Train with recommended settings (or pick another tier)
trained_model = model.train()

# 5. Use your trained model
response = trained_model.generate("Your prompt here")

First Time Setup (RunPod)

# First time only: PyAutoLLM guides you through RunPod setup
# 1. Go to https://www.runpod.io
# 2. Create a pod with H100 GPU
# 3. Copy your API token
# 4. Paste it when prompted

# After setup, credentials are cached
model.train()  # Runs immediately on second call

Documentation

Project Status

🚧 Currently in development: Phase 1 (MVP) — 4 weeks to beta release (v0.1.0)

Milestones:

  • Phase 1 (Jul-Aug): Single model, RunPod only, guided UX
  • Phase 2 (Aug): Multi-model support
  • Phase 3 (Sep): Multi-provider, advanced methods
  • Phase 4 (Oct): Polish, production-ready v1.0

Architecture

PyAutoLLM is built with:

  • Rust: High-performance orchestration layer (infrastructure, training coordination)
  • Python: User-facing API, data analysis, ML integrations (PyO3 bindings)
  • Unsloth: Fast fine-tuning engine
  • TRL: Hugging Face training utilities
  • Docling: Document parsing
Python API (user-friendly, guided UX)
    ↓
Rust Orchestrator (performance layer)
    ├─ Pod management (RunPod, Lambda, AWS)
    ├─ Cost calculation
    ├─ Training coordination
    └─ Monitoring & logging
    ↓
Training Engine (Unsloth + TRL)

Features (MVP Phase 1)

  • ✅ Single-model fine-tuning (Llama 2 7B)
  • ✅ Data analysis (quality scoring, deduplication)
  • ✅ Intelligent method selection (QLoRA vs LoRA)
  • ✅ Cost forecasting (±10% accuracy)
  • ✅ RunPod integration with guided setup
  • ✅ Automatic evaluation (LLM-as-Judge)
  • ✅ Training monitoring & logging

Coming Soon (Phase 2-4):

  • Multi-model support (Mistral, LLaMA 3, Phi, etc.)
  • Multi-provider infrastructure (Lambda Labs, AWS, GCP)
  • Advanced training methods (DPO, continued pretraining, multi-GPU)
  • Inference abstraction (vLLM, Ollama, HF Inference)
  • Model versioning & registry
  • Production monitoring & A/B testing

Use Cases

  • Customer Support Agents: Fine-tune on your support documentation
  • Domain Experts: Create specialized assistants (legal, medical, financial)
  • Content Generation: Adapt models to your brand voice
  • Internal Tools: Build AI features without infrastructure expertise
  • Research: Experiment with fine-tuning without DevOps headaches

Contributing

This is an open-source project. We welcome contributions!

  • 📖 Documentation improvements
  • 🧪 Tests and examples
  • 🚀 Performance optimization
  • 🐛 Bug reports and fixes

License

MIT License — See LICENSE file for details.

Contact & Community

  • Issues: Report bugs and request features on GitHub
  • Discussions: Join our community discussions
  • Twitter: @PyAutoLLM (coming soon)

Status: v0.1.0-beta (in development)
Start Date: 2026-07-21
Target Release: 2026-10-01

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

pyautollm-0.2.0.tar.gz (46.0 kB view details)

Uploaded Source

File details

Details for the file pyautollm-0.2.0.tar.gz.

File metadata

  • Download URL: pyautollm-0.2.0.tar.gz
  • Upload date:
  • Size: 46.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for pyautollm-0.2.0.tar.gz
Algorithm Hash digest
SHA256 0c8214b0202df9779aa4fbcd6eb71b9108e09ac6acd3450a5fd5b18caf6d979c
MD5 2c45a4efc61316bfe1699f6f49ce17a6
BLAKE2b-256 7b12364399b5e93ff8cd28dc65d8aac11429869812d8b340e04e1b73c7edd91a

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