Merge pull request #3586 from DAurielS/novelai-image-update Added support for NovelAI Diffusion V4 Full via API to Image Generation extension.

590ad6235b8a6fefd1e04e9cc61dc60ef808fb6e

Cohee <18619528+Cohee1207@users.noreply.github.com>

Signed
1 files changed, +10 -2Ignore whitespace
public/scripts/extensions/stable-diffusion/index.js+10 -2
@@ -2011,6 +2011,10 @@ async function loadVladModels() {
20112011async function loadNovelModels() {
20122012 return [
20132013 {
2014+ value: 'nai-diffusion-4-full',
2015+ text: 'NAI Diffusion Anime V4 (Full)',
2016+ },
2017+ {
20142018 value: 'nai-diffusion-4-curated-preview',
20152019 text: 'NAI Diffusion Anime V4 (Curated Preview)',
20162020 },
@@ -2333,7 +2337,10 @@ function processReply(str) {
23332337 str = str.replaceAll('“', '');
23342338 str = str.replaceAll('\n', ', ');
23352339 str = str.normalize('NFD');
2336- str = str.replace(/[^a-zA-Z0-9.,:_(){}<>[\]\-']+/g, ' ');
2340+
2341+ // Strip out non-alphanumeric characters barring model syntax exceptions
2342+ str = str.replace(/[^a-zA-Z0-9.,:_(){}<>[\]\-'|#]+/g, ' ');
2343+
23372344 str = str.replace(/\s+/g, ' '); // Collapse multiple whitespaces into one
23382345 str = str.trim();
23392346
@@ -3227,7 +3234,8 @@ function getNovelParams() {
32273234 extension_settings.sd.scheduler = 'karras';
32283235 }
32293236
32303237 if (extension_settings.sd.sampler === 'ddim' || extension_settings.sd.model === 'nai-diffusion-4-curated-preview') {
3238+ ['nai-diffusion-4-curated-preview', 'nai-diffusion-4-full'].includes(extension_settings.sd.model)) {
32313239 sm = false;
32323240 sm_dyn = false;
32333241 }