erictik / midjourney-api

MidJourney client. Unofficial Node.js client
Apache License 2.0
1.64k stars 269 forks source link

Vary + Remix on Upscaled Image only works on either Strong or Subtle #248

Open tglanz opened 7 months ago

tglanz commented 7 months ago

the code that reproduces this issue or a replay of the bug

const { Midjourney } = require("midjourney");

async function main() {
    const client = new Midjourney({
        ServerId: '<>',
        ChannelId: '<>',
        SalaiToken: '<>',
        Ws: true,
    });

    const prompt1 = "A red boat --version 5.2 --turbo --stylize 250";
    const prompt2 = "A red boat with a big sail --version 5.2 --turbo --stylize 250";

    try {
        await client.init();

        console.log("Imagine");
        const imagineResult = await client.Imagine(prompt1);

        console.log("Upscale");
        const upscaleResult = await client.Upscale({
            index: 1,
            msgId: imagineResult.id,
            hash: imagineResult.hash,
            flags: imagineResult.flags,
        })

        for (const label of ["Vary (Strong)", "Vary (Subtle)"]) {
            const custom = upscaleResult.options
                .find(option => option.label === label);

            console.log(label);
            await client.Custom({
                msgId: upscaleResult.id,
                content: prompt2,
                flags: upscaleResult.flags,
                customId: custom.custom,
            });
        }
    } catch (err) {
        console.error(err);
    } finally {
        client.Close();
    }
}

main()
    .then(() => console.log("done"))
    .catch(err => console.error(err));

Describe the bug

Describe the bug

Variation+Remix using Custom API only works on Vary (Strong) action and hangs on the Vary (Subtle) action.

Expected behavior

Should work on either actions.

Additional Information

When executing the client.init function, discord opens the settings form an I see that the "High Variation Mode" is selected. It might be the reason. If so, how can we overcome this?

error log

None, just hangs.