Diferència entre revisions de la pàgina «Models locals IA»
| Línia 509: | Línia 509: | ||
==Model FLUX.1 Kontext [dev]== | ==Model FLUX.1 Kontext [dev]== | ||
| − | + | # A ComfyUI, ves a Workflow → Browse Templates i busca Flux Kontext Dev (dins l’apartat Flux). | |
| − | + | # Quan facis Run et dirà que falta el model. Descarrega flux1-dev-kontext_fp8_scaled.safetensors i mou-lo a models/diffusion_models/, com vas fer ahir. Si et demana algun altre fitxer, mira si ja el tens a text_encoders o vae. | |
| − | + | # Prem R per refrescar. | |
| − | + | # Al node Load Image, clica choose file to upload i tria la teva foto. | |
| − | + | # Escriu la instrucció en anglès al quadre de text i prem Run. | |
{{Autor}}, octubre 2026 | {{Autor}}, octubre 2026 | ||
Revisió del 15:53, 15 oct 2026
Contingut
Generació d'imatges
prompt
amb una targeta RTX 5060 Ti 16GB, puc tenir algun model IA per poder fer imatges artístiques tipus watercolor? Sí, i força bé: 16 GB de VRAM és la quantitat que importa per a la generació d’imatges en local, i n’hi ha prou per als models bons actuals. Què pots fer servir -Flux.1 (dev o schnell): és el model obert de més qualitat i el que segueix millor les instruccions. En versió quantitzada (FP8, o GGUF Q8) cap còmodament en 16 GB. -Stable Diffusion 3.5 Large: a FP8 baixa d’uns 18 GB a uns 11 GB de VRAM, així que hi cap. -SDXL: és més antic, però va molt ràpid en la teva targeta i té el catàleg més gran de LoRA d’estil aquarel·la (a Civitai n’hi ha moltes). Per a estils artístics sovint és el més pràctic.
ComfyUI: és l’estàndard ara mateix. Funciona amb nodes, té una mica de corba d’aprenentatge, però hi ha workflows ja fets per a img2img + ControlNet que només has de carregar. Amb ComfUI puc fer servir el model Flux.1 (dev) i provar la generació d'imatges a partir de prompts.
Instal·lació ComfyUI. Model Flux.1
Descarregar ComfyUI i crear el venv, i activar-lo:
git clone https://github.com/comfyanonymous/ComfyUI.git cd ComfyUI python -m venv venv source venv/bin/activate
Instal·lar PyTorch amb CUDA 12.8, comprova que detecta la GPU, Instal·lar les dependències de ComfyUI:
pip install --upgrade pip pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128 python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))" pip install -r requirements.txt
Descarregar el model Flux:
pip install -U huggingface_hub hf download Comfy-Org/flux1-dev flux1-dev-fp8.safetensors --local-dir models/checkpoints
(no em demana autenticació)
Finalment ja podem arrencar ComfyUI:
python main.py ... Obre http://127.0.0.1:8188 al navegador.
Al menú Workflow → Browse Templates hi ha plantilles de Flux ja muntades. Tria-la, comprova que el node Load Checkpoint apunta al fitxer flux1-dev-fp8.safetensors i prem Run.
Primera prova: flux_aquarella.json
Arrosseguem el JSON a l'espai de treball i ens monta tot el flux per crear una imatge a partir d'un prompt:
{
"last_node_id": 8,
"last_link_id": 10,
"nodes": [
{
"id": 1,
"type": "CheckpointLoaderSimple",
"pos": [
40,
200
],
"size": [
320,
100
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
1
],
"slot_index": 0
},
{
"name": "CLIP",
"type": "CLIP",
"links": [
2,
3
],
"slot_index": 1
},
{
"name": "VAE",
"type": "VAE",
"links": [
9
],
"slot_index": 2
}
],
"properties": {
"Node name for S&R": "CheckpointLoaderSimple"
},
"widgets_values": [
"flux1-dev-fp8.safetensors"
]
},
{
"id": 2,
"type": "CLIPTextEncode",
"pos": [
420,
60
],
"size": [
420,
180
],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 2
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"links": [
4
],
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"loose watercolor portrait of an elderly man with grey hair, deep in thought, wet-on-wet technique, soft pigment blooms, visible paper texture, warm ochre and indigo washes, white paper background, expressive brushstrokes"
]
},
{
"id": 3,
"type": "FluxGuidance",
"pos": [
880,
60
],
"size": [
260,
60
],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [
{
"name": "conditioning",
"type": "CONDITIONING",
"link": 4
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"links": [
5
],
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "FluxGuidance"
},
"widgets_values": [
3.5
]
},
{
"id": 4,
"type": "CLIPTextEncode",
"pos": [
420,
290
],
"size": [
420,
90
],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 3
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"links": [
6
],
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
""
]
},
{
"id": 5,
"type": "EmptySD3LatentImage",
"pos": [
420,
430
],
"size": [
320,
110
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"links": [
7
],
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "EmptySD3LatentImage"
},
"widgets_values": [
1024,
1024,
1
]
},
{
"id": 6,
"type": "KSampler",
"pos": [
1180,
180
],
"size": [
320,
260
],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 1
},
{
"name": "positive",
"type": "CONDITIONING",
"link": 5
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 6
},
{
"name": "latent_image",
"type": "LATENT",
"link": 7
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"links": [
8
],
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "KSampler"
},
"widgets_values": [
0,
"randomize",
20,
1.0,
"euler",
"simple",
1.0
]
},
{
"id": 7,
"type": "VAEDecode",
"pos": [
1540,
180
],
"size": [
200,
50
],
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 8
},
{
"name": "vae",
"type": "VAE",
"link": 9
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
10
],
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "VAEDecode"
},
"widgets_values": []
},
{
"id": 8,
"type": "SaveImage",
"pos": [
1780,
180
],
"size": [
520,
560
],
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 10
}
],
"outputs": [],
"properties": {
"Node name for S&R": "SaveImage"
},
"widgets_values": [
"Flux_aquarella"
]
}
],
"links": [
[
1,
1,
0,
6,
0,
"MODEL"
],
[
2,
1,
1,
2,
0,
"CLIP"
],
[
3,
1,
1,
4,
0,
"CLIP"
],
[
4,
2,
0,
3,
0,
"CONDITIONING"
],
[
5,
3,
0,
6,
1,
"CONDITIONING"
],
[
6,
4,
0,
6,
2,
"CONDITIONING"
],
[
7,
5,
0,
6,
3,
"LATENT"
],
[
8,
6,
0,
7,
0,
"LATENT"
],
[
9,
1,
2,
7,
1,
"VAE"
],
[
10,
7,
0,
8,
0,
"IMAGE"
]
],
"groups": [],
"config": {},
"extra": {},
"version": 0.4
}
Una alternativa equivalent és anar a Workflow → Browse Templates i obrir la plantilla de Flux Dev, que també ve ja connectada.
Model Flux.1 Dev (text to image) (template)
prompt:
vull provar el model Flux.1 dev (text to image), que és una plantilla. I veig que per fer-lo funcionar em falta descarregar 4 models (quan faig Run em diu que falten aquests 4 models i em dóna l'opció de descarregar-los). Els he descarregat, però crec que només s'han descarregat, no s'han instal·lat. No sé què s'ha de fer ara.
He descarregat aquests models:
- flux1-dev.safetensors (o flux1-dev-fp8...) 11–23 GB el model que genera la imatge
- t5xxl_fp16.safetensors (o t5xxl_fp8...) 5–10 GB codificador de text principal
- clip_l.safetensors 250 MB codificador de text secundari
- ae.safetensors 330 MB el VAE (converteix el resultat en píxels)
S'ha de moure aquests fitxers a la carpeta que els correspon.
- flux1-dev... → models/diffusion_models/
- t5xxl... i clip_l... → models/text_encoders/
- ae.safetensors → models/vae/
Prem la tecla R a la finestra de ComfyUI per refrescar la llista de models, o bé atura’l (Ctrl+C) i torna a executar python main.py.
Comprova els desplegables de la plantilla
- Load Diffusion Model: flux1-dev...
- DualCLIPLoader: clip_l i t5xxl, amb el tipus flux
- Load VAE: ae.safetensors
I ara Run. És a dir, n'hi ha prou en moure els fitxers descarregats a la carpeta adequada.
NOTA: Si el model és la versió de 23 GB (fp16), no cap sencer en els 16 GB de la targeta. Funcionarà igualment, perquè ComfyUI en passa una part a la RAM, però anirà més lent. Al node Load Diffusion Model posa weight_dtype a fp8_e4m3fn i anirà molt més fluid. Si tens poca RAM (menys de 32 GB), millor descarregar també la versió fp8 del T5 (t5xxl_fp8_e4m3fn.safetensors).
NOTA: Si abans ja vas descarregar el flux1-dev-fp8.safetensors tot-en-un de les meves instruccions, ja tens tot el necessari i aquests 4 fitxers no et calen. El workflow flux_aquarella.json que et vaig passar fa servir aquell fitxer únic. Pots fer servir un camí o l’altre; el resultat és pràcticament el mateix.
Model FLUX.1 Kontext [dev]
- A ComfyUI, ves a Workflow → Browse Templates i busca Flux Kontext Dev (dins l’apartat Flux).
- Quan facis Run et dirà que falta el model. Descarrega flux1-dev-kontext_fp8_scaled.safetensors i mou-lo a models/diffusion_models/, com vas fer ahir. Si et demana algun altre fitxer, mira si ja el tens a text_encoders o vae.
- Prem R per refrescar.
- Al node Load Image, clica choose file to upload i tria la teva foto.
- Escriu la instrucció en anglès al quadre de text i prem Run.
creat per Joan Quintana Compte, octubre 2026