---
title: Multi-reference composition — Seedream 5.5 | Runware Docs
url: https://runware.ai/docs/models/bytedance-seedream-5-5/guides/multi-reference-composition
description: "How to compose one image from up to ten references with Seedream 5.5: assigning roles, dressing one model in a garment range, arranging a product set and sizing the output."
---
### [Introduction](https://runware.ai/docs/models/bytedance-seedream-5-5/guides/multi-reference-composition#introduction)

A lookbook shot normally needs **every element in front of one camera on one day**. When the coat is still a sample or the model is booked elsewhere, the shot waits for the calendar.

Seedream 5.5 builds it from separate photos. Each element goes into `inputs.referenceImages` as its own image, **up to ten per request**, and the prompt says which image plays which part. The model returns one frame with every piece posed and relit together.

![A woman with long auburn hair walking down wide limestone steps toward the camera in a belted olive green trench coat, a burgundy leather crossbody bag on her left shoulder, concrete columns behind her under overcast light](https://runware.ai/docs/assets/output-hero.lehpL9q6_Z1rWdLS.jpg)

> **Prompt**: The woman from image 1 wearing the coat from image 2, buttoned and belted, and carrying the bag from image 3 on her left shoulder, walking down the steps from image 4 toward the camera. Keep her face, hair and the clothes under the coat from image 1. Keep the cut, color and buttons of the coat from image 2, and the shape, leather and clasp of the bag from image 3. Relight her with the soft overcast daylight of image 4 and give her a soft contact shadow on the steps. Full-length shot from a slightly low angle, 50mm lens. Photoreal editorial fashion lookbook photography.

**Image 1: model**:

![A full-length studio photo of a woman with long loose auburn hair in a black turtleneck, black trousers and black loafers against a light gray backdrop](https://runware.ai/docs/assets/source-woman.DbqWq7sg_ZMcg0K.jpg)

> **Prompt**: A full-length studio casting photograph of a woman in her early thirties with warm olive skin and long straight auburn hair worn loose, standing relaxed and facing the camera with her arms at her sides, wearing a fitted black turtleneck, straight black trousers and black leather loafers. Plain light gray seamless backdrop, soft even studio lighting, the whole figure inside the frame with space above her head and below her feet. Photoreal, no text.

**Image 2: coat**:

![A long olive green double-breasted trench coat with horn buttons and a tie belt on an invisible mannequin against white](https://runware.ai/docs/assets/source-coat.DfrEcSa-_1rbCyQ.jpg)

> **Prompt**: A long double-breasted cotton trench coat in olive green with wide lapels, dark horn buttons and a matching self-tie belt, shown front-on on an invisible mannequin, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

**Image 3: bag**:

![A structured burgundy leather crossbody bag with a gold turn-lock clasp against white](https://runware.ai/docs/assets/source-bag.BRnKQBrL_ZfKg3P.jpg)

> **Prompt**: A structured crossbody bag in smooth burgundy leather with a gold turn-lock clasp and a thin adjustable leather strap, three-quarter view, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

**Image 4: location**:

![Empty pale limestone steps rising to a modern museum entrance with tall concrete columns under overcast sky](https://runware.ai/docs/assets/source-steps.DeglVxHc_Z2hdEk2.jpg)

> **Prompt**: Wide pale limestone steps leading up to the entrance of a modern museum with tall square concrete columns, seen from the bottom of the steps looking up, portrait framing. Empty, no people. Soft overcast daylight with no hard shadows. Photoreal architectural location photography, no text.

The casting photo and the two packshots were never in the same room, and the coat was never worn. For a fashion retailer that is **a lookbook page without a shoot**, and a new colorway is one more packshot in image 2.

This guide covers the request, giving each image a role, dressing one model in a whole garment range, arranging ten products in one frame and sizing the output when references are present. Changing a single image with an instruction is covered in [editing images](https://runware.ai/docs/models/bytedance-seedream-5-5/guides/editing-images).

### [The request](https://runware.ai/docs/models/bytedance-seedream-5-5/guides/multi-reference-composition#the-request)

References go into `inputs.referenceImages`, and the prompt refers to them **by their place in the array**:

**TypeScript**:

```typescript
import { createClient } from '@runware/sdk'

const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()

const [result] = await client.run({
  model: 'bytedance:seedream@5.5',
  positivePrompt: 'The woman from image 1 wearing the coat from image 2, buttoned and belted, and carrying the bag from image 3 on her left shoulder, walking down the steps from image 4 toward the camera. Keep her face, hair and the clothes under the coat from image 1. Keep the cut, color and buttons of the coat from image 2, and the shape, leather and clasp of the bag from image 3. Relight her with the soft overcast daylight of image 4 and give her a soft contact shadow on the steps. Full-length shot from a slightly low angle, 50mm lens. Photoreal editorial fashion lookbook photography.',
  width: 1664,
  height: 2496,
  inputs: {
    referenceImages: [
      'https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-woman.jpg',
      'https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-coat.jpg',
      'https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-bag.jpg',
      'https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-steps.jpg'
    ]
  }
})
```

**Python**:

```python
import asyncio
import os

from runware import Runware

async def main():
    async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
        results = await client.run({
            "model": "bytedance:seedream@5.5",
            "positivePrompt": "The woman from image 1 wearing the coat from image 2, buttoned and belted, and carrying the bag from image 3 on her left shoulder, walking down the steps from image 4 toward the camera. Keep her face, hair and the clothes under the coat from image 1. Keep the cut, color and buttons of the coat from image 2, and the shape, leather and clasp of the bag from image 3. Relight her with the soft overcast daylight of image 4 and give her a soft contact shadow on the steps. Full-length shot from a slightly low angle, 50mm lens. Photoreal editorial fashion lookbook photography.",
            "width": 1664,
            "height": 2496,
            "inputs": {
                "referenceImages": [
                    "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-woman.jpg",
                    "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-coat.jpg",
                    "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-bag.jpg",
                    "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-steps.jpg"
                ]
            }
        })

asyncio.run(main())
```

**cURL**:

```bash
curl https://api.runware.ai/v1 \
  -H "Authorization: Bearer $RUNWARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "taskType": "imageInference",
      "taskUUID": "4c9e2a71-8d3b-4f06-b5e1-2a7d9c3f6b58",
      "model": "bytedance:seedream@5.5",
      "positivePrompt": "The woman from image 1 wearing the coat from image 2, buttoned and belted, and carrying the bag from image 3 on her left shoulder, walking down the steps from image 4 toward the camera. Keep her face, hair and the clothes under the coat from image 1. Keep the cut, color and buttons of the coat from image 2, and the shape, leather and clasp of the bag from image 3. Relight her with the soft overcast daylight of image 4 and give her a soft contact shadow on the steps. Full-length shot from a slightly low angle, 50mm lens. Photoreal editorial fashion lookbook photography.",
      "width": 1664,
      "height": 2496,
      "inputs": {
        "referenceImages": [
          "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-woman.jpg",
          "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-coat.jpg",
          "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-bag.jpg",
          "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-steps.jpg"
        ]
      }
    }
  ]'
```

**CLI**:

```bash
runware run bytedance:seedream@5.5 \
  positivePrompt="The woman from image 1 wearing the coat from image 2, buttoned and belted, and carrying the bag from image 3 on her left shoulder, walking down the steps from image 4 toward the camera. Keep her face, hair and the clothes under the coat from image 1. Keep the cut, color and buttons of the coat from image 2, and the shape, leather and clasp of the bag from image 3. Relight her with the soft overcast daylight of image 4 and give her a soft contact shadow on the steps. Full-length shot from a slightly low angle, 50mm lens. Photoreal editorial fashion lookbook photography." \
  width=1664 \
  height=2496 \
  inputs.referenceImages.0=https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-woman.jpg \
  inputs.referenceImages.1=https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-coat.jpg \
  inputs.referenceImages.2=https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-bag.jpg \
  inputs.referenceImages.3=https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-steps.jpg
```

**JSON**:

```json
{
  "taskType": "imageInference",
  "taskUUID": "4c9e2a71-8d3b-4f06-b5e1-2a7d9c3f6b58",
  "model": "bytedance:seedream@5.5",
  "positivePrompt": "The woman from image 1 wearing the coat from image 2, buttoned and belted, and carrying the bag from image 3 on her left shoulder, walking down the steps from image 4 toward the camera. Keep her face, hair and the clothes under the coat from image 1. Keep the cut, color and buttons of the coat from image 2, and the shape, leather and clasp of the bag from image 3. Relight her with the soft overcast daylight of image 4 and give her a soft contact shadow on the steps. Full-length shot from a slightly low angle, 50mm lens. Photoreal editorial fashion lookbook photography.",
  "width": 1664,
  "height": 2496,
  "inputs": {
    "referenceImages": [
      "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-woman.jpg",
      "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-coat.jpg",
      "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-bag.jpg",
      "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-steps.jpg"
    ]
  }
}
```

- **The array order is the numbering.** "Image 1" in the prompt is the first entry of `inputs.referenceImages`, and "image 4" is the fourth.
- Each reference is a URL, a UUID (a previous generation's, or one uploaded via Media Storage), a data URI or a base64 string, in JPEG, PNG or WebP.
- Each one needs **at least 15 pixels on its short side** and a shape between 1:16 and 16:1, and can be up to 36 MP and 30 MB.

### [Giving each image a role](https://runware.ai/docs/models/bytedance-seedream-5-5/guides/multi-reference-composition#giving-each-image-a-role)

A reference arrives as **a picture with no job attached**. The dock below could be the place to build the shot in or only a source of morning light, and the speaker could be the hero or a prop at the edge of the frame. **The prompt hands out the jobs**, one clause per job.

![A terracotta fabric portable speaker with a tan leather strap standing on weathered dock planks beside a folded cream blanket, a misty lake and pine shoreline behind it in low morning sun](https://runware.ai/docs/assets/output-roles.0Zq61oIP_Z1KsLve.jpg)

> **Prompt**: Use image 2 as the setting. Place the speaker from image 1 standing on the planks beside the folded blanket, in the lower right third of the frame, turned three-quarters toward the camera. Keep the speaker exact, including its woven fabric, its leather strap and the dial on top. Relight it with the low morning sun of image 2 coming from the left, with a soft contact shadow on the planks. Photoreal outdoor lifestyle product photography, shallow depth of field.

**Image 1: product**:

![A cylindrical terracotta fabric speaker with a tan leather strap and an aluminum dial on top against white](https://runware.ai/docs/assets/source-speaker.CiPyFVi7_s0uOd.jpg)

> **Prompt**: A cylindrical portable wireless speaker wrapped in terracotta woven fabric, with a tan leather carry strap and a round brushed aluminum control dial on top, standing upright in a three-quarter view, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

**Image 2: setting**:

![An empty wooden dock running out over a calm misty lake at sunrise, a folded cream blanket on the planks and pines across the water](https://runware.ai/docs/assets/source-dock.CjXNs8yx_Z2i1wpT.jpg)

> **Prompt**: An empty wooden lake dock at early morning, weathered gray planks running away from the camera toward calm water, a folded cream wool blanket near the right edge of the planks, a pine forest shoreline across the lake with thin mist over the water. Low warm sun from the left, long soft shadows across the planks. Eye-level view from the start of the dock, photoreal outdoor lifestyle photography, no people, no text.

The prompt, clause by clause:

**[Setting]** Use image 2 as the setting, **[Placement]** Place the speaker from image 1 standing on the planks beside the folded blanket, in the lower right third of the frame, turned three-quarters toward the camera, **[Keep]** Keep the speaker exact, including its woven fabric, its leather strap and the dial on top, **[Light]** Relight it with the low morning sun of image 2 coming from the left, with a soft contact shadow on the planks, **[Style]** Photoreal outdoor lifestyle product photography, shallow depth of field

Four habits keep the roles from getting crossed:

- **Name each image by number and by noun.** "The speaker from image 1" says which entry to read and what to look for in it, so a reordered array does not silently swap the parts.
- **Place the subject in the scene.** The prompt stands the speaker on the planks beside the blanket, in the lower right third. The references cannot say how the pieces relate, so the prompt has to.
- **List what survives as categories.** The prompt keeps the fabric, the strap and the dial. The colors and the shape are already in image 1, and restating them in words gives the model a second description to reconcile with the picture.
- **Hand the light to the setting.** A packshot carries the light of the studio it was shot in. Naming the scene's light and a contact shadow is what seats the speaker on the dock instead of on top of the photo.

### [Dressing one model in a garment range](https://runware.ai/docs/models/bytedance-seedream-5-5/guides/multi-reference-composition#dressing-one-model-in-a-garment-range)

A catalog shoot repeats **one model across a whole range**. With references, the casting photo stays at image 1 in every request and **only image 2 changes**, one garment packshot per run. The three packshots below each went in as image 2:

![A navy twill chore jacket with three patch pockets, buttoned on an invisible mannequin against white](https://runware.ai/docs/assets/source-chore-jacket.CX6P-u0x_ZgT6da.jpg)

*Chore jacket*

> **Prompt**: A navy cotton twill chore jacket with a point collar, three patch pockets and dark brown buttons, shown front-on and buttoned on an invisible mannequin, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A forest green diamond-quilted vest with a corduroy stand collar, closed on an invisible mannequin against white](https://runware.ai/docs/assets/source-vest.Bvr8LDNf_Z1jGekh.jpg)

*Quilted vest*

> **Prompt**: A forest green quilted vest with diamond stitching, a corduroy stand collar and silver snap buttons, shown front-on and closed on an invisible mannequin, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A sand linen two-button blazer with patch pockets, buttoned on an invisible mannequin against white](https://runware.ai/docs/assets/source-blazer.CEKofVwR_2cUV8t.jpg)

*Linen blazer*

> **Prompt**: A single-breasted unstructured linen blazer in sand with two buttons, notch lapels and patch pockets, shown front-on and buttoned on an invisible mannequin, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

Image 1 is the same casting photo every time. Pick a garment to see its result:

**Model**:

![A full-length studio photo of a man with a short beard in a white T-shirt, stone chinos and white canvas shoes against a warm gray backdrop](https://runware.ai/docs/assets/source-man.CTtadlj6_1CIp6s.jpg)

> **Prompt**: A full-length studio casting photograph of a man in his late twenties with dark brown skin, short black hair and a short neat beard, standing relaxed and facing the camera with his arms at his sides, wearing a plain white crew-neck T-shirt, straight-leg stone-colored chinos and white canvas shoes. Plain warm gray seamless backdrop, soft even studio lighting, the whole figure inside the frame with space above his head and below his feet. Photoreal, no text.

**Chore jacket**:

![The same man in an open navy chore jacket over his white T-shirt, hands in his pockets, turned slightly to his left against a warm gray backdrop](https://runware.ai/docs/assets/output-series-chore-jacket.Cxe1bhmA_1dx1qI.jpg)

> **Prompt**: Dress the man from image 1 in the jacket from image 2, worn open with his hands in his pockets, turned slightly to his left. He stands on a plain warm gray seamless studio backdrop. Keep his face, hair, beard and build from image 1, and keep his T-shirt, chinos and shoes from image 1 under the garment. Keep the cut, color, fabric, collar and fastenings of the garment from image 2. Soft even studio lighting from the front left, a soft shadow at his feet. Full-length shot at waist height, 50mm lens. Photoreal e-commerce lookbook photography.

**Quilted vest**:

![The same man mid-stride toward the camera in a closed forest green quilted vest over his white T-shirt against a warm gray backdrop](https://runware.ai/docs/assets/output-series-vest.BHZLLQEH_Z1D8C7g.jpg)

> **Prompt**: Dress the man from image 1 in the vest from image 2, worn closed, mid-stride toward the camera with his arms relaxed. He stands on a plain warm gray seamless studio backdrop. Keep his face, hair, beard and build from image 1, and keep his T-shirt, chinos and shoes from image 1 under the garment. Keep the cut, color, fabric, collar and fastenings of the garment from image 2. Soft even studio lighting from the front left, a soft shadow at his feet. Full-length shot at waist height, 50mm lens. Photoreal e-commerce lookbook photography.

**Linen blazer**:

![The same man facing the camera in a buttoned sand linen blazer over his white T-shirt, adjusting his right cuff against a warm gray backdrop](https://runware.ai/docs/assets/output-series-blazer.DvahDSFW_CT3Uu.jpg)

> **Prompt**: Dress the man from image 1 in the blazer from image 2, worn buttoned, facing the camera with his left hand adjusting his right cuff. He stands on a plain warm gray seamless studio backdrop. Keep his face, hair, beard and build from image 1, and keep his T-shirt, chinos and shoes from image 1 under the garment. Keep the cut, color, fabric, collar and fastenings of the garment from image 2. Soft even studio lighting from the front left, a soft shadow at his feet. Full-length shot at waist height, 50mm lens. Photoreal e-commerce lookbook photography.

The three prompts share **everything after the first sentence**, word for word: the backdrop, the keep-list for the man, the keep-list for the garment and the lighting. Only the garment noun and the pose change. Copying the shared part rather than rewriting it leaves the garment and the pose as the only changes you asked for, which is what a range has to show.

Cast the model in **a plain base outfit**. The white T-shirt and stone chinos in image 1 sit under a chore jacket, a vest and a blazer alike, so one casting photo serves the whole range.

### [Ten references in one frame](https://runware.ai/docs/models/bytedance-seedream-5-5/guides/multi-reference-composition#ten-references-in-one-frame)

The array holds **up to ten references**, and a product range fills it. The banner below arranges ten products from ten separate packshots:

![Folded tortoiseshell sunglasses with green lenses from above on white](https://runware.ai/docs/assets/source-product-1.DGo2Zg4q_1KyhlR.jpg)

*Image 1*

> **Prompt**: A pair of tortoiseshell acetate sunglasses with dark green lenses, folded, seen flat from directly above, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A woven straw bucket hat with a black band from above on white](https://runware.ai/docs/assets/source-product-2.zYzcrkSt_uUHBp.jpg)

*Image 2*

> **Prompt**: A natural woven straw bucket hat with a black grosgrain band, seen flat from directly above, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A rolled beach towel with terracotta and cream stripes from above on white](https://runware.ai/docs/assets/source-product-3.DydoEuVG_Z2w6Ovu.jpg)

*Image 3*

> **Prompt**: A rolled cotton beach towel with wide terracotta and cream stripes, seen flat from directly above, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A pair of tan leather slide sandals from above on white](https://runware.ai/docs/assets/source-product-4.C5Abg6EE_ZvXgCD.jpg)

*Image 4*

> **Prompt**: A pair of tan leather slide sandals with a single wide strap, side by side, seen flat from directly above, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A sage green canvas tote bag laid flat on white](https://runware.ai/docs/assets/source-product-5.C1MCaWcq_2bqUX2.jpg)

*Image 5*

> **Prompt**: A sage green canvas tote bag with natural cotton handles, laid flat, seen flat from directly above, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A cobalt blue steel water bottle lying on its side on white](https://runware.ai/docs/assets/source-product-6.XjpGiQqZ_2dNN4m.jpg)

*Image 6*

> **Prompt**: A cobalt blue stainless steel water bottle with a brushed steel cap, lying on its side, seen flat from directly above, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A closed cognac leather passport holder from above on white](https://runware.ai/docs/assets/source-product-7.D5qvdp_W_1vbwcx.jpg)

*Image 7*

> **Prompt**: A cognac leather passport holder with contrast stitching, closed, seen flat from directly above, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A closed glossy white earbuds charging case from above on white, with the corner of a towel, a small bowl of salt and a green sprig at the bottom left](https://runware.ai/docs/assets/source-product-8.CwFD5QLk_23lvLu.jpg)

*Image 8*

> **Prompt**: A glossy white charging case for wireless earbuds, closed, seen flat from directly above, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A compact silver digital camera with an unmarked body and a gray wrist strap from above on white](https://runware.ai/docs/assets/source-product-9.DfEsVNei_1FLnfd.jpg)

*Image 9*

> **Prompt**: A compact silver digital camera of no particular brand, with a plain unmarked body, a black lens barrel with no lettering and a gray wrist strap, seen flat from directly above, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A folded coral one-piece swimsuit from above on white](https://runware.ai/docs/assets/source-product-10.BiQ6qkw6_2sBhTW.jpg)

*Image 10*

> **Prompt**: A coral one-piece swimsuit with thin straps, folded neatly, seen flat from directly above, on a plain white backdrop. Soft even studio lighting, subtle contact shadow, photoreal e-commerce packshot, no logos, no text.

![A wide flat-lay banner on sand linen with sunglasses, a straw hat, a striped towel, sandals and a green tote across the top row, and a blue bottle, a passport holder, an earbuds case, a silver camera and a coral swimsuit across the bottom row](https://runware.ai/docs/assets/output-banner.DEM8bv0D_Gn2cS.jpg)

> **Prompt**: A summer travel website banner, a flat-lay shot from directly above on a warm sand-colored linen backdrop. Arrange the ten products from the reference images in two rows of five, in the order of the images: images 1 to 5 across the top row from left to right, and images 6 to 10 across the bottom row from left to right. Show each product exactly once, at a natural size relative to the others, and keep the colors, materials and details of each product from its image. Even spacing, soft midday light from the upper left with short soft shadows. Photoreal e-commerce flat-lay photography, no text.

With ten products, **a sentence per product** makes the layout the longest part of the prompt. **Tying the layout to the array order** does it in one sentence: images 1 to 5 across the top row, images 6 to 10 across the bottom. To move a product, move its packshot in the array and leave the prompt alone.

A packshot carries **no scale of its own**. Each product fills its own square, so the earbuds case and the beach towel arrive at the same size. "At a natural size relative to the others" lets the model size them against each other, and "exactly once" keeps a product from being repeated or dropped to even out the rows.

### [Output size](https://runware.ai/docs/models/bytedance-seedream-5-5/guides/multi-reference-composition#output-size)

With references in the request, **the size comes from one of three places**:

| Request sends | Output |
| --- | --- |
| No size | The 2K tier, in the aspect ratio of the reference |
| `resolution` (`1K`, `1.5K` or `2K`) | That tier, in the aspect ratio of the reference |
| `width` and `height` | Exactly those pixels, whatever the shape of the references |

The dock request sends no size:

**TypeScript**:

```typescript
import { createClient } from '@runware/sdk'

const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()

const [result] = await client.run({
  model: 'bytedance:seedream@5.5',
  positivePrompt: 'Use image 2 as the setting. Place the speaker from image 1 standing on the planks beside the folded blanket, in the lower right third of the frame, turned three-quarters toward the camera. Keep the speaker exact, including its woven fabric, its leather strap and the dial on top. Relight it with the low morning sun of image 2 coming from the left, with a soft contact shadow on the planks. Photoreal outdoor lifestyle product photography, shallow depth of field.',
  inputs: {
    referenceImages: [
      'https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-speaker.jpg',
      'https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-dock.jpg'
    ]
  }
})
```

**Python**:

```python
import asyncio
import os

from runware import Runware

async def main():
    async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
        results = await client.run({
            "model": "bytedance:seedream@5.5",
            "positivePrompt": "Use image 2 as the setting. Place the speaker from image 1 standing on the planks beside the folded blanket, in the lower right third of the frame, turned three-quarters toward the camera. Keep the speaker exact, including its woven fabric, its leather strap and the dial on top. Relight it with the low morning sun of image 2 coming from the left, with a soft contact shadow on the planks. Photoreal outdoor lifestyle product photography, shallow depth of field.",
            "inputs": {
                "referenceImages": [
                    "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-speaker.jpg",
                    "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-dock.jpg"
                ]
            }
        })

asyncio.run(main())
```

**cURL**:

```bash
curl https://api.runware.ai/v1 \
  -H "Authorization: Bearer $RUNWARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "taskType": "imageInference",
      "taskUUID": "9a3f6d12-5e7c-4b81-a2d9-8f1c4e6b3a70",
      "model": "bytedance:seedream@5.5",
      "positivePrompt": "Use image 2 as the setting. Place the speaker from image 1 standing on the planks beside the folded blanket, in the lower right third of the frame, turned three-quarters toward the camera. Keep the speaker exact, including its woven fabric, its leather strap and the dial on top. Relight it with the low morning sun of image 2 coming from the left, with a soft contact shadow on the planks. Photoreal outdoor lifestyle product photography, shallow depth of field.",
      "inputs": {
        "referenceImages": [
          "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-speaker.jpg",
          "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-dock.jpg"
        ]
      }
    }
  ]'
```

**CLI**:

```bash
runware run bytedance:seedream@5.5 \
  positivePrompt="Use image 2 as the setting. Place the speaker from image 1 standing on the planks beside the folded blanket, in the lower right third of the frame, turned three-quarters toward the camera. Keep the speaker exact, including its woven fabric, its leather strap and the dial on top. Relight it with the low morning sun of image 2 coming from the left, with a soft contact shadow on the planks. Photoreal outdoor lifestyle product photography, shallow depth of field." \
  inputs.referenceImages.0=https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-speaker.jpg \
  inputs.referenceImages.1=https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-dock.jpg
```

**JSON**:

```json
{
  "taskType": "imageInference",
  "taskUUID": "9a3f6d12-5e7c-4b81-a2d9-8f1c4e6b3a70",
  "model": "bytedance:seedream@5.5",
  "positivePrompt": "Use image 2 as the setting. Place the speaker from image 1 standing on the planks beside the folded blanket, in the lower right third of the frame, turned three-quarters toward the camera. Keep the speaker exact, including its woven fabric, its leather strap and the dial on top. Relight it with the low morning sun of image 2 coming from the left, with a soft contact shadow on the planks. Photoreal outdoor lifestyle product photography, shallow depth of field.",
  "inputs": {
    "referenceImages": [
      "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-speaker.jpg",
      "https://assets.runware.ai/guides/bytedance-seedream-5-5/multi-reference-composition/source-dock.jpg"
    ]
  }
}
```

Both of its references are 3:2, and the output came back at 2512 × 1680, **the 2K budget in that shape**.

**References in different shapes leave the ratio open**, so send a size with them. The lookbook shots mix a portrait casting photo with square packshots and ask for 1664 × 2496. The banner asks for 3136 × 1344, a 21:9 frame that none of its square references has. Explicit dimensions stay between 1:16 and 16:1 and between 921,600 and 4,624,220 pixels in total, and `resolution` cannot be sent together with them.

> [!NOTE]
> Every reference image is billed as an input on top of the output, so a ten-reference banner costs more than a two-reference composite at the same size.

### [Tips](https://runware.ai/docs/models/bytedance-seedream-5-5/guides/multi-reference-composition#tips)

1. **Number the images in the prompt.** "The coat from image 2" maps to the second entry of the array and names what to find there.
    
2. **Give every reference a clause.** Setting, placement, what survives and the light each get their own, so no image is left for the model to interpret.
    
3. **List what survives as categories.** Name parts such as the fabric or the clasp, and leave colors and shapes to the reference.
    
4. **Let the setting own the light.** One sentence anchored to the setting image relights every element, with a contact shadow where it meets a surface.
    
5. **Hold the model at image 1 across a range.** Swap only the garment reference and copy the rest of the prompt word for word.
    
6. **Tie a large set to the array order.** Rows by image number place ten products in one sentence.
    
7. **Say products sit at natural size.** Packshots carry no scale of their own.
    
8. **Send a size when references differ in shape.** Mixed shapes leave the aspect ratio open.