Instructions to use Honeyumasree/bubble-app-builder-v1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Honeyumasree/bubble-app-builder-v1 with Transformers:
# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("Honeyumasree/bubble-app-builder-v1", device_map="auto") - PEFT
How to use Honeyumasree/bubble-app-builder-v1 with PEFT:
Task type is invalid.
- Notebooks
- Google Colab
- Kaggle
Bubble App Builder v1
A LoRA fine-tuned version of Qwen2.5-1.5B-Instruct trained to generate structured app specifications from natural language prompts.
Model Description
Given a plain English app description, the model generates a structured specification including app name, pages, features, database schema, and authentication requirements.
Example
Input: Build a fitness app where users track workouts and goals
Output:
App: FitLog
Pages: Home, Log Workout, Progress, Goals, History
Features: Log workout, Set goal, Track streak, View chart, Export data
Database: Workouts table โ type, duration, calories, date. Goals table โ target, metric, deadline
Auth: User login required
How to use
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
import torch
base_model = "Qwen/Qwen2.5-1.5B-Instruct"
adapter = "Honeyumasree/bubble-app-builder-v1"
tokenizer = AutoTokenizer.from_pretrained(base_model)
model = AutoModelForCausalLM.from_pretrained(base_model, torch_dtype=torch.float16, device_map="auto")
model = PeftModel.from_pretrained(model, adapter)
messages = [
{"role": "system", "content": "You generate structured app specifications from user requests."},
{"role": "user", "content": "Build a recipe sharing app where users post and discover meals"}
]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(text, return_tensors="pt").to("cuda")
with torch.no_grad():
outputs = model.generate(**inputs, max_new_tokens=200, do_sample=False)
input_length = inputs["input_ids"].shape[1]
response = tokenizer.decode(outputs[0][input_length:], skip_special_tokens=True)
print(response)
Training details
- Base model: Qwen/Qwen2.5-1.5B-Instruct
- Method: LoRA fine-tuning with 4-bit quantization (QLoRA)
- Dataset: 200 custom app specification examples across 15+ domains including healthcare, finance, education, travel, social, and enterprise apps
- LoRA config: r=8, alpha=16, dropout=0.05
- Optimizer: paged_adamw_8bit
- Epochs: 5
- Hardware: Google Colab T4 GPU
- Framework: Hugging Face TRL + PEFT
Training results
| Epoch | Training Loss | Validation Loss |
|---|---|---|
| 1 | 3.036 | 2.704 |
| 2 | 2.565 | 2.249 |
| 3 | 2.222 | 1.891 |
| 4 | 1.882 | 1.710 |
| 5 | 1.629 | 1.653 |
v2 Roadmap
300+ additional training examples
Stricter bracketed output format enforcement
Post-processing output formatter
Base model vs fine-tuned model comparison benchmark
Developed by: Honey Umasree Pentakota
Model type: text-generation
Language(s) (NLP): English
License: apache-2.0
Repository:https://github.com/honeyumasree01