fix: Seamless not working with SDXL on Canvas

This commit is contained in:
blessedcoolant 2023-08-29 04:52:41 +12:00
parent fcb60a7a59
commit 87bb4d8f6e

View File

@ -2,17 +2,18 @@ import { RootState } from 'app/store/store';
import { SeamlessModeInvocation } from 'services/api/types'; import { SeamlessModeInvocation } from 'services/api/types';
import { NonNullableGraph } from '../../types/types'; import { NonNullableGraph } from '../../types/types';
import { import {
CANVAS_IMAGE_TO_IMAGE_GRAPH, CANVAS_COHERENCE_DENOISE_LATENTS,
CANVAS_TEXT_TO_IMAGE_GRAPH, CANVAS_INPAINT_GRAPH,
CANVAS_OUTPAINT_GRAPH,
DENOISE_LATENTS, DENOISE_LATENTS,
IMAGE_TO_IMAGE_GRAPH,
SDXL_CANVAS_IMAGE_TO_IMAGE_GRAPH, SDXL_CANVAS_IMAGE_TO_IMAGE_GRAPH,
SDXL_CANVAS_INPAINT_GRAPH,
SDXL_CANVAS_OUTPAINT_GRAPH,
SDXL_CANVAS_TEXT_TO_IMAGE_GRAPH, SDXL_CANVAS_TEXT_TO_IMAGE_GRAPH,
SDXL_DENOISE_LATENTS, SDXL_DENOISE_LATENTS,
SDXL_IMAGE_TO_IMAGE_GRAPH, SDXL_IMAGE_TO_IMAGE_GRAPH,
SDXL_TEXT_TO_IMAGE_GRAPH, SDXL_TEXT_TO_IMAGE_GRAPH,
SEAMLESS, SEAMLESS,
TEXT_TO_IMAGE_GRAPH,
} from './constants'; } from './constants';
export const addSeamlessToLinearGraph = ( export const addSeamlessToLinearGraph = (
@ -34,7 +35,9 @@ export const addSeamlessToLinearGraph = (
if ( if (
graph.id === SDXL_TEXT_TO_IMAGE_GRAPH || graph.id === SDXL_TEXT_TO_IMAGE_GRAPH ||
graph.id === SDXL_IMAGE_TO_IMAGE_GRAPH graph.id === SDXL_IMAGE_TO_IMAGE_GRAPH ||
graph.id === SDXL_CANVAS_TEXT_TO_IMAGE_GRAPH ||
graph.id === SDXL_CANVAS_IMAGE_TO_IMAGE_GRAPH
) { ) {
denoisingNodeId = SDXL_DENOISE_LATENTS; denoisingNodeId = SDXL_DENOISE_LATENTS;
} }
@ -51,47 +54,54 @@ export const addSeamlessToLinearGraph = (
) )
); );
graph.edges.push(
{
source: {
node_id: modelLoaderNodeId,
field: 'unet',
},
destination: {
node_id: SEAMLESS,
field: 'unet',
},
},
{
source: {
node_id: modelLoaderNodeId,
field: 'vae',
},
destination: {
node_id: SEAMLESS,
field: 'vae',
},
},
{
source: {
node_id: SEAMLESS,
field: 'unet',
},
destination: {
node_id: denoisingNodeId,
field: 'unet',
},
}
);
if ( if (
graph.id === TEXT_TO_IMAGE_GRAPH || graph.id == CANVAS_INPAINT_GRAPH ||
graph.id === IMAGE_TO_IMAGE_GRAPH || graph.id === CANVAS_OUTPAINT_GRAPH ||
graph.id === SDXL_TEXT_TO_IMAGE_GRAPH || graph.id === SDXL_CANVAS_INPAINT_GRAPH ||
graph.id === SDXL_IMAGE_TO_IMAGE_GRAPH || graph.id === SDXL_CANVAS_OUTPAINT_GRAPH
graph.id === CANVAS_TEXT_TO_IMAGE_GRAPH ||
graph.id === CANVAS_IMAGE_TO_IMAGE_GRAPH ||
graph.id === SDXL_CANVAS_TEXT_TO_IMAGE_GRAPH ||
graph.id == SDXL_CANVAS_IMAGE_TO_IMAGE_GRAPH
) { ) {
graph.edges.push( graph.edges.push({
{ source: {
source: { node_id: SEAMLESS,
node_id: modelLoaderNodeId, field: 'unet',
field: 'unet',
},
destination: {
node_id: SEAMLESS,
field: 'unet',
},
}, },
{ destination: {
source: { node_id: CANVAS_COHERENCE_DENOISE_LATENTS,
node_id: modelLoaderNodeId, field: 'unet',
field: 'vae',
},
destination: {
node_id: SEAMLESS,
field: 'vae',
},
}, },
{ });
source: {
node_id: SEAMLESS,
field: 'unet',
},
destination: {
node_id: denoisingNodeId,
field: 'unet',
},
}
);
} }
}; };