{"id":172410,"date":"2025-08-15T10:50:00","date_gmt":"2025-08-15T01:50:00","guid":{"rendered":"https:\/\/support.questetra.com\/?p=172410"},"modified":"2025-08-15T11:09:52","modified_gmt":"2025-08-15T02:09:52","slug":"service-task-aws-bedrock-stability-ai-image-generate","status":"publish","type":"post","link":"https:\/\/support.questetra.com\/en\/bpmn-icons\/service-task-aws-bedrock-stability-ai-image-generate\/","title":{"rendered":"Amazon Bedrock: Stability AI: Generate Image"},"content":{"rendered":"\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"58\" data-attachment-id=\"113160\" data-permalink=\"https:\/\/support.questetra.com\/en\/developer-blog\/how-to-use-timer-start-event\/attachment\/advanced-banner-new-en\/\" data-orig-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?fit=1200%2C68&amp;ssl=1\" data-orig-size=\"1200,68\" data-comments-opened=\"0\" data-image-title=\"advanced-banner-new-en\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?fit=1024%2C58&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en-1024x58.png?resize=1024%2C58&#038;ssl=1\" alt=\"\" class=\"wp-image-113160\" srcset=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?resize=1024%2C58&amp;ssl=1 1024w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?resize=600%2C34&amp;ssl=1 600w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?resize=768%2C44&amp;ssl=1 768w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?w=1200&amp;ssl=1 1200w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading has-border-color has-product-main-border-color has-white-color has-product-main-background-color has-text-color has-background has-link-color\" style=\"border-width:2px;margin-top:0;margin-right:0;margin-bottom:0;margin-left:0;padding-top:var(--wp--preset--spacing--10);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--10);padding-left:var(--wp--preset--spacing--20)\"><strong>Amazon Bedrock: Stability AI: Generate Image<\/strong><\/h4>\n\n\n\n<p class=\"has-text-align-right has-border-color has-product-main-border-color has-white-color has-product-main-background-color has-text-color has-background has-link-color has-small-font-size mt-0 pt-0 wp-block-paragraph\" style=\"border-width:2px;margin-top:0;margin-right:0;margin-bottom:0;margin-left:0;padding-top:0;padding-right:var(--wp--preset--spacing--20);padding-bottom:0;padding-left:var(--wp--preset--spacing--20)\"><a href=\"https:\/\/support.questetra.com\/en\/bpmn-icons\/service-task-aws-bedrock-stability-ai-image-generate\/\">Amazon Bedrock: Stability AI: \u753b\u50cf\u751f\u6210<\/a><\/p>\n\n\n\n<p class=\"has-border-color has-product-main-border-color has-text-color has-white-background-color has-background has-link-color mt-0 pt-0 wp-block-paragraph\" style=\"border-width:2px;margin-top:0;margin-right:0;margin-bottom:var(--wp--preset--spacing--30);margin-left:0;padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">This item generates an image using Stability AI&#8217;s model on Amazon Bedrock.<\/p>\n\n\n\n<div class=\"wp-block-coblocks-accordion\">\n<div class=\"wp-block-coblocks-accordion-item\"><details open><summary class=\"wp-block-coblocks-accordion-item__title\">Basic Configs<\/summary><div class=\"wp-block-coblocks-accordion-item__content\">\n<dl style=\"0 0 -0.7em 0\">\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\"><\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">Step Name<\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\"><\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">Note<\/dd>\n<\/dl>\n<\/div><\/details><\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image alignright has-custom-border is-style-default\"><img decoding=\"async\" src=\"data:image;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAABE9JREFUWEfN\n        l3tMlWUcxz\/v4SCXA38gtyPTiXo2m8YdEp3cUzGxOdw0E5tRNqlsMDGlRRE5kFJjqUDLKEJsYuCN\n        xD8qA5oMGeBhXpIdbiuRrORSkOKBt71vHuIcDnRU2un5893v8nl\/z\/f3e55HwMpLsDS\/V1CQo6Pe\n        MR6EKBECAG\/A5b5\/D9AhQBOI5weVg+VdDQ2DlsT+VwDvBZFqpXJkpyiwFbC3JChwRxAp0OsVOR1X\n        v+uezGdSgLl+YVtB2CuAysLERmYiDICY2qatKZjIf0IAjX9EniiKSQ+T2NRHEIR83aWql83FMgug\n        8Q8vEUWenYrkhhiCwFHdpeqN4+BMP0zln1tSCaMKSHsuIORP5Z+bxhIRk8ZqYhRAUrvCdkT3sIKz\n        FFoS5sg9hcbQHaMAGt\/wD0SBZEsDPYqdIJKra65OkWLIANKQcdCrfjPt85zMXcTGRGCjtGFo6B6f\n        lRwnfMkibv58i2073ubwwRw8Pdx4bUcGcbHRrIlbQfnpc2xcvwZnJxV37w6Rd7iYwuJSU947fyoH\n        XKVhJQNo\/MISRIRiU6uQQF96evvRtXXw8YE9eKk9adG147NwPum79\/Hum9txUqnI2nuQVSuiUXu6\n        09f\/OwqFgoQtycya6SWH\/PGnrnEFExA36bQ1R+4DhH8iQqKp1aJgf57bsJaZXmpEUcTe3o6S0lO8\n        tHkDpScqeGp5FPrhYWrrGglbEkJ9YzNKpZLVK2PQtXVypvJrjpVXMDAwfioLUKjTVr8gA8zzC2\/k\n        7\/k+uubMnkVBbha9fX18efIsq2JjUHu48Xp6Nvuz07n1y69Ms53GjZvduLtNZ4bak4MfFVF2upLl\n        0WGsfXoli58I5JuqC6SkZZqTTFOrtjrQAHB7zMEiG0vO72Wmcb6mls+\/KCd3z1s4ONjz4qs72ZWS\n        xJLQICrOfUvXzW6eT1jHja5unkncxrKopVy+2iLrpCh\/H38MDLA5KdUcQE+rtnq6AUA0Z7E7PZWV\n        yyLR6\/VcbNDi4e5Kbl4hPgvmy1tTeKSU1vZOMtJSqG\/UytU58P47LF0cwjRbW2739PJhwaccP3nW\n        bNO0aquFSQEepdUs8R0LMG4LUrdtoa5BS82Fi5bEMrKRxCkJVaqYnZ0dZacqydp3yDSO0RaME6HU\n        AW9sf0Uuf+mJr2Q1P8haHx\/HDLUHi4IDaL58jez9eabu\/4hQ42e+DVUqRzJ2JbMseinDwyNcu66j\n        SXuFKz+0UFNbP9pekl3Y4hCCA3zxffwx5s2ZTW9fP8fKzrDiyQhZB1Xf1xkBGLXhRIPI4KGZ603i\n        pnVEhoXi6uKCjY3CbDGkyXdd1yYnlioWvzoWZ2cVRUfLJh9EE41ic1mkaRcaEoC\/z0KcVI6yia69\n        k+strXLLWriMR7HkZNXDSAKw+nEsQVj1QjIquCm8jJrqwdzl9P93Kf0vKvHA13IDhFUfJgYIqz7N\n        xorIao9TCyfbQ5v9BWbg5jDAzldXAAAAAElFTkSuQmCC\n    \" alt=\"Auto Step icon\" class=\"has-border-color has-ast-global-color-4-border-color\" style=\"border-width:0.5em\"\/><\/figure>\n\n\n\n<div class=\"wp-block-coblocks-accordion\">\n<div class=\"wp-block-coblocks-accordion-item\"><details open><summary class=\"wp-block-coblocks-accordion-item__title\">Configs for this Auto Step<\/summary><div class=\"wp-block-coblocks-accordion-item__content\">\n<dl style=\"0 0 -0.7em 0\">\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_AccessKey<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C1: Access Key<span style=\"color:#990000;\"> *<\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_SecretKey<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C2: Secret Access Key<span style=\"color:#990000;\"> *<\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_Region<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C3: Region Code<span style=\"color:#990000;\"> *<\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_Model<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C4: Model<span style=\"color:#990000;\"> *<\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_Prompt<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C5: Prompt<span style=\"color:#990000;\"> *<\/span><span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_Negative<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C6: Negative Prompt<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_Seed<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C7: Data item that stores \/ to save the seed<\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_Aspect<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C8: Image Aspect ratio (1:1 if not selected)<\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_Format<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C9: Image Format (PNG if not selected)<\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_File<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C10: Data item to add the generated file<span style=\"color:#990000;\"> *<\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_FileName<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C11: File name to save as<span style=\"color:#990000;\"> *<\/span><span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/dd>\n\n<\/dl>\n<\/div><\/details><\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\" style=\"margin-top:var(--wp--preset--spacing--30)\"><span>Notes<\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>To learn about how to create your Access Key and Secret Access Key, see the <a href=\"https:\/\/docs.aws.amazon.com\/IAM\/latest\/UserGuide\/id_credentials_access-keys.html\" target=\"_blank\" rel=\"noreferrer noopener\">Amazon Web Services Documentation<\/a><\/li>\n\n\n\n<li>Image generation is only supported on certain regions\n<ul class=\"wp-block-list\">\n<li>For more details, please refer to <a href=\"https:\/\/docs.aws.amazon.com\/bedrock\/latest\/userguide\/models-regions.html\" target=\"_blank\" rel=\"noreferrer noopener\">Model support by AWS Region in Amazon Bedrock<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" style=\"margin-top:var(--wp--preset--spacing--30)\"><span>Capture<\/span><\/h3>\n\n\n\n<figure class=\"wp-block-image size-full has-custom-border is-style-rounded is-style-rounded--1\"><img data-recalc-dims=\"1\" decoding=\"async\" data-attachment-id=\"172306\" data-permalink=\"https:\/\/support.questetra.com\/en\/bpmn-icons\/service-task-aws-bedrock-anthropic-claude-chat\/attachment\/aws-claude-chat_capture_en_2\/\" data-orig-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2024\/12\/aws-claude-chat_capture_en_2.png?fit=1340%2C1488&amp;ssl=1\" data-orig-size=\"1340,1488\" data-comments-opened=\"0\" data-image-title=\"aws-claude-chat_capture_en_2\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2024\/12\/aws-claude-chat_capture_en_2.png?fit=567%2C630&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/04\/Amazon-Bedrock-Stability-AI_-%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90_17_0_en.png?ssl=1\" alt=\"\" class=\"has-border-color wp-image-172306\" style=\"border-color:#009900;border-width:3px;border-radius:9px\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" style=\"margin-top:var(--wp--preset--spacing--30)\"><span>See also<\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/support.questetra.com\/en\/bpmn-icons\/intermediate-error-catch-event-boundary-type\/\" target=\"_blank\" rel=\"noreferrer noopener\">Intermediate Error Catch Event (Boundary Type)<\/a><\/li>\n<\/ul>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-coblocks-accordion\">\n<div class=\"wp-block-coblocks-accordion-item\"><details><summary class=\"wp-block-coblocks-accordion-item__title\">Script (click to open)<\/summary><div class=\"wp-block-coblocks-accordion-item__content\">\n<ul class=\"wp-block-list\">\n<li>An XML file that contains the code below is available to download\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/gh-cdn.questetra.net\/Questetra\/Addon-XML\/release-2025-07-04\/aws-bedrock-stability-ai-image-generate.xml\" target=\"_blank\" rel=\"noreferrer noopener\">aws-bedrock-stability-ai-image-generate.xml<\/a> (C) Questetra, Inc. (MIT License)<\/li>\n\n\n\n<li>If you are using Professional, you can modify the contents of this file and use it as your own add-on auto step<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code>\nconst SERVICE = &quot;bedrock&quot;;\n\nfunction main() {\n    \/\/\/\/\/\/ == \u5de5\u7a0b\u30b3\u30f3\u30d5\u30a3\u30b0\u30fb\u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30c7\u30fc\u30bf\u306e\u53c2\u7167 \/ Config &amp; Data Retrieving ==\n    const awsKey = configs.getObject(&quot;conf_AccessKey&quot;).getToken();\n    const awsSecret = configs.getObject(&quot;conf_SecretKey&quot;).getToken();\n    const region = retrieveRegion();\n    const model = retrieveModel();\n    const payload = buildPayload();\n    const fileName = configs.get(&quot;conf_FileName&quot;);\n    if (fileName === &quot;&quot;) {\n        throw new Error(&quot;File name is blank.&quot;);\n    }\n    \/\/\u30d5\u30a1\u30a4\u30eb\u540d\u304c200\u6587\u5b57\u3092\u8d85\u3048\u3066\u3044\u306a\u3044\u304b\n    if(fileName.length &gt; 200){\n        throw new Error(&quot;File Name should be less than 200 characters&quot;);\n    }\n\n\n    \/\/\/\/\/\/ == \u6f14\u7b97 \/ Calculating ==\n    const { generatedFile, seed } = generateImage(awsKey, awsSecret, region, model, payload, fileName);\n\n    \/\/\/\/\/\/ == \u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30c7\u30fc\u30bf\u3078\u306e\u4ee3\u5165 \/ Data Updating ==\n    saveFileData(&apos;conf_File&apos;, generatedFile);\n    saveData(&apos;conf_Seed&apos;, seed);\n}\n\n\/**\n * config \u304b\u3089\u30ea\u30fc\u30b8\u30e7\u30f3\u30b3\u30fc\u30c9\u3092\u8aad\u307f\u51fa\u3059\n * \u30ea\u30fc\u30b8\u30e7\u30f3\u30b3\u30fc\u30c9\u306e\u5f62\u5f0f\u3068\u3057\u3066\u4e0d\u6b63\u306a\u5834\u5408\u306f\u30a8\u30e9\u30fc\n * @return {String}\n *\/\nconst retrieveRegion = () =&gt; {\n    const region = configs.get(&quot;conf_Region&quot;);\n    \/\/ \u4eca\u5f8c\u30ea\u30fc\u30b8\u30e7\u30f3\u304c\u5897\u3048\u308b\u3053\u3068\u3082\u8003\u3048\u3066\u3001\u4e2d\u592e\u306e\u6700\u5927\u6587\u5b57\u6570\u306b\u306f\u4f59\u88d5\u3092\u307f\u3066\u3044\u308b\n    const reg = new RegExp(&quot;^[a-z]{2}-[a-z]{4,16}-[1-9]$&quot;);\n    if (!reg.test(region)) {\n        throw new Error(&quot;Region Code is invalid.&quot;);\n    }\n    return region;\n}\n\n\/**\n * config \u304b\u3089\u30e2\u30c7\u30eb ID \u3092\u8aad\u307f\u51fa\u3059\n * \u30e2\u30c7\u30eb ID \u3068\u3057\u3066\u4e0d\u6b63\u306a\u5834\u5408\u306f\u30a8\u30e9\u30fc\n * @return {String}\n *\/\nfunction retrieveModel() {\n    const model = configs.get(&apos;conf_Model&apos;);\n    const reg = new RegExp(&apos;^[a-z0-9.:-]+$&apos;);\n    if (!reg.test(model)) {\n        throw new Error(&apos;Model is invalid. It contains an invalid character.&apos;);\n    }\n    const MODEL_PREFIX = &apos;stability&apos;;\n    if (!model.startsWith(MODEL_PREFIX)){\n        throw new Error(`Model is invalid. It must start with &quot;${MODEL_PREFIX}&quot;.`);\n    }\n    return model;\n}\n\n\/**\n * config \u304b\u3089 API \u30ea\u30af\u30a8\u30b9\u30c8\u306e\u30dc\u30c6\u30a3\u306b\u30bb\u30c3\u30c8\u3059\u308b\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u8aad\u307f\u51fa\u3057\u3001\n * \u30da\u30a4\u30ed\u30fc\u30c9\u3092\u69cb\u7bc9\u3059\u308b\n * @return {Object}\n *\/\nconst buildPayload = () =&gt; {\n    const payload = {\n        prompt: retrieveTextPrompts(),\n        seed: retrieveSeed()\n    };\n\n    const negative = configs.get(&apos;conf_Negative&apos;);\n    if (negative !== &apos;&apos;) {\n        Object.assign(payload, {\n            negative_prompt: negative\n        });\n    }\n\n    const aspect = configs.get(&quot;conf_Aspect&quot;);\n    if (aspect !== &apos;&apos;) {\n        Object.assign(payload, {\n            aspect_ratio: aspect\n        });\n    }\n\n    let format = &apos;png&apos;\n    if (configs.get(&quot;conf_Format&quot;) === &apos;jpg&apos;) {\n        format = &apos;jpg&apos;\n    }\n    Object.assign(payload, {\n        output_format: format\n    });\n\n    engine.log(JSON.stringify(payload));\n    return payload;\n}\n\n\/**\n * config \u304b\u3089\u30c6\u30ad\u30b9\u30c8\u30d7\u30ed\u30f3\u30d7\u30c8\u3092\u8aad\u307f\u51fa\u3059\n * @return {Array}\n *\/\nconst retrieveTextPrompts = () =&gt; {\n    const prompt = configs.get(&apos;conf_Prompt&apos;);\n    if (prompt === &apos;&apos;) {\n        throw new Error(&apos;Prompt is blank.&apos;);\n    }\n    return prompt;\n};\n\n\nconst MAX_SEED = 4294967295;\n\n\/**\n * config \u304b\u3089\u30b7\u30fc\u30c9\u3092\u8aad\u307f\u51fa\u3059\n * @return {Number}\n *\/\nconst retrieveSeed = () =&gt; {\n    const seedDef = configs.getObject(&quot;conf_Seed&quot;);\n    if (seedDef === null) {\n        return undefined;\n    }\n    const seed = engine.findData(seedDef);\n    if (seed === null) {\n        return undefined;\n    }\n    const reg = new RegExp(&apos;^(0|[1-9][0-9]{0,9})$&apos;);\n    const errorMsg = `Seed must be an integer from 0 to ${MAX_SEED}.`;\n    if (!reg.test(seed)) {\n        throw new Error(errorMsg);\n    }\n    const seedNum = Number.parseInt(seed);\n    if (seedNum &gt; MAX_SEED) {\n        throw new Error(errorMsg);\n    }\n    return seedNum;\n};\n\n\/**\n * \u753b\u50cf\u3092\u751f\u6210\u3059\u308b API \u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\n * @param awsKey\n * @param awsSecret\n * @param region\n * @param payload\n * @param fileName\n * @return {Object} {generatedFile: NewQfile, seed: String}\n *\/\nconst generateImage = (awsKey, awsSecret, region, model, payload, fileName) =&gt; {\n    const URL = `https:\/\/bedrock-runtime.${region}.amazonaws.com\/model\/${model}\/invoke`;\n    const response = httpClient.begin()\n        .awsSignV4(awsKey, awsSecret, region, SERVICE)\n        .body(JSON.stringify(payload), &quot;application\/json&quot;)\n        .post(URL);\n\n    const status = response.getStatusCode();\n    const respTxt = response.getResponseAsString();\n    if (status !== 200) {\n        engine.log(respTxt);\n        throw new Error(`Failed to invoke model. status: ${status}`);\n    }\n\n    const responsesBody = JSON.parse(respTxt);\n    engine.log(JSON.stringify(Object.assign({},responsesBody, { \/\/ images \u4ee5\u5916\u306e\u5024\u3092\u30ed\u30b0\u51fa\u529b\n        images: undefined\n    })));\n    const image = base64.decodeFromStringToByteArray(responsesBody.images[0]);\n\n    let format = &quot;png&quot;;\n    if (payload.output_format === &quot;jpg&quot;){\n        format = &quot;jpg&quot;\n    }\n\n    const generatedFile = new com.questetra.bpms.core.event.scripttask.NewQfile(\n        fileName,\n        `image\/${format}`,\n        image\n    );\n    const seed = String(responsesBody.seeds[0])\n    return { generatedFile, seed };\n};\n\n\/**\n * \u30c7\u30fc\u30bf\u9805\u76ee\u3078\u306e\u4fdd\u5b58\n * @param configName\n * @param newFile\n *\/\nconst saveFileData = (configName, newFile) =&gt; {\n    const def = configs.getObject(configName);\n    if (def === null) {\n        return;\n    }\n    let files = engine.findData(def);\n    if (files === null) {\n        files = new java.util.ArrayList();\n    }\n    files.add(newFile);\n    engine.setData(def, files);\n};\n\n\/**\n * \u30c7\u30fc\u30bf\u9805\u76ee\u3078\u306e\u4fdd\u5b58\n * @param configName\n * @param data\n *\/\nconst saveData = (configName, data) =&gt; {\n    const def = configs.getObject(configName);\n    if (def === null) {\n        return;\n    }\n    engine.setData(def, data);\n};\n\n    <\/code><\/pre><\/div>\n<\/div><\/details><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>This item generates an image using Stability AI&#8217;s model on Amazon Bedrock.<\/p>\n","protected":false},"author":3,"featured_media":155421,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","_uag_custom_page_level_css":"","advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_seo_schema_type":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_wpcom_ai_launchpad_first_post":false,"_jetpack_hide_featured_image":false,"_jetpack_featured_image_duplicate_dismissed":0,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"{title}\n\n{excerpt}\n\n{url}","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpas_customize_per_network":false,"jetpack_post_was_ever_published":false},"categories":[550],"tags":[],"faq_section":[],"class_list":["post-172410","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bpmn-icons"],"jetpack_publicize_connections":[],"uagb_featured_image_src":{"full":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1",1200,675,false],"thumbnail":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=440%2C440&ssl=1",440,440,true],"medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=560%2C315&ssl=1",560,315,true],"medium_large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=768%2C432&ssl=1",768,432,true],"large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1024%2C576&ssl=1",1024,576,true],"1536x1536":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1",1200,675,true],"2048x2048":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-landscape-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-portrait-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=900%2C675&ssl=1",900,675,true],"newspack-article-block-square-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-landscape-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=800%2C600&ssl=1",800,600,true],"newspack-article-block-portrait-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=600%2C675&ssl=1",600,675,true],"newspack-article-block-square-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=800%2C675&ssl=1",800,675,true],"newspack-article-block-landscape-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=600%2C450&ssl=1",600,450,true],"newspack-article-block-portrait-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=450%2C600&ssl=1",450,600,true],"newspack-article-block-square-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=600%2C600&ssl=1",600,600,true],"newspack-article-block-landscape-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=400%2C300&ssl=1",400,300,true],"newspack-article-block-portrait-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=300%2C400&ssl=1",300,400,true],"newspack-article-block-square-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=400%2C400&ssl=1",400,400,true],"newspack-article-block-landscape-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=200%2C150&ssl=1",200,150,true],"newspack-article-block-portrait-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=150%2C200&ssl=1",150,200,true],"newspack-article-block-square-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?resize=200%2C200&ssl=1",200,200,true],"newspack-article-block-uncropped":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1",1200,675,true]},"uagb_author_info":{"display_name":"Hirotaka NISHI","author_link":"https:\/\/support.questetra.com\/en\/author\/nishiquestetra\/"},"uagb_comment_info":2,"uagb_excerpt":"This item generates an image using Stability AI's model on Amazon Bedrock.","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9DiIh-IQO","jetpack-related-posts":[{"id":155313,"url":"https:\/\/support.questetra.com\/en\/bpmn-icons\/service-task-aws-bedrock-stable-diffusion-image-generate\/","url_meta":{"origin":172410,"position":0},"title":"(Deprecated) AWS: Stable Diffusion 1.0: Generate Image","author":"Shiho Tatsumi","date":"2025-02-27","format":false,"excerpt":"This item generates an image using Stability AI's Stable Diffusion 1.0 on Amazon Bedrock.","rel":"","context":"In &quot;BPMN Icons&quot;","block_context":{"text":"BPMN Icons","link":"https:\/\/support.questetra.com\/en\/category\/bpmn-icons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":175598,"url":"https:\/\/support.questetra.com\/en\/developer-blog\/ai-service-comparison\/","url_meta":{"origin":172410,"position":1},"title":"Comparison and Utilization Guide for Generative AI Automation Items","author":"komatsuquestetra","date":"2025-09-08","format":false,"excerpt":"We will explain the features of AI Auto-steps and how to use them.","rel":"","context":"In &quot;Questetra Developers Blog&quot;","block_context":{"text":"Questetra Developers Blog","link":"https:\/\/support.questetra.com\/en\/category\/developer-blog\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/08\/ai-service-comparison-v2.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/08\/ai-service-comparison-v2.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/08\/ai-service-comparison-v2.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/08\/ai-service-comparison-v2.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/08\/ai-service-comparison-v2.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":172416,"url":"https:\/\/support.questetra.com\/ja\/bpmn-icons\/service-task-aws-bedrock-stability-ai-image-generate\/","url_meta":{"origin":172410,"position":2},"title":"Amazon Bedrock: Stability AI: \u753b\u50cf\u751f\u6210","author":"suesesayaka","date":"2025-08-15","format":false,"excerpt":"\u3053\u306e\u5de5\u7a0b\u306f\u3001Amazon Bedrock \u4e0a\u3067\u52d5\u4f5c\u3059\u308b Stability AI \u306e \u30e2\u30c7\u30eb\u3092\u7528\u3044\u3066\u3001\u753b\u50cf\u3092\u751f\u6210\u3057\u307e\u3059\u3002","rel":"","context":"In &quot;BPMN\u30a2\u30a4\u30b3\u30f3&quot;","block_context":{"text":"BPMN\u30a2\u30a4\u30b3\u30f3","link":"https:\/\/support.questetra.com\/ja\/category\/bpmn-icons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":155320,"url":"https:\/\/support.questetra.com\/ja\/bpmn-icons\/service-task-aws-bedrock-stable-diffusion-image-generate\/","url_meta":{"origin":172410,"position":3},"title":"(\u5ec3\u6b62\u4e88\u5b9a) AWS: Stable Diffusion 1.0: \u753b\u50cf\u751f\u6210","author":"Shiho Tatsumi","date":"2025-02-27","format":false,"excerpt":"\u3053\u306e\u5de5\u7a0b\u306f\u3001Amazon Bedrock \u4e0a\u3067\u52d5\u4f5c\u3059\u308b Stability AI \u306e Stable Diffusion 1.0 \u3092\u7528\u3044\u3066\u3001\u753b\u50cf\u3092\u751f\u6210\u3057\u307e\u3059\u3002","rel":"","context":"In &quot;BPMN\u30a2\u30a4\u30b3\u30f3&quot;","block_context":{"text":"BPMN\u30a2\u30a4\u30b3\u30f3","link":"https:\/\/support.questetra.com\/ja\/category\/bpmn-icons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":172697,"url":"https:\/\/support.questetra.com\/en\/bpmn-icons\/service-task-ai-agent\/","url_meta":{"origin":172410,"position":4},"title":"AI Agent","author":"Tomoatsu Horibe","date":"2025-04-25","format":false,"excerpt":"This item is an automated process in which AI reads, analyzes, and processes data based on your instructions. By setting data permissions, you can control which Data Items the AI is allowed to read or modify.","rel":"","context":"In &quot;BPMN\u30a2\u30a4\u30b3\u30f3&quot;","block_context":{"text":"BPMN\u30a2\u30a4\u30b3\u30f3","link":"https:\/\/support.questetra.com\/ja\/category\/bpmn-icons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/04\/bpmn-icon-service-task-ai-agent.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/04\/bpmn-icon-service-task-ai-agent.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/04\/bpmn-icon-service-task-ai-agent.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/04\/bpmn-icon-service-task-ai-agent.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/04\/bpmn-icon-service-task-ai-agent.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":175147,"url":"https:\/\/support.questetra.com\/ja\/developer-blog\/ai-service-comparison\/","url_meta":{"origin":172410,"position":5},"title":"\u751f\u6210 AI \u81ea\u52d5\u5de5\u7a0b\u306e\u6bd4\u8f03\u3068\u6d3b\u7528\u30ac\u30a4\u30c9","author":"komatsuquestetra","date":"2025-08-13","format":false,"excerpt":"AI \u81ea\u52d5\u5de5\u7a0b\u306e\u7279\u5fb4\u3068\u4f7f\u3044\u5206\u3051\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002","rel":"","context":"In &quot;Questetra Developers Blog&quot;","block_context":{"text":"Questetra Developers Blog","link":"https:\/\/support.questetra.com\/ja\/category\/developer-blog\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/08\/ai-service-comparison-v2.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/08\/ai-service-comparison-v2.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/08\/ai-service-comparison-v2.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/08\/ai-service-comparison-v2.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2025\/08\/ai-service-comparison-v2.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/12\/bpmn-icon-service-task-aws.png?fit=1200%2C675&ssl=1","_links":{"self":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/172410","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/comments?post=172410"}],"version-history":[{"count":8,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/172410\/revisions"}],"predecessor-version":[{"id":175539,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/172410\/revisions\/175539"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/media\/155421"}],"wp:attachment":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/media?parent=172410"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/categories?post=172410"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/tags?post=172410"},{"taxonomy":"faq_section","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/faq_section?post=172410"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}