ModelForge: A no-code toolkit for fine-tuning HuggingFace models
Project description
ModelForge 🔧⚡
Finetune LLMs on your laptop’s GPU—no code, no PhD, no hassle.
🚀 Features
- GPU-Powered Finetuning: Optimized for NVIDIA GPUs (even 4GB VRAM).
- One-Click Workflow: Upload data → Pick task → Train → Test.
- Hardware-Aware: Auto-detects your GPU/CPU and recommends models.
- React UI: No CLI or notebooks—just a friendly interface.
📖 Supported Tasks
- Text-Generation: Generates answers in the form of text based on prior and fine-tuned knowledge. Ideal for use cases like customer support chatbots, story generators, social media script writers,[...]
- Summarization: Generates summaries for long articles and texts. Ideal for use cases like news article summarization, law document summarization, and medical article summarization.
- Extractive Question Answering: Finds the answers relevant to a query from a given context. Best for use cases like Retrieval Augmented Generation (RAG), and enterprise document search (for examp[...]
Installation
Prerequisites
- Python==3.11.x: Ensure you have Python installed.
- NVIDIA GPU: Recommended VRAM >= 6GB.
- CUDA: Ensure CUDA is installed and configured for your GPU.
- HuggingFace Account: Create an account on Hugging Face and generate a finegrained access token.
Steps
-
Install the Package:
pip install modelforge-finetuning
-
Set HuggingFace API Key in environment variables:
Linux:export HUGGINGFACE_TOKEN=your_huggingface_token
Windows Powershell:
$env:HUGGINGFACE_TOKEN="your_huggingface_token"
Windows CMD:
set HUGGINGFACE_TOKEN=your_huggingface_token
Or use a .env file:
echo "HUGGINGFACE_TOKEN=your_huggingface_token" > .env
-
Install Appropriate CUDA version for PyTorch:
- Navigate to the PyTorch installation page and select the appropriate CUDA version for your system.
- Install PyTorch with the correct CUDA version. For example, for CUDA 12.6 on Windows, you can use:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
-
Run the Application:
modelforge run -
Done!: Navigate to http://localhost:8000 in your browser and get started!
Running the Application Again in the Future
- Start the Application:
modelforge run - Navigate to the App:
Open your browser and go to http://localhost:8000.
Stopping the Application
To stop the application and free up resources, press Ctrl+C in the terminal running the app.
📂 Dataset Format
{"input": "Enter a really long article here...", "output": "Short summary."},
{"input": "Enter the poem topic here...", "output": "Roses are red..."}
🤝 Contributing Model Recommendations
ModelForge uses a modular configuration system for model recommendations. Contributors can easily add new recommended models by adding configuration files to the model_configs/ directory. Each hardw[...]
See the Model Configuration Guide for detailed instructions on how to add new model recommendations.
🛠 Tech Stack
transformers+peft(LoRA finetuning)bitsandbytes(4-bit quantization)React(UI)FastAPI(Backend)Python(Backend)React.JS(Frontend)
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
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 modelforge_finetuning-2.0.0.tar.gz.
File metadata
- Download URL: modelforge_finetuning-2.0.0.tar.gz
- Upload date:
- Size: 250.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
398d7b40c054447840c267817b9d98c2f71b2800b8162f1db8276784e16f9e56
|
|
| MD5 |
4ec441dbbadd635310f1f466af11c270
|
|
| BLAKE2b-256 |
2828a1fb4780a6fec798cc49980a9f13588a49d68bba9681735cd63876c32632
|
Provenance
The following attestation bundles were made for modelforge_finetuning-2.0.0.tar.gz:
Publisher:
workflow.yaml on RETR0-OS/ModelForge
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modelforge_finetuning-2.0.0.tar.gz -
Subject digest:
398d7b40c054447840c267817b9d98c2f71b2800b8162f1db8276784e16f9e56 - Sigstore transparency entry: 702310136
- Sigstore integration time:
-
Permalink:
RETR0-OS/ModelForge@efd284a8aea3c55ad4048505aaf091e9ea03e149 -
Branch / Tag:
refs/tags/2.0.0 - Owner: https://github.com/RETR0-OS
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yaml@efd284a8aea3c55ad4048505aaf091e9ea03e149 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modelforge_finetuning-2.0.0-py3-none-any.whl.
File metadata
- Download URL: modelforge_finetuning-2.0.0-py3-none-any.whl
- Upload date:
- Size: 283.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce1458a1ec4e8a53744491ada0197a9587300e2b2e695b36170264e3126464a1
|
|
| MD5 |
f5e41207d11d3b7c3d2f879643d43521
|
|
| BLAKE2b-256 |
45cd4fcb615ff2878e8c214b9acf4d584e8628fb52c9b29ab7326d50555eac1f
|
Provenance
The following attestation bundles were made for modelforge_finetuning-2.0.0-py3-none-any.whl:
Publisher:
workflow.yaml on RETR0-OS/ModelForge
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modelforge_finetuning-2.0.0-py3-none-any.whl -
Subject digest:
ce1458a1ec4e8a53744491ada0197a9587300e2b2e695b36170264e3126464a1 - Sigstore transparency entry: 702310137
- Sigstore integration time:
-
Permalink:
RETR0-OS/ModelForge@efd284a8aea3c55ad4048505aaf091e9ea03e149 -
Branch / Tag:
refs/tags/2.0.0 - Owner: https://github.com/RETR0-OS
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yaml@efd284a8aea3c55ad4048505aaf091e9ea03e149 -
Trigger Event:
push
-
Statement type: