Skip to main content

Fine Tuning as a Service (FTAAS)

register → orchestrate → train (HF / TRL / LLaMA-Factory / Unsloth / Axolotl · LoRA / QLoRA / DoRA) → MLflow → vLLM / Ray Serve → API / Console

ftaas.Client / notebook           Console
              \                    /
               ▼                  ▼
              FTAAS gateway  (:8080)
         ┌─────────┼──────────┐
         ▼         ▼          ▼
      registry   control    deploy
                   │
                workflow
                   │
            runner · Ray · MLflow · vLLM

Components

Module Role
gateway (ftaas_app) Single process on :8080 — Console + APIs
console Web UI for setup, tracking, prompt
registry Dataset registration → id:version
control Fine-tune jobs + model registry
workflow Pipeline create / complete
deploy Endpoints (vLLM / Ray Serve path) + prompt API
runner Local (or Airflow) train pipeline
ftaas SDK Client for notebooks / automation

Quick start

python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
./scripts/start_all.sh          # → http://127.0.0.1:8080
./scripts/e2e_smoke.sh
./scripts/stop_all.sh

SDK

from ftaas import Client, Framework, Technique, HyperParameters

with Client() as c:
    ds = c.register_dataset("examples/data/alpaca_sample.jsonl", name="alpaca")
    job = c.create_finetune_job(
        model_name="sshleifer/tiny-gpt2",
        dataset=ds,
        framework=Framework.TRANSFORMERS,
        technique=Technique.LORA,
        parameters=HyperParameters(max_steps=10),
    )
    job = c.wait_for_job(job.job_id)
    model = c.get_model(job.registered_model_name)
    ep = c.create_endpoint(model.model_name, inference_framework="vllm")
    print(c.prompt(ep.endpoint_id, "What is LoRA?").completion)

Layout

FTAAS/
├── packages/ftaas_sdk/ftaas/   # Client SDK
├── services/
│   ├── ftaas_app/              # gateway
│   ├── registry/
│   ├── control/
│   ├── workflow/
│   └── deploy/
├── runner/                     # local + Airflow DAG
├── training/
├── ui/console/
├── examples/
└── scripts/

License

Apache-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ftaas-0.1.0.tar.gz (13.9 kB view details)

Uploaded Source

Built Distribution

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

ftaas-0.1.0-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

Details for the file ftaas-0.1.0.tar.gz.

File metadata

  • Download URL: ftaas-0.1.0.tar.gz
  • Upload date:
  • Size: 13.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for ftaas-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d292d4ec337e9a69cb04d1d1f4877029ab93dba5f8d30eae9837b7cf0daebfa6
MD5 3bc929c40219bda460fae9133c6a511a
BLAKE2b-256 1cc13df74227f226b073e159c28e9d1e9848a37f2afb80ba27ef281c0cb796bb

See more details on using hashes here.

File details

Details for the file ftaas-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ftaas-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for ftaas-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b556ac8ff68a51711b9e45f2a8bac9ac74dbfe649faa92085b268dcd0f21a24f
MD5 39227f16061be0baacc2fbd30a46b8db
BLAKE2b-256 d5ff03f2ababf0284c8788fd28c5fcd4c371b9a8fe3d9f5fb94eb0c3c07565ae

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 Sentry Error logging StatusPage Status page