SAGE Fine-tuning Framework - Trainers and data loaders for LLM fine-tuning
Project description
sage-finetune
Fine-tuning implementations for the SAGE AI data processing framework.
Installation
pip install isage-finetune
For LoRA training:
pip install isage-finetune[peft]
Features
- LoRA Trainer: Parameter-efficient fine-tuning with Low-Rank Adaptation
- Mock Trainer: Testing trainer for pipeline validation
- JSON/JSONL Loader: Flexible data loading for instruction and chat formats
Quick Start
from sage_finetune import MockTrainer, JSONDatasetLoader
# Load training data
loader = JSONDatasetLoader()
train_data = loader.load("train.jsonl")
# Train (mock for testing)
trainer = MockTrainer()
result = trainer.train(train_data)
print(f"Loss: {result['train_loss']:.4f}")
LoRA Fine-tuning
from sage_finetune import LoRATrainer, LoRAConfig
trainer = LoRATrainer(
model_name="gpt2",
lora_config=LoRAConfig(r=8, lora_alpha=16),
)
result = trainer.train(train_dataset)
trainer.save_model("./my_lora_model")
Data Formats
Instruction Format
{"instruction": "Summarize this text", "input": "Long text...", "output": "Summary..."}
Chat Format
{"messages": [{"role": "user", "content": "Hello"}, {"role": "assistant", "content": "Hi"}]}
Integration with SAGE
When SAGE is installed, components auto-register with the framework:
from sage.libs.finetune import create_trainer
trainer = create_trainer("lora", model_name="gpt2")
License
Apache 2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
isage_finetune-0.1.0.3.tar.gz
(37.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file isage_finetune-0.1.0.3.tar.gz.
File metadata
- Download URL: isage_finetune-0.1.0.3.tar.gz
- Upload date:
- Size: 37.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0b93799a4584c80ccf7076c79cd3c2a52e33272c8d154d522bd794563b06ad91
|
|
| MD5 |
340a850b82b04496d9402296fbd861b7
|
|
| BLAKE2b-256 |
53db4d399399729a3ed2dc06efa5e8e2b67eabb1abe8ac862f1561f65f6e2392
|
File details
Details for the file isage_finetune-0.1.0.3-py2.py3-none-any.whl.
File metadata
- Download URL: isage_finetune-0.1.0.3-py2.py3-none-any.whl
- Upload date:
- Size: 51.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c2277a0d3e61d218d33dd5bff664ca70271b18b39e47a067b5997e75d6c2144c
|
|
| MD5 |
67f0f0a3fd7b4f69c9b0ad1f0847a4bf
|
|
| BLAKE2b-256 |
227a9097e78540c2edef561130dd3282337a7af6980ed3df792a801db59c66c7
|