From 749cf8437431e13f25e94fd772f86f58f586409c Mon Sep 17 00:00:00 2001 From: Sean Sube Date: Sat, 17 Feb 2024 15:31:34 -0600 Subject: [PATCH] send experimental params to server --- gui/src/client/api.ts | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/gui/src/client/api.ts b/gui/src/client/api.ts index fb8f34df..56a690c3 100644 --- a/gui/src/client/api.ts +++ b/gui/src/client/api.ts @@ -17,6 +17,7 @@ import { ExtrasFile } from '../types/model.js'; import { BaseImgParams, BlendParams, + ExperimentalParams, HighresParams, ImageSize, Img2ImgJSONParams, @@ -60,12 +61,21 @@ export interface ImageJSON { highres?: HighresParams; img2img?: Img2ImgJSONParams; inpaint?: InpaintJSONParams; + experimental?: ExperimentalParams; +} + +export interface JSONInner { + [key: string]: string | number | boolean | undefined | JSONInner; +} + +export interface JSONBody extends JSONInner { + params: JSONInner; } export function makeImageJSON(params: ImageJSON): string { - const { model, base, img2img, inpaint, size, border, upscale, highres } = params; + const { model, base, img2img, inpaint, size, border, upscale, highres, experimental } = params; - const body: Record> = { + const body: JSONBody = { device: { platform: model.platform, }, @@ -153,6 +163,23 @@ export function makeImageJSON(params: ImageJSON): string { }; } + if (doesExist(experimental)) { + body.experimental = { + latentSymmetry: { + enabled: experimental.latentSymmetry.enabled, + gradientStart: experimental.latentSymmetry.gradientStart, + gradientEnd: experimental.latentSymmetry.gradientEnd, + lineOfSymmetry: experimental.latentSymmetry.lineOfSymmetry, + }, + promptEditing: { + enabled: experimental.promptEditing.enabled, + promptFilter: experimental.promptEditing.filter, + removeTokens: experimental.promptEditing.removeTokens, + addSuffix: experimental.promptEditing.addSuffix, + }, + }; + } + return JSON.stringify(body); }