Skip to content

Commit f79d4cb

Browse files
Merge branch 'main' into feat/missing-models-filter
2 parents 4ba72a7 + 8bf4d1e commit f79d4cb

File tree

3 files changed

+143
-24
lines changed

3 files changed

+143
-24
lines changed

invokeai/app/invocations/flux_model_loader.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
invocation,
77
invocation_output,
88
)
9-
from invokeai.app.invocations.fields import FieldDescriptions, Input, InputField, OutputField
9+
from invokeai.app.invocations.fields import FieldDescriptions, InputField, OutputField
1010
from invokeai.app.invocations.model import CLIPField, ModelIdentifierField, T5EncoderField, TransformerField, VAEField
1111
from invokeai.app.services.shared.invocation_context import InvocationContext
1212
from invokeai.app.util.t5_model_identifier import (
@@ -37,28 +37,25 @@ class FluxModelLoaderOutput(BaseInvocationOutput):
3737
title="Main Model - FLUX",
3838
tags=["model", "flux"],
3939
category="model",
40-
version="1.0.6",
40+
version="1.0.7",
4141
)
4242
class FluxModelLoaderInvocation(BaseInvocation):
4343
"""Loads a flux base model, outputting its submodels."""
4444

4545
model: ModelIdentifierField = InputField(
4646
description=FieldDescriptions.flux_model,
47-
input=Input.Direct,
4847
ui_model_base=BaseModelType.Flux,
4948
ui_model_type=ModelType.Main,
5049
)
5150

5251
t5_encoder_model: ModelIdentifierField = InputField(
5352
description=FieldDescriptions.t5_encoder,
54-
input=Input.Direct,
5553
title="T5 Encoder",
5654
ui_model_type=ModelType.T5Encoder,
5755
)
5856

5957
clip_embed_model: ModelIdentifierField = InputField(
6058
description=FieldDescriptions.clip_embed_model,
61-
input=Input.Direct,
6259
title="CLIP Embed",
6360
ui_model_type=ModelType.CLIPEmbed,
6461
)

invokeai/frontend/web/public/locales/it.json

Lines changed: 132 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,14 @@
276276
"promptHistoryNext": {
277277
"title": "Prossimo prompt nella cronologia",
278278
"desc": "Quando il prompt è attivo, passa al prompt successivo (più recente) nella cronologia."
279+
},
280+
"promptWeightUp": {
281+
"title": "Aumenta il peso della selezione del prompt",
282+
"desc": "Quando il prompt è attivo e il testo è selezionato, aumenta il peso del prompt selezionato."
283+
},
284+
"promptWeightDown": {
285+
"title": "Riduce il peso della selezione del prompt",
286+
"desc": "Quando il prompt è attivo e il testo è selezionato, riduce il peso del prompt selezionato."
279287
}
280288
},
281289
"hotkeys": "Tasti di scelta rapida",
@@ -568,7 +576,32 @@
568576
"desc": "Aggiungi/Rimuovi contrassegno all'immagine selezionata.",
569577
"title": "Aggiungi / Rimuovi contrassegno immagine"
570578
}
571-
}
579+
},
580+
"editMode": "Modalità modifica",
581+
"viewMode": "Modalità visualizzazione",
582+
"editHotkey": "Modifica tasto di scelta rapida",
583+
"addHotkey": "Aggiungi tasto di scelta rapida",
584+
"resetToDefault": "Ripristina predefinito",
585+
"resetAll": "Ripristina tutto ai predefiniti",
586+
"resetAllConfirmation": "Vuoi davvero ripristinare tutti i tasti di scelta rapida ai valori predefiniti? Questa operazione non può essere annullata.",
587+
"enterHotkeys": "Inserisci i tasti di scelta rapida, separati da virgole",
588+
"save": "Salva",
589+
"cancel": "Annulla",
590+
"modifiers": "Modificatori",
591+
"syntaxHelp": "Guida alla sintassi",
592+
"combineWith": "Combina con +",
593+
"multipleHotkeys": "Tasti di scelta rapida multipli con virgola",
594+
"validKeys": "Tasti validi",
595+
"help": "Aiuto",
596+
"noHotkeysRecorded": "Nessun tasto di scelta rapida registrato ancora",
597+
"pressKeys": "Premi i tasti...",
598+
"setHotkey": "Imposta",
599+
"setAnother": "Imposta un'altro",
600+
"removeLastHotkey": "Rimuovi l'ultimo tasto di scelta rapida",
601+
"clearAll": "Cancella tutto",
602+
"duplicateWarning": "Questo tasto di scelta rapida è già registrato",
603+
"conflictWarning": "è già utilizzato da \"{{hotkeyTitle}}\"",
604+
"thisHotkey": "questo tasto di scelta rapida"
572605
},
573606
"modelManager": {
574607
"modelManager": "Gestione Modelli",
@@ -748,7 +781,30 @@
748781
"reidentifyTooltip": "Se un modello non è stato installato correttamente (ad esempio, ha il tipo sbagliato o non funziona), puoi provare a identificarlo nuovamente. Questo reimposterà tutte le impostazioni personalizzate che potresti aver applicato.",
749782
"reidentifySuccess": "Modello reidentificato con successo",
750783
"reidentifyUnknown": "Impossibile identificare il modello",
751-
"reidentifyError": "Errore durante la reidentificazione del modello"
784+
"reidentifyError": "Errore durante la reidentificazione del modello",
785+
"flux2KleinQwen3EncoderPlaceholder": "Dal modello principale",
786+
"flux2KleinQwen3Encoder": "Encoder Qwen3 (opzionale)",
787+
"flux2KleinVaePlaceholder": "Dal modello principale",
788+
"flux2KleinVae": "VAE (opzionale)",
789+
"zImageQwen3SourcePlaceholder": "Obbligatorio se VAE/Encoder è vuoto",
790+
"zImageQwen3Source": "Modello sorgente Qwen3 e VAE",
791+
"zImageQwen3EncoderPlaceholder": "Dal modello sorgente Qwen3",
792+
"zImageQwen3Encoder": "Encoder Qwen3 (opzionale)",
793+
"zImageVaePlaceholder": "Dal modello sorgente VAE",
794+
"qwen3Encoder": "Encoder Quen3",
795+
"selectAll": "Seleziona tutto",
796+
"deleteModels": "Elimina modelli",
797+
"invalidPathFormat": "Il percorso deve essere un percorso assoluto (ad esempio, C:\\Models\\... o /home/user/models/...)",
798+
"pathUpdateFailed": "Impossibile aggiornare il percorso del modello",
799+
"pathUpdated": "Percorso del modello aggiornato correttamente",
800+
"newPathPlaceholder": "Inserisci un nuovo percorso...",
801+
"newPath": "Nuovo percorso",
802+
"currentPath": "Percorso attuale",
803+
"updatePathDescription": "Inserisci il nuovo percorso del file o della directory del modello. Utilizza questo percorso se hai spostato manualmente i file del modello sul disco.",
804+
"updatePathTooltip": "Aggiorna il percorso del file per questo modello se hai spostato i file del modello in una nuova posizione.",
805+
"updatePath": "Aggiorna percorso",
806+
"actions": "Azioni in blocco",
807+
"zImageVae": "VAE (opzionale)"
752808
},
753809
"parameters": {
754810
"images": "Immagini",
@@ -836,7 +892,10 @@
836892
"fluxModelIncompatibleBboxWidth": "$t(parameters.invoke.fluxRequiresDimensionsToBeMultipleOf16), la larghezza del riquadro è {{width}}",
837893
"fluxModelIncompatibleBboxHeight": "$t(parameters.invoke.fluxRequiresDimensionsToBeMultipleOf16), l'altezza del riquadro è {{height}}",
838894
"fluxModelIncompatibleScaledBboxWidth": "$t(parameters.invoke.fluxRequiresDimensionsToBeMultipleOf16), la larghezza ridimensionata del riquadro è {{width}}",
839-
"fluxModelIncompatibleScaledBboxHeight": "$t(parameters.invoke.fluxRequiresDimensionsToBeMultipleOf16), l'altezza ridimensionata del riquadro è {{height}}"
895+
"fluxModelIncompatibleScaledBboxHeight": "$t(parameters.invoke.fluxRequiresDimensionsToBeMultipleOf16), l'altezza ridimensionata del riquadro è {{height}}",
896+
"noZImageQwen3EncoderSourceSelected": "Nessuna sorgente Qwen3 Encoder: seleziona il modello Qwen3 Encoder o Qwen3 Source",
897+
"noZImageVaeSourceSelected": "Nessuna sorgente VAE: selezionare il modello di sorgente VAE (FLUX) o Qwen3",
898+
"noQwen3EncoderModelSelected": "Nessun modello di encoder Qwen3 selezionato per la generazione Klein di FLUX2"
840899
},
841900
"useCpuNoise": "Usa la CPU per generare rumore",
842901
"iterations": "Iterazioni",
@@ -872,7 +931,11 @@
872931
"images_withCount_other": "Immagini",
873932
"resolution": "Risoluzione",
874933
"downloadImage": "Scarica l'immagine",
875-
"showOptionsPanel": "Mostra pannello laterale (O o T)"
934+
"showOptionsPanel": "Mostra pannello laterale (O o T)",
935+
"seedVarianceRandomizePercent": "Percentuale di variazione",
936+
"seedVarianceStrength": "Intensità della varianza",
937+
"seedVarianceEnabled": "Potenziamento della varianza del seme",
938+
"colorCompensation": "Compensazione Colore"
876939
},
877940
"settings": {
878941
"models": "Modelli",
@@ -1013,7 +1076,9 @@
10131076
"noInpaintMaskSelected": "Nessuna maschera di inpaint selezionata",
10141077
"noInpaintMaskSelectedDesc": "Seleziona una maschera di inpaint da invertire",
10151078
"invalidBbox": "Riquadro di delimitazione non valido",
1016-
"invalidBboxDesc": "Il riquadro di delimitazione non ha dimensioni valide"
1079+
"invalidBboxDesc": "Il riquadro di delimitazione non ha dimensioni valide",
1080+
"kleinEncoderClearedDescription": "Selezionare un encoder Qwen3 compatibile per la nuova variante del modello Klein",
1081+
"kleinEncoderCleared": "Encoder Qwen3 cancellato"
10171082
},
10181083
"accessibility": {
10191084
"invokeProgressBar": "Barra di avanzamento generazione",
@@ -1785,7 +1850,7 @@
17851850
"fluxDevLicense": {
17861851
"heading": "Licenza non commerciale",
17871852
"paragraphs": [
1788-
"I modelli FLUX.1 [dev] sono concessi in licenza con la licenza non commerciale FLUX [dev]. Per utilizzare questo tipo di modello per scopi commerciali in Invoke, visita il nostro sito Web per saperne di più."
1853+
"Questo modello è concesso in licenza esclusivamente per uso non commerciale. I modelli FLUX.1 [dev] utilizzano la licenza FLUX.1 [dev] Non-Commercial, mentre FLUX.2 Klein 9B utilizza la licenza FLUX.2 Non-Commercial."
17891854
]
17901855
},
17911856
"optimizedDenoising": {
@@ -1850,6 +1915,40 @@
18501915
"Controlla la sovrapposizione tra riquadri adiacenti durante l'ampliamento. Valori di sovrapposizione più elevati aiutano a ridurre le giunzioni visibili tra i riquadri, ma consuma più memoria.",
18511916
"Il valore predefinito di 128 è adatto alla maggior parte dei casi, ma è possibile modificarlo in base alle proprie esigenze specifiche e ai limiti di memoria."
18521917
]
1918+
},
1919+
"colorCompensation": {
1920+
"paragraphs": [
1921+
"Regola l'immagine di input per ridurre le variazioni di colore durante l'inpainting o img2img (solo SDXL)."
1922+
],
1923+
"heading": "Compensazione del colore"
1924+
},
1925+
"seedVarianceRandomizePercent": {
1926+
"paragraphs": [
1927+
"Percentuale di valori di incorporamento che ricevono rumore (1-100%).",
1928+
"Valori più bassi creano modelli di rumore più selettivi, mentre il 100% influisce su tutti i valori in egual misura."
1929+
],
1930+
"heading": "Percentuale di variazione"
1931+
},
1932+
"seedVarianceStrength": {
1933+
"paragraphs": [
1934+
"Controlla l'intensità del rumore aggiunto agli embedding. L'intensità viene calibrata automaticamente in base alla deviazione standard dell'embedding.",
1935+
"Valori inferiori a 0.1 produrranno variazioni lievi, che aumenteranno fino a diventare più marcate a 0,5. Valori superiori a 0.5 potrebbero portare a risultati inaspettati."
1936+
],
1937+
"heading": "Intensità della varianza"
1938+
},
1939+
"seedVarianceEnhancer": {
1940+
"paragraphs": [
1941+
"Z-Image-Turbo può produrre immagini relativamente simili con semi diversi. Questa funzionalità aggiunge rumore basato sui semi agli embedding di testo per aumentare la variabilità visiva mantenendo la riproducibilità.",
1942+
"Abilita questa opzione per ottenere risultati più diversificati quando esplori semi diversi."
1943+
],
1944+
"heading": "Potenziamento varianza del seme"
1945+
},
1946+
"fluxDypePreset": {
1947+
"paragraphs": [
1948+
"L'estrapolazione dinamica della posizione (DyPE) migliora la qualità della generazione FLUX a risoluzioni superiori alla dimensione di addestramento (1024px).",
1949+
"Off: generazione standard. Auto: abilita automaticamente per immagini > 1536px. 4K: impostazioni ottimizzate per output con risoluzione 4K."
1950+
],
1951+
"heading": "DyPE (alta risoluzione)"
18531952
}
18541953
},
18551954
"sdxl": {
@@ -1901,7 +2000,11 @@
19012000
"seamlessYAxis": "Asse Y senza giunte",
19022001
"vae": "VAE",
19032002
"parsingFailed": "Analisi non riuscita",
1904-
"recallParameter": "Richiama {{label}}"
2003+
"recallParameter": "Richiama {{label}}",
2004+
"dypePreset": "Preimpostazione DyPE",
2005+
"seedVarianceRandomizePercent": "Casualità della varianza del seme %",
2006+
"seedVarianceEnabled": "Varianza seme abilitata",
2007+
"seedVarianceStrength": "Intensità della varianza del seme"
19052008
},
19062009
"hrf": {
19072010
"metadata": {
@@ -2046,7 +2149,8 @@
20462149
"noDescription": "Nessuna descrizione",
20472150
"searchWorkflows": "Ricerca flussi di lavoro",
20482151
"clearWorkflowSearchFilter": "Cancella filtro di ricerca del flusso di lavoro",
2049-
"openLibrary": "Apri libreria"
2152+
"openLibrary": "Apri libreria",
2153+
"tags": "Etichette"
20502154
},
20512155
"accordions": {
20522156
"compositing": {
@@ -2321,6 +2425,9 @@
23212425
"hue": "Tonalità (HSV)",
23222426
"saturation": "Saturazione (HSV)",
23232427
"value": "Valore (HSV)"
2428+
},
2429+
"pbr_maps": {
2430+
"label": "Crea mappe PBR"
23242431
}
23252432
},
23262433
"fill": {
@@ -2381,7 +2488,10 @@
23812488
"fitMode": "Adattamento",
23822489
"fitModeContain": "Contieni",
23832490
"fitModeFill": "Riempi",
2384-
"fitModeCover": "Copri"
2491+
"fitModeCover": "Copri",
2492+
"smoothingMode": "Modalità di ricampionamento",
2493+
"smoothingDesc": "Applica un ricampionamento di alta qualità lato backend alla conferma delle trasformazioni.",
2494+
"smoothing": "Smussamento"
23852495
},
23862496
"stagingArea": {
23872497
"next": "Successiva",
@@ -2580,7 +2690,11 @@
25802690
"replaceCurrent": "Sostituisci l'attuale",
25812691
"uploadOrDragAnImage": "Trascina un'immagine dalla galleria o <UploadButton>carica un'immagine</UploadButton>.",
25822692
"sendingToCanvas": "Predisponi le generazioni sulla Tela",
2583-
"viewProgressInViewer": "Visualizza i progressi e gli output nel <Btn>Visualizzatore immagini</Btn>."
2693+
"viewProgressInViewer": "Visualizza i progressi e gli output nel <Btn>Visualizzatore immagini</Btn>.",
2694+
"extractMaskedAreaMissingData": "Impossibile estrarre: mancano i dati dell'immagine o della maschera.",
2695+
"extractMaskedAreaFailed": "Impossibile estrarre l'area mascherata.",
2696+
"maskLayerEmpty": "Il livello maschera è vuoto",
2697+
"extractRegion": "Estrai regione"
25842698
},
25852699
"ui": {
25862700
"tabs": {
@@ -2746,7 +2860,9 @@
27462860
"noTemplates": "Nessun modello",
27472861
"acceptedColumnsKeys": "Colonne/chiavi accettate:",
27482862
"promptTemplateCleared": "Modello di prompt cancellato",
2749-
"togglePromptPreviews": "Attiva/disattiva le anteprime dei prompt"
2863+
"togglePromptPreviews": "Attiva/disattiva le anteprime dei prompt",
2864+
"noMatchingPresets": "Nessuna preimpostazione corrispondente",
2865+
"selectPreset": "Seleziona stile predefinito"
27502866
},
27512867
"newUserExperience": {
27522868
"gettingStartedSeries": "Desideri maggiori informazioni? Consulta la nostra <LinkComponent>Getting Started Series</LinkComponent> per suggerimenti su come sfruttare appieno il potenziale di Invoke Studio.",
@@ -2761,11 +2877,12 @@
27612877
"readReleaseNotes": "Leggi le note di rilascio",
27622878
"watchRecentReleaseVideos": "Guarda i video su questa versione",
27632879
"items": [
2764-
"Gestione modelli: se non è possibile identificare un modello durante l'installazione, ora è possibile selezionare manualmente il tipo di modello e l'architettura.",
2765-
"Interno: sistema di identificazione dei modelli migliorato, che semplifica per i collaboratori l'aggiunta del supporto per nuovi modelli.",
2766-
"Strumento di ritaglio per immagini di riferimento"
2880+
"Supporto FLUX.2 Klein: InvokeAI ora supporta i nuovi modelli FLUX.2 Klein (varianti 4B e 9B) con formati GGUF, FP8 e Diffusers. Le funzionalità includono txt2img, img2img, inpainting e outpainting. Consultare la sezione \"Modelli di partenza\" per iniziare.",
2881+
"Il supporto DyPE per i modelli FLUX migliora le immagini ad alta risoluzione (da >1536 px fino a 4K). Vai alla sezione \"Opzioni avanzate\" per attivarlo.",
2882+
"Diversità Z-Image Turbo: attiva 'Seed Variance Enhancer' in 'Opzioni avanzate' per aggiungere diversità alle tue generazioni ZiT."
27672883
],
2768-
"watchUiUpdatesOverview": "Guarda la panoramica degli aggiornamenti dell'interfaccia utente"
2884+
"watchUiUpdatesOverview": "Guarda la panoramica degli aggiornamenti dell'interfaccia utente",
2885+
"takeUserSurvey": "📣 Facci sapere cosa ne pensi di InvokeAI. Partecipa al nostro sondaggio sull'esperienza utente!"
27692886
},
27702887
"system": {
27712888
"logLevel": {

invokeai/frontend/web/src/services/api/schema.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9339,18 +9339,23 @@ export type components = {
93399339
* @default true
93409340
*/
93419341
use_cache?: boolean;
9342-
/** @description Flux model (Transformer) to load */
9343-
model: components["schemas"]["ModelIdentifierField"];
9342+
/**
9343+
* @description Flux model (Transformer) to load
9344+
* @default null
9345+
*/
9346+
model?: components["schemas"]["ModelIdentifierField"] | null;
93449347
/**
93459348
* T5 Encoder
93469349
* @description T5 tokenizer and text encoder
9350+
* @default null
93479351
*/
9348-
t5_encoder_model: components["schemas"]["ModelIdentifierField"];
9352+
t5_encoder_model?: components["schemas"]["ModelIdentifierField"] | null;
93499353
/**
93509354
* CLIP Embed
93519355
* @description CLIP Embed loader
9356+
* @default null
93529357
*/
9353-
clip_embed_model: components["schemas"]["ModelIdentifierField"];
9358+
clip_embed_model?: components["schemas"]["ModelIdentifierField"] | null;
93549359
/**
93559360
* VAE
93569361
* @description VAE model to load

0 commit comments

Comments
 (0)