YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
PS-Design 2.6
Evolução incremental do PS-design-2.5 —
fine-tune contínuo do mesmo LoRA (r16 / alpha32, base Qwen/Qwen2.5-0.5B-Instruct),
treinado em 2× Tesla T4 em 102 min.
O que mudou vs 2.5
- Designs profissionais reais: o treino inclui HTML+CSS extraídos de 9 sites profissionais
reais (SaaS, agência, saúde digital, coaching, pilates, e-commerce, portfólio), convertidos em
arquivos HTML únicos e autônomos, com o CSS da própria página embutido em
<style>. Cada exemplo real foi repetido ~25× para pesar de verdade ao lado da destilação. - Auto-destilação: 55 páginas geradas pelo próprio 2.5 (30 nichos × 6 design systems), mantendo o estilo do modelo e evitando esquecimento catastrófico.
Treino
| Item | Valor |
|---|---|
| Init | adapter PS-design-2.5 (continuação) |
| LoRA | r16, α32, dropout 0.05, 7 projeções/camada |
| Dados | 55 destilados + 50 reais ×25 |
| Passos | 193 |
| LR | 8e-5 cosine, warmup 40 |
| Batch efetivo | 32 sequências |
| max_len | 1792 (loss só nos tokens do assistente) |
| eval_loss final | 0.64840 |
| Hardware | 2× Tesla T4 (Kaggle) |
Checkpoints intermediários: checkpoints/checkpoint-*. Exemplos gerados: exemplos/.
Uso
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
from peft import PeftModel
base = "Qwen/Qwen2.5-0.5B-Instruct"
tok = AutoTokenizer.from_pretrained(base)
m = AutoModelForCausalLM.from_pretrained(base, dtype=torch.float16, device_map="auto")
m = PeftModel.from_pretrained(m, "Pedro21613/PS-design-2.6")
SYS = ("Você é um designer front-end sênior especialista em páginas bonitas, modernas, "
"minimalistas e profissionais. Sempre responda com código HTML completo, responsivo, "
"usando Tailwind CSS via CDN, com gradientes, transições suaves, botões bonitos com hover, "
"animações e visual ultra-moderno.")
msgs = [{"role": "system", "content": SYS},
{"role": "user", "content": "Crie uma landing page para cafeteria artesanal, estilo aurora"}]
txt = tok.apply_chat_template(msgs, tokenize=False, add_generation_prompt=True)
out = m.generate(**tok(txt, return_tensors="pt").to(m.device),
max_new_tokens=1200, temperature=0.7, top_p=0.9, do_sample=True)
print(tok.decode(out[0], skip_special_tokens=True))
Dois estilos, controlados pelo system prompt
| System prompt | Formato da saída |
|---|---|
| "…usando Tailwind CSS via CDN…" | página com Tailwind via CDN (padrão do 2.5) |
"…CSS embutido em <style>, sem dependências externas…" |
arquivo único autônomo (estilo dos sites reais) |
Gerado em 2026-10-13 03:46 (UTC) no Kaggle.
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support